1 VPATH=cybootloaderutils ../SCSI2SD/src
3 CPPFLAGS = -I cybootloaderutils -I hidapi/hidapi -I ../include -Ilibzipper-1.0.4 -I$(BUILD)/zlib
4 CFLAGS += -Wall -Wno-pointer-sign -O2 -g
5 CXXFLAGS += -Wall -O2 -g -std=c++0x
6 LDFLAGS += -L$(BUILD)/libzipper/.libs -lzipper -L$(BUILD)/zlib -lz
8 LIBZIPPER_CONFIG = --disable-shared LDFLAGS="-L../zlib" CPPFLAGS="-I../zlib"
10 # wxWidgets 3.0.2 uses broken Webkit headers under OSX Yosemeti
11 WX_CONFIG=--disable-webkit --disable-webviewwebkit \
12 --enable-monolithic --enable-stl --disable-shared
14 TARGET ?= $(shell uname -s)
15 ifeq ($(TARGET),Win32)
16 VPATH += hidapi/windows
17 LDFLAGS += -static -mconsole -mwindows -lsetupapi
18 BUILD = build/windows/32bit
19 CC=i686-w64-mingw32-gcc
20 CXX=i686-w64-mingw32-g++
21 LIBZIPPER_CONFIG+=--host=i686-w64-mingw32
23 WX_CONFIG+=--host=i686-w64-mingw32
25 ifeq ($(TARGET),Win64)
26 VPATH += hidapi/windows
27 LDFLAGS += -static -mconsole -mwindows -lsetupapi
28 BUILD = build/windows/64bit
29 CC=x86_64-w64-mingw32-gcc
30 CXX=x86_64-w64-mingw32-g++
31 LIBZIPPER_CONFIG+=--host=x86_64-w64-mingw32
33 WX_CONFIG+=--host=x86_64-w64-mingw32
35 ifeq ($(TARGET),Linux)
40 ifeq ($(TARGET),Darwin)
43 LDFLAGS += -framework IOKit -framework CoreFoundation
44 CC=clang -mmacosx-version-min=10.7
45 CXX=clang++ -stdlib=libc++ -mmacosx-version-min=10.7
46 WX_CONFIG += --with-macosx-version-min=10.7
52 all: $(BUILD)/scsi2sd-util$(EXE)
55 $(BUILD)/cybtldr_api2.o \
56 $(BUILD)/cybtldr_api.o \
57 $(BUILD)/cybtldr_command.o \
58 $(BUILD)/cybtldr_parse.o \
67 $(BUILD)/scsi2sd-util.o \
68 $(BUILD)/ConfigUtil.o \
70 $(BUILD)/TargetPanel.o \
71 $(BUILD)/SCSI2SD_Bootloader.o \
72 $(BUILD)/SCSI2SD_HID.o \
73 $(BUILD)/hidpacket.o \
76 $(OBJ): $(BUILD)/zlib/buildstamp
77 $(BUILD)/zlib/buildstamp:
81 cp -a $(CURDIR)/zlib-1.2.8/* . && \
82 ./configure --static && \
87 $(OBJ): $(BUILD)/wx.buildstamp
88 $(BUILD)/wx.buildstamp: $(BUILD)/zlib/buildstamp
92 $(CURDIR)/wxWidgets/configure $(WX_CONFIG) CPPFLAGS=-I../zlib LDFLAGS=-I../zlib && \
97 $(OBJ): $(BUILD)/libzipper/buildstamp
98 $(BUILD)/libzipper/buildstamp: $(BUILD)/zlib/buildstamp
102 $(CURDIR)/libzipper-1.0.4/configure ${LIBZIPPER_CONFIG} --disable-shared --enable-static && \
103 $(MAKE) libzipper.la \
109 $(CC) $(CPPFLAGS) $(CFLAGS) $< -c -o $@
113 $(CXX) $(CPPFLAGS) $(CXXFLAGS) `$(BUILD)/wx-config --cxxflags` $< -c -o $@
115 $(BUILD)/scsi2sd-util$(EXE): $(OBJ)
117 $(CXX) $(CXXFLAGS) $^ $(LDFLAGS) `$(BUILD)/wx-config --libs` -o $@
120 rm $(BUILD)/scsi2sd-util$(EXE) $(OBJ) $(BUILD)/libzipper/buildstamp