speed up the build system by including include/shell.sh on shell commands only where...
authorFelix Fietkau <nbd@openwrt.org>
Thu, 19 Aug 2010 12:49:37 +0000 (12:49 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Thu, 19 Aug 2010 12:49:37 +0000 (12:49 +0000)
SVN-Revision: 22720

include/depends.mk
include/kernel.mk
include/package-defaults.mk
include/package-ipkg.mk
include/target.mk
include/toplevel.mk
include/unpack.mk
rules.mk

index 65e9b25..828ceb8 100644 (file)
@@ -13,7 +13,7 @@
 
 DEP_FINDPARAMS := -x "*/.svn*" -x ".*" -x "*:*" -x "*\!*" -x "* *" -x "*\\\#*" -x "*/.*_check"
 
-find_md5=find $(1) -type f $(patsubst -x,-and -not -path,$(DEP_FINDPARAMS) $(2)) | md5s
+find_md5=$(SH_FUNC) find $(1) -type f $(patsubst -x,-and -not -path,$(DEP_FINDPARAMS) $(2)) | md5s
 
 define rdep
   .PRECIOUS: $(2)
index f283e0f..6ef4fd9 100644 (file)
@@ -64,6 +64,7 @@ define KernelPackage/Defaults
 endef
 
 define ModuleAutoLoad
+       $(SH_FUNC) \
        export modules=; \
        add_module() { \
                mkdir -p $(2)/etc/modules.d; \
index 117497d..649f409 100644 (file)
@@ -43,7 +43,7 @@ endef
 Build/Patch:=$(Build/Patch/Default)
 ifneq ($(strip $(PKG_UNPACK)),)
   define Build/Prepare/Default
-       $(PKG_UNPACK)
+       $(SH_FUNC) $(PKG_UNPACK)
        $(Build/Patch)
   endef
 endif
index 87b142a..82fc209 100644 (file)
@@ -21,7 +21,7 @@ IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg
 
 define BuildIPKGVariable
   $(call shexport,Package/$(1)/$(2))
-  $(1)_COMMANDS += var2file "$(call shvar,Package/$(1)/$(2))" $(2);
+  $(1)_COMMANDS += $(SH_FUNC) var2file "$(call shvar,Package/$(1)/$(2))" $(2);
 endef
 
 PARENL :=(
@@ -95,7 +95,7 @@ ifeq ($(DUMP),)
                echo "Maintainer: $(MAINTAINER)"; \
                echo "Architecture: $(PKGARCH)"; \
                echo "Installed-Size: 1"; \
-               echo -n "Description: "; getvar $(call shvar,Package/$(1)/description) | sed -e 's,^[[:space:]]*, ,g'; \
+               echo -n "Description: "; $(SH_FUNC) getvar $(call shvar,Package/$(1)/description) | sed -e 's,^[[:space:]]*, ,g'; \
        ) >> $$(IDIR_$(1))/CONTROL/control
        chmod 644 $$(IDIR_$(1))/CONTROL/control
        (cd $$(IDIR_$(1))/CONTROL; \
index 2f45bd8..d49714c 100644 (file)
@@ -67,10 +67,10 @@ define Profile
                echo "Target-Profile-Kconfig: yes"; \
        fi; \
        echo "Target-Profile-Config: "; \
-       getvar "$(call shvar,Profile/$(1)/Config)"; \
+       $(SH_FUNC) getvar "$(call shvar,Profile/$(1)/Config)"; \
        echo "@@"; \
        echo "Target-Profile-Description:"; \
-       getvar "$(call shvar,Profile/$(1)/Description)"; \
+       $(SH_FUNC) getvar "$(call shvar,Profile/$(1)/Description)"; \
        echo "@@"; \
        echo;
   ifeq ($(CONFIG_TARGET_$(call target_conf,$(BOARD)_$(if $(SUBTARGET),$(SUBTARGET)_)$(1))),y)
@@ -185,7 +185,7 @@ define BuildTargets/DumpCurrent
         echo 'Linux-Release: $(LINUX_RELEASE)'; \
         echo 'Linux-Kernel-Arch: $(LINUX_KARCH)'; \
         echo 'Target-Description:'; \
-        getvar $(call shvar,Target/Description); \
+        $(SH_FUNC) getvar $(call shvar,Target/Description); \
         echo '@@'; \
         echo 'Default-Packages: $(DEFAULT_PACKAGES)'; \
         $(DUMPINFO)
index 4510df2..53c5f47 100644 (file)
@@ -7,7 +7,7 @@
 #
 
 RELEASE:=Kamikaze
-SHELL:=/usr/bin/env bash
+export SHELL:=/usr/bin/env bash
 PREP_MK= OPENWRT_BUILD= QUIET=0
 
 include $(TOPDIR)/include/verbose.mk
index 0151675..2d35863 100644 (file)
@@ -71,10 +71,10 @@ ifeq ($(strip $(UNPACK_CMD)),)
 endif
 
 ifdef PKG_BUILD_DIR
-  PKG_UNPACK ?= $(call UNPACK_CMD,$(PKG_BUILD_DIR)) $(call CRLF_CMD,$(PKG_BUILD_DIR))
+  PKG_UNPACK ?= $(SH_FUNC) $(call UNPACK_CMD,$(PKG_BUILD_DIR)) $(call CRLF_CMD,$(PKG_BUILD_DIR))
 endif
 ifdef HOST_BUILD_DIR
-  HOST_UNPACK ?= $(call UNPACK_CMD,$(HOST_BUILD_DIR)) $(call CRLF_CMD,$(HOST_BUILD_DIR))
+  HOST_UNPACK ?= $(SH_FUNC) $(call UNPACK_CMD,$(HOST_BUILD_DIR)) $(call CRLF_CMD,$(HOST_BUILD_DIR))
 endif
 
 endif # PKG_SOURCE
index 2add087..3714fec 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -16,8 +16,6 @@ include $(TOPDIR)/include/verbose.mk
 
 TMP_DIR:=$(TOPDIR)/tmp
 
-export SHELL=/usr/bin/env bash -c '. $(TOPDIR)/include/shell.sh; eval "$$2"' --
-
 GREP_OPTIONS=
 export GREP_OPTIONS
 
@@ -148,6 +146,7 @@ endif
 export PATH:=$(TARGET_PATH)
 export STAGING_DIR
 export GCC_HONOUR_COPTS:=0
+export SH_FUNC:=. $(INCLUDE_DIR)/shell.sh;
 
 PKG_CONFIG:=$(STAGING_DIR_HOST)/bin/pkg-config