From a56b46a7dde09d7cb24abb53598bd777b5c89577 Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Wed, 14 Nov 2018 12:39:23 +0000 Subject: Configuration stops if a dependency cannot be built Until now, we used semicolons in Make's Call function definitions to build the programs with GNU build system or CMake. Therefore, if any step of the process failed, the rest would be ignorant to it and pass. Now, we use `&&' to separate the different processing steps. In this way, we can be sure that if any of them fails (during configuration, or building for example), the pipeline will also stop and not continue to the next command (in the same recipe). Since the two Make Call functions were identical in the two `dependencies-basic.mk' and `dependencies.mk', they are now in one file to be imported in both. This bug was found by Raul Infante Sainz. --- reproduce/src/make/dependencies-basic.mk | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) (limited to 'reproduce/src/make/dependencies-basic.mk') diff --git a/reproduce/src/make/dependencies-basic.mk b/reproduce/src/make/dependencies-basic.mk index dad9c5f..33b682b 100644 --- a/reproduce/src/make/dependencies-basic.mk +++ b/reproduce/src/make/dependencies-basic.mk @@ -38,6 +38,7 @@ # Top level environment include reproduce/config/pipeline/LOCAL.mk +include reproduce/src/make/dependencies-build-rules.mk include reproduce/config/pipeline/dependency-versions.mk ddir = $(BDIR)/dependencies @@ -67,7 +68,8 @@ $(tarballs): $(tdir)/%: if [ -f $(DEPENDENCIES-DIR)/$* ]; then \ cp $(DEPENDENCIES-DIR)/$* $@; \ else \ - n=$$(echo $* | sed -e's/[0-9\-]/ /g' -e's/\./ /g' \ + n=$$(echo $* | sed -e's/[0-9\-]/ /g' \ + -e's/\./ /g' \ | awk '{print $$1}' ); \ \ mergenames=1; \ @@ -91,20 +93,6 @@ $(tarballs): $(tdir)/%: -# Build system rules -# ------------------ -gbuild = cd $(ddir); rm -rf $(2); tar xf $(tdir)/$(1); cd $(2); \ - if [ $(3)x = staticx ]; then \ - opts="CFLAGS=--static --disable-shared"; \ - fi; \ - ./configure $$opts $(4) --prefix=$(idir); make $(5); \ - check="$(6)"; if [ x"$$check" != x ]; then $$check; fi; \ - make install; cd ..; rm -rf $(2) - - - - - # GNU Bash # -------- # @@ -125,4 +113,4 @@ $(ibdir)/bash: $(tdir)/bash-$(bash-version).tar.gz # `--disable-load', but unfortunately I don't know any way to fix the # second. So, we'll have to build it dynamically for now. $(ibdir)/make: $(tdir)/make-$(make-version).tar.gz - $(call gbuild,$(subst $(tdir),,$<), make-$(make-version)) + $(call gbuild,$(subst $(tdir),,$<), make-$(make-version), , , ,) -- cgit v1.2.1