aboutsummaryrefslogtreecommitdiff
path: root/package/pkg-download.mk
diff options
context:
space:
mode:
authorGravatar Maxime Hadjinlian <maxime.hadjinlian@gmail.com>2018-04-02 16:58:00 +0200
committerGravatar Peter Korsgaard <peter@korsgaard.com>2018-04-02 17:48:56 +0200
commit573f8c750fbd18f2f2de23bfdc8e360ed30a8687 (patch)
tree83a6c1a69c985fd3256c9387cd6eb2d59c9aed26 /package/pkg-download.mk
parent072374918de92aef9b8ca5a3248a3905cba70ba2 (diff)
downloadbuildroot-573f8c750fbd18f2f2de23bfdc8e360ed30a8687.tar.gz
buildroot-573f8c750fbd18f2f2de23bfdc8e360ed30a8687.tar.bz2
download: add flock call before dl-wrapper
In order to introduce the cache mechanisms, we need to have a lock on the $(LIBFOO_DL_DIR), otherwise it would be impossible to do parallel download (a shared DL_DIR for two buildroot instances) without risking conflicts. Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'package/pkg-download.mk')
-rw-r--r--package/pkg-download.mk3
1 files changed, 2 insertions, 1 deletions
diff --git a/package/pkg-download.mk b/package/pkg-download.mk
index 7ca6fcc757..4fdb283acc 100644
--- a/package/pkg-download.mk
+++ b/package/pkg-download.mk
@@ -19,6 +19,7 @@ SSH := $(call qstrip,$(BR2_SSH))
export LOCALFILES := $(call qstrip,$(BR2_LOCALFILES))
DL_WRAPPER = support/download/dl-wrapper
+FLOCK = flock $($(PKG)_DL_DIR)/
# DL_DIR may have been set already from the environment
ifeq ($(origin DL_DIR),undefined)
@@ -93,7 +94,7 @@ define DOWNLOAD
$(Q)mkdir -p $($(PKG)_DL_DIR)
$(Q)$(if $(filter bzr cvs hg svn,$($(PKG)_SITE_METHOD)),
BR_NO_CHECK_HASH_FOR=$(notdir $(call qstrip,$(1)))) \
- $(EXTRA_ENV) $(DL_WRAPPER) \
+ $(EXTRA_ENV) $(FLOCK) $(DL_WRAPPER) \
-c '$($(PKG)_DL_VERSION)' \
-f '$(notdir $(1))' \
-H '$(PKGDIR)/$($(PKG)_RAWNAME).hash' \