1ifndef VERSDIR
2export VERSDIR=$(shell /bin/pwd)
3endif
4ifndef SRCROOT
5export SRCROOT=$(shell /bin/pwd)
6endif
7ifndef OBJROOT
8export OBJROOT=$(SRCROOT)/BUILD/obj/
9endif
10ifndef DSTROOT
11export DSTROOT=$(SRCROOT)/BUILD/dst/
12endif
13ifndef SYMROOT
14export SYMROOT=$(SRCROOT)/BUILD/sym/
15endif
16
17export MakeInc_cmd=${VERSDIR}/makedefs/MakeInc.cmd
18export MakeInc_def=${VERSDIR}/makedefs/MakeInc.def
19export MakeInc_rule=${VERSDIR}/makedefs/MakeInc.rule
20export MakeInc_dir=${VERSDIR}/makedefs/MakeInc.dir
21
22
23include $(MakeInc_cmd)
24include $(MakeInc_def)
25
26ALL_SUBDIRS = \
27	iokit \
28	osfmk \
29	bsd  \
30	pexpert \
31	libkern \
32	libsa \
33	security
34
35CONFIG_SUBDIRS_I386 = config
36CONFIG_SUBDIRS_X86_64 = config
37CONFIG_SUBDIRS_ARM = config
38CONFIG_SUBDIRS_ARM64 = config
39
40INSTINC_SUBDIRS = $(ALL_SUBDIRS) EXTERNAL_HEADERS
41INSTINC_SUBDIRS_I386 = $(INSTINC_SUBDIRS)
42INSTINC_SUBDIRS_X86_64 = $(INSTINC_SUBDIRS)
43INSTINC_SUBDIRS_ARM = $(INSTINC_SUBDIRS)
44INSTINC_SUBDIRS_ARM64 = $(INSTINC_SUBDIRS)
45
46EXPINC_SUBDIRS = $(ALL_SUBDIRS)
47EXPINC_SUBDIRS_I386 = $(EXPINC_SUBDIRS)
48EXPINC_SUBDIRS_X86_64 = $(EXPINC_SUBDIRS)
49EXPINC_SUBDIRS_ARM = $(EXPINC_SUBDIRS)
50EXPINC_SUBDIRS_ARM64 = $(EXPINC_SUBDIRS)
51
52SETUP_SUBDIRS = SETUP
53
54COMP_SUBDIRS_I386 = $(ALL_SUBDIRS)
55COMP_SUBDIRS_X86_64 = $(ALL_SUBDIRS)
56COMP_SUBDIRS_ARM = $(ALL_SUBDIRS)
57COMP_SUBDIRS_ARM64 = $(ALL_SUBDIRS)
58
59INST_SUBDIRS =	\
60	libkern	\
61	libsa   \
62	iokit	\
63	osfmk	\
64	bsd	\
65	config	\
66	security
67
68INSTALL_KERNEL_FILE = mach_kernel
69
70INSTALL_KERNEL_DIR = /
71
72INSTALL_KERNEL_SYM_DIR = $(INSTALL_KERNEL_DIR)/System/Library/Extensions/KDK/
73
74
75INSTMAN_SUBDIRS = \
76	bsd
77
78include $(MakeInc_rule)
79include $(MakeInc_dir)
80
81# This target is defined to compile and run xnu_quick_test under testbots
82testbots:
83	/usr/bin/make MORECFLAGS="-D RUN_UNDER_TESTBOTS=1" testbots -C ./tools/tests/xnu_quick_test/
84
85