]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/conf/Makefile
xnu-2050.7.9.tar.gz
[apple/xnu.git] / osfmk / conf / Makefile
index a1d04575ed3388ec7ad3614b96240f1bcf807874..43980797923a52a94121ca1f24cad967e5c23ebc 100644 (file)
@@ -3,12 +3,10 @@ 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
+SETUP_SUBDIRS =
 
 COMP_SUBDIRS = 
 
@@ -18,52 +16,49 @@ ifndef OSFMK_KERNEL_CONFIG
 export OSFMK_KERNEL_CONFIG = $(KERNEL_CONFIG)
 endif
 
-COMPOBJROOT=$(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)
+ifneq ($(MACHINE_CONFIG), DEFAULT)
+export COMPOBJROOT=$(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)_$(MACHINE_CONFIG)/$(COMPONENT)
+else
+export COMPOBJROOT=$(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)
+endif
 
-$(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf:
-       make build_setup 
+MASTER_CPU_PER_SOC = $(SOURCE)/MASTER.$(ARCH_CONFIG_LC).$(MACHINE_CONFIG_LC)
 
 $(COMPOBJROOT)/$(OSFMK_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 $(OSFMK_KERNEL_CONFIG)";
-       (doconf_target=$(addsuffix /conf, $(TARGET)); \
-       echo $${doconf_target};\
+       $(SOURCE)/files.$(ARCH_CONFIG_LC)
+       $(_v)(doconf_target=$(addsuffix /conf, $(TARGET)); \
        $(MKDIR) $${doconf_target}; \
        cd $${doconf_target}; \
        rm -f $(notdir $?); \
        cp  $? $${doconf_target}; \
-       $(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf -c -cpu $(ARCH_CONFIG_LC) -d  $(TARGET)/$(OSFMK_KERNEL_CONFIG) $(OSFMK_KERNEL_CONFIG); \
+       if [ -f $(MASTER_CPU_PER_SOC) ]; then cp $(MASTER_CPU_PER_SOC) $${doconf_target}; fi; \
+       $(SRCROOT)/SETUP/config/doconf -c -cpu $(ARCH_CONFIG_LC) -soc $(MACHINE_CONFIG_LC) -d  $(TARGET)/$(OSFMK_KERNEL_CONFIG) $(OSFMK_KERNEL_CONFIG); \
        );
 
 $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG)/platforms.h: $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG)/Makefile
-       (cd $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG);                      \
+       $(_v)(cd $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG);                 \
        ${RM} $@;                                               \
        ${LN} cputypes.h $@;                                    \
        )
 
-do_setup_conf: $(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf \
-               $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG)/Makefile \
+do_all: $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG)/Makefile \
                $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG)/platforms.h 
-
-do_all: do_setup_conf
-       @echo "[ $(SOURCE) ] Starting do_all  $(COMPONENT) $(OSFMK_KERNEL_CONFIG) $(ARCH_CONFIG) $(TARGET)";    \
-       (cd $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG);                              \
-       next_source=$(subst conf/,,$(SOURCE));                  \
-       ${MAKE} MAKEFILES=$(TARGET)/$(OSFMK_KERNEL_CONFIG)/Makefile     \
+       $(_v)next_source=$(subst conf/,,$(SOURCE));                     \
+       next_relsource=$(subst conf/,,$(RELATIVE_SOURCE_PATH));         \
+       ${MAKE} -C $(COMPOBJROOT)/$(OSFMK_KERNEL_CONFIG)        \
+               MAKEFILES=$(TARGET)/$(OSFMK_KERNEL_CONFIG)/Makefile     \
                SOURCE=$${next_source}                  \
+               RELATIVE_SOURCE_PATH=$${next_relsource}                 \
                TARGET=$(TARGET)                                        \
                INCL_MAKEDEP=FALSE      \
-               build_all       \
-       );              \
-       echo "[ $(SOURCE) ] Returning do_all $(COMPONENT) $(OSFMK_KERNEL_CONFIG) $(ARCH_CONFIG) $(TARGET)";
+               KERNEL_CONFIG=$(OSFMK_KERNEL_CONFIG)    \
+               build_all;
 
 do_build_all: do_all 
 
 include $(MakeInc_rule)
 include $(MakeInc_dir)
-