testing: Avoid unnecessary rebuilds of components built from Git repos

Installing apparently changes the timestamp on the repo dir triggering make
to checkout and build the whole thing again.
This commit is contained in:
Tobias Brunner 2018-09-14 17:19:55 +02:00
parent 3a4372c1eb
commit 67fd36e884
7 changed files with 35 additions and 28 deletions

View File

@ -8,14 +8,15 @@ PREFIX = /usr/local/ada
all: install
$(PKG):
git clone $(SRC) $(PKG)
.$(PKG)-cloned:
[ -d $(PKG) ] || git clone $(SRC) $(PKG)
@touch $@
.$(PKG)-cloned-$(REV): $(PKG)
.$(PKG)-checkout-$(REV): .$(PKG)-cloned
cd $(PKG) && git fetch && git checkout $(REV)
@touch $@
.$(PKG)-built-$(REV): .$(PKG)-cloned-$(REV)
.$(PKG)-built-$(REV): .$(PKG)-checkout-$(REV)
cd $(PKG) && make LIBRARY_KIND=static
@touch $@

View File

@ -10,14 +10,15 @@ export ADA_PROJECT_PATH=$(PREFIX)/lib/gnat
all: install
$(PKG):
git clone $(SRC) $(PKG)
.$(PKG)-cloned:
[ -d $(PKG) ] || git clone $(SRC) $(PKG)
@touch $@
.$(PKG)-cloned-$(REV): $(PKG)
.$(PKG)-checkout-$(REV): .$(PKG)-cloned
cd $(PKG) && git fetch && git checkout $(REV)
@touch $@
.$(PKG)-built-$(REV): .$(PKG)-cloned-$(REV)
.$(PKG)-built-$(REV): .$(PKG)-checkout-$(REV)
cd $(PKG) && make
@touch $@

View File

@ -8,14 +8,15 @@ PREFIX = /usr/local/ada
all: install
$(PKG):
git clone $(SRC) $(PKG)
.$(PKG)-cloned:
[ -d $(PKG) ] || git clone $(SRC) $(PKG)
@touch $@
.$(PKG)-cloned-$(REV): $(PKG)
.$(PKG)-checkout-$(REV): .$(PKG)-cloned
cd $(PKG) && git fetch && git checkout $(REV)
@touch $@
.$(PKG)-built-$(REV): .$(PKG)-cloned-$(REV)
.$(PKG)-built-$(REV): .$(PKG)-checkout-$(REV)
cd $(PKG) && make tests && make
@touch $@

View File

@ -10,14 +10,15 @@ export ADA_PROJECT_PATH=$(PREFIX)/lib/gnat
all: install
$(PKG):
git clone $(SRC) $(PKG)
.$(PKG)-cloned:
[ -d $(PKG) ] || git clone $(SRC) $(PKG)
@touch $@
.$(PKG)-cloned-$(REV): $(PKG)
.$(PKG)-checkout-$(REV): .$(PKG)-cloned
cd $(PKG) && git fetch && git checkout $(REV)
@touch $@
.$(PKG)-built-$(REV): .$(PKG)-cloned-$(REV)
.$(PKG)-built-$(REV): .$(PKG)-checkout-$(REV)
cd $(PKG) && make
@touch $@

View File

@ -8,14 +8,15 @@ export ADA_PROJECT_PATH=/usr/local/ada/lib/gnat
all: install
$(PKG):
git clone $(SRC) $(PKG)
.$(PKG)-cloned:
[ -d $(PKG) ] || git clone $(SRC) $(PKG)
@touch $@
.$(PKG)-cloned-$(REV): $(PKG)
.$(PKG)-checkout-$(REV): .$(PKG)-cloned
cd $(PKG) && git fetch && git checkout $(REV)
@touch $@
.$(PKG)-built-$(REV): .$(PKG)-cloned-$(REV)
.$(PKG)-built-$(REV): .$(PKG)-checkout-$(REV)
cd $(PKG) && make
@touch $@

View File

@ -8,14 +8,15 @@ export ADA_PROJECT_PATH=/usr/local/ada/lib/gnat
all: install
$(PKG):
git clone $(SRC) $(PKG)
.$(PKG)-cloned:
[ -d $(PKG) ] || git clone $(SRC) $(PKG)
@touch $@
.$(PKG)-cloned-$(REV): $(PKG)
.$(PKG)-checkout-$(REV): .$(PKG)-cloned
cd $(PKG) && git fetch && git checkout $(REV)
@touch $@
.$(PKG)-built-$(REV): .$(PKG)-cloned-$(REV)
.$(PKG)-built-$(REV): .$(PKG)-checkout-$(REV)
cd $(PKG) && make
@touch $@

View File

@ -15,14 +15,15 @@ CONFIG_OPTS = \
all: install
$(PKG):
git clone $(SRC) $(PKG)
.$(PKG)-cloned:
[ -d $(PKG) ] || git clone $(SRC) $(PKG)
@touch $@
.$(PKG)-cloned-$(REV): $(PKG)
.$(PKG)-checkout-$(REV): .$(PKG)-cloned
cd $(PKG) && git fetch && git checkout $(REV)
@touch $@
.$(PKG)-built-$(REV): .$(PKG)-cloned-$(REV)
.$(PKG)-built-$(REV): .$(PKG)-checkout-$(REV)
cd $(PKG) && python ./configure.py $(CONFIG_OPTS) && make -j $(NUM_CPUS)
@touch $@