$NetBSD: patch-aa,v 1.6 2006/06/19 19:32:41 joerg Exp $ --- hot-babe.c.orig 2004-12-05 22:59:38.000000000 +0000 +++ hot-babe.c @@ -29,6 +29,12 @@ #endif #endif +#if defined(__sun) +# include +# include +# define u_int64_t uint64_t +#endif + /* x11 includes */ #include #include @@ -68,20 +74,15 @@ typedef struct HotBabeData bm; -#if 0 +#if defined(__NetBSD__) || defined(__sun) || defined(__DragonFly__) /* FIXME New BSD and Solaris code.. to check. * doesn't work with Linux (getloadavg return 1.000) */ static int system_cpu(void) { - int rc; - double loadavg[15]; - rc=getloadavg(loadavg, 1); - while( rc-- ) - printf( "load = %f\n", loadavg[rc] ); - rc=100*loadavg[0]; - return rc; + double loadavg; + return ((getloadavg(&loadavg, 1) == -1) ? 0 : (100 * loadavg)); } -#endif +#elif defined(__linux__) || defined(__FreeBSD__) /* returns current CPU load in percent, 0 to 256 */ static int system_cpu(void) @@ -144,6 +145,9 @@ static int system_cpu(void) return cpuload; } +#else +# error Unknown operating system. +#endif GdkPixmap *pixmap; GdkGC *gc;