summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2013-01-06 05:22:41 (GMT)
committer Peter Korsgaard <jacmet@sunsite.dk>2013-01-07 20:30:56 (GMT)
commite260a2d9b39ecbdaa6738ac76bd48548746da9d8 (patch)
tree8fb2305101aa33d4176cd792044165980a344cff
parent13a9fc901f637a1534baa4f08322f3b29ba66b0d (diff)
downloadbuildroot-e260a2d9b39ecbdaa6738ac76bd48548746da9d8.tar.gz
buildroot-e260a2d9b39ecbdaa6738ac76bd48548746da9d8.tar.bz2
package: support multiple patches
With this commit, we extend the behaviour of the <pkg>_PATCH variable so that it now allows to list several patches to be downloaded and applied, and no longer just one patch. This will be useful for the elfutils package, and should anyway not break the existing behaviour for packages using just one patch. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r--package/pkg-generic.mk17
1 files changed, 12 insertions, 5 deletions
diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index a570ad7..59de0f0 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk
@@ -28,12 +28,19 @@
$(BUILD_DIR)/%/.stamp_downloaded:
ifeq ($(DL_MODE),DOWNLOAD)
# Only show the download message if it isn't already downloaded
- $(Q)(test -e $(DL_DIR)/$($(PKG)_SOURCE) && \
- (test -z $($(PKG)_PATCH) || test -e $(DL_DIR)$($(PKG)_PATCH))) || \
- $(call MESSAGE,"Downloading")
+ $(Q)if test ! -e $(DL_DIR)/$($(PKG)_SOURCE); then \
+ $(call MESSAGE,"Downloading") ; \
+ else \
+ for p in $($(PKG)_PATCH) ; do \
+ if test ! -e $(DL_DIR)/$$p ; then \
+ $(call MESSAGE,"Downloading") ; \
+ break ; \
+ fi ; \
+ done ; \
+ fi
endif
$(if $($(PKG)_SOURCE),$(call DOWNLOAD,$($(PKG)_SITE)/$($(PKG)_SOURCE)))
- $(if $($(PKG)_PATCH),$(call DOWNLOAD,$($(PKG)_SITE)/$($(PKG)_PATCH)))
+ $(foreach p,$($(PKG)_PATCH),$(call DOWNLOAD,$($(PKG)_SITE)/$(p))$(sep))
$(foreach hook,$($(PKG)_POST_DOWNLOAD_HOOKS),$(call $(hook))$(sep))
ifeq ($(DL_MODE),DOWNLOAD)
$(Q)mkdir -p $(@D)
@@ -78,7 +85,7 @@ $(BUILD_DIR)/%/.stamp_patched: NAMEVER = $(RAWNAME)-$($(PKG)_VERSION)
$(BUILD_DIR)/%/.stamp_patched:
@$(call MESSAGE,"Patching $($(PKG)_DIR_PREFIX)/$(RAWNAME)")
$(foreach hook,$($(PKG)_PRE_PATCH_HOOKS),$(call $(hook))$(sep))
- $(if $($(PKG)_PATCH),support/scripts/apply-patches.sh $(@D) $(DL_DIR) $($(PKG)_PATCH))
+ $(foreach p,$($(PKG)_PATCH),support/scripts/apply-patches.sh $(@D) $(DL_DIR) $(p)$(sep))
$(Q)( \
if test -d $($(PKG)_DIR_PREFIX)/$(RAWNAME); then \
if test "$(wildcard $($(PKG)_DIR_PREFIX)/$(RAWNAME)/$(NAMEVER)*.patch*)"; then \