]>
Commit | Line | Data |
---|---|---|
3e170ce0 | 1 | include Makefile.common |
39236c6e | 2 | |
3e170ce0 A |
3 | ifndef SRCROOT |
4 | export SRCROOT := $(shell /bin/pwd) | |
5 | endif | |
6 | ifndef OBJROOT | |
7 | export OBJROOT = $(SRCROOT)/BUILD/obj | |
8 | endif | |
9 | ifndef DSTROOT | |
10 | export DSTROOT = $(SRCROOT)/BUILD/dst | |
11 | endif | |
12 | ifndef SYMROOT | |
13 | export SYMROOT = $(SRCROOT)/BUILD/sym | |
fe8ab488 | 14 | endif |
fe8ab488 | 15 | |
3e170ce0 A |
16 | ifdef RC_ProjectName |
17 | DSTSUBPATH = $(DSTROOT)/AppleInternal/CoreOS/tests/xnu | |
18 | BATS_CONFIG_PATH = $(DSTROOT)/AppleInternal/CoreOS | |
39236c6e | 19 | else |
3e170ce0 A |
20 | DSTSUBPATH = $(DSTROOT) |
21 | BATS_CONFIG_PATH = $(DSTROOT) | |
39236c6e A |
22 | endif |
23 | ||
3e170ce0 | 24 | COMMON_TARGETS = unit_tests \ |
39236c6e | 25 | MPMMTest \ |
39037602 | 26 | packetdrill \ |
39236c6e | 27 | affinity \ |
39236c6e A |
28 | superpages \ |
29 | zero-to-n \ | |
30 | jitter \ | |
39037602 | 31 | perf_index \ |
d9a64523 | 32 | personas \ |
813fb2f6 A |
33 | unixconf \ |
34 | testkext/pgokext.kext | |
39236c6e | 35 | |
39037602 | 36 | IPHONE_TARGETS = |
39236c6e | 37 | |
39037602 | 38 | MAC_TARGETS = |
3e170ce0 A |
39 | |
40 | BATS_TARGET = $(BATS_CONFIG_PATH)/BATS | |
41 | ||
39236c6e | 42 | ifeq "$(Embedded)" "YES" |
39037602 | 43 | TARGETS = $(addprefix $(DSTSUBPATH)/, $(COMMON_TARGETS) $(IPHONE_TARGETS)) |
39236c6e | 44 | else |
39037602 | 45 | TARGETS = $(addprefix $(DSTSUBPATH)/, $(COMMON_TARGETS) $(MAC_TARGETS)) |
39236c6e A |
46 | endif |
47 | ||
3e170ce0 | 48 | all: $(BATS_TARGET) $(TARGETS) |
39236c6e | 49 | |
39037602 A |
50 | .PHONY: always |
51 | ||
52 | always: | |
53 | ||
813fb2f6 A |
54 | # NOTE: RC_ARCHES nonsense is here because code signing will fail on kexts if we include a i386 slice |
55 | # <rdar://problem/29878263> CoreOSLobo: xnu_tests-4026 fails to codesign | |
56 | ||
57 | $(DSTSUBPATH)/testkext/pgokext.kext: always | |
58 | xcodebuild -configuration Debug -project $(SRCROOT)/testkext/testkext.xcodeproj -target pgokext DSTROOT=$(DSTSUBPATH)/testkext SYMROOT=$(SYMROOT)/testkext SRCROOT=$(SRCROOT)/testkext OBJROOT=$(OBJROOT)/testkext SDKROOT=$(SDKROOT) RC_ARCHS="$(subst i386,,$(RC_ARCHS))" install | |
59 | ||
39037602 A |
60 | $(DSTSUBPATH)/%: always |
61 | $(_v)echo Building $@ | |
62 | $(_v)mkdir -p $@ | |
63 | $(_v)mkdir -p $(OBJROOT)/$(notdir $@) | |
64 | $(_v)mkdir -p $(SYMROOT)/$(notdir $@) | |
65 | $(_v)$(MAKE) -C $(SRCROOT)/$(notdir $@) SRCROOT=$(SRCROOT)/$(notdir $@) DSTROOT=$@ OBJROOT=$(OBJROOT)/$(notdir $@) SYMROOT=$(SYMROOT)/$(notdir $@) SDKROOT=$(SDKROOT) BASEDSTROOT=$(DSTROOT) | |
5ba3f43e | 66 | $(_v)find $@ -type d -name "*.dSYM" -exec cp -a {} $(SYMROOT)/ ';' |
39037602 A |
67 | |
68 | $(BATS_TARGET): $(TARGETS) | |
69 | $(_v)mkdir -p $@ | |
70 | $(_v)mkdir -p $(OBJROOT)/$(notdir $@) | |
71 | $(_v)mkdir -p $(SYMROOT) | |
5ba3f43e | 72 | $(_v)$(MAKE) -C $(SRCROOT)/$(notdir $@) SRCROOT=$(SRCROOT)/$(notdir $@) DSTROOT=$@ OBJROOT=$(OBJROOT)/$(notdir $@) SDKROOT=$(SDKROOT) BASEDSTROOT=$(DSTROOT) BASEDSTSUBPATH=$(DSTSUBPATH) |