X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/0b4e3aa066abc0728aacb4bbeb86f53f9737156e..39236c6e673c41db228275375ab7fdb0f837b292:/bsd/conf/Makefile diff --git a/bsd/conf/Makefile b/bsd/conf/Makefile index c2e1c4abc..25a42ef5e 100644 --- a/bsd/conf/Makefile +++ b/bsd/conf/Makefile @@ -3,61 +3,37 @@ export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir - include $(MakeInc_cmd) include $(MakeInc_def) -SETUP_SUBDIRS = \ - tools - -COMP_SUBDIRS = - -INST_SUBDIRS = - -ifndef BSD_KERNEL_CONFIG -export BSD_KERNEL_CONFIG = $(KERNEL_CONFIG) -endif - -COMPOBJROOT=$(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT) +MASTER_CPU_PER_SOC = $(SOURCE)/MASTER.$(CURRENT_ARCH_CONFIG_LC).$(CURRENT_MACHINE_CONFIG_LC) -$(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf: - make build_setup - -$(COMPOBJROOT)/$(BSD_KERNEL_CONFIG)/Makefile : $(SOURCE)/MASTER \ - $(SOURCE)/MASTER.$(ARCH_CONFIG_LC) \ - $(SOURCE)/Makefile.template \ - $(SOURCE)/Makefile.$(ARCH_CONFIG_LC) \ - $(SOURCE)/files \ - $(SOURCE)/files.$(ARCH_CONFIG_LC) \ - $(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf - @echo "Running doconf for $(BSD_KERNEL_CONFIG)"; - (doconf_target=$(addsuffix /conf, $(TARGET)); \ - echo $${doconf_target};\ - $(MKDIR) $${doconf_target}; \ - cd $${doconf_target}; \ +$(TARGET)/$(CURRENT_KERNEL_CONFIG)/Makefile : $(SOURCE)/MASTER \ + $(SOURCE)/MASTER.$(CURRENT_ARCH_CONFIG_LC) \ + $(SOURCE)/Makefile.template \ + $(SOURCE)/Makefile.$(CURRENT_ARCH_CONFIG_LC) \ + $(SOURCE)/files \ + $(SOURCE)/files.$(CURRENT_ARCH_CONFIG_LC) + $(_v)$(MKDIR) $(addsuffix /conf, $(TARGET)); \ + cd $(addsuffix /conf, $(TARGET)); \ rm -f $(notdir $?); \ - cp $? $${doconf_target}; \ - $(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf -c -cpu $(ARCH_CONFIG_LC) -d $(TARGET)/$(BSD_KERNEL_CONFIG) $(BSD_KERNEL_CONFIG); \ - ); - -.ORDER: $(COMPOBJROOT)/$(BSD_KERNEL_CONFIG)/Makefile - -do_setup_conf: $(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf \ - $(COMPOBJROOT)/$(BSD_KERNEL_CONFIG)/Makefile - -do_all: do_setup_conf - @echo "[ $(SOURCE) ] Starting do_all $(COMPONENT) $(BSD_KERNEL_CONFIG) $(ARCH_CONFIG) $(TARGET)"; \ - (cd $(COMPOBJROOT)/$(BSD_KERNEL_CONFIG); \ - next_source=$(subst conf/,,$(SOURCE)); \ - ${MAKE} MAKEFILES=$(TARGET)/$(BSD_KERNEL_CONFIG)/Makefile \ - SOURCE=$${next_source} \ - TARGET=$(TARGET) \ - INCL_MAKEDEP=FALSE \ - build_all \ - ); \ - echo "[ $(SOURCE) ] Returning do_all $(COMPONENT) $(BSD_KERNEL_CONFIG) $(ARCH_CONFIG) $(TARGET)"; - -do_build_all: do_all + cp $? .; \ + if [ $(MASTER_CPU_PER_SOC) -nt $@ ]; then cp $(MASTER_CPU_PER_SOC) .; fi; \ + $(SRCROOT)/SETUP/config/doconf -c -cpu $(CURRENT_ARCH_CONFIG_LC) -soc $(CURRENT_MACHINE_CONFIG_LC) -d $(TARGET)/$(CURRENT_KERNEL_CONFIG) $(CURRENT_KERNEL_CONFIG); + +do_all: $(TARGET)/$(CURRENT_KERNEL_CONFIG)/Makefile + $(_v)${MAKE} \ + -C $(TARGET)/$(CURRENT_KERNEL_CONFIG) \ + -f $(TARGET)/$(CURRENT_KERNEL_CONFIG)/Makefile \ + CURRENT_KERNEL_CONFIG=${CURRENT_KERNEL_CONFIG} \ + CURRENT_ARCH_CONFIG=${CURRENT_ARCH_CONFIG} \ + CURRENT_MACHINE_CONFIG=${CURRENT_MACHINE_CONFIG} \ + SOURCE=$(subst conf/,,$(SOURCE)) \ + TARGET=${TARGET} \ + OBJPATH=${OBJPATH} \ + build_all; + +do_build_all:: do_all include $(MakeInc_rule) include $(MakeInc_dir)