]> git.saurik.com Git - apple/xnu.git/blame - tools/tests/Makefile
xnu-3789.70.16.tar.gz
[apple/xnu.git] / tools / tests / Makefile
CommitLineData
3e170ce0 1include Makefile.common
39236c6e 2
3e170ce0
A
3ifndef SRCROOT
4export SRCROOT := $(shell /bin/pwd)
5endif
6ifndef OBJROOT
7export OBJROOT = $(SRCROOT)/BUILD/obj
8endif
9ifndef DSTROOT
10export DSTROOT = $(SRCROOT)/BUILD/dst
11endif
12ifndef SYMROOT
13export SYMROOT = $(SRCROOT)/BUILD/sym
fe8ab488 14endif
fe8ab488 15
3e170ce0
A
16ifdef RC_ProjectName
17DSTSUBPATH = $(DSTROOT)/AppleInternal/CoreOS/tests/xnu
18BATS_CONFIG_PATH = $(DSTROOT)/AppleInternal/CoreOS
39236c6e 19else
3e170ce0
A
20DSTSUBPATH = $(DSTROOT)
21BATS_CONFIG_PATH = $(DSTROOT)
39236c6e
A
22endif
23
3e170ce0 24COMMON_TARGETS = unit_tests \
39236c6e 25 MPMMTest \
39037602 26 packetdrill \
39236c6e 27 affinity \
fe8ab488 28 execperf \
39236c6e
A
29 kqueue_tests \
30 superpages \
31 zero-to-n \
32 jitter \
39037602
A
33 perf_index \
34 darwintests \
813fb2f6
A
35 unixconf \
36 testkext/pgokext.kext
39236c6e 37
39037602 38IPHONE_TARGETS =
39236c6e 39
39037602 40MAC_TARGETS =
3e170ce0
A
41
42BATS_TARGET = $(BATS_CONFIG_PATH)/BATS
43
39236c6e 44ifeq "$(Embedded)" "YES"
39037602 45TARGETS = $(addprefix $(DSTSUBPATH)/, $(COMMON_TARGETS) $(IPHONE_TARGETS))
39236c6e 46else
39037602 47TARGETS = $(addprefix $(DSTSUBPATH)/, $(COMMON_TARGETS) $(MAC_TARGETS))
39236c6e
A
48endif
49
3e170ce0 50all: $(BATS_TARGET) $(TARGETS)
39236c6e 51
39037602
A
52.PHONY: always
53
54always:
55
813fb2f6
A
56# NOTE: RC_ARCHES nonsense is here because code signing will fail on kexts if we include a i386 slice
57# <rdar://problem/29878263> CoreOSLobo: xnu_tests-4026 fails to codesign
58
59$(DSTSUBPATH)/testkext/pgokext.kext: always
60 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
61
39037602
A
62$(DSTSUBPATH)/%: always
63 $(_v)echo Building $@
64 $(_v)mkdir -p $@
65 $(_v)mkdir -p $(OBJROOT)/$(notdir $@)
66 $(_v)mkdir -p $(SYMROOT)/$(notdir $@)
67 $(_v)$(MAKE) -C $(SRCROOT)/$(notdir $@) SRCROOT=$(SRCROOT)/$(notdir $@) DSTROOT=$@ OBJROOT=$(OBJROOT)/$(notdir $@) SYMROOT=$(SYMROOT)/$(notdir $@) SDKROOT=$(SDKROOT) BASEDSTROOT=$(DSTROOT)
68
69$(BATS_TARGET): $(TARGETS)
70 $(_v)mkdir -p $@
71 $(_v)mkdir -p $(OBJROOT)/$(notdir $@)
72 $(_v)mkdir -p $(SYMROOT)
73 $(_v)$(MAKE) -C $(SRCROOT)/$(notdir $@) SRCROOT=$(SRCROOT)/$(notdir $@) DSTROOT=$@ OBJROOT=$(OBJROOT)/$(notdir $@) SDKROOT=$(SDKROOT) BASEDSTROOT=$(DSTROOT)