X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=src%2Fgetloadavg.c;h=4a41be8a1eb0880c0c48f0c73b139859680db1a7;hp=2bf2c3f55e1fa65a9248157cc625ebfe3de4d91d;hb=0a57cba46779af884cc537d18923dcb6313b9904;hpb=ea1ea793fe6e244ef5555ed983423a204101af13 diff --git a/src/getloadavg.c b/src/getloadavg.c index 2bf2c3f..4a41be8 100644 --- a/src/getloadavg.c +++ b/src/getloadavg.c @@ -44,7 +44,6 @@ Boston, MA 02111-1307, USA. */ convex DGUX hpux - MSDOS No-op for MSDOS. NeXT sgi sequent Sequent Dynix 3.x.x (BSD) @@ -52,7 +51,8 @@ Boston, MA 02111-1307, USA. */ sony_news NEWS-OS (works at least for 4.1C) UMAX UMAX4_3 - WIN32 No-op for Windows95/NT. + WIN32_NATIVE No-op for Windows9x/NT. + CYGWIN No-op for Cygwin. __linux__ Linux: assumes /proc filesystem mounted. Support from Michael K. Johnson. __NetBSD__ NetBSD: assumes /kern filesystem mounted. @@ -69,30 +69,8 @@ Boston, MA 02111-1307, USA. */ #include #endif -#ifndef WINDOWSNT -#ifndef __CYGWIN32__ - -#include - -/* Both the Emacs and non-Emacs sections want this. Some - configuration files' definitions for the LOAD_AVE_CVT macro (like - sparc.h's) use macros like FSCALE, defined here. */ -#ifdef unix -#include -#endif - -#ifdef XEMACS #include "lisp.h" #include "sysfile.h" /* for encapsulated open, close, read, write */ -#endif /* XEMACS */ - -/* Exclude all the code except the test program at the end - if the system has its own `getloadavg' function. - - The declaration of `errno' is needed by the test program - as well as the function itself, so it comes first. */ - -#include #ifndef HAVE_GETLOADAVG @@ -110,11 +88,9 @@ Boston, MA 02111-1307, USA. */ #define LDAV_CVT(n) (LOAD_AVE_CVT (n) / 100.0) #endif -#ifdef XEMACS #if defined (HAVE_KSTAT_H) #include #endif /* HAVE_KSTAT_H */ -#endif /* XEMACS */ #if !defined (BSD) && defined (ultrix) /* Ultrix behaves like BSD on Vaxen. */ @@ -457,17 +433,10 @@ Boston, MA 02111-1307, USA. */ #include #endif -#ifdef XEMACS #if defined (HAVE_SYS_PSTAT_H) #include #endif /* HAVE_SYS_PSTAT_H (on HPUX) */ -#endif /* XEMACS */ -#if defined(HAVE_FCNTL_H) || defined(_POSIX_VERSION) -#include -#else -#include -#endif /* Avoid static vars inside a function since in HPUX they dump as pure. */ @@ -512,6 +481,8 @@ static kvm_t *kd; Return the number written (never more than 3, but may be less than NELEM), or -1 if an error occurred. */ +int getloadavg (double loadavg[], int nelem); + int getloadavg (double loadavg[], int nelem) { @@ -532,7 +503,7 @@ getloadavg (double loadavg[], int nelem) privileges to use it. Initial implementation courtesy Zlatko Calusic . - Integrated to XEmacs by Hrvoje Niksic . + Integrated to XEmacs by Hrvoje Niksic . Additional cleanup by Hrvoje Niksic, based on code published by Casper Dik . */ kstat_ctl_t *kc; @@ -768,31 +739,6 @@ getloadavg (double loadavg[], int nelem) loadavg[elem++] = load_info.fifteen_minute; #endif /* DGUX */ -#if !defined (LDAV_DONE) && defined (apollo) -#define LDAV_DONE -/* Apollo code from lisch@mentorg.com (Ray Lischner). - - This system call is not documented. The load average is obtained as - three long integers, for the load average over the past minute, - five minutes, and fifteen minutes. Each value is a scaled integer, - with 16 bits of integer part and 16 bits of fraction part. - - I'm not sure which operating system first supported this system call, - but I know that SR10.2 supports it. */ - - extern void proc1_$get_loadav (); - unsigned long load_ave[3]; - - proc1_$get_loadav (load_ave); - - if (nelem > 0) - loadavg[elem++] = load_ave[0] / 65536.0; - if (nelem > 1) - loadavg[elem++] = load_ave[1] / 65536.0; - if (nelem > 2) - loadavg[elem++] = load_ave[2] / 65536.0; -#endif /* apollo */ - #if !defined (LDAV_DONE) && defined (OSF_MIPS) #define LDAV_DONE @@ -804,7 +750,7 @@ getloadavg (double loadavg[], int nelem) : (load_ave.tl_avenrun.l[0] / (double) load_ave.tl_lscale)); #endif /* OSF_MIPS */ -#if !defined (LDAV_DONE) && (defined (MSDOS) || defined (WIN32)) +#if !defined (LDAV_DONE) && (defined (WIN32_NATIVE) || defined (CYGWIN)) #define LDAV_DONE /* A faithful emulation is going to have to be saved for a rainy day. */ @@ -812,7 +758,7 @@ getloadavg (double loadavg[], int nelem) { loadavg[elem] = 0.0; } -#endif /* MSDOS */ +#endif /* WIN32_NATIVE or CYGWIN */ #if !defined (LDAV_DONE) && defined (OSF_ALPHA) #define LDAV_DONE @@ -985,22 +931,3 @@ main (int argc, char **argv) exit (0); } #endif /* TEST */ - -#else - -/* Emulate getloadavg. */ -int -getloadavg (double loadavg[], int nelem) -{ - int i; - - /* A faithful emulation is going to have to be saved for a rainy day. */ - for (i = 0; i < nelem; i++) - { - loadavg[i] = 0.0; - } - return i; -} - -#endif /*__GNUWIN32__*/ -#endif /* WINDOWSNT */