+2009-10-18 Bruno Haible <bruno@clisp.org>
+
+ Implement nproc for IRIX.
+ * lib/nproc.c: Include <sys/sysmp.h>.
+ (num_processors): On IRIX systems, try sysmp.
+ * m4/nproc.m4 (gl_PREREQ_NPROC): Check for sys/sysmp.h and sysmp.
+
2009-10-18 Bruno Haible <bruno@clisp.org>
Implement nproc for HP-UX.
# include <sys/pstat.h>
#endif
+#if HAVE_SYS_SYSMP_H
+# include <sys/sysmp.h>
+#endif
+
#if HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
}
#endif
+#if HAVE_SYSMP && defined MP_NAPROCS
+ { /* This works on IRIX. */
+ /* MP_NPROCS yields the number of installed processors.
+ MP_NAPROCS yields the number of processors available to unprivileged
+ processes. We need the latter. */
+ int nprocs = sysmp (MP_NAPROCS);
+ if (0 < nprocs)
+ return nprocs;
+ }
+#endif
+
#if HAVE_SYSCTL && defined HW_NCPU
{ /* This works on MacOS X, FreeBSD, NetBSD, OpenBSD. */
int nprocs;
-# nproc.m4 serial 2
+# nproc.m4 serial 3
dnl Copyright (C) 2009 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
# Prerequisites of lib/nproc.c.
AC_DEFUN([gl_PREREQ_NPROC],
[
- AC_CHECK_HEADERS([sys/pstat.h sys/param.h],,, [AC_INCLUDES_DEFAULT])
+ AC_CHECK_HEADERS([sys/pstat.h sys/sysmp.h sys/param.h],,,
+ [AC_INCLUDES_DEFAULT])
dnl <sys/sysctl.h> requires <sys/param.h> on OpenBSD 4.0.
AC_CHECK_HEADERS([sys/sysctl.h],,,
[AC_INCLUDES_DEFAULT
# include <sys/param.h>
#endif
])
- AC_CHECK_FUNCS([pstat_getdynamic sysctl])
+ AC_CHECK_FUNCS([pstat_getdynamic sysmp sysctl])
])