changeset 33:8b2b0677eb99

Build system changes for SDL/Win32 cross-build via MinGW hosted on Linux.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 24 May 2010 00:22:37 +0300
parents 7deee201073e
children 32ec3c0d1b6c
files Makefile
diffstat 1 files changed, 10 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Mon May 24 00:22:03 2010 +0300
+++ b/Makefile	Mon May 24 00:22:37 2010 +0300
@@ -1,6 +1,7 @@
 ### Global settings
-CFLAGS += -g -W -Wall -O3
+CFLAGS += -W -Wall -O3
 LDFLAGS +=
+MINGW_PATH=/usr/local/i386-mingw32
 
 ### Subdirectories to build
 SUBDIRS=pwplib peluce nykyaeka oldchsool pwpzax
@@ -31,14 +32,18 @@
 config.mak:
 	@echo "" > $@
 	@echo "# Build target: $(XTARGET)" >> $@
+	@echo "PATH=$(PATH)" >> $@
 	@echo "CC=$(CC)" >> $@
+	@echo "AR=$(AR)" >> $@
+	@echo "LD=$(LD)" >> $@
 	@echo "CFLAGS=$(CFLAGS) $(XCFLAGS)" >> $@
 	@echo "LDFLAGS=$(LDFLAGS) $(XLDFLAGS)" >> $@
+	@echo "BINEXT=$(BINEXT)" >> $@
 	@echo "" >> $@
 
 ### Build sub targets	
 all:
-	@for subdir in $(SUBDIRS); do $(MAKE) -C "$$subdir"; done
+	@for subdir in $(SUBDIRS); do if ! $(MAKE) -C "$$subdir"; then echo "Make returned $?"; exit 1; fi; done
 
 pwplib.a:
 	$(MAKE) -C pwplib
@@ -70,8 +75,9 @@
 
 sdl-win32: endianchk
 	$(RM) config.mak && \
-	$(MAKE) config.mak CC=i586-mingw32msvc-gcc AR=i586-mingw32msvc-ar \
-	XTARGET="$@" XCFLAGS="-DUNIX -DDRIVE_SDL `sdl-config --cflags`" XLDFLAGS="`sdl-config --libs`" && \
+	$(MAKE) config.mak PATH="$(MINGW_PATH)/bin:/usr/bin:/bin" BINEXT=".exe" CC="gcc" \
+	XTARGET="$@" XCFLAGS="-DDRIVE_SDL `$(MINGW_PATH)/bin/sdl-config --cflags`" \
+	XLDFLAGS="-s -L$(MINGW_PATH)/lib/ `$(MINGW_PATH)/bin/sdl-config --libs` -lwinmm" && \
 	$(MAKE) all
 
 .dummy: