# each selected package to TARGETS if that package was selected
 # in the .config file.
 include toolchain/*/*.mk
+ifeq ($(BR2_PACKAGE_LINUX),y)
+TARGETS+=linux26-modules
+endif
 include package/*/*.mk
 
 # target stuff is last so it can override anything else
        fi
 
 menuconfig: $(CONFIG)/mconf
-       @-mkdir -p include/config
-       @KCONFIG_AUTOCONFIG=include/config/auto.conf \
-               KCONFIG_AUTOHEADER=include/autoconf.h \
+       @-mkdir -p $(CONFIG)/buildroot-config
+       @KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
+               KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
                $(CONFIG)/mconf $(CONFIG_CONFIG_IN)
 
 config: $(CONFIG)/conf
-       @-mkdir -p include/config
-       @KCONFIG_AUTOCONFIG=include/config/auto.conf \
-               KCONFIG_AUTOHEADER=include/autoconf.h \
+       @-mkdir -p $(CONFIG)/buildroot-config
+       @KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
+               KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
                $(CONFIG)/conf $(CONFIG_CONFIG_IN)
 
 oldconfig: $(CONFIG)/conf
-       @-mkdir -p include/config
-       @KCONFIG_AUTOCONFIG=include/config/auto.conf \
-               KCONFIG_AUTOHEADER=include/autoconf.h \
+       @-mkdir -p $(CONFIG)/buildroot-config
+       @KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
+               KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
                $(CONFIG)/conf -o $(CONFIG_CONFIG_IN)
 
 randconfig: $(CONFIG)/conf
-       @-mkdir -p include/config
-       @KCONFIG_AUTOCONFIG=include/config/auto.conf \
-               KCONFIG_AUTOHEADER=include/autoconf.h \
+       @-mkdir -p $(CONFIG)/buildroot-config
+       @KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
+               KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
                $(CONFIG)/conf -r $(CONFIG_CONFIG_IN)
 
 allyesconfig: $(CONFIG)/conf
        cat $(CONFIG_DEFCONFIG) > .config
-       @-mkdir -p include/config
-       @KCONFIG_AUTOCONFIG=include/config/auto.conf \
-               KCONFIG_AUTOHEADER=include/autoconf.h \
+       @-mkdir -p $(CONFIG)/buildroot-config
+       @KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
+               KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
                $(CONFIG)/conf -y $(CONFIG_CONFIG_IN)
        #sed -i -e "s/^CONFIG_DEBUG.*/# CONFIG_DEBUG is not set/" .config
 
 allnoconfig: $(CONFIG)/conf
-       @-mkdir -p include/config
-       @KCONFIG_AUTOCONFIG=include/config/auto.conf \
-               KCONFIG_AUTOHEADER=include/autoconf.h \
+       @-mkdir -p $(CONFIG)/buildroot-config
+       @KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
+               KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
                $(CONFIG)/conf -n $(CONFIG_CONFIG_IN)
 
 defconfig: $(CONFIG)/conf
-       @-mkdir -p include/config
-       @KCONFIG_AUTOCONFIG=include/config/auto.conf \
-               KCONFIG_AUTOHEADER=include/autoconf.h \
+       @-mkdir -p $(CONFIG)/buildroot-config
+       @KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
+               KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
                $(CONFIG)/conf -d $(CONFIG_CONFIG_IN)
 
 # check if download URLs are outdated 
 
        cp -dpf $(LINUX26_DIR)/$(LINUX26_BINLOC) $(LINUX26_KERNEL)
        touch -c $@
 
-$(TARGET_DIR)/boot/$(LINUX26_FORMAT): $(LINUX26_KERNEL)
-       [ -d $(TARGET_DIR)/boot/ ] || mkdir $(TARGET_DIR)/boot
-       cp -dpf $(LINUX26_DIR)/$(LINUX26_BINLOC) $(LINUX26_DIR)/System.map $(TARGET_DIR)/boot/
-       touch -c $@
-
-linux26-modules $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep: $(LINUX26_DIR)/.depend_done
+$(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep: $(LINUX26_DIR)/.configured
        rm -rf $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)
        rm -f $(TARGET_DIR)/sbin/cardmgr
        $(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) modules
                INSTALL_MOD_PATH=$(TARGET_DIR) modules_install
        rm -f $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/build
        rm -f $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/source
+       $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-depmod26 -b $(TARGET_DIR) $(LINUX_HEADERS_VERSION)
        touch -c $@
 
 linux26-menuconfig: $(LINUX26_DIR)/.patched host-sed
        $(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) menuconfig
        -[ -f $(LINUX26_DIR)/.config ] && touch $(LINUX26_DIR)/.configured
 
-linux26: cross-depmod26 $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep $(INITRAMFS_TARGET) $(TARGET_DIR)/boot/$(LINUX26_FORMAT)
+linux26: $(INITRAMFS_TARGET) $(LINUX26_KERNEL)
+
+$(LINUX26_DIR)/.modules_installed: $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep
+       touch $@
+
+linux26-modules: cross-depmod26 $(LINUX26_DIR)/.modules_installed
 
 linux26-source: $(DL_DIR)/$(LINUX26_SOURCE)