changeset 37503:d78370899111

sched: check struct sched_param in spawn.h as well On OS/2 kLIBC, struct sched_param is in spawn.h. So without this a redefinition error occurs when sched.h is inclued by spawn.h. * lib/sched.in.h: Include spawn.h on kLIBC. * lib/sched_h.m4: Check struct sched_param in spawn.h as well.
author KO Myung-Hun <komh78@gmail.com>
date Thu, 04 Dec 2014 10:03:34 +0900
parents dba0f73c28d8
children 12811854baf7
files ChangeLog lib/sched.in.h m4/sched_h.m4
diffstat 3 files changed, 24 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Dec 02 13:34:06 2014 +0000
+++ b/ChangeLog	Thu Dec 04 10:03:34 2014 +0900
@@ -1,3 +1,9 @@
+2014-12-08  KO Myung-Hun  <komh78@gmail.com>
+
+	sched: check struct sched_param in spawn.h as well
+	* lib/sched.in.h: Include spawn.h on kLIBC.
+	* lib/sched_h.m4: Check struct sched_param in spawn.h as well.
+
 2014-12-08  Martin Kletzander  <mkletzan@redhat.com>  (tiny change)
 
 	bootstrap: Allow perl modules in $buildreq
--- a/lib/sched.in.h	Tue Dec 02 13:34:06 2014 +0000
+++ b/lib/sched.in.h	Thu Dec 04 10:03:34 2014 +0900
@@ -35,6 +35,13 @@
    and Mac OS X 10.5.  */
 #include <sys/types.h>
 
+#ifdef __KLIBC__
+
+/* On OS/2 kLIBC, struct sched_param is in spawn.h */
+# include <spawn.h>
+
+#endif
+
 #if !@HAVE_STRUCT_SCHED_PARAM@
 
 # if !GNULIB_defined_struct_sched_param
--- a/m4/sched_h.m4	Tue Dec 02 13:34:06 2014 +0000
+++ b/m4/sched_h.m4	Thu Dec 04 10:03:34 2014 +0900
@@ -1,4 +1,4 @@
-# sched_h.m4 serial 6
+# sched_h.m4 serial 7
 dnl Copyright (C) 2008-2014 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -27,9 +27,16 @@
      fi
      AC_SUBST([HAVE_SCHED_H])
 
-     AC_CHECK_TYPE([struct sched_param],
-       [HAVE_STRUCT_SCHED_PARAM=1], [HAVE_STRUCT_SCHED_PARAM=0],
-       [#include <sched.h>])
+     if test "$HAVE_SCHED_H" = 1; then
+       AC_CHECK_TYPE([struct sched_param],
+         [HAVE_STRUCT_SCHED_PARAM=1], [HAVE_STRUCT_SCHED_PARAM=0],
+         [#include <sched.h>])
+     else
+       dnl On OS/2 kLIBC, struct sched_param is in spawn.h.
+       AC_CHECK_TYPE([struct sched_param],
+         [HAVE_STRUCT_SCHED_PARAM=1], [HAVE_STRUCT_SCHED_PARAM=0],
+         [#include <spawn.h>])
+     fi
      AC_SUBST([HAVE_STRUCT_SCHED_PARAM])
 
      dnl Ensure the type pid_t gets defined.