From c52ba7f60673a15c8df6964ae3745b6357e1ebbc Mon Sep 17 00:00:00 2001 From: Erik Ekman Date: Sat, 31 May 2014 12:03:33 +0200 Subject: [PATCH] Refactor targets to build crosscompiled zipfiles Move common things into new target Add 32/64 bit windows version with MinGW-w64 Serve textfiles with CRLF and .txt suffix Strip windows binaries --- Makefile | 54 +++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 39 insertions(+), 15 deletions(-) diff --git a/Makefile b/Makefile index c378892..33438ae 100644 --- a/Makefile +++ b/Makefile @@ -19,37 +19,61 @@ TARGETOS = `uname` all: @(cd src; $(MAKE) TARGETOS=$(TARGETOS) all) +#Helper target for windows/android zipfiles +iodine-latest: + @rm -rf iodine-latest* + @mkdir -p iodine-latest + @echo "Create date: " > iodine-latest/VERSION.txt + @date >> iodine-latest/VERSION.txt + @echo "Git version: " >> iodine-latest/VERSION.txt + @git rev-parse HEAD >> iodine-latest/VERSION.txt + @for i in README CHANGELOG TODO; do cp $$i iodine-latest/$$i.txt; done + @unix2dos iodine-latest/* + cross-android: @(cd src; $(MAKE) base64u.c base64u.h) @(cd src; ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=Android.mk) -cross-android-dist: - @rm -rf iodine-latest-android* +iodine-latest-android.zip: iodine-latest + @mv iodine-latest iodine-latest-android @mkdir -p iodine-latest-android/armeabi iodine-latest-android/x86 @$(MAKE) cross-android TARGET_ARCH_ABI=armeabi @cp src/libs/armeabi/* iodine-latest-android/armeabi @$(MAKE) cross-android TARGET_ARCH_ABI=x86 @cp src/libs/x86/* iodine-latest-android/x86 - @cp README README-android.txt CH* TO* iodine-latest-android - @echo "Create date: " > iodine-latest-android/VERSION - @date >> iodine-latest-android/VERSION - @echo "Git version: " >> iodine-latest-android/VERSION - @git rev-parse HEAD >> iodine-latest-android/VERSION + @cp README-android.txt iodine-latest-android @zip -r iodine-latest-android.zip iodine-latest-android +cross-mingw32: + @(cd src; $(MAKE) TARGETOS=windows32 CC=i686-w64-mingw32-gcc all) + +cross-mingw64: + @(cd src; $(MAKE) TARGETOS=windows32 CC=x86_64-w64-mingw32-gcc all) + +iodine-latest-windows.zip: iodine-latest + @mv iodine-latest iodine-latest-windows + @mkdir -p iodine-latest-windows/64bit iodine-latest-windows/32bit + @(cd src; $(MAKE) TARGETOS=windows32 CC=i686-w64-mingw32-gcc clean all) + @i686-w64-mingw32-strip bin/iodine* + @for i in `ls bin`; do cp bin/$$i iodine-latest-windows/32bit/$$i.exe; done + @cp /usr/i686-w64-mingw32/bin/zlib1.dll iodine-latest-windows/32bit + @(cd src; $(MAKE) TARGETOS=windows32 CC=x86_64-w64-mingw32-gcc clean all) + @x86_64-w64-mingw32-strip bin/iodine* + @for i in `ls bin`; do cp bin/$$i iodine-latest-windows/64bit/$$i.exe; done + @cp /usr/x86_64-w64-mingw32/bin/zlib1.dll iodine-latest-windows/64bit + @cp README-win32.txt iodine-latest-windows + @zip -r iodine-latest-windows.zip iodine-latest-windows + cross-mingw: @(cd src; $(MAKE) TARGETOS=windows32 CC=i686-mingw32-gcc all) -cross-mingw-dist: cross-mingw - @rm -rf iodine-latest-win32* +iodine-latest-win32.zip: cross-mingw iodine-latest + @mv iodine-latest iodine-latest-win32 @mkdir -p iodine-latest-win32/bin + @i686-mingw32-strip bin/iodine* @for i in `ls bin`; do cp bin/$$i iodine-latest-win32/bin/$$i.exe; done @cp /usr/i686-mingw32/usr/bin/zlib1.dll iodine-latest-win32/bin - @cp README README-win32.txt CH* TO* iodine-latest-win32 - @echo "Create date: " > iodine-latest-win32/VERSION - @date >> iodine-latest-win32/VERSION - @echo "Git version: " >> iodine-latest-win32/VERSION - @git rev-parse HEAD >> iodine-latest-win32/VERSION + @cp README-win32.txt iodine-latest-win32 @zip -r iodine-latest-win32.zip iodine-latest-win32 install: all @@ -76,5 +100,5 @@ clean: @echo "Cleaning..." @(cd src; $(MAKE) clean) @(cd tests; $(MAKE) clean) - @rm -rf bin iodine-latest-win32* iodine-latest-android* + @rm -rf bin iodine-latest*