rnd-20020803-1-src
[rocksndiamonds.git] / src / libgame / platform.h
index 02513071f7988999d00ddbf1046dd5a4810a566a..94c5c4a8bc994d0785b49e359f4c46ed67fdf14d 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-2002 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
 #define PLATFORM_FREEBSD
 #endif
 
+#if defined(__NetBSD__)
+#define PLATFORM_NETBSD
+#endif
+
+#if defined(__bsdi__)
+#define PLATFORM_BSDI
+#endif
+
+#if defined(sparc) || defined(sun)
+#define PLATFORM_SOLARIS
+#endif
+
+#if defined(__APPLE__) && defined(__MACH__)
+#define PLATFORM_MACOSX
+#endif
+
 /* detecting HP-UX by the following compiler keyword definitions:
    - in K&R mode (the default), the HP C compiler defines "hpux"
    - in ANSI mode (-Aa or -Ae), the HP C compiler defines "__hpux"