diff --git a/src/xpdev/sdlfuncs.c b/src/xpdev/sdlfuncs.c
index 547fcda44e5fbf7998a73787952a80a97916ef72..fb943ea057e5e0f9d1ae786b1da9e6fee15dab51 100644
--- a/src/xpdev/sdlfuncs.c
+++ b/src/xpdev/sdlfuncs.c
@@ -5,7 +5,6 @@
 #endif
 
 #include "gen_defs.h"
-#undef main
 #include "sdlfuncs.h"
 
 #ifndef _WIN32
diff --git a/src/xpdev/sdlfuncs.h b/src/xpdev/sdlfuncs.h
index 616929eede5ff11eadb18b1aac984cd283f1211b..10219b9fc3b05b270db5626988989854e6926fb7 100644
--- a/src/xpdev/sdlfuncs.h
+++ b/src/xpdev/sdlfuncs.h
@@ -58,6 +58,7 @@ extern "C" {
 int load_sdl_funcs(struct sdlfuncs *sdlf);
 int init_sdl_audio(void);
 int init_sdl_video(void);
+int SDL_main_env(int argc, char *argv[], char **env);
 #ifdef __cplusplus
 }
 #endif