aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2007-07-18 11:31:01 +0000
committerFelix Fietkau <nbd@openwrt.org>2007-07-18 11:31:01 +0000
commitcbd55fe6d7ed5390cde7f6125b34f1a71c9641ff (patch)
tree88d4d876b06115bb72f544ca0f7dd6280ad749eb /include
parenta2553569edee7c730f14edc9ac44be33e28b8bed (diff)
downloadupstream-cbd55fe6d7ed5390cde7f6125b34f1a71c9641ff.tar.gz
upstream-cbd55fe6d7ed5390cde7f6125b34f1a71c9641ff.tar.bz2
upstream-cbd55fe6d7ed5390cde7f6125b34f1a71c9641ff.zip
dynamically enable/disable kernel config options for kmod packages based on build system config
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8026 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'include')
-rw-r--r--include/kernel-build.mk2
-rw-r--r--include/kernel-defaults.mk10
-rw-r--r--include/kernel.mk18
-rw-r--r--include/package-defaults.mk1
-rw-r--r--include/package-dumpinfo.mk1
5 files changed, 15 insertions, 17 deletions
diff --git a/include/kernel-build.mk b/include/kernel-build.mk
index 1e63279c08..e063165d35 100644
--- a/include/kernel-build.mk
+++ b/include/kernel-build.mk
@@ -98,7 +98,7 @@ define BuildKernel
$(call Kernel/Prepare)
touch $$@
- $(STAMP_CONFIGURED): $(STAMP_PREPARED) $(LINUX_CONFIG) $(GENERIC_LINUX_CONFIG)
+ $(STAMP_CONFIGURED): $(STAMP_PREPARED) $(LINUX_CONFIG) $(GENERIC_LINUX_CONFIG) $(TOPDIR)/.config
$(call Kernel/Configure)
touch $$@
diff --git a/include/kernel-defaults.mk b/include/kernel-defaults.mk
index 1bd6b427ad..409b7d723a 100644
--- a/include/kernel-defaults.mk
+++ b/include/kernel-defaults.mk
@@ -46,11 +46,11 @@ define Kernel/Configure/2.6
-$(MAKE) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" oldconfig prepare scripts
endef
define Kernel/Configure/Default
- @if [ -f "./config/profile-$(PROFILE)" ]; then \
- $(SCRIPT_DIR)/config.pl '+' $(GENERIC_LINUX_CONFIG) '+' $(LINUX_CONFIG) ./config/profile-$(PROFILE) > $(LINUX_DIR)/.config; \
- else \
- $(SCRIPT_DIR)/config.pl '+' $(GENERIC_LINUX_CONFIG) $(LINUX_CONFIG) > $(LINUX_DIR)/.config; \
- fi
+ $(SCRIPT_DIR)/config.pl '+' $(GENERIC_LINUX_CONFIG) \
+ $(if $(wildcard ./config/profile-$(PROFILE)),'+' $(LINUX_CONFIG) ./config/profile-$(PROFILE), $(LINUX_CONFIG)) \
+ > $(LINUX_DIR)/.config.target
+ $(SCRIPT_DIR)/metadata.pl kconfig $(TMP_DIR)/.packageinfo $(TOPDIR)/.config > $(LINUX_DIR)/.config.override
+ $(SCRIPT_DIR)/config.pl 'm+' $(LINUX_DIR)/.config.target $(LINUX_DIR)/.config.override >$(LINUX_DIR)/.config
$(call Kernel/Configure/$(KERNEL))
rm -rf $(KERNEL_BUILD_DIR)/modules
@rm -f $(BUILD_DIR)/linux
diff --git a/include/kernel.mk b/include/kernel.mk
index 057faac99b..d27f8ac6ac 100644
--- a/include/kernel.mk
+++ b/include/kernel.mk
@@ -52,7 +52,6 @@ GENERIC_PATCH_DIR := $(GENERIC_PLATFORM_DIR)/patches$(shell [ -d "$(GENERIC_PLAT
define KernelPackage/Defaults
FILES:=
- KCONFIG:=m
AUTOLOAD:=
endef
@@ -91,7 +90,6 @@ define KernelPackage
TITLE:=$(TITLE)
SECTION:=kernel
CATEGORY:=Kernel modules
- DEFAULT:=$(KMOD_DEFAULT)
DESCRIPTION:=$(DESCRIPTION)
EXTRA_DEPENDS:=kernel (=$(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE))
$(call KernelPackage/$(1))
@@ -99,15 +97,13 @@ define KernelPackage
$(call KernelPackage/$(1)/$(BOARD)-$(KERNEL))
endef
- ifeq ($(findstring m,$(KCONFIG)),m)
- ifneq ($(strip $(FILES)),)
- define Package/kmod-$(1)/install
- mkdir -p $$(1)/lib/modules/$(LINUX_VERSION)
- $(CP) -L $$(FILES) $$(1)/lib/modules/$(LINUX_VERSION)/
- $(call ModuleAutoLoad,$(1),$$(1),$(AUTOLOAD))
- $(call KernelPackage/$(1)/install,$$(1))
- endef
- endif
+ ifneq ($(strip $(FILES)),)
+ define Package/kmod-$(1)/install
+ mkdir -p $$(1)/lib/modules/$(LINUX_VERSION)
+ $(CP) -L $$(FILES) $$(1)/lib/modules/$(LINUX_VERSION)/
+ $(call ModuleAutoLoad,$(1),$$(1),$(AUTOLOAD))
+ $(call KernelPackage/$(1)/install,$$(1))
+ endef
endif
$$(eval $$(call BuildPackage,kmod-$(1)))
diff --git a/include/package-defaults.mk b/include/package-defaults.mk
index 877fff8338..c0e13f412f 100644
--- a/include/package-defaults.mk
+++ b/include/package-defaults.mk
@@ -31,6 +31,7 @@ define Package/Default
SUBMENUDEP:=
TITLE:=
DESCRIPTION:=
+ KCONFIG:=
endef
Build/Patch:=$(Build/Patch/Default)
diff --git a/include/package-dumpinfo.mk b/include/package-dumpinfo.mk
index effb8637bd..bc075e1bc0 100644
--- a/include/package-dumpinfo.mk
+++ b/include/package-dumpinfo.mk
@@ -28,6 +28,7 @@ ifneq ($(DUMP),)
echo "Category: $(CATEGORY)"; \
echo "Title: $(TITLE)"; \
echo "Maintainer: $(MAINTAINER)"; \
+ $(if $(KCONFIG),echo "Kernel-Config: $(KCONFIG)";) \
echo -n "Description: "; \
getvar $(call shvar,Package/$(1)/description); \
$(if $(URL),echo;echo "$(URL)";) \