summaryrefslogtreecommitdiff
path: root/solenv/gbuild/UnpackedTarball.mk
diff options
context:
space:
mode:
authorDavid Tardon <dtardon@redhat.com>2012-09-15 16:12:13 +0200
committerDavid Tardon <dtardon@redhat.com>2012-09-22 14:57:26 +0200
commit9f42a82937accb19549971ebfe945c7e8273b58c (patch)
treec460721323e6c12804902e5209d448a4efbfa26b /solenv/gbuild/UnpackedTarball.mk
parent63a20e03499377cdf3c8a5e26c133e9886f8693a (diff)
force unpack in the next run if patching failed
Change-Id: I033e2ab491498ba6b393232bff702db0a52e9a92
Diffstat (limited to 'solenv/gbuild/UnpackedTarball.mk')
-rw-r--r--solenv/gbuild/UnpackedTarball.mk44
1 files changed, 25 insertions, 19 deletions
diff --git a/solenv/gbuild/UnpackedTarball.mk b/solenv/gbuild/UnpackedTarball.mk
index c69d5e66da47..eef8170bbe03 100644
--- a/solenv/gbuild/UnpackedTarball.mk
+++ b/solenv/gbuild/UnpackedTarball.mk
@@ -126,25 +126,31 @@ endef
define gb_UnpackedTarball__command
$(call gb_Output_announce,$(2),$(true),PAT,2)
$(call gb_Helper_abbreviate_dirs,\
- cd $(3) && \
- $(foreach file,$(UNPACKED_FIX_EOL),$(call gb_UnpackedTarball_CONVERTTOUNIX,$(file)) && ) \
- $(if $(UNPACKED_PATCHES),\
- for p in $(UNPACKED_PATCHES); do \
- $(GNUPATCH) -s -p$(UNPACKED_PATCHLEVEL) < "$$p" || exit 1;\
- done && \
- ) \
- $(foreach file,$(UNPACKED_FIX_EOL),$(call gb_UnpackedTarball_CONVERTTODOS,$(file)) && ) \
- $(if $(UNPACKED_FILES),\
- mkdir -p $(sort $(dir $(UNPACKED_DESTFILES))) && \
- $(call gb_UnpackedTarball__copy_files,$(UNPACKED_FILES),$(UNPACKED_DESTFILES)) && \
- ) \
- $(if $(UNPACKED_SUBDIRS),\
- cp -rf $(UNPACKED_SUBDIRS) $(gb_EXTERNAL_HEADERS_DIR) && \
- ) \
- $(if $(UNPACKED_POST_ACTION),\
- $(UNPACKED_POST_ACTION) && \
- ) \
- touch $(1) \
+ ( \
+ cd $(3) && \
+ $(foreach file,$(UNPACKED_FIX_EOL),$(call gb_UnpackedTarball_CONVERTTOUNIX,$(file)) && ) \
+ $(if $(UNPACKED_PATCHES),\
+ for p in $(UNPACKED_PATCHES); do \
+ $(GNUPATCH) -s -p$(UNPACKED_PATCHLEVEL) < "$$p" || exit 1;\
+ done && \
+ ) \
+ $(foreach file,$(UNPACKED_FIX_EOL),$(call gb_UnpackedTarball_CONVERTTODOS,$(file)) && ) \
+ $(if $(UNPACKED_FILES),\
+ mkdir -p $(sort $(dir $(UNPACKED_DESTFILES))) && \
+ $(call gb_UnpackedTarball__copy_files,$(UNPACKED_FILES),$(UNPACKED_DESTFILES)) && \
+ ) \
+ $(if $(UNPACKED_SUBDIRS),\
+ cp -rf $(UNPACKED_SUBDIRS) $(gb_EXTERNAL_HEADERS_DIR) && \
+ ) \
+ $(if $(UNPACKED_POST_ACTION),\
+ $(UNPACKED_POST_ACTION) && \
+ ) \
+ touch $(1) \
+ ) || \
+ ( \
+ touch $(call gb_UnpackedTarball_get_preparation_target,$(2)) && \
+ exit 1 \
+ )
)
endef