]>
Commit | Line | Data |
---|---|---|
39236c6e A |
1 | SDKROOT ?= / |
2 | Embedded?=$(shell echo $(SDKROOT) | grep -iq iphoneos && echo YES || echo NO) | |
fe8ab488 A |
3 | CC:=$(shell xcrun -sdk "$(SDKROOT)" -find cc) |
4 | CFLAGS:=-c -Wall -pedantic -Os | |
5 | LDFLAGS:= | |
39236c6e A |
6 | |
7 | SRCROOT?=$(shell /bin/pwd) | |
fe8ab488 A |
8 | DSTROOT?=$(shell /bin/pwd)/BUILD/dst |
9 | OBJROOT?=$(shell /bin/pwd)/BUILD/obj | |
10 | SYMROOT?=$(shell /bin/pwd)/BUILD/sym | |
39236c6e A |
11 | |
12 | ifdef RC_ARCHS | |
fe8ab488 | 13 | ARCHS:=$(RC_ARCHS) |
39236c6e | 14 | else |
fe8ab488 A |
15 | ifeq ($(ARCHS),) |
16 | ifeq "$(Embedded)" "YES" | |
17 | ARCHS:=armv7 armv7s arm64 | |
39236c6e | 18 | else |
fe8ab488 | 19 | ARCHS:=x86_64 i386 |
39236c6e A |
20 | endif |
21 | endif | |
22 | endif | |
23 | ||
fe8ab488 A |
24 | |
25 | ifeq "$(Embedded)" "YES" | |
26 | TARGET_NAME:=PerfIndex.bundle-ios | |
27 | XCODEBUILD=xcodebuild -sdk iphoneos.internal | |
28 | else | |
29 | TARGET_NAME:=PerfIndex.bundle-osx | |
30 | XCODEBUILD=xcodebuild | |
31 | endif | |
32 | ||
39236c6e A |
33 | CFLAGS += $(patsubst %, -arch %, $(ARCHS)) |
34 | LDFLAGS += $(patsubst %, -arch %, $(ARCHS)) | |
35 | ||
fe8ab488 A |
36 | all: $(DSTROOT) $(OBJROOT) $(SYMROOT) \ |
37 | $(DSTROOT)/perf_index \ | |
38 | $(DSTROOT)/perfindex-cpu.dylib \ | |
39 | $(DSTROOT)/perfindex-memory.dylib \ | |
40 | $(DSTROOT)/perfindex-syscall.dylib \ | |
41 | $(DSTROOT)/perfindex-fault.dylib \ | |
42 | $(DSTROOT)/perfindex-zfod.dylib \ | |
43 | $(DSTROOT)/perfindex-file_create.dylib \ | |
44 | $(DSTROOT)/perfindex-file_read.dylib \ | |
45 | $(DSTROOT)/perfindex-file_write.dylib \ | |
46 | $(DSTROOT)/perfindex-ram_file_create.dylib \ | |
47 | $(DSTROOT)/perfindex-ram_file_read.dylib \ | |
48 | $(DSTROOT)/perfindex-ram_file_write.dylib \ | |
49 | $(DSTROOT)/perfindex-iperf.dylib \ | |
50 | $(DSTROOT)/perfindex-compile.dylib \ | |
51 | $(DSTROOT)/PerfIndex.bundle | |
39236c6e | 52 | |
fe8ab488 A |
53 | $(DSTROOT)/perfindex-cpu.dylib: $(OBJROOT)/md5.o |
54 | $(DSTROOT)/perfindex-fault.dylib: $(OBJROOT)/test_fault_helper.o | |
55 | $(DSTROOT)/perfindex-zfod.dylib: $(OBJROOT)/test_fault_helper.o | |
56 | $(DSTROOT)/perfindex-file_create.dylib: $(OBJROOT)/test_file_helper.o | |
57 | $(DSTROOT)/perfindex-file_read.dylib: $(OBJROOT)/test_file_helper.o | |
58 | $(DSTROOT)/perfindex-file_write.dylib: $(OBJROOT)/test_file_helper.o | |
59 | $(DSTROOT)/perfindex-ram_file_create.dylib: $(OBJROOT)/test_file_helper.o $(OBJROOT)/ramdisk.o | |
60 | $(DSTROOT)/perfindex-ram_file_read.dylib: $(OBJROOT)/test_file_helper.o $(OBJROOT)/ramdisk.o | |
61 | $(DSTROOT)/perfindex-ram_file_write.dylib: $(OBJROOT)/test_file_helper.o $(OBJROOT)/ramdisk.o | |
62 | ||
63 | $(DSTROOT)/perf_index: $(OBJROOT)/perf_index.o | |
64 | $(CC) $(LDFLAGS) $? -o $@ | |
65 | ||
66 | $(DSTROOT)/PerfIndex.bundle: $(SRCROOT)/PerfIndex_COPS_Module/PerfIndex.xcodeproj | |
67 | $(XCODEBUILD) -target $(TARGET_NAME) OBJROOT=$(OBJROOT) SYMROOT=$(SYMROOT) TARGET_TEMP_DIR=$(OBJROOT) TARGET_BUILD_DIR=$(DSTROOT) -project $? CLANG_ENABLE_MODULES=NO | |
68 | ||
69 | $(DSTROOT)/%.dylib: $(OBJROOT)/%.o | |
70 | $(CC) $(LDFLAGS) -dynamiclib $? -o $@ | |
39236c6e A |
71 | |
72 | $(OBJROOT)/%.o: $(SRCROOT)/%.c | |
fe8ab488 A |
73 | $(CC) $(CFLAGS) $? -o $@ |
74 | ||
75 | $(DSTROOT): | |
76 | mkdir -p $(DSTROOT); | |
77 | ||
78 | $(OBJROOT): | |
79 | mkdir -p $(OBJROOT); | |
80 | ||
81 | $(SYMROOT): | |
82 | mkdir -p $(SYMROOT); | |
39236c6e A |
83 | |
84 | clean: | |
fe8ab488 A |
85 | rm -rf $(OBJROOT) |
86 | rm -rf $(DSTROOT) | |
87 | rm -rf $(SYMROOT) |