-COMPOBJROOT=$(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)
-
-$(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf:
- make build_setup
-
-$(COMPOBJROOT)/$(BSD_KERNEL_CONFIG)/Makefile : $(SOURCE)/MASTER \
- $(SOURCE)/MASTER.$(arch_config) \
- $(SOURCE)/Makefile.template \
- $(SOURCE)/Makefile.$(arch_config) \
- $(SOURCE)/files \
- $(SOURCE)/files.$(arch_config) \
- $(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}; \
- rm -f $(notdir $?); \
- cp $? $${doconf_target}; \
- $(OBJROOT)/$(KERNEL_CONFIG)_$(ARCH_CONFIG)/$(COMPONENT)/doconf -c -cpu $(arch_config) -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) \
- build_all \
- ); \
- echo "[ $(SOURCE) ] Returning do_all $(COMPONENT) $(BSD_KERNEL_CONFIG) $(ARCH_CONFIG) $(TARGET)";
-
-do_build_all: do_all
+$(TARGET)/$(CURRENT_KERNEL_CONFIG)/Makefile: $(SRCROOT)/SETUP/config/doconf $(OBJROOT)/SETUP/config $(DOCONFDEPS)
+ $(_v)$(MKDIR) $(TARGET)/$(CURRENT_KERNEL_CONFIG)
+ $(_v)$(SRCROOT)/SETUP/config/doconf -c -cpu $(DOCONF_ARCH_CONFIG_LC) -soc $(CURRENT_MACHINE_CONFIG_LC) -d $(TARGET)/$(CURRENT_KERNEL_CONFIG) -s $(SOURCE) -m $(MASTERCONFDIR) $(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