29f24bb6b1c2b47575f5b843c2d479288317c4a9
[SCSI2SD.git] / software / bootloaderhost / Makefile
1 VPATH=cybootloaderutils
2
3 CPPFLAGS = -I cybootloaderutils -I hidapi/hidapi
4 CFLAGS += -Wall -Wno-pointer-sign -O2
5 CXXFLAGS += -Wall -std=c++11 -O2
6
7 UNAME_S := $(shell uname -s)
8 ifeq ($(UNAME_S),Linux)
9         VPATH += hidapi/linux
10         LDFLAGS += -ludev
11         BUILD=build/linux
12 endif
13 ifeq ($(UNAME_S),Darwin)
14         # Should match OSX
15         VPATH += hidapi/mac
16         LDFLAGS += -framework IOKit -framework CoreFoundation
17         CPPFLAGS += -isysroot /Xcode3.1.4/SDKs/MacOSX10.5.sdk
18         CFLAGS += -mmacosx-version-min=10.5 -arch x86_64 -arch i386 -arch ppc
19         CXXFLAGS += -mmacosx-version-min=10.5 -arch x86_64 -arch i386 -arch ppc
20         CC=/Xcode3.1.4/usr/bin/gcc
21         CXX=/Xcode3.1.4/usr/bin/g++
22         BUILD=build/mac
23 endif
24
25 all:  $(BUILD)/bootloaderhost
26
27 CYAPI = \
28         $(BUILD)/cybtldr_api2.o \
29         $(BUILD)/cybtldr_api.o \
30         $(BUILD)/cybtldr_command.o \
31         $(BUILD)/cybtldr_parse.o \
32
33
34 HIDAPI = \
35         $(BUILD)/hid.o \
36
37
38 OBJ = \
39         $(CYAPI) $(HIDAPI) \
40         $(BUILD)/main.o \
41         $(BUILD)/Firmware.o \
42         $(BUILD)/SCSI2SD_Bootloader.o \
43         $(BUILD)/SCSI2SD_HID.o \
44
45 $(BUILD)/%.o: %.c
46         mkdir -p $(dir $@)
47         $(CC) $(CPPFLAGS) $(CFLAGS) $^ -c -o $@
48
49 $(BUILD)/%.o: %.cc
50         mkdir -p $(dir $@)
51         $(CXX) $(CPPFLAGS) $(CXXFLAGS) $^ -c -o $@
52
53 $(BUILD)/bootloaderhost: $(OBJ)
54         mkdir -p $(dir $@)
55         $(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -o $@
56
57 clean:
58         rm $(BUILD)/bootloaderhost $(OBJ)
59