From 8e4255397198574a9cd1354e194cb65bdd2051c0 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Wed, 18 Jul 2007 11:31:01 +0000 Subject: dynamically enable/disable kernel config options for kmod packages based on build system config SVN-Revision: 8026 --- include/kernel-build.mk | 2 +- include/kernel-defaults.mk | 10 +++++----- include/kernel.mk | 18 +++++++----------- include/package-defaults.mk | 1 + include/package-dumpinfo.mk | 1 + 5 files changed, 15 insertions(+), 17 deletions(-) (limited to 'include') 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)";) \ -- cgit v1.2.3