aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@android.com>2010-06-10 15:14:55 -0700
committerDavid 'Digit' Turner <digit@android.com>2010-06-10 15:16:09 -0700
commitca85ee2923bd65f1d443e548ac48308f4a1ab655 (patch)
tree3afc64fdfec958b128c132696edf3a2087422a99
parent526a9913fef4801daf7ee0dde91c9c926c514195 (diff)
downloadexternal_qemu-ca85ee2923bd65f1d443e548ac48308f4a1ab655.zip
external_qemu-ca85ee2923bd65f1d443e548ac48308f4a1ab655.tar.gz
external_qemu-ca85ee2923bd65f1d443e548ac48308f4a1ab655.tar.bz2
Fix the windows build.
It looks like the mingw32 linker has some issues with WinMain() being in a static library. Change-Id: I06e61ba3ede40c2f72c97949d13dee8aafdcc7d9
-rw-r--r--Makefile.android15
1 files changed, 14 insertions, 1 deletions
diff --git a/Makefile.android b/Makefile.android
index 2ef7c17..6743e8d 100644
--- a/Makefile.android
+++ b/Makefile.android
@@ -527,7 +527,14 @@ EMULATOR_UI_CFLAGS :=
# include the SDL sources
#
-LOCAL_SRC_FILES += $(SDL_SOURCES) $(SDLMAIN_SOURCES)
+
+# IMPORTANT: Normally, we should add SDLMAIN_SOURCES here, however this breaks
+# the Linux mingw32 build. Apparently, the i586-mingw32-ld wants the
+# implementation of _WinMain@16 to be in an object file on the final
+# link command used to generate the executable, and will not search
+# in the static libraries that are used to build it.
+#
+LOCAL_SRC_FILES += $(SDL_SOURCES) #$(SDLMAIN_SOURCES)
EMULATOR_UI_CFLAGS += $(SDL_CFLAGS) -I$(LOCAL_PATH)/$(SDL_DIR)/include
# the skin support sources
@@ -750,6 +757,9 @@ LOCAL_CFLAGS += $(SDL_CFLAGS)
LOCAL_LDLIBS += $(SDL_LDLIBS)
LOCAL_STATIC_LIBRARIES += $(SDL_STATIC_LIBRARIES)
+$(info LOCAL_LDLIBS=$(LOCAL_LDLIBS))
+$(info LOCAL_STATIC_LIBRARIES=$(LOCAL_STATIC_LIBRARIES))
+
# add ELFF-specific flags
#
LOCAL_LDLIBS += $(ELFF_LDLIBS)
@@ -876,6 +886,9 @@ endif
LOCAL_MODULE := emulator
+# See comment about SDLMAIN_SOURCES in the 'emulator-ui' module declarations.
+LOCAL_SRC_FILES += $(SDLMAIN_SOURCES)
+
include $(BUILD_HOST_EXECUTABLE)
endif # TARGET_ARCH == arm