[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: getloadavg and platforms
From: |
Bruno Haible |
Subject: |
Re: getloadavg and platforms |
Date: |
Fri, 18 Feb 2011 01:26:57 +0100 |
User-agent: |
KMail/1.9.9 |
I had a hard time trying to understand which code is being used on which
platform. Here's a proposed patch for clarification:
2011-02-17 Bruno Haible <address@hidden>
getloadavg: Add comments about platforms.
* m4/getloadavg.m4: Add comment.
* lib/getloadavg.c: Likewise.
--- m4/getloadavg.m4.orig Fri Feb 18 01:26:06 2011
+++ m4/getloadavg.m4 Fri Feb 18 00:34:36 2011
@@ -26,6 +26,8 @@
gl_save_LIBS=$LIBS
+# getloadvg is present in libc on glibc >= 2.2, MacOS X, FreeBSD >= 2.0,
+# NetBSD >= 0.9, OpenBSD >= 2.0, Solaris >= 7.
AC_CHECK_FUNC([getloadavg], [],
[gl_have_func=no
--- lib/getloadavg.c.orig Fri Feb 18 01:26:06 2011
+++ lib/getloadavg.c Fri Feb 18 01:26:03 2011
@@ -508,7 +508,7 @@
elem = -1;
# endif
-# if !defined (LDAV_DONE) && defined (HAVE_LIBKSTAT)
+# if !defined (LDAV_DONE) && defined (HAVE_LIBKSTAT) /* Solaris <= 2.6 */
/* Use libkstat because we don't have to be root. */
# define LDAV_DONE
kstat_ctl_t *kc;
@@ -559,6 +559,7 @@
# endif /* HAVE_LIBKSTAT */
# if !defined (LDAV_DONE) && defined (hpux) && defined (HAVE_PSTAT_GETDYNAMIC)
+ /* HP-UX */
/* Use pstat_getdynamic() because we don't have to be root. */
# define LDAV_DONE
# undef LOAD_AVE_TYPE
@@ -575,7 +576,7 @@
# endif /* hpux && HAVE_PSTAT_GETDYNAMIC */
-# if ! defined LDAV_DONE && defined HAVE_LIBPERFSTAT
+# if ! defined LDAV_DONE && defined HAVE_LIBPERFSTAT /* AIX */
# define LDAV_DONE
# undef LOAD_AVE_TYPE
/* Use perfstat_cpu_total because we don't have to be root. */
@@ -592,6 +593,7 @@
# endif
# if !defined (LDAV_DONE) && (defined (__linux__) || defined (__CYGWIN__))
+ /* Linux without glibc, Cygwin */
# define LDAV_DONE
# undef LOAD_AVE_TYPE
@@ -648,7 +650,7 @@
# endif /* __linux__ || __CYGWIN__ */
-# if !defined (LDAV_DONE) && defined (__NetBSD__)
+# if !defined (LDAV_DONE) && defined (__NetBSD__) /* NetBSD < 0.9 */
# define LDAV_DONE
# undef LOAD_AVE_TYPE
@@ -680,7 +682,7 @@
# endif /* __NetBSD__ */
-# if !defined (LDAV_DONE) && defined (NeXT)
+# if !defined (LDAV_DONE) && defined (NeXT) /* NeXTStep */
# define LDAV_DONE
/* The NeXT code was adapted from iscreen 3.2. */
@@ -842,6 +844,7 @@
# endif /* OSF_MIPS */
# if !defined (LDAV_DONE) && (defined (__MSDOS__) || defined (WINDOWS32))
+ /* DJGPP */
# define LDAV_DONE
/* A faithful emulation is going to have to be saved for a rainy day. */
@@ -851,7 +854,7 @@
}
# endif /* __MSDOS__ || WINDOWS32 */
-# if !defined (LDAV_DONE) && defined (OSF_ALPHA)
+# if !defined (LDAV_DONE) && defined (OSF_ALPHA) /* OSF/1 */
# define LDAV_DONE
struct tbl_loadavg load_ave;
@@ -863,7 +866,7 @@
: (load_ave.tl_avenrun.l[elem] / (double) load_ave.tl_lscale));
# endif /* OSF_ALPHA */
-# if ! defined LDAV_DONE && defined __VMS
+# if ! defined LDAV_DONE && defined __VMS /* VMS */
/* VMS specific code -- read from the Load Ave driver. */
LOAD_AVE_TYPE load_ave[3];
@@ -907,6 +910,7 @@
# endif /* ! defined LDAV_DONE && defined __VMS */
# if ! defined LDAV_DONE && defined LOAD_AVE_TYPE && ! defined __VMS
+ /* IRIX, other old systems */
/* UNIX-specific code -- read the average from /dev/kmem. */
- Re: getloadavg test, (continued)
Re: getloadavg and errno, Bruno Haible, 2011/02/15
Re: getloadavg on Solaris 2.6, Bruno Haible, 2011/02/17
Re: getloadavg on IRIX, Bruno Haible, 2011/02/17
Re: getloadavg and platforms,
Bruno Haible <=