1*43a90889SApple OSS Distributions# -*- mode: makefile;-*- 2*43a90889SApple OSS Distributions# 3*43a90889SApple OSS Distributions# Copyright (C) 1999-2020 Apple Inc. All rights reserved. 4*43a90889SApple OSS Distributions# 5*43a90889SApple OSS Distributions# MakeInc.rule defines the targets and rules for 6*43a90889SApple OSS Distributions# leaf directories once MakeInc.dir has recursed 7*43a90889SApple OSS Distributions# into them. "do_XXX" may be double-colon rules 8*43a90889SApple OSS Distributions# to allow the Makefile in the source directory 9*43a90889SApple OSS Distributions# to augment the actions that will be performed. 10*43a90889SApple OSS Distributions# 11*43a90889SApple OSS Distributionsinclude $(SRCROOT)/makedefs/MakeInc.color 12*43a90889SApple OSS Distributions 13*43a90889SApple OSS Distributions# 14*43a90889SApple OSS Distributions# Empty the export lists of headers when building for exclaves 15*43a90889SApple OSS Distributions# 16*43a90889SApple OSS Distributions 17*43a90889SApple OSS Distributionsifeq ($(EXPORTHDRS_SKIP_EXCLAVES),YES) 18*43a90889SApple OSS DistributionsEXPORT_MI_LIST = 19*43a90889SApple OSS DistributionsEXPORT_MI_GEN_LIST = 20*43a90889SApple OSS DistributionsEXPORT_MD_LIST = 21*43a90889SApple OSS DistributionsEXPORT_MD_GEN_LIST = 22*43a90889SApple OSS Distributionsendif 23*43a90889SApple OSS Distributions 24*43a90889SApple OSS Distributions# 25*43a90889SApple OSS Distributions# Generic Install rules 26*43a90889SApple OSS Distributions# 27*43a90889SApple OSS Distributions 28*43a90889SApple OSS Distributionsifndef INSTALL_KF_MI_LCL_LIST 29*43a90889SApple OSS Distributions INSTALL_KF_MI_LCL_LIST = $(EXPORT_MI_LIST) 30*43a90889SApple OSS Distributionsendif 31*43a90889SApple OSS Distributions 32*43a90889SApple OSS Distributionsifndef INSTALL_KF_MI_LCL_GEN_LIST 33*43a90889SApple OSS Distributions INSTALL_KF_MI_LCL_GEN_LIST = $(EXPORT_MI_GEN_LIST) 34*43a90889SApple OSS Distributionsendif 35*43a90889SApple OSS Distributions 36*43a90889SApple OSS Distributionsifndef INSTALL_KF_MD_LCL_LIST 37*43a90889SApple OSS Distributions INSTALL_KF_MD_LCL_LIST = $(EXPORT_MD_LIST) 38*43a90889SApple OSS Distributionsendif 39*43a90889SApple OSS Distributions 40*43a90889SApple OSS Distributionsifndef INSTALL_KF_MD_LCL_GEN_LIST 41*43a90889SApple OSS Distributions INSTALL_KF_MD_LCL_GEN_LIST = $(EXPORT_MD_GEN_LIST) 42*43a90889SApple OSS Distributionsendif 43*43a90889SApple OSS Distributions 44*43a90889SApple OSS Distributionsifndef INSTALL_KF_MI_LIST 45*43a90889SApple OSS Distributions INSTALL_KF_MI_LIST = $(EXPORT_MI_LIST) 46*43a90889SApple OSS Distributionsendif 47*43a90889SApple OSS Distributions 48*43a90889SApple OSS Distributionsifndef INSTALL_KF_MI_GEN_LIST 49*43a90889SApple OSS Distributions INSTALL_KF_MI_GEN_LIST = $(EXPORT_MI_GEN_LIST) 50*43a90889SApple OSS Distributionsendif 51*43a90889SApple OSS Distributions 52*43a90889SApple OSS Distributionsifndef INSTALL_KF_MD_LIST 53*43a90889SApple OSS Distributions INSTALL_KF_MD_LIST = $(EXPORT_MD_LIST) 54*43a90889SApple OSS Distributionsendif 55*43a90889SApple OSS Distributions 56*43a90889SApple OSS Distributionsifndef INSTALL_KF_MD_GEN_LIST 57*43a90889SApple OSS Distributions INSTALL_KF_MD_GEN_LIST = $(EXPORT_MD_GEN_LIST) 58*43a90889SApple OSS Distributionsendif 59*43a90889SApple OSS Distributions 60*43a90889SApple OSS Distributions$(eval $(call _setup_build_log_colors)) 61*43a90889SApple OSS Distributions 62*43a90889SApple OSS Distributions.PHONY: ALWAYS 63*43a90889SApple OSS Distributions 64*43a90889SApple OSS DistributionsALWAYS: 65*43a90889SApple OSS Distributions 66*43a90889SApple OSS Distributions# $(1) is the list of install paths 67*43a90889SApple OSS Distributions# $(2) is "1" if it's a "GEN"-style rule that looks locally, or else $(SOURCE) 68*43a90889SApple OSS Distributions# $(3) is the local temp directory for processing 69*43a90889SApple OSS Distributions# $(4) is the unifdef flags 70*43a90889SApple OSS Distributions# 71*43a90889SApple OSS Distributions# $$$$$$$$ is a double-escaped "$$" to represent the current pid 72*43a90889SApple OSS Distributions# of the shell process for creating uniquely named temporary files 73*43a90889SApple OSS Distributions 74*43a90889SApple OSS Distributionsdefine INSTALLHDRS_RULE_template 75*43a90889SApple OSS Distributions 76*43a90889SApple OSS Distributions.PHONY: $(3)_MKDIR 77*43a90889SApple OSS Distributions 78*43a90889SApple OSS Distributions$(3)_MKDIR: 79*43a90889SApple OSS Distributions $$(_v)$$(MKDIR) ./$(3) 80*43a90889SApple OSS Distributions $$(_v)$$(MKDIR) $(dir $(firstword $(1))) 81*43a90889SApple OSS Distributions 82*43a90889SApple OSS Distributions# Rebuild if unifdef flags change 83*43a90889SApple OSS Distributions$(1): $(3)/.UNIFDEF_FLAGS 84*43a90889SApple OSS Distributions$(3)/.UNIFDEF_FLAGS: ALWAYS | $(3)_MKDIR 85*43a90889SApple OSS Distributions $$(_v)$$(REPLACECONTENTS) $$@ $$(UNIFDEF) $(4) 86*43a90889SApple OSS Distributions 87*43a90889SApple OSS Distributions$(1): $(dir $(firstword $(1)))% : $(if $(2),%,$$(SOURCE)/%) | $(3)_MKDIR 88*43a90889SApple OSS Distributions @$$(LOG_INSTALLHDR) "$$*" 89*43a90889SApple OSS Distributions $$(_v)$$(UNIFDEF) $(4) $$< > ./$(3)/$$*.unifdef.$$$$$$$$; \ 90*43a90889SApple OSS Distributions if [ $$$$? -eq 2 ]; then \ 91*43a90889SApple OSS Distributions $(ERR) Parse failure for $$<; \ 92*43a90889SApple OSS Distributions exit 1; \ 93*43a90889SApple OSS Distributions fi; \ 94*43a90889SApple OSS Distributions $$(DECOMMENT) ./$(3)/$$*.unifdef.$$$$$$$$ r > \ 95*43a90889SApple OSS Distributions ./$(3)/$$*.strip.$$$$$$$$ || exit 1; \ 96*43a90889SApple OSS Distributions if [ -s ./$(3)/$$*.strip.$$$$$$$$ ]; then \ 97*43a90889SApple OSS Distributions $$(INSTALL) $$(INSTALL_FLAGS) ./$(3)/$$*.unifdef.$$$$$$$$ $$@ || exit 1; \ 98*43a90889SApple OSS Distributions fi; \ 99*43a90889SApple OSS Distributions $$(RM) ./$(3)/$$*.unifdef.$$$$$$$$ ./$(3)/$$*.strip.$$$$$$$$ 100*43a90889SApple OSS Distributionsendef 101*43a90889SApple OSS Distributions 102*43a90889SApple OSS Distributions# $(1) is the list of install paths 103*43a90889SApple OSS Distributions# $(2) is the source path pattern (using % to match with $(5)) or source file 104*43a90889SApple OSS Distributions# $(3) is the local temp directory for processing 105*43a90889SApple OSS Distributions# $(4) is the unifdef flags 106*43a90889SApple OSS Distributions# $(5) is the destination directory (when pattern matching) or empty 107*43a90889SApple OSS Distributions# 108*43a90889SApple OSS Distributions# $$$$$$$$ is a double-escaped "$$" to represent the current pid 109*43a90889SApple OSS Distributions# of the shell process for creating uniquely named temporary files 110*43a90889SApple OSS Distributions 111*43a90889SApple OSS Distributionsdefine INSTALLPYTHON_RULE_template 112*43a90889SApple OSS Distributions 113*43a90889SApple OSS Distributions.PHONY: $(3)_MKDIR 114*43a90889SApple OSS Distributions 115*43a90889SApple OSS Distributions$(3)_MKDIR: 116*43a90889SApple OSS Distributions $$(_v)$$(MKDIR) ./$(3) 117*43a90889SApple OSS Distributions 118*43a90889SApple OSS Distributions# Rebuild if unifdef flags change 119*43a90889SApple OSS Distributions$(1): $(3)/.UNIFDEF_FLAGS 120*43a90889SApple OSS Distributions$(3)/.UNIFDEF_FLAGS: ALWAYS | $(3)_MKDIR 121*43a90889SApple OSS Distributions $$(_v)$$(REPLACECONTENTS) $$@ $$(UNIFDEF) -t $(4) 122*43a90889SApple OSS Distributions 123*43a90889SApple OSS Distributions$(1): $(5)% : $(2) | $(3)_MKDIR 124*43a90889SApple OSS Distributions @$$(LOG_INSTALLPY) "$$*" 125*43a90889SApple OSS Distributions $$(_v)$$(MKDIR) $$(dir $$@) $$(dir ./$(3)/$$*) 126*43a90889SApple OSS Distributions $$(_v)$$(UNIFDEF) -t $(4) $$< > ./$(3)/$$*.unifdef.$$$$$$$$$$(suffix $$*); \ 127*43a90889SApple OSS Distributions if [ $$$$? -eq 2 ]; then \ 128*43a90889SApple OSS Distributions $(ERR) Parse failure for $$<; \ 129*43a90889SApple OSS Distributions exit 1; \ 130*43a90889SApple OSS Distributions fi; \ 131*43a90889SApple OSS Distributions $$(INSTALL) $$(DATA_INSTALL_FLAGS) \ 132*43a90889SApple OSS Distributions ./$(3)/$$*.unifdef.$$$$$$$$$$(suffix $$*) $$@ || exit 1; \ 133*43a90889SApple OSS Distributions $$(PYTHON) $$(LLDBMACROS_SOURCE)/lint/syntax_checker.py \ 134*43a90889SApple OSS Distributions ./$(3)/$$*.unifdef.$$$$$$$$$$(suffix $$*) $$(_vstdout) || exit 1; \ 135*43a90889SApple OSS Distributions $$(RM) ./$(3)/$$*.unifdef.$$$$$$$$$$(suffix $$*) 136*43a90889SApple OSS Distributions $$(_v)if [ -n "$(5)" ]; then $$(TOUCH) "$(5)"; fi 137*43a90889SApple OSS Distributionsendef 138*43a90889SApple OSS Distributions 139*43a90889SApple OSS Distributions# Template for Libsyscall header unifdef postprocessing in DSTROOT 140*43a90889SApple OSS Distributions# $(1) is the install path 141*43a90889SApple OSS Distributions# $(2) is the unifdef flags 142*43a90889SApple OSS Distributions 143*43a90889SApple OSS Distributionsdefine LIBSYSCALL_DO_UNIFDEF_HEADERS_RULE_template 144*43a90889SApple OSS Distributionsdo_unifdef_headers:: 145*43a90889SApple OSS Distributions $$(_v)[ \! -d "$(1)" ] || $$(FIND) -x "$(1)" -type f \( -name \*.h -o \ 146*43a90889SApple OSS Distributions -name \*.defs -o -name \*.iig -o -name \*.modulemap \) \ 147*43a90889SApple OSS Distributions -execdir $$(UNIFDEF) $(2) -o {} {} \; 148*43a90889SApple OSS Distributions.PHONY: do_unifdef_headers 149*43a90889SApple OSS Distributionsendef 150*43a90889SApple OSS Distributions 151*43a90889SApple OSS Distributions# Helper function to call a verifier 152*43a90889SApple OSS Distributions# Generally, a verifier is a function that post-processes a .o file to validate 153*43a90889SApple OSS Distributions# some characteristics. 154*43a90889SApple OSS Distributions# 155*43a90889SApple OSS Distributions# This ensures that the output .o file is renamed if the verifier rejects the 156*43a90889SApple OSS Distributions# input or fails. This forces the .o file to be re-generated & re-verified if 157*43a90889SApple OSS Distributions# another build is run. 158*43a90889SApple OSS Distributions# 159*43a90889SApple OSS Distributions# Note: currently, it is possible to end up in an inconsistent state by 160*43a90889SApple OSS Distributions# Ctrl+C-ing in the middle of a verifier run, causing a .o file that would 161*43a90889SApple OSS Distributions# have failed verification to still exist as a .o instead o a .o.unverified. 162*43a90889SApple OSS Distributions# The next build should be a "clean" build to prevent the .o file avoiding 163*43a90889SApple OSS Distributions# verification. 164*43a90889SApple OSS Distributions# 165*43a90889SApple OSS Distributions# Any stderr output from the verifier is printed with an "error:" prefix. 166*43a90889SApple OSS Distributions# 167*43a90889SApple OSS Distributions# $(1) is the name of the verifier to call 168*43a90889SApple OSS Distributions# $(2) is the name of the .o file to pass to the verifier 169*43a90889SApple OSS Distributionsdefine VERIFY 170*43a90889SApple OSS Distributions{ ERROR_OUTPUT="$$({ $(call $(1),$(2)) } 2>&1 1>&3)"; } 3>&1; \ 171*43a90889SApple OSS DistributionsRETURN=$$?; \ 172*43a90889SApple OSS Distributions$(ERR) "$$($(SED) -e 's/^/error: /' <<< "$$ERROR_OUTPUT")"; \ 173*43a90889SApple OSS Distributionsif [ $$RETURN -ne 0 ]; then \ 174*43a90889SApple OSS Distributions UNVERIFIED_FILE=$(@:o=o.unverified) ; \ 175*43a90889SApple OSS Distributions $(MV) '$(2)' "$$UNVERIFIED_FILE"; \ 176*43a90889SApple OSS Distributions $(ERR) "error: Moved object file $(2) with verifier failures to $$PWD/$$UNVERIFIED_FILE"; \ 177*43a90889SApple OSS Distributions exit $$RETURN; \ 178*43a90889SApple OSS Distributionsfi; 179*43a90889SApple OSS Distributionsendef 180*43a90889SApple OSS Distributions 181*43a90889SApple OSS Distributions 182*43a90889SApple OSS Distributions# 183*43a90889SApple OSS Distributions# Empty the install lists of non-host and non-exclave headers if building the 184*43a90889SApple OSS Distributions# host headers alias and exclave headers aliases. Separately, export headers 185*43a90889SApple OSS Distributions# are also emptied for exclaves (but not for host headers) with 186*43a90889SApple OSS Distributions# EXPORTHDRS_SKIP_EXCLAVES. 187*43a90889SApple OSS Distributions# 188*43a90889SApple OSS Distributions 189*43a90889SApple OSS Distributionsifeq ($(INSTALLHDRS_SKIP_HOST),YES) 190*43a90889SApple OSS Distributions 191*43a90889SApple OSS DistributionsINSTALL_MI_LIST = 192*43a90889SApple OSS DistributionsINSTALL_MI_GEN_LIST = 193*43a90889SApple OSS DistributionsINSTALL_IF_MI_LIST = 194*43a90889SApple OSS DistributionsINSTALL_IF_MI_GEN_LIST = 195*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MI_LIST = 196*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MI_GEN_LIST = 197*43a90889SApple OSS DistributionsINSTALL_KF_MI_LIST = 198*43a90889SApple OSS DistributionsINSTALL_KF_MI_GEN_LIST = 199*43a90889SApple OSS DistributionsINSTALL_MI_LCL_LIST = 200*43a90889SApple OSS DistributionsINSTALL_MI_LCL_GEN_LIST = 201*43a90889SApple OSS DistributionsINSTALL_IF_MI_LCL_LIST = 202*43a90889SApple OSS DistributionsINSTALL_IF_MI_LCL_GEN_LIST = 203*43a90889SApple OSS DistributionsINSTALL_SF_MI_LCL_LIST = 204*43a90889SApple OSS DistributionsINSTALL_SF_MI_LCL_GEN_LIST = 205*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MI_LCL_LIST = 206*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MI_LCL_GEN_LIST = 207*43a90889SApple OSS DistributionsINSTALL_KF_MI_LCL_LIST = 208*43a90889SApple OSS DistributionsINSTALL_KF_MI_LCL_GEN_LIST = 209*43a90889SApple OSS DistributionsINSTALL_MD_LIST = 210*43a90889SApple OSS DistributionsINSTALL_MD_GEN_LIST = 211*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MD_LIST = 212*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MD_GEN_LIST = 213*43a90889SApple OSS DistributionsINSTALL_KF_MD_LIST = 214*43a90889SApple OSS DistributionsINSTALL_KF_MD_GEN_LIST = 215*43a90889SApple OSS DistributionsINSTALL_MD_LCL_LIST = 216*43a90889SApple OSS DistributionsINSTALL_MD_LCL_GEN_LIST = 217*43a90889SApple OSS DistributionsINSTALL_SF_MD_LCL_LIST = 218*43a90889SApple OSS DistributionsINSTALL_SF_MD_LCL_GEN_LIST = 219*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MD_LCL_LIST = 220*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MD_LCL_GEN_LIST = 221*43a90889SApple OSS DistributionsINSTALL_KF_MD_LCL_LIST = 222*43a90889SApple OSS DistributionsINSTALL_KF_MD_LCL_GEN_LIST = 223*43a90889SApple OSS DistributionsINSTALL_KF_LIBCXX_MI_LIST = 224*43a90889SApple OSS Distributions 225*43a90889SApple OSS Distributions# If there are no headers then there can be no module maps. 226*43a90889SApple OSS DistributionsINSTALLHDRS_MODULEMAPS_SKIP_HOST = YES 227*43a90889SApple OSS Distributions 228*43a90889SApple OSS Distributionsendif 229*43a90889SApple OSS Distributions 230*43a90889SApple OSS Distributionsifeq ($(INSTALLHDRS_MODULEMAPS_SKIP_HOST),YES) 231*43a90889SApple OSS DistributionsINSTALL_MODULEMAP_MI_LIST = 232*43a90889SApple OSS DistributionsINSTALL_MODULEMAP_MI_LCL_LIST = 233*43a90889SApple OSS DistributionsINSTALL_MODULEMAP_MD_LIST = 234*43a90889SApple OSS DistributionsINSTALL_MODULEMAP_MD_LCL_LIST = 235*43a90889SApple OSS Distributionsendif 236*43a90889SApple OSS Distributions 237*43a90889SApple OSS Distributions# 238*43a90889SApple OSS Distributions# Machine-independent (public) files 239*43a90889SApple OSS Distributions# 240*43a90889SApple OSS Distributions 241*43a90889SApple OSS DistributionsINSTALL_MI_INC_FILES = $(addprefix $(DSTROOT)/$(INCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_MI_LIST)) 242*43a90889SApple OSS DistributionsINSTALL_MI_INC_GEN_FILES = $(addprefix $(DSTROOT)/$(INCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_MI_GEN_LIST)) 243*43a90889SApple OSS DistributionsINSTALL_MODULEMAP_MI_INC_FILES = $(addprefix $(DSTROOT)/$(INCDIR)/$(INSTALL_MODULEMAP_MI_DIR)/,$(INSTALL_MODULEMAP_MI_LIST)) 244*43a90889SApple OSS Distributions 245*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MI_INC_FILES),,incmidir,$(SINCFRAME_UNIFDEF))) 246*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MI_INC_GEN_FILES),1,incmigendir,$(SINCFRAME_UNIFDEF))) 247*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MODULEMAP_MI_INC_FILES),,mmincmidir,-t $(DATA_UNIFDEF))) 248*43a90889SApple OSS Distributions 249*43a90889SApple OSS DistributionsINSTALL_IF_MI_FILES = $(addprefix $(DSTROOT)/$(IINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_IF_MI_LIST)) 250*43a90889SApple OSS DistributionsINSTALL_IF_MI_GEN_FILES = $(addprefix $(DSTROOT)/$(IINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_IF_MI_GEN_LIST)) 251*43a90889SApple OSS Distributions 252*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_IF_MI_FILES),,iincmidir,$(SINCFRAME_UNIFDEF))) 253*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_IF_MI_GEN_FILES),1,iincmigendir,$(SINCFRAME_UNIFDEF))) 254*43a90889SApple OSS Distributions 255*43a90889SApple OSS Distributionsifeq ($(DRIVERKIT),1) 256*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MI_INC_FILES = $(addprefix $(DSTROOT)/$(DRIVERKITINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_DRIVERKIT_MI_LIST)) 257*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MI_INC_GEN_FILES = $(addprefix $(DSTROOT)/$(DRIVERKITINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_DRIVERKIT_MI_GEN_LIST)) 258*43a90889SApple OSS Distributions 259*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_DRIVERKIT_MI_INC_FILES),,dkincmidir,$(DKINCFRAME_UNIFDEF))) 260*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_DRIVERKIT_MI_INC_GEN_FILES),1,dkincmigendir,$(DKINCFRAME_UNIFDEF))) 261*43a90889SApple OSS Distributionsendif 262*43a90889SApple OSS Distributions 263*43a90889SApple OSS Distributionsifeq ($(EXCLAVEKIT),1) 264*43a90889SApple OSS DistributionsINSTALL_EXCLAVEKIT_MI_INC_FILES = $(addprefix $(DSTROOT)/$(EXCLAVEKITINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_EXCLAVEKIT_MI_LIST)) 265*43a90889SApple OSS DistributionsINSTALL_EXCLAVEKIT_MI_INC_GEN_FILES = $(addprefix $(DSTROOT)/$(EXCLAVEKITINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_EXCLAVEKIT_MI_GEN_LIST)) 266*43a90889SApple OSS Distributions 267*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVEKIT_MI_INC_FILES),,ekincmidir,$(EKINCFRAME_UNIFDEF))) 268*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVEKIT_MI_INC_GEN_FILES),1,ekincmigendir,$(EKINCFRAME_UNIFDEF))) 269*43a90889SApple OSS Distributionsendif 270*43a90889SApple OSS Distributions 271*43a90889SApple OSS Distributionsifeq ($(EXCLAVECORE),1) 272*43a90889SApple OSS DistributionsINSTALL_EXCLAVECORE_MI_INC_FILES = $(addprefix $(DSTROOT)/$(EXCLAVECOREINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_EXCLAVECORE_MI_LIST)) 273*43a90889SApple OSS DistributionsINSTALL_EXCLAVECORE_MI_INC_GEN_FILES = $(addprefix $(DSTROOT)/$(EXCLAVECOREINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_EXCLAVECORE_MI_GEN_LIST)) 274*43a90889SApple OSS Distributions 275*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVECORE_MI_INC_FILES),,ecincmidir,$(ECINCFRAME_UNIFDEF))) 276*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVECORE_MI_INC_GEN_FILES),1,ecincmigendir,$(ECINCFRAME_UNIFDEF))) 277*43a90889SApple OSS Distributionsendif 278*43a90889SApple OSS Distributions 279*43a90889SApple OSS DistributionsINSTALL_KF_MI_FILES = $(addprefix $(DSTROOT)/$(KINCDIR)/$(EXPORT_MI_DIR)/, $(INSTALL_KF_MI_LIST)) 280*43a90889SApple OSS DistributionsINSTALL_KF_MI_GEN_FILES = $(addprefix $(DSTROOT)/$(KINCDIR)/$(EXPORT_MI_DIR)/, $(INSTALL_KF_MI_GEN_LIST)) 281*43a90889SApple OSS Distributions 282*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_KF_MI_FILES),,kincmidir,$(KINCFRAME_UNIFDEF))) 283*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_KF_MI_GEN_FILES),1,kincmigendir,$(KINCFRAME_UNIFDEF))) 284*43a90889SApple OSS Distributions 285*43a90889SApple OSS DistributionsINSTALL_LIBCXX_MI_FILES = $(addprefix $(DSTROOT)/$(KLIBCXXINCDIR)/, $(INSTALL_KF_LIBCXX_MI_LIST)) 286*43a90889SApple OSS Distributions 287*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_LIBCXX_MI_FILES),,cxxmidir,$(LIBCXXINCFRAME_UNIFDEF))) 288*43a90889SApple OSS Distributions 289*43a90889SApple OSS Distributions# 290*43a90889SApple OSS Distributions# Machine-independent local (private) files 291*43a90889SApple OSS Distributions# 292*43a90889SApple OSS Distributions 293*43a90889SApple OSS DistributionsINSTALL_MI_LCL_FILES = $(addprefix $(DSTROOT)/$(LCLDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_MI_LCL_LIST)) 294*43a90889SApple OSS DistributionsINSTALL_MI_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(LCLDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_MI_LCL_GEN_LIST)) 295*43a90889SApple OSS DistributionsINSTALL_MODULEMAP_MI_LCL_FILES = $(addprefix $(DSTROOT)/$(LCLDIR)/$(INSTALL_MODULEMAP_MI_DIR)/,$(INSTALL_MODULEMAP_MI_LCL_LIST)) 296*43a90889SApple OSS Distributions 297*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MI_LCL_FILES),,pincmidir,$(SPINCFRAME_UNIFDEF))) 298*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MI_LCL_GEN_FILES),1,pincmigendir,$(SPINCFRAME_UNIFDEF))) 299*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MODULEMAP_MI_LCL_FILES),,mmpincmidir,-t $(PDATA_UNIFDEF))) 300*43a90889SApple OSS Distributions 301*43a90889SApple OSS DistributionsINSTALL_IF_MI_LCL_FILES = $(addprefix $(DSTROOT)/$(IPINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_IF_MI_LCL_LIST)) 302*43a90889SApple OSS DistributionsINSTALL_IF_MI_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(IPINCDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_IF_MI_LCL_GEN_LIST)) 303*43a90889SApple OSS Distributions 304*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_IF_MI_LCL_FILES),,ipincmidir,$(SPINCFRAME_UNIFDEF))) 305*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_IF_MI_LCL_GEN_FILES),1,ipincmigendir,$(SPINCFRAME_UNIFDEF))) 306*43a90889SApple OSS Distributions 307*43a90889SApple OSS DistributionsINSTALL_SF_MI_LCL_FILES = $(addprefix $(DSTROOT)/$(SPINCDIR)/$(INSTALL_MI_DIR)/, $(sort $(INSTALL_SF_MI_LCL_LIST))) 308*43a90889SApple OSS DistributionsINSTALL_SF_MI_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(SPINCDIR)/$(INSTALL_MI_DIR)/, $(sort $(INSTALL_SF_MI_LCL_GEN_LIST))) 309*43a90889SApple OSS Distributions 310*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_SF_MI_LCL_FILES),,spincmidir,$(SPINCFRAME_UNIFDEF))) 311*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_SF_MI_LCL_GEN_FILES),1,spincmigendir,$(SPINCFRAME_UNIFDEF))) 312*43a90889SApple OSS Distributions 313*43a90889SApple OSS Distributionsifeq ($(DRIVERKIT),1) 314*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MI_LCL_FILES = $(addprefix $(DSTROOT)/$(DRIVERKITLCLDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_DRIVERKIT_MI_LCL_LIST)) 315*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MI_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(DRIVERKITLCLDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_DRIVERKIT_MI_LCL_GEN_LIST)) 316*43a90889SApple OSS Distributions 317*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_DRIVERKIT_MI_LCL_FILES),,dkpincmidir,$(DKPINCFRAME_UNIFDEF))) 318*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_DRIVERKIT_MI_LCL_GEN_FILES),1,dkpincmigendir,$(DKPINCFRAME_UNIFDEF))) 319*43a90889SApple OSS Distributionsendif 320*43a90889SApple OSS Distributions 321*43a90889SApple OSS Distributionsifeq ($(EXCLAVEKIT),1) 322*43a90889SApple OSS DistributionsINSTALL_EXCLAVEKIT_MI_LCL_FILES = $(addprefix $(DSTROOT)/$(EXCLAVEKITLCLDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_EXCLAVEKIT_MI_LCL_LIST)) 323*43a90889SApple OSS DistributionsINSTALL_EXCLAVEKIT_MI_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(EXCLAVEKITLCLDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_EXCLAVEKIT_MI_LCL_GEN_LIST)) 324*43a90889SApple OSS Distributions 325*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVEKIT_MI_LCL_FILES),,ekpincmidir,$(EKPINCFRAME_UNIFDEF))) 326*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVEKIT_MI_LCL_GEN_FILES),1,ekpincmigendir,$(EKPINCFRAME_UNIFDEF))) 327*43a90889SApple OSS Distributionsendif 328*43a90889SApple OSS Distributions 329*43a90889SApple OSS Distributionsifeq ($(EXCLAVECORE),1) 330*43a90889SApple OSS DistributionsINSTALL_EXCLAVECORE_MI_LCL_FILES = $(addprefix $(DSTROOT)/$(EXCLAVECORELCLDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_EXCLAVECORE_MI_LCL_LIST)) 331*43a90889SApple OSS DistributionsINSTALL_EXCLAVECORE_MI_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(EXCLAVECORELCLDIR)/$(INSTALL_MI_DIR)/, $(INSTALL_EXCLAVECORE_MI_LCL_GEN_LIST)) 332*43a90889SApple OSS Distributions 333*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVECORE_MI_LCL_FILES),,ecpincmidir,$(ECPINCFRAME_UNIFDEF))) 334*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVECORE_MI_LCL_GEN_FILES),1,ecpincmigendir,$(ECPINCFRAME_UNIFDEF))) 335*43a90889SApple OSS Distributionsendif 336*43a90889SApple OSS Distributions 337*43a90889SApple OSS DistributionsINSTALL_KF_MI_LCL_FILES = $(addprefix $(DSTROOT)/$(KPINCDIR)/$(EXPORT_MI_DIR)/, $(INSTALL_KF_MI_LCL_LIST)) 338*43a90889SApple OSS DistributionsINSTALL_KF_MI_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(KPINCDIR)/$(EXPORT_MI_DIR)/, $(INSTALL_KF_MI_LCL_GEN_LIST)) 339*43a90889SApple OSS Distributions 340*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_KF_MI_LCL_FILES),,kpincmidir,$(KPINCFRAME_UNIFDEF))) 341*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_KF_MI_LCL_GEN_FILES),1,kpincmigendir,$(KPINCFRAME_UNIFDEF))) 342*43a90889SApple OSS Distributions 343*43a90889SApple OSS Distributions# 344*43a90889SApple OSS Distributions# Machine-dependent (public) files 345*43a90889SApple OSS Distributions# 346*43a90889SApple OSS Distributions 347*43a90889SApple OSS DistributionsINSTALL_MD_INC_FILES = $(addprefix $(DSTROOT)/$(INCDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_MD_LIST)) 348*43a90889SApple OSS DistributionsINSTALL_MD_INC_GEN_FILES = $(addprefix $(DSTROOT)/$(INCDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_MD_GEN_LIST)) 349*43a90889SApple OSS DistributionsINSTALL_MODULEMAP_MD_INC_FILES = $(addprefix $(DSTROOT)/$(INCDIR)/$(INSTALL_MODULEMAP_MD_DIR)/,$(INSTALL_MODULEMAP_MD_LIST)) 350*43a90889SApple OSS Distributions 351*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MD_INC_FILES),,incdir,$(SINCFRAME_UNIFDEF))) 352*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MD_INC_GEN_FILES),1,incgendir,$(SINCFRAME_UNIFDEF))) 353*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MODULEMAP_MD_INC_FILES),,mmincdir,-t $(DATA_UNIFDEF))) 354*43a90889SApple OSS Distributions 355*43a90889SApple OSS Distributionsifeq ($(DRIVERKIT),1) 356*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MD_INC_FILES = $(addprefix $(DSTROOT)/$(DRIVERKITINCDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_DRIVERKIT_MD_LIST)) 357*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MD_INC_GEN_FILES = $(addprefix $(DSTROOT)/$(DRIVERKITINCDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_DRIVERKIT_MD_GEN_LIST)) 358*43a90889SApple OSS Distributions 359*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_DRIVERKIT_MD_INC_FILES),,dkincdir,$(DKINCFRAME_UNIFDEF))) 360*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_DRIVERKIT_MD_INC_GEN_FILES),1,dkincgendir,$(DKINCFRAME_UNIFDEF))) 361*43a90889SApple OSS Distributionsendif 362*43a90889SApple OSS Distributions 363*43a90889SApple OSS Distributionsifeq ($(EXCLAVEKIT),1) 364*43a90889SApple OSS DistributionsINSTALL_EXCLAVEKIT_MD_INC_FILES = $(addprefix $(DSTROOT)/$(EXCLAVEKITINCDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_EXCLAVEKIT_MD_LIST)) 365*43a90889SApple OSS DistributionsINSTALL_EXCLAVEKIT_MD_INC_GEN_FILES = $(addprefix $(DSTROOT)/$(EXCLAVEKITINCDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_EXCLAVEKIT_MD_GEN_LIST)) 366*43a90889SApple OSS Distributions 367*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVEKIT_MD_INC_FILES),,ekincdir,$(EKINCFRAME_UNIFDEF))) 368*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVEKIT_MD_INC_GEN_FILES),1,ekincgendir,$(EKINCFRAME_UNIFDEF))) 369*43a90889SApple OSS Distributionsendif 370*43a90889SApple OSS Distributions 371*43a90889SApple OSS Distributionsifeq ($(EXCLAVECORE),1) 372*43a90889SApple OSS DistributionsINSTALL_EXCLAVECORE_MD_INC_FILES = $(addprefix $(DSTROOT)/$(EXCLAVECOREINCDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_EXCLAVECORE_MD_LIST)) 373*43a90889SApple OSS DistributionsINSTALL_EXCLAVECORE_MD_INC_GEN_FILES = $(addprefix $(DSTROOT)/$(EXCLAVECOREINCDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_EXCLAVECORE_MD_GEN_LIST)) 374*43a90889SApple OSS Distributions 375*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVECORE_MD_INC_FILES),,ecincdir,$(ECINCFRAME_UNIFDEF))) 376*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVECORE_MD_INC_GEN_FILES),1,ecincgendir,$(ECINCFRAME_UNIFDEF))) 377*43a90889SApple OSS Distributionsendif 378*43a90889SApple OSS Distributions 379*43a90889SApple OSS DistributionsINSTALL_KF_MD_FILES = $(addprefix $(DSTROOT)/$(KINCDIR)/$(EXPORT_MD_DIR)/, $(INSTALL_KF_MD_LIST)) 380*43a90889SApple OSS DistributionsINSTALL_KF_MD_GEN_FILES = $(addprefix $(DSTROOT)/$(KINCDIR)/$(EXPORT_MD_DIR)/, $(INSTALL_KF_MD_GEN_LIST)) 381*43a90889SApple OSS Distributions 382*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_KF_MD_FILES),,kincdir,$(KINCFRAME_UNIFDEF))) 383*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_KF_MD_GEN_FILES),1,kincgendir,$(KINCFRAME_UNIFDEF))) 384*43a90889SApple OSS Distributions 385*43a90889SApple OSS Distributions# 386*43a90889SApple OSS Distributions# Machine-dependent local (private) files 387*43a90889SApple OSS Distributions# 388*43a90889SApple OSS Distributions 389*43a90889SApple OSS DistributionsINSTALL_MD_LCL_FILES = $(addprefix $(DSTROOT)/$(LCLDIR)/$(INSTALL_MD_DIR)/, $(sort $(INSTALL_MD_LCL_LIST))) 390*43a90889SApple OSS DistributionsINSTALL_MD_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(LCLDIR)/$(INSTALL_MD_DIR)/, $(sort $(INSTALL_MD_LCL_GEN_LIST))) 391*43a90889SApple OSS DistributionsINSTALL_MODULEMAP_MD_LCL_FILES = $(addprefix $(DSTROOT)/$(LCLDIR)/$(INSTALL_MODULEMAP_MD_DIR)/,$(INSTALL_MODULEMAP_MD_LCL_LIST)) 392*43a90889SApple OSS Distributions 393*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MD_LCL_FILES),,pincdir,$(SPINCFRAME_UNIFDEF))) 394*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MD_LCL_GEN_FILES),1,pincgendir,$(SPINCFRAME_UNIFDEF))) 395*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_MODULEMAP_MD_LCL_FILES),,mmpincdir,-t $(PDATA_UNIFDEF))) 396*43a90889SApple OSS Distributions 397*43a90889SApple OSS DistributionsINSTALL_SF_MD_LCL_FILES = $(addprefix $(DSTROOT)/$(SPINCDIR)/$(INSTALL_MD_DIR)/, $(sort $(INSTALL_SF_MD_LCL_LIST))) 398*43a90889SApple OSS DistributionsINSTALL_SF_MD_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(SPINCDIR)/$(INSTALL_MD_DIR)/, $(sort $(INSTALL_SF_MD_LCL_GEN_LIST))) 399*43a90889SApple OSS Distributions 400*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_SF_MD_LCL_FILES),,spincdir,$(SPINCFRAME_UNIFDEF))) 401*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_SF_MD_LCL_GEN_FILES),1,spincgendir,$(SPINCFRAME_UNIFDEF))) 402*43a90889SApple OSS Distributions 403*43a90889SApple OSS Distributionsifeq ($(DRIVERKIT),1) 404*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MD_LCL_FILES = $(addprefix $(DSTROOT)/$(DRIVERKITLCLDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_DRIVERKIT_MD_LCL_LIST)) 405*43a90889SApple OSS DistributionsINSTALL_DRIVERKIT_MD_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(DRIVERKITLCLDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_DRIVERKIT_MD_LCL_GEN_LIST)) 406*43a90889SApple OSS Distributions 407*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_DRIVERKIT_MD_LCL_FILES),,dkpincdir,$(DKPINCFRAME_UNIFDEF))) 408*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_DRIVERKIT_MD_LCL_GEN_FILES),1,dkpincgendir,$(DKPINCFRAME_UNIFDEF))) 409*43a90889SApple OSS Distributionsendif 410*43a90889SApple OSS Distributions 411*43a90889SApple OSS Distributionsifeq ($(EXCLAVEKIT),1) 412*43a90889SApple OSS DistributionsINSTALL_EXCLAVEKIT_MD_LCL_FILES = $(addprefix $(DSTROOT)/$(EXCLAVEKITLCLDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_EXCLAVEKIT_MD_LCL_LIST)) 413*43a90889SApple OSS DistributionsINSTALL_EXCLAVEKIT_MD_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(EXCLAVEKITLCLDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_EXCLAVEKIT_MD_LCL_GEN_LIST)) 414*43a90889SApple OSS Distributions 415*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVEKIT_MD_LCL_FILES),,ekpincdir,$(EKPINCFRAME_UNIFDEF))) 416*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVEKIT_MD_LCL_GEN_FILES),1,ekpincgendir,$(EKPINCFRAME_UNIFDEF))) 417*43a90889SApple OSS Distributionsendif 418*43a90889SApple OSS Distributions 419*43a90889SApple OSS Distributionsifeq ($(EXCLAVECORE),1) 420*43a90889SApple OSS DistributionsINSTALL_EXCLAVECORE_MD_LCL_FILES = $(addprefix $(DSTROOT)/$(EXCLAVECORELCLDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_EXCLAVECORE_MD_LCL_LIST)) 421*43a90889SApple OSS DistributionsINSTALL_EXCLAVECORE_MD_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(EXCLAVECORELCLDIR)/$(INSTALL_MD_DIR)/, $(INSTALL_EXCLAVECORE_MD_LCL_GEN_LIST)) 422*43a90889SApple OSS Distributions 423*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVECORE_MD_LCL_FILES),,ecpincdir,$(ECPINCFRAME_UNIFDEF))) 424*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_EXCLAVECORE_MD_LCL_GEN_FILES),1,ecpincgendir,$(ECPINCFRAME_UNIFDEF))) 425*43a90889SApple OSS Distributionsendif 426*43a90889SApple OSS Distributions 427*43a90889SApple OSS DistributionsINSTALL_KF_MD_LCL_FILES = $(addprefix $(DSTROOT)/$(KPINCDIR)/$(EXPORT_MD_DIR)/, $(INSTALL_KF_MD_LCL_LIST)) 428*43a90889SApple OSS DistributionsINSTALL_KF_MD_LCL_GEN_FILES = $(addprefix $(DSTROOT)/$(KPINCDIR)/$(EXPORT_MD_DIR)/, $(INSTALL_KF_MD_LCL_GEN_LIST)) 429*43a90889SApple OSS Distributions 430*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_KF_MD_LCL_FILES),,kpincdir,$(KPINCFRAME_UNIFDEF))) 431*43a90889SApple OSS Distributions$(eval $(call INSTALLHDRS_RULE_template,$(INSTALL_KF_MD_LCL_GEN_FILES),1,kpincgendir,$(KPINCFRAME_UNIFDEF))) 432*43a90889SApple OSS Distributions 433*43a90889SApple OSS Distributions.PHONY: do_installhdrs_mi 434*43a90889SApple OSS Distributions 435*43a90889SApple OSS Distributions# Double-colon rule so that MakeInc.kernel can add custom behaviors 436*43a90889SApple OSS Distributionsdo_installhdrs_mi:: $(INSTALL_MI_INC_FILES) $(INSTALL_MI_INC_GEN_FILES) $(INSTALL_MODULEMAP_MI_INC_FILES) \ 437*43a90889SApple OSS Distributions $(INSTALL_IF_MI_FILES) $(INSTALL_IF_MI_GEN_FILES) \ 438*43a90889SApple OSS Distributions $(INSTALL_DRIVERKIT_MI_INC_FILES) $(INSTALL_DRIVERKIT_MI_INC_GEN_FILES) \ 439*43a90889SApple OSS Distributions $(INSTALL_EXCLAVEKIT_MI_INC_FILES) $(INSTALL_EXCLAVEKIT_MI_INC_GEN_FILES) \ 440*43a90889SApple OSS Distributions $(INSTALL_EXCLAVECORE_MI_INC_FILES) $(INSTALL_EXCLAVECORE_MI_INC_GEN_FILES) \ 441*43a90889SApple OSS Distributions $(INSTALL_KF_MI_FILES) $(INSTALL_KF_MI_GEN_FILES) \ 442*43a90889SApple OSS Distributions $(INSTALL_MI_LCL_FILES) $(INSTALL_MI_LCL_GEN_FILES) $(INSTALL_MODULEMAP_MI_LCL_FILES) \ 443*43a90889SApple OSS Distributions $(INSTALL_IF_MI_LCL_FILES) $(INSTALL_IF_MI_LCL_GEN_FILES) \ 444*43a90889SApple OSS Distributions $(INSTALL_SF_MI_LCL_FILES) $(INSTALL_SF_MI_LCL_GEN_FILES) \ 445*43a90889SApple OSS Distributions $(INSTALL_DRIVERKIT_MI_LCL_FILES) $(INSTALL_DRIVERKIT_MI_LCL_GEN_FILES) \ 446*43a90889SApple OSS Distributions $(INSTALL_KF_MI_LCL_FILES) $(INSTALL_KF_MI_LCL_GEN_FILES) \ 447*43a90889SApple OSS Distributions $(INSTALL_LIBCXX_MI_FILES) \ 448*43a90889SApple OSS Distributions $(INSTALL_EXCLAVEKIT_MI_LCL_FILES) $(INSTALL_EXCLAVEKIT_MI_LCL_GEN_FILES) \ 449*43a90889SApple OSS Distributions $(INSTALL_EXCLAVECORE_MI_LCL_FILES) $(INSTALL_EXCLAVECORE_MI_LCL_GEN_FILES) 450*43a90889SApple OSS Distributions @: 451*43a90889SApple OSS Distributions 452*43a90889SApple OSS Distributions.PHONY: do_installhdrs_md 453*43a90889SApple OSS Distributions 454*43a90889SApple OSS Distributionsdo_installhdrs_md: $(INSTALL_MD_INC_FILES) $(INSTALL_MD_INC_GEN_FILES) $(INSTALL_MODULEMAP_MD_INC_FILES) \ 455*43a90889SApple OSS Distributions $(INSTALL_DRIVERKIT_MD_INC_FILES) $(INSTALL_DRIVERKIT_MD_INC_GEN_FILES) \ 456*43a90889SApple OSS Distributions $(INSTALL_EXCLAVEKIT_MD_INC_FILES) $(INSTALL_EXCLAVEKIT_MD_INC_GEN_FILES) \ 457*43a90889SApple OSS Distributions $(INSTALL_EXCLAVECORE_MD_INC_FILES) $(INSTALL_EXCLAVECORE_MD_INC_GEN_FILES) \ 458*43a90889SApple OSS Distributions $(INSTALL_KF_MD_FILES) $(INSTALL_KF_MD_GEN_FILES) \ 459*43a90889SApple OSS Distributions $(INSTALL_MD_LCL_FILES) $(INSTALL_MD_LCL_GEN_FILES) $(INSTALL_MODULEMAP_MD_LCL_FILES) \ 460*43a90889SApple OSS Distributions $(INSTALL_SF_MD_LCL_FILES) $(INSTALL_SF_MD_LCL_GEN_FILES) \ 461*43a90889SApple OSS Distributions $(INSTALL_DRIVERKIT_MD_LCL_FILES) $(INSTALL_DRIVERKIT_MD_LCL_GEN_FILES) \ 462*43a90889SApple OSS Distributions $(INSTALL_EXCLAVEKIT_MD_LCL_FILES) $(INSTALL_EXCLAVEKIT_MD_LCL_GEN_FILES) \ 463*43a90889SApple OSS Distributions $(INSTALL_EXCLAVECORE_MD_LCL_FILES) $(INSTALL_EXCLAVECORE_MD_LCL_GEN_FILES) \ 464*43a90889SApple OSS Distributions $(INSTALL_KF_MD_LCL_FILES) $(INSTALL_KF_MD_LCL_GEN_FILES) 465*43a90889SApple OSS Distributions @: 466*43a90889SApple OSS Distributions 467*43a90889SApple OSS Distributions# 468*43a90889SApple OSS Distributions# Generic Export rules 469*43a90889SApple OSS Distributions# 470*43a90889SApple OSS DistributionsEXP_MI_INC_DIR = $(OBJROOT)/$(EXPDIR)/$(EXPORT_MI_DIR) 471*43a90889SApple OSS DistributionsEXPORT_MI_INC_FILES = $(addprefix $(EXP_MI_INC_DIR)/, $(EXPORT_MI_LIST)) 472*43a90889SApple OSS DistributionsEXPORT_MI_GEN_INC_FILES = $(addprefix $(EXP_MI_INC_DIR)/, $(EXPORT_MI_GEN_LIST)) 473*43a90889SApple OSS Distributions 474*43a90889SApple OSS Distributions$(EXP_MI_INC_DIR):: 475*43a90889SApple OSS Distributions $(_v)$(MKDIR) $@ 476*43a90889SApple OSS Distributions 477*43a90889SApple OSS Distributions$(EXPORT_MI_GEN_INC_FILES): $(EXP_MI_INC_DIR)/% : % | $(EXP_MI_INC_DIR) 478*43a90889SApple OSS Distributions $(_v)$(INSTALL) $(DATA_INSTALL_FLAGS_RO) $< $@ 479*43a90889SApple OSS Distributions 480*43a90889SApple OSS Distributions$(EXPORT_MI_INC_FILES): $(EXP_MI_INC_DIR)/% : $(SOURCE)/% | $(EXP_MI_INC_DIR) 481*43a90889SApple OSS Distributions $(_v)$(INSTALL) $(DATA_INSTALL_FLAGS_RO) $< $@ 482*43a90889SApple OSS Distributions 483*43a90889SApple OSS DistributionsEXP_MD_INC_DIR = $(OBJROOT)/$(EXPDIR)/$(EXPORT_MD_DIR) 484*43a90889SApple OSS DistributionsEXPORT_MD_INC_FILES = $(addprefix $(EXP_MD_INC_DIR)/, $(EXPORT_MD_LIST)) 485*43a90889SApple OSS DistributionsEXPORT_MD_GEN_INC_FILES = $(addprefix $(EXP_MD_INC_DIR)/, $(EXPORT_MD_GEN_LIST)) 486*43a90889SApple OSS Distributions 487*43a90889SApple OSS Distributions$(EXP_MD_INC_DIR):: 488*43a90889SApple OSS Distributions $(_v)$(MKDIR) $@ 489*43a90889SApple OSS Distributions 490*43a90889SApple OSS Distributions$(EXPORT_MD_GEN_INC_FILES): $(EXP_MD_INC_DIR)/% : % | $(EXP_MD_INC_DIR) 491*43a90889SApple OSS Distributions $(_v)$(INSTALL) $(DATA_INSTALL_FLAGS_RO) $< $@ 492*43a90889SApple OSS Distributions 493*43a90889SApple OSS Distributions$(EXPORT_MD_INC_FILES): $(EXP_MD_INC_DIR)/% : $(SOURCE)/% | $(EXP_MD_INC_DIR) 494*43a90889SApple OSS Distributions $(_v)$(INSTALL) $(DATA_INSTALL_FLAGS_RO) $< $@ 495*43a90889SApple OSS Distributions 496*43a90889SApple OSS Distributions.PHONY: do_exporthdrs_mi 497*43a90889SApple OSS Distributions 498*43a90889SApple OSS Distributionsdo_exporthdrs_mi: $(EXPORT_MI_GEN_INC_FILES) $(EXPORT_MI_INC_FILES) | $(EXP_MI_INC_DIR) 499*43a90889SApple OSS Distributions @: 500*43a90889SApple OSS Distributions 501*43a90889SApple OSS Distributions.PHONY: do_exporthdrs_md 502*43a90889SApple OSS Distributions 503*43a90889SApple OSS Distributionsdo_exporthdrs_md: $(EXPORT_MD_GEN_INC_FILES) $(EXPORT_MD_INC_FILES) | $(EXP_MD_INC_DIR) 504*43a90889SApple OSS Distributions @: 505*43a90889SApple OSS Distributions 506*43a90889SApple OSS Distributions# 507*43a90889SApple OSS Distributions# Generic Compilation rules 508*43a90889SApple OSS Distributions# 509*43a90889SApple OSS Distributions 510*43a90889SApple OSS Distributions# 511*43a90889SApple OSS Distributions# Compilation rules to generate .o from .s 512*43a90889SApple OSS Distributions# 513*43a90889SApple OSS Distributions 514*43a90889SApple OSS DistributionsS_RULE_0=@$(LOG_AS) "$@" 515*43a90889SApple OSS DistributionsS_RULE_1A=$(_v)$(S_KCC) -c $(SFLAGS) -MD -MF $(@:o=d) -MJ $(@:o=o.json) -MP $($@_SFLAGS_ADD) $(INCFLAGS) $($@_INCFLAGS) 516*43a90889SApple OSS DistributionsS_RULE_1B=$(<F) 517*43a90889SApple OSS DistributionsS_RULE_2= 518*43a90889SApple OSS Distributions 519*43a90889SApple OSS Distributions# 520*43a90889SApple OSS Distributions# Compilation rules to generate .o from .c for normal files 521*43a90889SApple OSS Distributions# 522*43a90889SApple OSS DistributionsC_RULE_0=@$(LOG_CC) "$@" 523*43a90889SApple OSS DistributionsC_RULE_1A=$(_v)$(KCC) -c $(filter-out $($@_CFLAGS_RM), $(CFLAGS) $(CWARNFLAGS)) -MD -MF $(@:o=d) -MJ $(@:o=o.json) -MP $($@_CFLAGS_ADD) $($@_CWARNFLAGS_ADD) $(INCFLAGS) $($@_INCFLAGS) 524*43a90889SApple OSS DistributionsC_RULE_1B=$(<F) 525*43a90889SApple OSS DistributionsC_RULE_2= 526*43a90889SApple OSS DistributionsC_RULE_3= 527*43a90889SApple OSS DistributionsC_RULE_4= 528*43a90889SApple OSS Distributions 529*43a90889SApple OSS Distributions 530*43a90889SApple OSS Distributions# 531*43a90889SApple OSS Distributions# Compilation rules to generate .o from .c for driver files 532*43a90889SApple OSS Distributions# 533*43a90889SApple OSS DistributionsC_RULE_0_D=$(C_RULE_0) 534*43a90889SApple OSS DistributionsC_RULE_1A_D=$(C_RULE_1A) 535*43a90889SApple OSS DistributionsC_RULE_1B_D=$(C_RULE_1B) 536*43a90889SApple OSS DistributionsC_RULE_2_D=$(C_RULE_2) 537*43a90889SApple OSS DistributionsC_RULE_3_D=$(C_RULE_3) 538*43a90889SApple OSS DistributionsC_RULE_4_D=$(C_RULE_4) 539*43a90889SApple OSS Distributions 540*43a90889SApple OSS Distributions# 541*43a90889SApple OSS Distributions# Compilation rules to generate .co from .cp or .cpo from .cpp 542*43a90889SApple OSS Distributions# The config tool slickly changes the last source filename char to 'o' 543*43a90889SApple OSS Distributions# for the object filename. 544*43a90889SApple OSS DistributionsP_RULE_0=@$(LOG_CXX) "$@" 545*43a90889SApple OSS DistributionsP_RULE_1A=$(_v)$(KC++) -o $@ -c $(CXXFLAGS) $(filter-out $($@_CFLAGS_RM), $(CFLAGS) $(CXXWARNFLAGS)) -MD -MF $(@:o=d) -MJ $(@:o=o.json) -MP $($@_CFLAGS_ADD) $($@_CXXWARNFLAGS_ADD) $(INCFLAGS) $($@_INCFLAGS) 546*43a90889SApple OSS DistributionsP_RULE_1B=$(<F) 547*43a90889SApple OSS DistributionsP_RULE_2= 548*43a90889SApple OSS Distributions 549*43a90889SApple OSS DistributionsP_RULE_3=@$(if $($@_VERIFIER), $(LOG_VERIFIER) "$@") 550*43a90889SApple OSS DistributionsP_RULE_4=@$(if $($@_VERIFIER), $(call VERIFY,$($@_VERIFIER),$@)) 551*43a90889SApple OSS Distributions 552*43a90889SApple OSS Distributions# 553*43a90889SApple OSS Distributions# Explain how to make the bsd syscall list 554*43a90889SApple OSS Distributions# 555*43a90889SApple OSS Distributions$(TARGET)/bsd.syscalls.master: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS) 556*43a90889SApple OSS Distributions @$(LOG_GENERATE) "$(@F)$(Color0) from $(ColorF)$<$(Color0)" 557*43a90889SApple OSS Distributions $(_v)$(UNIFDEF) $(SEED_DEFINES) $< > $@; \ 558*43a90889SApple OSS Distributions if [ $$? -eq 2 ]; then \ 559*43a90889SApple OSS Distributions $(ERR) Parse failure for $<; \ 560*43a90889SApple OSS Distributions exit 1; \ 561*43a90889SApple OSS Distributions fi 562*43a90889SApple OSS Distributions 563*43a90889SApple OSS Distributions.PHONY: do_build_all 564*43a90889SApple OSS Distributions 565*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 566*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 567*43a90889SApple OSS Distributionsdo_build_all:: 568*43a90889SApple OSS Distributions @: 569*43a90889SApple OSS Distributions 570*43a90889SApple OSS Distributions.PHONY: do_build_install_primary 571*43a90889SApple OSS Distributions 572*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 573*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 574*43a90889SApple OSS Distributionsdo_build_install_primary:: 575*43a90889SApple OSS Distributions @: 576*43a90889SApple OSS Distributions 577*43a90889SApple OSS Distributions.PHONY: do_build_install_non_primary 578*43a90889SApple OSS Distributions 579*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 580*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 581*43a90889SApple OSS Distributionsdo_build_install_non_primary:: 582*43a90889SApple OSS Distributions @: 583*43a90889SApple OSS Distributions 584*43a90889SApple OSS DistributionsINSTALL_MAN_FILES = $(addprefix $(DSTROOT)/$(MANDIR)/$(INSTALL_MAN_DIR)/, $(INSTALL_MAN_LIST)) 585*43a90889SApple OSS Distributions 586*43a90889SApple OSS Distributions.PHONY: INSTALL_MAN_DIR 587*43a90889SApple OSS Distributions 588*43a90889SApple OSS DistributionsINSTALL_MAN_DIR: 589*43a90889SApple OSS Distributions $(_v)$(MKDIR) $(DSTROOT)/$(MANDIR)/$(INSTALL_MAN_DIR) 590*43a90889SApple OSS Distributions 591*43a90889SApple OSS Distributions$(INSTALL_MAN_FILES): $(DSTROOT)/$(MANDIR)/$(INSTALL_MAN_DIR)/% : % | INSTALL_MAN_DIR 592*43a90889SApple OSS Distributions @$(LOG_MAN) "$*" 593*43a90889SApple OSS Distributions $(_v)$(INSTALL) $(INSTALL_FLAGS) $< $@ 594*43a90889SApple OSS Distributions 595*43a90889SApple OSS Distributionsdefine MAN_LINKS_RULE_template 596*43a90889SApple OSS Distributions$$(DSTROOT)/$$(MANDIR)/$$(INSTALL_MAN_DIR)/$(2): $$(DSTROOT)/$$(MANDIR)/$$(INSTALL_MAN_DIR)/$(1) 597*43a90889SApple OSS Distributions @$$(LOG_MANLINK) "$(2)" 598*43a90889SApple OSS Distributions $(_v)ln -f $$< $$@ 599*43a90889SApple OSS Distributionsendef 600*43a90889SApple OSS Distributions 601*43a90889SApple OSS Distributionsfunction_generate_man_links_rules = $(if $(word 1,$(1)),$(eval $(call MAN_LINKS_RULE_template,$(word 1,$(1)),$(word 2,$(1)))) $(DSTROOT)/$(MANDIR)/$(INSTALL_MAN_DIR)/$(word 2,$(1)) $(call function_generate_man_links_rules,$(wordlist 3,$(words $(1)),$(1)))) 602*43a90889SApple OSS Distributions 603*43a90889SApple OSS DistributionsINSTALL_MAN_FILES_LINKS = $(call function_generate_man_links_rules,$(INSTALL_MAN_LINKS)) 604*43a90889SApple OSS Distributions 605*43a90889SApple OSS Distributions.PHONY: do_installman 606*43a90889SApple OSS Distributions 607*43a90889SApple OSS Distributionsdo_installman: $(INSTALL_MAN_FILES) $(INSTALL_MAN_FILES_LINKS) 608*43a90889SApple OSS Distributions @: 609*43a90889SApple OSS Distributions 610*43a90889SApple OSS Distributions.PHONY: do_textfiles_install do_textfiles_install_mi do_textfiles_install_md 611*43a90889SApple OSS Distributions 612*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 613*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 614*43a90889SApple OSS Distributionsdo_textfiles_install_mi:: do_installman 615*43a90889SApple OSS Distributions @: 616*43a90889SApple OSS Distributions 617*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 618*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 619*43a90889SApple OSS Distributionsdo_textfiles_install_md:: 620*43a90889SApple OSS Distributions @: 621*43a90889SApple OSS Distributions 622*43a90889SApple OSS Distributions.PHONY: do_build_setup 623*43a90889SApple OSS Distributions 624*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 625*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 626*43a90889SApple OSS Distributionsdo_build_setup:: 627*43a90889SApple OSS Distributions @: 628*43a90889SApple OSS Distributions 629*43a90889SApple OSS Distributions.PHONY: do_config_all 630*43a90889SApple OSS Distributions 631*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 632*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 633*43a90889SApple OSS Distributionsdo_config_all:: 634*43a90889SApple OSS Distributions @: 635*43a90889SApple OSS Distributions 636*43a90889SApple OSS Distributions.PHONY: do_config_install_primary 637*43a90889SApple OSS Distributions 638*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 639*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 640*43a90889SApple OSS Distributionsdo_config_install_primary:: 641*43a90889SApple OSS Distributions @: 642*43a90889SApple OSS Distributions 643*43a90889SApple OSS Distributions.PHONY: do_config_install_variant 644*43a90889SApple OSS Distributions 645*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 646*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 647*43a90889SApple OSS Distributionsdo_config_install_variant:: 648*43a90889SApple OSS Distributions @: 649*43a90889SApple OSS Distributions 650*43a90889SApple OSS Distributions.PHONY: do_config_install 651*43a90889SApple OSS Distributions 652*43a90889SApple OSS Distributions# Do-nothing rule, since not all levels of the recursive hierarchy might implement this 653*43a90889SApple OSS Distributions# in their local Makefiles. Those that do will use a "::" rule to augment this. 654*43a90889SApple OSS Distributionsdo_config_install:: 655*43a90889SApple OSS Distributions @: 656*43a90889SApple OSS Distributions 657*43a90889SApple OSS Distributions# vim: set ft=make: 658