aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2014-09-15 10:18:56 +0000
committerJohn Crispin <john@openwrt.org>2014-09-15 10:18:56 +0000
commitb44a2d3f7efa8ce5cbc6b2468bc7e1a870af6fd1 (patch)
tree4936d99d433a91fea58275b167b53753c2b02691 /include
parent88cc0ea21dab9359d4f8af7ed4e8f98c355768d8 (diff)
downloadupstream-b44a2d3f7efa8ce5cbc6b2468bc7e1a870af6fd1.tar.gz
upstream-b44a2d3f7efa8ce5cbc6b2468bc7e1a870af6fd1.tar.bz2
upstream-b44a2d3f7efa8ce5cbc6b2468bc7e1a870af6fd1.zip
include: remove file before overwritting it with replace_script
config.{sub,guess} could be symlinks to a shared common version of this file (e.g. in staging). So we remove the destination file via --remove-destination option of cp. This prevents replaceing the common file that other packages could be build with if running at the same time. This fixes a class of errors where config.sub is missing, or only partially present when running configure because a cp is currently in progress This is commonly seen building with a lot of parallel jobs and on packages that use 'PKG_FIXUP:=autoreconf' Signed-off-by: Matthew McClintock <mmcclint@qca.qualcomm.com> Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com> SVN-Revision: 42547
Diffstat (limited to 'include')
-rw-r--r--include/package-defaults.mk4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/package-defaults.mk b/include/package-defaults.mk
index 61e495f50f..051cde5020 100644
--- a/include/package-defaults.mk
+++ b/include/package-defaults.mk
@@ -98,7 +98,9 @@ CONFIGURE_VARS = \
CONFIGURE_PATH = .
CONFIGURE_CMD = ./configure
-replace_script=$(FIND) $(1) -name $(2) | $(XARGS) chmod u+w; $(FIND) $(1) -name $(2) | $(XARGS) -n1 cp $(SCRIPT_DIR)/$(2);
+replace_script=$(FIND) $(1) -name $(2) | $(XARGS) chmod u+w; \
+ $(FIND) $(1) -name $(2) | $(XARGS) -n1 cp --remove-destination \
+ $(SCRIPT_DIR)/$(2);
define Build/Configure/Default
(cd $(PKG_BUILD_DIR)/$(CONFIGURE_PATH)/$(strip $(3)); \