rnd-20070125-1-src
[rocksndiamonds.git] / src / libgame / platform.h
index e5851343cd7857d3fda92f1e83e207e1108499fe..7ac79f3bbeb2f43ab13376aa12b414a0e21abbe5 100644 (file)
@@ -1,7 +1,7 @@
 /***********************************************************
 * Artsoft Retro-Game Library                               *
 *----------------------------------------------------------*
-* (c) 1994-2001 Artsoft Entertainment                      *
+* (c) 1994-2006 Artsoft Entertainment                      *
 *               Holger Schemel                             *
 *               Detmolder Strasse 189                      *
 *               33604 Bielefeld                            *
 #ifndef PLATFORM_H
 #define PLATFORM_H
 
-/* define keywords for supported main platforms */
+/* ========================================================================= */
+/* define keywords for supported main platforms (Unix, DOS and Windows)      */
+/* ========================================================================= */
 
 #if defined(MSDOS)
 #define PLATFORM_MSDOS
+#define PLATFORM_STRING "DOS"
 #elif defined(WIN32)
 #define PLATFORM_WIN32
+#define PLATFORM_STRING "Windows"
 #else
 #define PLATFORM_UNIX
+#define PLATFORM_STRING "Unix"
 #endif
 
+
 /* ========================================================================= */
 /* define additional keywords for MS-DOS platform                            */
 /* ========================================================================= */
@@ -40,6 +46,7 @@
 
 #endif
 
+
 /* ========================================================================= */
 /* define additional keywords for several Unix platforms                     */
 /* ========================================================================= */
 
 #if defined(linux)
 #define PLATFORM_LINUX
+#undef  PLATFORM_STRING
+#define PLATFORM_STRING "Linux"
 #endif
 
 #if defined(__FreeBSD__)
 #define PLATFORM_FREEBSD
+#define PLATFORM_BSD
+#undef  PLATFORM_STRING
+#define PLATFORM_STRING "FreeBSD"
+#endif
+
+#if defined(__NetBSD__)
+#define PLATFORM_NETBSD
+#define PLATFORM_BSD
+#undef  PLATFORM_STRING
+#define PLATFORM_STRING "NetBSD"
+#endif
+
+#if defined(__bsdi__)
+#define PLATFORM_BSDI
+#define PLATFORM_BSD
+#undef  PLATFORM_STRING
+#define PLATFORM_STRING "BSDI"
+#endif
+
+#if defined(sparc) && defined(sun)
+#define PLATFORM_SUNOS
+#undef  PLATFORM_STRING
+#define PLATFORM_STRING "Solaris"
+#endif
+
+#if defined(__APPLE__) && defined(__MACH__)
+#define PLATFORM_MACOSX
+#undef  PLATFORM_STRING
+#define PLATFORM_STRING "Mac OS X"
+#endif
+
+#if defined(NeXT)
+#define PLATFORM_NEXT
+#undef  PLATFORM_STRING
+#define PLATFORM_STRING "NeXT"
 #endif
 
 /* detecting HP-UX by the following compiler keyword definitions:
 
 #if defined(__hpux__) || defined(__hpux) || defined(hpux)
 #define PLATFORM_HPUX
+#undef  PLATFORM_STRING
+#define PLATFORM_STRING "HP-UX"
+#endif
+
+
+/* ========================================================================= */
+/* this should better go into "system.h" or "features.h" (yet to be created) */
+/* ========================================================================= */
+
+#if defined(PLATFORM_UNIX) || defined(TARGET_SDL)
+#define NETWORK_AVALIABLE
 #endif
 
 #endif /* PLATFORM_H */