From 607b33a1fe760859d5079cbe743fdc2364d3c6e7 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Sun, 17 Aug 1997 16:24:30 +0000 Subject: Different strategy regarding whether to declare getrusage() and getpagesize() -- #ifdef doesn't work, Linux has conflicting decls in its headers. Choice: only declare the return type, not the argument prototype, and not on Linux. --- Modules/resource.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/Modules/resource.c b/Modules/resource.c index cc81337..428c32c 100644 --- a/Modules/resource.c +++ b/Modules/resource.c @@ -36,17 +36,15 @@ PERFORMANCE OF THIS SOFTWARE. #include #include -/* don't know why this isn't defined in a header file */ -#ifndef getrusage -int getrusage(int who, struct rusage *rusage); -#endif - -#ifndef getpagesize -#ifdef linux -extern size_t getpagesize(void); -#else -int getpagesize(void); -#endif +/* On some systems, these aren't in any header file. + On others they are, with inconsistent prototypes. + We declare the (default) return type, to shut up gcc -Wall; + but we can't declare the prototype, to avoid errors + when the header files declare it different. + Worse, on some Linuxes, getpagesize() returns a size_t... */ +#ifndef linux +int getrusage(); +int getpagesize(); #endif #define doubletime(TV) ((double)(TV).tv_sec + (TV).tv_usec * 0.000001) -- cgit v0.12