X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fplatform.h;h=7ac79f3bbeb2f43ab13376aa12b414a0e21abbe5;hb=dff0e0c8702770fe23992f07964ebe9ed54e9f7c;hp=02513071f7988999d00ddbf1046dd5a4810a566a;hpb=da14f69fd95c7bd5a0d70cdf4935af06f1f20a04;p=rocksndiamonds.git diff --git a/src/libgame/platform.h b/src/libgame/platform.h index 02513071..7ac79f3b 100644 --- a/src/libgame/platform.h +++ b/src/libgame/platform.h @@ -1,37 +1,103 @@ /*********************************************************** -* 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_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 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 +#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: @@ -42,6 +108,17 @@ #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 */