patch #1005305 - Source/exehead/Makefile for cross compiling on POSIX systems

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@3619 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2004-08-13 19:07:09 +00:00
parent c78720010b
commit f549788c32

View file

@ -1,3 +1,6 @@
#
# Adapted for cross-compiling by Bas Mevissen
#
# -- Objects and source files --
DEPENDS = ../Platform.h config.h
@ -14,12 +17,23 @@ SRCS = $(ZLIB_SRCS) $(BZIP2_SRCS) $(LZMA_SRCS)
LIBS = -lole32 -lgdi32 -lversion -luuid -lcomctl32 -lkernel32 -luser32 -lshell32 -ladvapi32
# Detect if cross compiling. If so, set cross prefix and NATIVE EXE suffix
ifeq "$(strip $(findstring i386pe,$(shell ld -V)))" ""
CROSS_PREFIX = mingw32-
EXESUFF =
else
CROSS_PREFIX =
EXESUFF = .exe
endif
# -- Programs --
CC = gcc
RC = windres
RM = rm
MKDIR = mkdir
BIN2H = ./bin2h
NATIVE_CC = gcc
CC = $(CROSS_PREFIX)gcc
CXX = $(CROSS_PREFIX)g++
RC = $(CROSS_PREFIX)windres
RM = rm
MKDIR = mkdir
BIN2H = ./bin2h$(EXESUFF)
# -- Compilers and linker flags --
CPPFLAGS = -DEXEHEAD -DWIN32_LEAN_AND_MEAN -DZEXPORT=__stdcall -DLZMACALL=__fastcall
@ -45,12 +59,15 @@ endif
dirs :
$(mkdirline)
$(BIN2H) : bin2h.c
$(NATIVE_CC) -Wall -ansi -Wl,-s -o $@ $^
exehead_zlib : dirs Release-zlib/exehead_zlib.exe Release-zlib/exehead_zlib.h
Release-zlib/exehead_zlib.exe : $(ZLIB_OBJS) sections_script
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ZLIB_OBJS) $(LIBS)
Release-zlib/exehead_zlib.h : Release-zlib/exehead_zlib.exe
Release-zlib/exehead_zlib.h : Release-zlib/exehead_zlib.exe $(BIN2H)
$(BIN2H) $< $@ zlib_header_data
Release-zlib/%.o : %.c
@ -67,7 +84,7 @@ exehead_bzip2 : dirs Release-bzip2/exehead_bzip2.exe Release-bzip2/exehead_bzip2
Release-bzip2/exehead_bzip2.exe : $(BZIP2_OBJS) sections_script
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(BZIP2_OBJS) $(LIBS)
Release-bzip2/exehead_bzip2.h : Release-bzip2/exehead_bzip2.exe
Release-bzip2/exehead_bzip2.h : Release-bzip2/exehead_bzip2.exe $(BIN2H)
$(BIN2H) $< $@ bzip2_header_data
Release-bzip2/%.o : %.c
@ -81,7 +98,7 @@ exehead_lzma : dirs Release-lzma/exehead_lzma.exe Release-lzma/exehead_lzma.h
Release-lzma/exehead_lzma.exe : $(LZMA_OBJS) sections_script
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(LZMA_OBJS) $(LIBS)
Release-lzma/exehead_lzma.h : Release-lzma/exehead_lzma.exe
Release-lzma/exehead_lzma.h : Release-lzma/exehead_lzma.exe $(BIN2H)
$(BIN2H) $< $@ lzma_header_data
Release-lzma/%.o : %.c
@ -92,13 +109,13 @@ Release-lzma/resource.res : resource.rc resource.h config.h
exehead_resources : dirs Release-zlib/bitmap1.h Release-zlib/icon.h Release-zlib/unicon.h
Release-zlib/bitmap1.h : bitmap1.bmp
Release-zlib/bitmap1.h : bitmap1.bmp $(BIN2H)
$(BIN2H) bitmap1.bmp Release-zlib/bitmap1.h bitmap1_data
Release-zlib/icon.h : nsis.ico
Release-zlib/icon.h : nsis.ico $(BIN2H)
$(BIN2H) nsis.ico Release-zlib/icon.h icon_data
Release-zlib/unicon.h : uninst.ico
Release-zlib/unicon.h : uninst.ico $(BIN2H)
$(BIN2H) uninst.ico Release-zlib/unicon.h unicon_data
sections_script:
@ -122,20 +139,7 @@ CFLAGS += $(getdefine)
clean ::
$(RM) -f sections_script
$(RM) -f Release-zlib/*.o
$(RM) -f Release-zlib/resource.res
$(RM) -f Release-zlib/exehead_zlib.exe
$(RM) -f Release-zlib/exehead_zlib.h
$(RM) -f Release-zlib/bitmap1.h
$(RM) -f Release-zlib/icon.h
$(RM) -f Release-zlib/unicon.h
$(RM) -f Release-bzip2/*.o
$(RM) -f Release-bzip2/resource.res
$(RM) -f Release-bzip2/exehead_bzip2.exe
$(RM) -f Release-bzip2/exehead_bzip2.h
$(RM) -f Release-lzma/*.o
$(RM) -f Release-lzma/resource.res
$(RM) -f Release-lzma/exehead_lzma.exe
$(RM) -f Release-lzma/exehead_lzma.h
$(RM) -rf Release-{zlib,bzip2,lzma}
$(RM) bin2h 2>/dev/null || true
.PHONY : exehead_zlib exehead_bzip2 exehead_lzma exehead_resources dirs clean