Mercurial > emacs
diff src/getloadavg.c @ 11788:3a2d34fad6fb make-3-73-3 make-3-74
AIX support from Tim Bell <tbel@afsmail.cern.ch>:
[_AIX] (LOAD_AVE_TYPE, FSCALE, NLIST_STRUCT): Define these for AIX.
(getloadavg) [_AIX]: Use `knlist' instead of `nlist'.
author | Roland McGrath <roland@gnu.org> |
---|---|
date | Wed, 10 May 1995 15:03:48 +0000 |
parents | f9f787d5e5ff |
children | 443ebb2a278a |
line wrap: on
line diff
--- a/src/getloadavg.c Tue May 09 21:36:53 1995 +0000 +++ b/src/getloadavg.c Wed May 10 15:03:48 1995 +0000 @@ -210,6 +210,10 @@ #define LOAD_AVE_TYPE long #endif +#ifdef _AIX +#define LOAD_AVE_TYPE long +#endif + #endif /* No LOAD_AVE_TYPE. */ #ifdef OSF_ALPHA @@ -254,6 +258,10 @@ #define FSCALE 100.0 #endif +#ifdef _AIX +#define FSCALE 65536.0 +#endif + #endif /* Not FSCALE. */ #if !defined (LDAV_CVT) && defined (FSCALE) @@ -315,6 +323,10 @@ #define NLIST_STRUCT #endif +#ifdef _AIX +#define NLIST_STRUCT +#endif + #endif /* defined (NLIST_STRUCT) */ @@ -340,7 +352,7 @@ #define LDAV_SYMBOL "_Loadavg" #endif -#if !defined(LDAV_SYMBOL) && ((defined(hpux) && !defined(hp9000s300)) || defined(_SEQUENT_) || defined(SVR4) || defined(ISC) || defined(sgi) || (defined (ardent) && defined (titan))) +#if !defined(LDAV_SYMBOL) && ((defined(hpux) && !defined(hp9000s300)) || defined(_SEQUENT_) || defined(SVR4) || defined(ISC) || defined(sgi) || (defined (ardent) && defined (titan)) || defined (_AIX)) #define LDAV_SYMBOL "avenrun" #endif @@ -790,23 +802,29 @@ #endif /* NLIST_STRUCT */ #ifndef SUNOS_5 - if (nlist (KERNEL_FILE, nl) >= 0) - /* Omit "&& nl[0].n_type != 0 " -- it breaks on Sun386i. */ - { + if ( +#ifndef _AIX + nlist (KERNEL_FILE, nl) +#else /* _AIX */ + knlist (nl, 1, sizeof (nl[0])) +#endif + >= 0) + /* Omit "&& nl[0].n_type != 0 " -- it breaks on Sun386i. */ + { #ifdef FIXUP_KERNEL_SYMBOL_ADDR - FIXUP_KERNEL_SYMBOL_ADDR (nl); + FIXUP_KERNEL_SYMBOL_ADDR (nl); #endif - offset = nl[0].n_value; + offset = nl[0].n_value; + } +#endif /* !SUNOS_5 */ +#else /* sgi */ + int ldav_off; + + ldav_off = sysmp (MP_KERNADDR, MPKA_AVENRUN); + if (ldav_off != -1) + offset = (long) ldav_off & 0x7fffffff; +#endif /* sgi */ } -#endif /* !SUNOS_5 */ -#else /* sgi */ - int ldav_off; - - ldav_off = sysmp (MP_KERNADDR, MPKA_AVENRUN); - if (ldav_off != -1) - offset = (long) ldav_off & 0x7fffffff; -#endif /* sgi */ - } /* Make sure we have /dev/kmem open. */ if (!getloadavg_initialized)