rnd-20061230-1-src
[rocksndiamonds.git] / src / libgame / platform.h
index 02513071f7988999d00ddbf1046dd5a4810a566a..d8773420bb4a8b18cf23398364d16f49d178f15e 100644 (file)
@@ -1,20 +1,22 @@
 /***********************************************************
-*  Rocks'n'Diamonds -- McDuffin Strikes Back!              *
+* Artsoft Retro-Game Library                               *
 *----------------------------------------------------------*
-*  (c) 1995-98 Artsoft Entertainment                       *
-*              Holger Schemel                              *
-*              Oststrasse 11a                              *
-*              33604 Bielefeld                             *
-*              phone: ++49 +521 290471                     *
-*              email: aeglos@valinor.owl.de                *
+* (c) 1994-2006 Artsoft Entertainment                      *
+*               Holger Schemel                             *
+*               Detmolder Strasse 189                      *
+*               33604 Bielefeld                            *
+*               Germany                                    *
+*               e-mail: info@artsoft.org                   *
 *----------------------------------------------------------*
-*  platform.h                                              *
+* platform.h                                               *
 ***********************************************************/
 
 #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_UNIX
 #endif
 
-/* define additional keywords for several Unix platforms */
+
+/* ========================================================================= */
+/* define additional keywords for MS-DOS platform                            */
+/* ========================================================================= */
+
+#if defined(PLATFORM_MSDOS)
+
+#ifndef TARGET_ALLEGRO
+#define TARGET_ALLEGRO
+#endif
+
+#ifndef TARGET_X11
+#define TARGET_X11
+#endif
+
+#endif
+
+
+/* ========================================================================= */
+/* define additional keywords for several Unix platforms                     */
+/* ========================================================================= */
+
+#if defined(PLATFORM_UNIX) && defined(TARGET_X11)
+#define TARGET_X11_NATIVE
+#endif
 
 #if defined(linux)
 #define PLATFORM_LINUX
 
 #if defined(__FreeBSD__)
 #define PLATFORM_FREEBSD
+#define PLATFORM_BSD
+#endif
+
+#if defined(__NetBSD__)
+#define PLATFORM_NETBSD
+#define PLATFORM_BSD
+#endif
+
+#if defined(__bsdi__)
+#define PLATFORM_BSDI
+#define PLATFORM_BSD
+#endif
+
+#if defined(sparc) && defined(sun)
+#define PLATFORM_SUNOS
+#endif
+
+#if defined(__APPLE__) && defined(__MACH__)
+#define PLATFORM_MACOSX
+#endif
+
+#if defined(NeXT)
+#define PLATFORM_NEXT
 #endif
 
 /* detecting HP-UX by the following compiler keyword definitions:
 #define PLATFORM_HPUX
 #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 */