xref: /xnu-10002.1.13/tools/tests/perf_index/Makefile (revision 1031c584a5e37aff177559b9f69dbd3c8c3fd30a)
1include ../Makefile.common
2
3CFLAGS:=-c -Wall -pedantic -Os -isysroot $(SDKROOT) $(ARCH_FLAGS)
4LDFLAGS:= $(ARCH_FLAGS) -isysroot $(SDKROOT)
5
6SRCROOT?=$(shell /bin/pwd)
7DSTROOT?=$(shell /bin/pwd)/BUILD/dst
8OBJROOT?=$(shell /bin/pwd)/BUILD/obj
9SYMROOT?=$(shell /bin/pwd)/BUILD/sym
10
11
12ifeq "$(Embedded)" "YES"
13	TARGET_NAME:=PerfIndex.bundle-ios
14else
15	TARGET_NAME:=PerfIndex.bundle-osx
16endif
17
18all: $(DSTROOT) $(OBJROOT) $(SYMROOT) \
19	$(DSTROOT)/perf_index \
20	$(DSTROOT)/perfindex-cpu.dylib \
21	$(DSTROOT)/perfindex-memory.dylib \
22	$(DSTROOT)/perfindex-syscall.dylib \
23	$(DSTROOT)/perfindex-fault.dylib \
24	$(DSTROOT)/perfindex-zfod.dylib \
25	$(DSTROOT)/perfindex-file_create.dylib \
26	$(DSTROOT)/perfindex-file_read.dylib \
27	$(DSTROOT)/perfindex-file_write.dylib \
28	$(DSTROOT)/perfindex-ram_file_create.dylib \
29	$(DSTROOT)/perfindex-ram_file_read.dylib \
30	$(DSTROOT)/perfindex-ram_file_write.dylib \
31	$(DSTROOT)/perfindex-iperf.dylib \
32	$(DSTROOT)/perfindex-compile.dylib \
33	$(DSTROOT)/PerfIndex.bundle
34
35$(DSTROOT)/perfindex-cpu.dylib: $(OBJROOT)/md5.o
36$(DSTROOT)/perfindex-fault.dylib: $(OBJROOT)/test_fault_helper.o
37$(DSTROOT)/perfindex-zfod.dylib: $(OBJROOT)/test_fault_helper.o
38$(DSTROOT)/perfindex-file_create.dylib: $(OBJROOT)/test_file_helper.o
39$(DSTROOT)/perfindex-file_read.dylib: $(OBJROOT)/test_file_helper.o
40$(DSTROOT)/perfindex-file_write.dylib: $(OBJROOT)/test_file_helper.o
41$(DSTROOT)/perfindex-ram_file_create.dylib: $(OBJROOT)/test_file_helper.o $(OBJROOT)/ramdisk.o
42$(DSTROOT)/perfindex-ram_file_read.dylib: $(OBJROOT)/test_file_helper.o $(OBJROOT)/ramdisk.o
43$(DSTROOT)/perfindex-ram_file_write.dylib: $(OBJROOT)/test_file_helper.o $(OBJROOT)/ramdisk.o
44
45$(DSTROOT)/perf_index: $(OBJROOT)/perf_index.o
46	$(CC) $(LDFLAGS) $? -o $@
47
48$(DSTROOT)/PerfIndex.bundle: $(SRCROOT)/PerfIndex_COPS_Module/PerfIndex.xcodeproj
49	xcodebuild -sdk $(SDKROOT) -target $(TARGET_NAME) OBJROOT=$(OBJROOT) SYMROOT=$(SYMROOT) TARGET_TEMP_DIR=$(OBJROOT) TARGET_BUILD_DIR=$(DSTROOT) -project $? CLANG_ENABLE_MODULES=NO
50
51$(DSTROOT)/%.dylib: $(OBJROOT)/%.o
52	$(CC) $(LDFLAGS) -dynamiclib $? -o $@
53
54$(OBJROOT)/%.o: $(SRCROOT)/%.c
55	$(CC) $(CFLAGS) $? -o $@
56
57$(DSTROOT):
58	mkdir -p $(DSTROOT)
59
60$(OBJROOT):
61	mkdir -p $(OBJROOT)
62
63$(SYMROOT):
64	mkdir -p $(SYMROOT)
65
66clean:
67	rm -rf $(OBJROOT)
68	rm -rf $(DSTROOT)
69	rm -rf $(SYMROOT)
70