CFLAGS = -O2

TIMESTAMP=tml-`date +%Y%m%d`

all:
	mkdir -p ../../{lib,bin} && \
	gcc $(CFLAGS) -c win_iconv.c && \
	ar crv ../../lib/libiconv.a win_iconv.o && \
	gcc $(CFLAGS) -shared -o ../../bin/iconv.dll win_iconv_dll.c && \
	rm -f /tmp/win-iconv_$(TIMESTAMP)_win32.zip && \
	rm -f /tmp/win-iconv-dll_$(TIMESTAMP)_win32.zip && \
	(cd ../.. && \
	zip /tmp/win-iconv_$(TIMESTAMP)_win32.zip win_iconv.README.txt lib/libiconv.a include/iconv.h src/win_iconv/{win_iconv.c,Makefile} && \
	zip /tmp/win-iconv-dll_$(TIMESTAMP)_win32.zip win_iconv.README.txt bin/iconv.dll src/win_iconv/{win_iconv.c,win_iconv_dll.c,Makefile} ) && \
	\
	mkdir -p ../../win64/{bin,lib} ../../win64/include && \
	cp -p ../../include/iconv.h ../../win64/include && \
	x86_64-pc-mingw32-gcc $(CFLAGS) -o win_iconv.win64.o -c win_iconv.c && \
	x86_64-pc-mingw32-ar crv ../../win64/lib/libiconv.a win_iconv.win64.o && \
	x86_64-pc-mingw32-gcc $(CFLAGS) -shared -o ../../win64/bin/iconv.dll win_iconv_dll.c && \
	rm -f /tmp/win-iconv-$(TIMESTAMP)_win64.zip && \
	rm -f /tmp/win-iconv-dll_$(TIMESTAMP)_win64.zip && \
	( cd ../.. && \
	zip /tmp/win-iconv_$(TIMESTAMP)_win64.zip win_iconv.README.txt src/win_iconv/{win_iconv.c,Makefile}  include/iconv.h && \
	zip /tmp/win-iconv-dll_$(TIMESTAMP)_win64.zip win_iconv.README.txt src/win_iconv/{win_iconv.c,win_iconv_dll.c,Makefile} && \
	cd win64 && \
	zip /tmp/win-iconv_$(TIMESTAMP)_win64.zip lib/libiconv.a && \
	zip /tmp/win-iconv-dll_$(TIMESTAMP)_win64.zip bin/iconv.dll )
