diff options
author | Felix Fietkau <nbd@openwrt.org> | 2009-03-03 13:54:29 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2009-03-03 13:54:29 +0000 |
commit | 127296bc455beff15cdc3830e66fc6d2311e6057 (patch) | |
tree | b2414746d5d9c91c3d8ab8fec287b5e23e1c518f /include | |
parent | 2d1ed46c687f4ec831da97e9209513a8111a0b1a (diff) | |
download | upstream-127296bc455beff15cdc3830e66fc6d2311e6057.tar.gz upstream-127296bc455beff15cdc3830e66fc6d2311e6057.tar.bz2 upstream-127296bc455beff15cdc3830e66fc6d2311e6057.zip |
speed up metadata scanning a lot by avoiding unnecessary shell commands and make recursions
SVN-Revision: 14734
Diffstat (limited to 'include')
-rw-r--r-- | include/host.mk | 4 | ||||
-rw-r--r-- | include/kernel-version.mk | 6 | ||||
-rw-r--r-- | include/package-dumpinfo.mk | 73 | ||||
-rw-r--r-- | include/quilt.mk | 3 | ||||
-rw-r--r-- | include/target.mk | 12 |
5 files changed, 58 insertions, 40 deletions
diff --git a/include/host.mk b/include/host.mk index b6a58248fd..497d044503 100644 --- a/include/host.mk +++ b/include/host.mk @@ -6,7 +6,9 @@ # TMP_DIR ?= $(TOPDIR)/tmp --include $(TMP_DIR)/.host.mk +ifndef DUMP + -include $(TMP_DIR)/.host.mk +endif export TAR FIND diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 45139a6a77..003fc085b3 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -38,6 +38,8 @@ endif # disable the md5sum check for unknown kernel versions LINUX_KERNEL_MD5SUM?=x -KERNEL?=2.$(word 2,$(subst ., ,$(strip $(LINUX_VERSION)))) -KERNEL_PATCHVER=$(shell echo '$(LINUX_VERSION)' | cut -d. -f1,2,3 | cut -d- -f1) +split_version=$(subst ., ,$(1)) +merge_version=$(subst $(space),.,$(1)) +KERNEL=$(call merge_version,$(wordlist 1,2,$(call split_version,$(LINUX_VERSION)))) +KERNEL_PATCHVER=$(call merge_version,$(wordlist 1,3,$(call split_version,$(LINUX_VERSION)))) diff --git a/include/package-dumpinfo.mk b/include/package-dumpinfo.mk index f5f1200ba2..f08788bbb1 100644 --- a/include/package-dumpinfo.mk +++ b/include/package-dumpinfo.mk @@ -6,37 +6,48 @@ # ifneq ($(DUMP),) - define Config - preconfig_$$(1) += echo "Preconfig: $(1)"; echo "Preconfig-Type: $(2)"; echo "Preconfig-Default: $(3)"; echo "Preconfig-Label: $(4)"; - endef - define Dumpinfo - dumpinfo: dumpinfo-$(1) - .SILENT: dumpinfo-$(1) - dumpinfo-$(1): FORCE - @echo "Package: $(1)" ; \ - $(if $(MENU),echo "Menu: $(MENU)";) \ - $(if $(SUBMENU),echo "Submenu: $(SUBMENU)";) \ - $(if $(SUBMENUDEP),echo "Submenu-Depends: $(SUBMENUDEP)";) \ - $(if $(DEFAULT),echo "Default: $(DEFAULT)";) \ - if [ "$$$$PREREQ_CHECK" = 1 ]; then echo "Prereq-Check: 1"; fi; \ - echo "Version: $(VERSION)"; \ - echo "Depends: $(DEPENDS)"; \ - echo "Provides: $(PROVIDES)"; \ - echo "Build-Depends: $(PKG_BUILD_DEPENDS)"; \ - echo "Section: $(SECTION)"; \ - echo "Category: $(CATEGORY)"; \ - echo "Title: $(TITLE)"; \ - echo "Maintainer: $(MAINTAINER)"; \ - echo "Source: $(PKG_SOURCE)"; \ - echo "Type: $(if $(Package/$(1)/targets),$(Package/$(1)/targets),$(if $(PKG_TARGETS),$(PKG_TARGETS),ipkg))"; \ - $(if $(KCONFIG),echo "Kernel-Config: $(KCONFIG)";) \ - $(if $(BUILDONLY),echo "Build-Only: $(BUILDONLY)";) \ - echo -n "Description: "; \ - getvar $(call shvar,Package/$(1)/description); \ - $(if $(URL),echo;echo "$(URL)";) \ - echo "@@" ; \ - $$(if $$(Package/$(1)/config),echo "Config: "; getvar $(call shvar,Package/$(1)/config); echo "@@"; ) \ - $$(if $$(preconfig_$(1)),$$(preconfig_$(1)) echo "") +dumpinfo: FORCE + +define Config/template +Preconfig: $(1) +Preconfig-Type: $(2) +Preconfig-Default: $(3) +Preconfig-Label: $(4) + +endef + +define Config + Preconfig/$(1) = $$(call Config/template,$(1),$(2),$(3),$(4)) + preconfig_$$(1) += $(1) +endef + +define Dumpinfo +$(info Package: $(1) +$(if $(MENU),Menu: $(MENU) +)$(if $(SUBMENU),Submenu: $(SUBMENU) +)$(if $(SUBMENUDEP),Submenu-Depends: $(SUBMENUDEP) +)$(if $(DEFAULT),Default: $(DEFAULT) +)$(if $(findstring $(PREREQ_CHECK),1),Prereq-Check: 1 +)Version: $(VERSION) +Depends: $(DEPENDS) +Provides: $(PROVIDES) +Build-Depends: $(PKG_BUILD_DEPENDS) +Section: $(SECTION) +Category: $(CATEGORY) +Title: $(TITLE) +Maintainer: $(MAINTAINER) +Source: $(PKG_SOURCE) +Type: $(if $(Package/$(1)/targets),$(Package/$(1)/targets),$(if $(PKG_TARGETS),$(PKG_TARGETS),ipkg)) +$(if $(KCONFIG),Kernel-Config: $(KCONFIG) +)$(if $(BUILDONLY),Build-Only: $(BUILDONLY) +)Description: $(if $(Package/$(1)/description),$(Package/$(1)/description),$(TITLE)) +$(if $(URL),$(URL) +)@@ +$(if $(Package/$(1)/config),Config: +$(Package/$(1)/config) +@@ +)$(foreach pc,$(preconfig_$(1)), +$(Preconfig/$(pc)))) endef endif diff --git a/include/quilt.mk b/include/quilt.mk index 71fee06f14..c5245a8aee 100644 --- a/include/quilt.mk +++ b/include/quilt.mk @@ -3,9 +3,8 @@ # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. -# -ifneq ($(__quilt_inc),1) +ifneq ($(if $(DUMP),1,$(__quilt_inc)),1) __quilt_inc:=1 ifeq ($(TARGET_BUILD),1) diff --git a/include/target.mk b/include/target.mk index ee373aa19e..d3c149aa18 100644 --- a/include/target.mk +++ b/include/target.mk @@ -40,9 +40,11 @@ TARGETID:=$(BOARD)$(if $(SUBTARGET),/$(SUBTARGET)) PLATFORM_SUBDIR:=$(PLATFORM_DIR)$(if $(SUBTARGET),/$(SUBTARGET)) ifneq ($(TARGET_BUILD),1) - include $(PLATFORM_DIR)/Makefile - ifneq ($(PLATFORM_DIR),$(PLATFORM_SUBDIR)) - include $(PLATFORM_SUBDIR)/target.mk + ifndef DUMP + include $(PLATFORM_DIR)/Makefile + ifneq ($(PLATFORM_DIR),$(PLATFORM_SUBDIR)) + include $(PLATFORM_SUBDIR)/target.mk + endif endif else ifneq ($(SUBTARGET),) @@ -102,7 +104,9 @@ endif $(eval $(call shexport,Target/Description)) -include $(INCLUDE_DIR)/kernel-version.mk +ifneq ($(TARGET_BUILD)$(if $(DUMP),,1),) + include $(INCLUDE_DIR)/kernel-version.mk +endif GENERIC_PLATFORM_DIR := $(TOPDIR)/target/linux/generic-$(KERNEL) GENERIC_PATCH_DIR := $(GENERIC_PLATFORM_DIR)/patches$(shell [ -d "$(GENERIC_PLATFORM_DIR)/patches-$(KERNEL_PATCHVER)" ] && printf -- "-$(KERNEL_PATCHVER)" || true ) |