]> git.saurik.com Git - apple/xnu.git/blobdiff - makedefs/MakeInc.top
xnu-4570.51.1.tar.gz
[apple/xnu.git] / makedefs / MakeInc.top
index c19e8e59fa842441d0134674b2ed419e23027b25..76fd8500a04043913b8a1a1ed10387608c33d43e 100644 (file)
@@ -56,8 +56,12 @@ endif
 # Kernel Configuration options
 #
 
+DEFAULT_PRODUCT_CONFIGS :=
+
 ifeq ($(RC_ProjectName),xnu_debug)
 override DEFAULT_KERNEL_CONFIG := DEBUG
+else ifeq ($(RC_ProjectName),xnu_kasan)
+override KERNEL_CONFIGS := KASAN
 else ifneq ($(filter $(SUPPORTED_EMBEDDED_PLATFORMS),$(PLATFORM)),)
 override DEFAULT_KERNEL_CONFIG := DEVELOPMENT
 else ifeq ($(PLATFORM),MacOSX)
@@ -71,6 +75,11 @@ ifndef KERNEL_CONFIGS
 KERNEL_CONFIGS := DEFAULT
 endif
 
+# If PRODUCT_CONFIGS is specified it should override default
+ifndef PRODUCT_CONFIGS
+PRODUCT_CONFIGS := $(DEFAULT_PRODUCT_CONFIGS)
+endif
+
 #
 # Machine Configuration options
 #
@@ -158,7 +167,7 @@ TARGET_CONFIGS_ALIASES_UC := $(strip $(shell printf "%s" "$(TARGET_CONFIGS_ALIAS
 # TARGET_CONFIGS is unwieldy for use in Makefiles. Convert them to
 # "build configurations" which are tuples joined by "^". For
 # example, "RELEASE I386 DEFAULT DEVELOPMENT ARM DEFAULT" becomes
-# "RELEASE^I386^NONE DEVELOPMENT^ARM^S5L8920X", which can be looped
+# "RELEASE^I386^NONE DEVELOPMENT^ARM^T8002", which can be looped
 # over trivially. PRIMARY_BUILD_CONFIGS is the first config
 # for each architecture, used primarily for machine-dependent recursion.
 
@@ -340,6 +349,9 @@ exporthdrs_md: build_exporthdrs_md_bootstrap
 .PHONY: installhdrs installhdrs_mi installhdrs_md
 
 ifeq ($(RC_ProjectName),xnu_debug)
+installhdrs:
+       @:
+else ifeq ($(RC_ProjectName),xnu_kasan)
 installhdrs:
        @:
 else
@@ -469,6 +481,8 @@ final_touch_config_timestamps: config_install_bootstrap
 
 ifeq ($(RC_ProjectName),xnu_debug)
 install: install_kernels
+else ifeq ($(RC_ProjectName),xnu_kasan)
+install: install_config install_kernels
 else ifeq ($(RC_ProjectName),xnu_headers_Sim)
 install: installhdrs
 else
@@ -531,7 +545,6 @@ CLEAN_RM_DIRS= $(OBJROOT) $(SYMROOT) $(DSTROOT) \
 CLEAN_ACTION_DIRS= $(SRCROOT)/tools/tests/MPMMTest \
                $(SRCROOT)/tools/tests/TLBcoherency \
                $(SRCROOT)/tools/tests/kqueue_tests \
-               $(SRCROOT)/tools/tests/libMicro \
                $(SRCROOT)/tools/tests/mktimer \
                $(SRCROOT)/tools/tests/zero-to-n \
                $(SRCROOT)/tools/tests/personas