ifndef VERSDIR
export VERSDIR := $(shell /bin/pwd)
endif
ifndef SRCROOT
export SRCROOT := $(shell /bin/pwd)
endif
ifndef OBJROOT
export OBJROOT = $(SRCROOT)/BUILD/obj
endif
ifndef DSTROOT
export DSTROOT = $(SRCROOT)/BUILD/dst
endif
ifndef SYMROOT
export SYMROOT = $(SRCROOT)/BUILD/sym
endif
export MakeInc_top=${VERSDIR}/makedefs/MakeInc.top
export MakeInc_kernel=${VERSDIR}/makedefs/MakeInc.kernel
export MakeInc_cmd=${VERSDIR}/makedefs/MakeInc.cmd
export MakeInc_def=${VERSDIR}/makedefs/MakeInc.def
export MakeInc_rule=${VERSDIR}/makedefs/MakeInc.rule
export MakeInc_dir=${VERSDIR}/makedefs/MakeInc.dir
ifeq ($(findstring Libsyscall,$(RC_ProjectName)),Libsyscall)
ifeq ($(RC_ProjectName),Libsyscall_headers_Sim)
TARGET=-target Libsyscall_headers_Sim
endif
default: install
installhdrs install:
cd libsyscall ; \
xcodebuild $@ $(TARGET) \
"SRCROOT=$(SRCROOT)/libsyscall" \
"OBJROOT=$(OBJROOT)" \
"SYMROOT=$(SYMROOT)" \
"DSTROOT=$(DSTROOT)" \
"SDKROOT=$(SDKROOT)"
clean:
installsrc:
pax -rw . $(SRCROOT)
else ifeq ($(RC_ProjectName),libkxld)
default: install
installhdrs install clean:
$(MAKE) -C libkern/kxld $@ USE_APPLE_PB_SUPPORT=all
installsrc:
pax -rw . $(SRCROOT)
else ifeq ($(RC_ProjectName),libkxld_host)
default: install
installhdrs install clean:
$(MAKE) -C libkern/kxld $@ USE_APPLE_PB_SUPPORT=all PRODUCT_TYPE=ARCHIVE
installsrc:
pax -rw . $(SRCROOT)
else ifeq ($(RC_ProjectName),libkmod)
default: install
installhdrs install:
cd libkern/kmod ; \
xcodebuild $@ \
"SRCROOT=$(SRCROOT)/libkern/kmod" \
"OBJROOT=$(OBJROOT)" \
"SYMROOT=$(SYMROOT)" \
"DSTROOT=$(DSTROOT)" \
"SDKROOT=$(SDKROOT)"
clean:
installsrc:
pax -rw . $(SRCROOT)
else ifeq ($(RC_ProjectName),xnu_quick_test)
default: install
installhdrs:
install: xnu_quick_test
clean:
installsrc:
pax -rw . $(SRCROOT)
else
ifndef CURRENT_BUILD_CONFIG
ifeq ($(RC_XBS),YES)
_v =
else ifeq ($(VERBOSE),YES)
_v =
else
_v = @
endif
MAKEJOBS := --jobs=$(shell expr `/usr/sbin/sysctl -n hw.physicalcpu` \* 2)
TOP_TARGETS = clean installsrc installhdrs installhdrs_embedded installman exporthdrs setup build all all_embedded install install_embedded installopensource cscope tags help print_exports print_exports_first_build_config
.PHONY: $(TOP_TARGETS)
default: all
ifneq ($(REMOTEBUILD),)
$(TOP_TARGETS):
$(_v)$(VERSDIR)/tools/remote_build.sh _REMOTEBUILD_TARGET=$@ _REMOTEBUILD_MAKE=$(MAKE) $(MAKEFLAGS)
else
$(TOP_TARGETS):
$(_v)$(MAKE) -r $(if $(filter -j,$(MAKEFLAGS)),,$(MAKEJOBS)) -f $(MakeInc_top) $@
endif
else
include $(MakeInc_cmd)
include $(MakeInc_def)
ALL_SUBDIRS = \
bsd \
iokit \
osfmk \
pexpert \
libkern \
libsa \
security \
config
CONFIG_SUBDIRS = config tools
INSTINC_SUBDIRS = $(ALL_SUBDIRS) EXTERNAL_HEADERS
INSTINC_SUBDIRS_X86_64 = $(INSTINC_SUBDIRS)
INSTINC_SUBDIRS_ARM = $(INSTINC_SUBDIRS)
EXPINC_SUBDIRS = $(ALL_SUBDIRS)
EXPINC_SUBDIRS_X86_64 = $(EXPINC_SUBDIRS)
EXPINC_SUBDIRS_ARM = $(EXPINC_SUBDIRS)
SETUP_SUBDIRS = SETUP
COMP_SUBDIRS_X86_64 = $(ALL_SUBDIRS)
COMP_SUBDIRS_ARM = $(ALL_SUBDIRS)
INST_SUBDIRS = \
bsd \
config
INSTMAN_SUBDIRS = \
bsd
include $(MakeInc_kernel)
include $(MakeInc_rule)
include $(MakeInc_dir)
endif
endif
xnu_quick_test:
$(MAKE) -C $(SRCROOT)/tools/tests \
SRCROOT=$(SRCROOT)/tools/tests
testbots:
$(MAKE) -C $(SRCROOT)/tools/tests/xnu_quick_test \
SRCROOT=$(SRCROOT)/tools/tests/xnu_quick_test \
MORECFLAGS="-DRUN_UNDER_TESTBOTS=1" \
MAKE=$(MAKE) \
testbots