diff Makefile @ 71:a87eb778f225

Improvements to the MinGW crossbuild. Should now build with default tools from Debian mingw packages, though you need Win32 version of libSDL with the necessary headers and so on in addition. 64-bit builds not tested and probably won't work. Tested on Debian 7.0, earlier won't work. binutils-mingw-w64-i686 gcc-mingw-w64-i686 mingw-w64-i686-dev
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 14 Aug 2012 03:08:10 +0300
parents 1bd4e39c600b
children 1096f6ffd15c
line wrap: on
line diff
--- a/Makefile	Tue Aug 14 03:05:03 2012 +0300
+++ b/Makefile	Tue Aug 14 03:08:10 2012 +0300
@@ -3,8 +3,9 @@
 LDFLAGS +=
 RANLIB=ranlib
 
-MINGW32_PATH=/usr/local/i386-mingw32
-MINGW64_PATH=/foo/bar
+MINGW32_PREFIX=i686-w64-mingw32-
+MINGW32_PATH=/usr/i686-w64-mingw32
+MINGW64_PREFIX=x86_64-w64-mingw32-
 
 ### Subdirectories to build
 SUBDIRS=pwplib peluce nykyaeka oldchsool pwpzax
@@ -36,11 +37,10 @@
 	@echo "" > $@
 	@echo "# Build target: $(XTARGET)" >> $@
 	@echo "XTARGET=$(XTARGET)" >> $@
-	@echo "PATH=$(PATH)" >> $@
-	@echo "CC=$(CC)" >> $@
-	@echo "AR=$(AR)" >> $@
-	@echo "LD=$(LD)" >> $@
-	@echo "RANLIB=$(RANLIB)" >> $@
+	@echo "CC=$(PREFIX)$(CC)" >> $@
+	@echo "AR=$(PREFIX)$(AR)" >> $@
+	@echo "LD=$(PREFIX)$(LD)" >> $@
+	@echo "RANLIB=$(PREFIX)$(RANLIB)" >> $@
 	@echo "CFLAGS=$(CFLAGS) $(XCFLAGS)" >> $@
 	@echo "LDFLAGS=$(LDFLAGS) $(XLDFLAGS)" >> $@
 	@echo "BINEXT=$(BINEXT)" >> $@
@@ -80,14 +80,14 @@
 
 sdl-win32:
 	$(RM) config.mak && \
-	$(MAKE) config.mak PATH="$(MINGW32_PATH)/bin:/usr/bin:/bin" BINEXT=".exe" CC="gcc" \
+	$(MAKE) config.mak PREFIX="$(MINGW32_PREFIX)" BINEXT=".exe" CC="gcc" \
 	XTARGET="$@" XCFLAGS="-DDRIVE_SDL `$(MINGW32_PATH)/bin/sdl-config --cflags`" \
 	XLDFLAGS="-s -L$(MINGW32_PATH)/lib/ `$(MINGW32_PATH)/bin/sdl-config --libs` -lwinmm" && \
 	$(MAKE) all
 
 sdl-win64:
 	$(RM) config.mak && \
-	$(MAKE) config.mak PATH="$(MINGW64_PATH)/bin:/usr/bin:/bin" BINEXT=".exe" CC="gcc" \
+	$(MAKE) config.mak PREFIX="$(MINGW64_PREFIX)" BINEXT=".exe" CC="gcc" \
 	XTARGET="$@" XCFLAGS="-DDRIVE_SDL `$(MINGW64_PATH)/bin/sdl-config --cflags`" \
 	XLDFLAGS="-s -L$(MINGW64_PATH)/lib/ `$(MINGW64_PATH)/bin/sdl-config --libs` -lwinmm" && \
 	$(MAKE) all