From 54a0245b70b01b8725de24794ae5049a66a1be1e Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Wed, 1 Nov 2017 17:41:25 -0700 Subject: [PATCH] Fixed bug 3926 - SDL_main export e_pluschauskas I noticed that after updating SDL to 2.0.6 my application now exports SDL_main. At GitHub SDL mirror (branch 2.0.5) SDL_main prototyped as extern C_LINKAGE int SDL_main(int argc, char *argv[]); but at branch 2.0.6 prototype is extern C_LINKAGE DECLSPEC int SDL_main(int argc, char *argv[]); --- include/SDL_main.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/include/SDL_main.h b/include/SDL_main.h index 2af32360f7be8..9d1cb0a4d4098 100644 --- a/include/SDL_main.h +++ b/include/SDL_main.h @@ -63,10 +63,13 @@ /* On Android SDL provides a Java class in SDLActivity.java that is the main activity entry point. - See README-android.md for more details on extending that class. + See docs/README-android.md for more details on extending that class. */ #define SDL_MAIN_NEEDED +/* We need to export SDL_main so it can be launched from Java */ +#define SDLMAIN_DECLSPEC DECLSPEC + #elif defined(__NACL__) /* On NACL we use ppapi_simple to set up the application helper code, then wait for the first PSE_INSTANCE_DIDCHANGEVIEW event before @@ -85,6 +88,10 @@ #define C_LINKAGE #endif /* __cplusplus */ +#ifndef SDLMAIN_DECLSPEC +#define SDLMAIN_DECLSPEC +#endif + /** * \file SDL_main.h * @@ -107,7 +114,7 @@ /** * The prototype for the application's main() function */ -extern C_LINKAGE DECLSPEC int SDL_main(int argc, char *argv[]); +extern C_LINKAGE SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[]); #include "begin_code.h"