summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2017-05-25 18:46:22 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2017-05-26 08:35:52 +0200
commite388ef7d42d4f91b4eed88305ea00c6005ae90a5 (patch)
tree87e7dcd2bd842e765b34587a1486f73de2e45fa4
parentc337ebd005128a5c08e84ef02c3d70e5213223d6 (diff)
downloadptxdist-e388ef7d42d4f91b4eed88305ea00c6005ae90a5.tar.gz
ptxdist-e388ef7d42d4f91b4eed88305ea00c6005ae90a5.tar.xz
rules: minimize $(shell ..) usage during startup
These call take time and make things like 'ptxdist print ...' noticeably slower. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--rules/ca-certificates.make5
-rw-r--r--rules/dtc.make2
-rw-r--r--rules/host-qemu.make5
-rw-r--r--rules/hostapd.make3
-rw-r--r--rules/libgpg-error.make3
-rw-r--r--rules/nodejs.make3
-rw-r--r--rules/wpa_supplicant.make3
7 files changed, 15 insertions, 9 deletions
diff --git a/rules/ca-certificates.make b/rules/ca-certificates.make
index 0770411f7..613aae716 100644
--- a/rules/ca-certificates.make
+++ b/rules/ca-certificates.make
@@ -26,8 +26,9 @@ CA_CERTIFICATES_URL := https://hg.mozilla.org/releases/mozilla-release/raw-file
CA_CERTIFICATES_SOURCE := $(SRCDIR)/certdata-$(CA_CERTIFICATES_VERSION).$(CA_CERTIFICATES_SUFFIX)
CA_CERTIFICATES_DIR := $(BUILDDIR)/$(CA_CERTIFICATES)
CA_CERTIFICATES_LICENSE := MPL-2.0
-CA_CERTIFICATES_CERTDATA2PEM := $(shell ptxd_in_path PTXDIST_PATH_SCRIPTS certdata2pem.py && echo "$${ptxd_reply}")
-CA_CERTIFICATES_BLACKLIST := $(shell ptxd_get_alternative config/ca-certificates blacklist.txt && echo "$${ptxd_reply}")
+# Use '=' to delay $(shell ...) calls until this is needed
+CA_CERTIFICATES_CERTDATA2PEM = $(shell ptxd_in_path PTXDIST_PATH_SCRIPTS certdata2pem.py && echo "$${ptxd_reply}")
+CA_CERTIFICATES_BLACKLIST = $(shell ptxd_get_alternative config/ca-certificates blacklist.txt && echo "$${ptxd_reply}")
# ----------------------------------------------------------------------------
# Extract
diff --git a/rules/dtc.make b/rules/dtc.make
index d5eb48576..22a05e7e6 100644
--- a/rules/dtc.make
+++ b/rules/dtc.make
@@ -27,7 +27,7 @@ ptx/dts = $(shell p=$(PTXCONF_DTC_OFTREE_DTS_PATH) ptxd_in_path p "$(strip $(1))
ifdef PTXCONF_DTC_OFTREE_DTS
# Note: this must match the magic in ptxd_make_dts_dtb
-DTC_OFTREE_DTS = $(foreach dts, $(call remove_quotes,$(PTXCONF_DTC_OFTREE_DTS)), \
+DTC_OFTREE_DTS := $(foreach dts, $(call remove_quotes,$(PTXCONF_DTC_OFTREE_DTS)), \
$(if $(filter /%,$(dts)),$(dts),$(call ptx/dts,$(dts))))
endif
diff --git a/rules/host-qemu.make b/rules/host-qemu.make
index 95ee0e6a1..e5cdced54 100644
--- a/rules/host-qemu.make
+++ b/rules/host-qemu.make
@@ -141,11 +141,12 @@ HOST_QEMU_CONF_OPT := \
$(call ptx/ifdef, PTXCONF_HOST_QEMU_SYS,--with-system-pixman,--without-pixman) \
--enable-vhost-scsi
-QEMU_CROSS_QEMU := $(shell ptxd_get_alternative config/qemu qemu-cross && echo $$ptxd_reply)
+# Use '=' to delay $(shell ...) calls until this is needed
+QEMU_CROSS_QEMU = $(shell ptxd_get_alternative config/qemu qemu-cross && echo $$ptxd_reply)
QEMU_CROSS_DL = $(shell ptxd_cross_cc_v | sed -n -e 's/.* -dynamic-linker \([^ ]*\).*/\1/p')
QEMU_CROSS_LD_LIBRARY_PATH := $(PTXDIST_SYSROOT_TOOLCHAIN)/lib:$(SYSROOT)/$(CROSS_LIB_DIR):$(SYSROOT)/usr/$(CROSS_LIB_DIR)
-QEMU_CROSS_QEMU_ENV := \
+QEMU_CROSS_QEMU_ENV = \
QEMU="$(PTXDIST_SYSROOT_HOST)/bin/qemu-$(HOST_QEMU_TARGETS)" \
KERNEL_VERSION="$(KERNEL_VERSION)" \
QEMU_LD_PREFIX="$(PTXDIST_SYSROOT_TOOLCHAIN)" \
diff --git a/rules/hostapd.make b/rules/hostapd.make
index 26d7ea47c..14d71c549 100644
--- a/rules/hostapd.make
+++ b/rules/hostapd.make
@@ -26,7 +26,8 @@ HOSTAPD_URL := http://w1.fi/releases/$(HOSTAPD).$(HOSTAPD_SUFFIX)
HOSTAPD_SOURCE := $(SRCDIR)/$(HOSTAPD).$(HOSTAPD_SUFFIX)
HOSTAPD_DIR := $(BUILDDIR)/$(HOSTAPD)
HOSTAPD_SUBDIR := $(HOSTAPD_NAME)
-HOSTAPD_DEFCONF := $(shell ptxd_get_alternative config/hostapd defconfig && echo $$ptxd_reply)
+# Use '=' to delay $(shell ...) calls until this is needed
+HOSTAPD_DEFCONF = $(shell ptxd_get_alternative config/hostapd defconfig && echo $$ptxd_reply)
HOSTAPD_CONFIG := $(BUILDDIR)/$(HOSTAPD)/$(HOSTAPD_SUBDIR)/.config
HOSTAPD_LICENSE := BSD-3-Clause
HOSTAPD_LICENSE_FILES := \
diff --git a/rules/libgpg-error.make b/rules/libgpg-error.make
index 362f7bc6a..90ceec18e 100644
--- a/rules/libgpg-error.make
+++ b/rules/libgpg-error.make
@@ -32,7 +32,8 @@ LIBGPG_ERROR_LICENSE_FILES := \
file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1
-LIBGPG_ERROR_TARGET := $(patsubst i%86-pc-linux-gnu,i686-pc-linux-gnu,$(shell target=$(PTXCONF_GNU_TARGET); echo $${target/-*-linux/-$(if $(PTXCONF_ARCH_X86),pc,unknown)-linux}))
+# Use '=' to delay $(shell ...) calls until this is needed
+LIBGPG_ERROR_TARGET = $(patsubst i%86-pc-linux-gnu,i686-pc-linux-gnu,$(shell target=$(PTXCONF_GNU_TARGET); echo $${target/-*-linux/-$(if $(PTXCONF_ARCH_X86),pc,unknown)-linux}))
# ----------------------------------------------------------------------------
# Prepare
diff --git a/rules/nodejs.make b/rules/nodejs.make
index 153f393da..f469db1d6 100644
--- a/rules/nodejs.make
+++ b/rules/nodejs.make
@@ -102,7 +102,8 @@ NODEJS_ARM_FPU = $(shell ptxd_cross_cc_v | sed -n "s/COLLECT_GCC_OPTIONS=.*'-mfp
endif
NODEJS_CONF_TOOL := autoconf
-NODEJS_CONF_OPT := \
+# Use '=' to delay $(shell ...) calls until this is needed
+NODEJS_CONF_OPT = \
--prefix=/usr \
--dest-cpu=$(NODEJS_ARCH) \
--dest-os=linux \
diff --git a/rules/wpa_supplicant.make b/rules/wpa_supplicant.make
index db4805b77..1646d8b47 100644
--- a/rules/wpa_supplicant.make
+++ b/rules/wpa_supplicant.make
@@ -25,7 +25,8 @@ WPA_SUPPLICANT_URL := http://hostap.epitest.fi/releases/$(WPA_SUPPLICANT).$(WPA_
WPA_SUPPLICANT_SOURCE := $(SRCDIR)/$(WPA_SUPPLICANT).$(WPA_SUPPLICANT_SUFFIX)
WPA_SUPPLICANT_DIR := $(BUILDDIR)/$(WPA_SUPPLICANT)
WPA_SUPPLICANT_SUBDIR := $(WPA_SUPPLICANT_NAME)
-WPA_SUPPLICANT_DEFCONF := $(shell ptxd_get_alternative config/wpasupplicant defconfig && echo $$ptxd_reply)
+# Use '=' to delay $(shell ...) calls until this is needed
+WPA_SUPPLICANT_DEFCONF = $(shell ptxd_get_alternative config/wpasupplicant defconfig && echo $$ptxd_reply)
WPA_SUPPLICANT_CONFIG := $(BUILDDIR)/$(WPA_SUPPLICANT)/$(WPA_SUPPLICANT_SUBDIR)/.config
WPA_SUPPLICANT_LICENSE := GPL-2.0