summaryrefslogtreecommitdiffstats
path: root/scripts/lib/ptxd_lib_dgen.awk
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2014-07-19 13:09:55 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2014-07-22 10:43:32 +0200
commit9a86aaa20a0df75cda4302a35eb5fefb1fdb5c4c (patch)
treeb22adad9ad48c1ae19f788032c5b8d649da1ab2c /scripts/lib/ptxd_lib_dgen.awk
parentd6e0bf53f93b7cf7e74edb1e4b7955b865200555 (diff)
downloadptxdist-9a86aaa20a0df75cda4302a35eb5fefb1fdb5c4c.tar.gz
ptxdist-9a86aaa20a0df75cda4302a35eb5fefb1fdb5c4c.tar.xz
ptxd_lib_dgen: be more clever about tarball dependencies
New package versions have always been problematic. If the old version is built and the tarball for the new version is older than the get stage then ptxdist didn't build the new version. To improve the situation we now do the following: - create a dummy state file with the tarball name as part of the filename. - let the get stage depend on this. For a new version the file does not exist and the package is rebuilt. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Diffstat (limited to 'scripts/lib/ptxd_lib_dgen.awk')
-rw-r--r--scripts/lib/ptxd_lib_dgen.awk4
1 files changed, 3 insertions, 1 deletions
diff --git a/scripts/lib/ptxd_lib_dgen.awk b/scripts/lib/ptxd_lib_dgen.awk
index 41b3ded63..807da68a3 100644
--- a/scripts/lib/ptxd_lib_dgen.awk
+++ b/scripts/lib/ptxd_lib_dgen.awk
@@ -240,7 +240,7 @@ function write_deps_pkg_all(this_PKG, this_pkg) {
#
# .get rule
#
- print "$(STATEDIR)/" this_pkg ".get: $(" this_PKG "_SOURCES)" > DGEN_DEPS_POST;
+ print "$(STATEDIR)/" this_pkg ".get: | $(" this_PKG "_SOURCES)" > DGEN_DEPS_POST;
print "ifneq ($(call remove_quotes, $(PTXCONF_PROJECT_DEVMIRROR)),)" > DGEN_DEPS_POST;
print "ifneq ($(strip $(" this_PKG "_DEVPKG)),NO)" > DGEN_DEPS_POST;
print "ifneq ($(" this_PKG "_CFGHASH),)" > DGEN_DEPS_POST;
@@ -254,6 +254,8 @@ function write_deps_pkg_active(this_PKG, this_pkg, prefix) {
#
# default deps
#
+ print "$(foreach src,$(" this_PKG "_SOURCES)," \
+ "$(eval $(STATEDIR)/" this_pkg ".get:" "$(STATEDIR)/" this_pkg ".$(notdir $(src)).stamp))" > DGEN_DEPS_POST;
print "$(STATEDIR)/" this_pkg ".extract: " "$(STATEDIR)/" this_pkg ".get" > DGEN_DEPS_POST;
print "$(STATEDIR)/" this_pkg ".extract.post: " "$(STATEDIR)/" this_pkg ".extract" > DGEN_DEPS_POST;
print "$(STATEDIR)/" this_pkg ".prepare: " "$(STATEDIR)/" this_pkg ".extract.post" > DGEN_DEPS_POST;