changeset 166:39877400bd1e

Fixed Solaris nitpicks (thanks Mattias!)
author Sam Lantinga <slouken@libsdl.org>
date Tue, 04 Sep 2001 22:48:09 +0000
parents 6a4e09bbbbc0
children cb384ef627f6
files configure.in include/SDL_types.h src/timer/linux/SDL_systimer.c src/video/x11/SDL_x11image.c
diffstat 4 files changed, 14 insertions(+), 43 deletions(-) [+]
line wrap: on
line diff
--- a/configure.in	Tue Sep 04 22:38:01 2001 +0000
+++ b/configure.in	Tue Sep 04 22:48:09 2001 +0000
@@ -1196,20 +1196,14 @@
     # and what runs on older Macs - while in theory "Carbon" defns
     # are consistent between the two, in practice Carbon is still
     # changing. -sts Aug 2000
+    mac_autoconf_target_workaround="MAC"
     CFLAGS="$CFLAGS -I/System/Library/Frameworks/Carbon.framework/Headers \
       -I/System/Library/Frameworks/Cocoa.framework/Headers -fpascal-strings \
-      -DENABLE_QUARTZ -DMACOSX -DTARGET_API_MAC_CARBON=1 -I\$(top_srcdir)/src/video/quartz"
+      -DENABLE_QUARTZ -DMACOSX -DTARGET_API_${mac_autoconf_target_workaround}_CARBON=1 -I\$(top_srcdir)/src/video/quartz"
     VIDEO_SUBDIRS="$VIDEO_SUBDIRS quartz"
     VIDEO_DRIVERS="$VIDEO_DRIVERS quartz/libvideo_quartz.la"
 }
 
-dnl Set up the kernel statistics library for Solaris
-CheckKSTAT()
-{
-    CFLAGS="$CFLAGS -DHAVE_KSTAT"
-    SYSTEM_LIBS="$SYSTEM_LIBS -lkstat"
-}
-
 case "$target" in
     *-*-linux*)
         ARCH=linux
@@ -1516,7 +1510,6 @@
         CheckAAlib
         CheckOpenGL
         CheckPTHREAD
-        CheckKSTAT
         # Set up files for the main() stub
         COPY_ARCH_SRC(src/main, linux, SDL_main.c)
         # Set up files for the audio library
@@ -1566,7 +1559,6 @@
         CheckAAlib
         CheckOpenGL
         CheckPTHREAD
-        CheckKSTAT
         # Set up files for the main() stub
         COPY_ARCH_SRC(src/main, linux, SDL_main.c)
         # Set up files for the audio library
--- a/include/SDL_types.h	Tue Sep 04 22:38:01 2001 +0000
+++ b/include/SDL_types.h	Tue Sep 04 22:48:09 2001 +0000
@@ -47,7 +47,7 @@
 
 /* Figure out how to support 64-bit datatypes */
 #if !defined(__STRICT_ANSI__)
-#if defined(__GNUC__) || defined(__MWERKS__) /* MJS */
+#if defined(__GNUC__) || defined(__MWERKS__) || defined(__SUNPRO_C)
 #define SDL_HAS_64BIT_TYPE	long long
 #elif defined(_MSC_VER) /* VC++ */
 #define SDL_HAS_64BIT_TYPE	__int64
--- a/src/timer/linux/SDL_systimer.c	Tue Sep 04 22:38:01 2001 +0000
+++ b/src/timer/linux/SDL_systimer.c	Tue Sep 04 22:48:09 2001 +0000
@@ -46,11 +46,11 @@
 
 /* The following defines should really be determined at configure time */
 
-#ifdef linux
+#if defined(linux)
 /* Linux select() changes its timeout parameter upon return to contain
    the remaining time. Most other unixen leave it unchanged or undefined. */
 #define SELECT_SETS_REMAINING
-#elif defined(__bsdi__) || defined(__FreeBSD__) || defined(__sun__)
+#elif defined(__bsdi__) || defined(__FreeBSD__) || defined(__sun)
 #define USE_NANOSLEEP
 #endif
 
--- a/src/video/x11/SDL_x11image.c	Tue Sep 04 22:38:01 2001 +0000
+++ b/src/video/x11/SDL_x11image.c	Tue Sep 04 22:48:09 2001 +0000
@@ -26,23 +26,13 @@
 #endif
 
 #include <stdlib.h>
+#include <unistd.h>
 
 #include "SDL_error.h"
 #include "SDL_endian.h"
 #include "SDL_events_c.h"
 #include "SDL_x11image_c.h"
 
-#if defined(__USLC__)
-#ifdef HAVE_KSTAT
-#undef HAVE_KSTAT
-#endif
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_KSTAT
-#include <kstat.h>
-#endif
-
 #ifndef NO_SHARED_MEMORY
 
 /* Shared memory information */
@@ -177,13 +167,13 @@
 	}
 }
 
-/* This is a hack to see whether this system has more than 1 CPU */
+/* Determine the number of CPUs in the system */
 static int num_CPU(void)
 {
        static int num_cpus = 0;
 
        if(!num_cpus) {
-#ifdef linux
+#if defined(__linux)
            char line[BUFSIZ];
            FILE *pstat = fopen("/proc/stat", "r");
            if ( pstat ) {
@@ -194,23 +184,12 @@
                }
                fclose(pstat);
            }
-#elif defined(HAVE_KSTAT)
-           kstat_ctl_t *kc = kstat_open();
-           kstat_t *ks;
-           kstat_named_t *kn;
-           if(kc) {
-               if((ks = kstat_lookup(kc, "unix", -1, "system_misc"))
-                  && kstat_read(kc, ks, NULL) != -1
-                  && (kn = kstat_data_lookup(ks, "ncpus")))
-#ifdef KSTAT_DATA_UINT32
-                   num_cpus = kn->value.ui32;
-#else
-                   num_cpus = kn->value.ul; /* needed in solaris <2.6 */
-#endif
-               kstat_close(kc);
-           }
-#elif defined(__USLC__)
-           num_cpus = (int)sysconf(_SC_NPROCESSORS_CONF);
+#elif defined(_SC_NPROCESSORS_ONLN)
+	   /* number of processors online (SVR4.0MP compliant machines) */
+           num_cpus = sysconf(_SC_NPROCESSORS_ONLN);
+#elif defined(_SC_NPROCESSORS_CONF)
+	   /* number of processors configured (SVR4.0MP compliant machines) */
+           num_cpus = sysconf(_SC_NPROCESSORS_CONF);
 #endif
            if ( num_cpus <= 0 ) {
                num_cpus = 1;