GCC 3.03 support on OS/2. SDL-1.2
authorRyan C. Gordon <icculus@icculus.org>
Mon, 14 Sep 2009 00:08:12 +0000
branchSDL-1.2
changeset 4193 430e6690c4cd
parent 4192 2f5e884f0a9d
child 4194 05c9e942cc46
GCC 3.03 support on OS/2. Fixes Bugzilla #588.
include/begin_code.h
--- a/include/begin_code.h	Sun Sep 13 22:19:56 2009 +0000
+++ b/include/begin_code.h	Mon Sep 14 00:08:12 2009 +0000
@@ -56,6 +56,15 @@
 #   else
 #    define DECLSPEC
 #   endif
+#  elif defined (__GNUC__) && __GNUC__ < 4
+#   /* Added support for GCC-EMX <v4.x */
+#   /* this is needed for XFree86/OS2 developement */
+#   /* F. Ambacher(anakor@snafu.de) 05.2008 */
+#   ifdef BUILD_SDL
+#    define DECLSPEC    __declspec(dllexport)
+#   else
+#    define DECLSPEC
+#   endif
 #  else
 #   define DECLSPEC
 #  endif
@@ -70,17 +79,22 @@
 
 /* By default SDL uses the C calling convention */
 #ifndef SDLCALL
-#if defined(__WIN32__) && !defined(__GNUC__)
-#define SDLCALL __cdecl
-#else
-#ifdef __OS2__
-/* But on OS/2, we use the _System calling convention */
-/* to be compatible with every compiler */
-#define SDLCALL _System
-#else
-#define SDLCALL
-#endif
-#endif
+# if defined(__WIN32__) && !defined(__GNUC__)
+#  define SDLCALL __cdecl
+# elif defined(__OS2__)
+#  if defined (__GNUC__) && __GNUC__ < 4
+#   /* Added support for GCC-EMX <v4.x */
+#   /* this is needed for XFree86/OS2 developement */
+#   /* F. Ambacher(anakor@snafu.de) 05.2008 */
+#   define SDLCALL _cdecl
+#  else
+#   /* On other compilers on OS/2, we use the _System calling convention */
+#   /* to be compatible with every compiler */
+#   define SDLCALL _System
+#  endif
+# else
+#  define SDLCALL
+# endif
 #endif /* SDLCALL */
 
 #ifdef __SYMBIAN32__