summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Schiffer2024-02-01 23:46:58 +0000
committerMatthias Schiffer2024-03-03 22:13:59 +0000
commitfbb924abff8af9e69ec90d7bf099046c24145b74 (patch)
tree4e8d85c3c2f3a4920748849f712fcd97ab2e805a
parent37bbed6f95856a507d727ffc863b20f8a8b35332 (diff)
downloadopenwrt-fbb924abff8af9e69ec90d7bf099046c24145b74.tar.gz
build: add $(STAGING_DIR) and $(BIN_DIR) preparation to target and package subdir compile dependencies
In a pristine build, these directories are created as dependencies of the tools subdir compile, however this step never runs when the tools compile stamp already exists. Since commit ed6ba2801c0a ("tools: keep stamp file in $(STAGING_DIR_HOST)"), this will happen after `make clean`: $(STAGING_DIR) has been deleted, but the tools stamp still exists, so the next build will fail because $(STAGING_DIR) has not been set up correctly. Fix builds after `make clean` by adding the preparation as dependencies for the target and package directories as well. Fixes: ed6ba2801c0a ("tools: keep stamp file in $(STAGING_DIR_HOST)") Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
-rw-r--r--package/Makefile2
-rw-r--r--target/Makefile2
2 files changed, 4 insertions, 0 deletions
diff --git a/package/Makefile b/package/Makefile
index 8e72d4ec72..4663b41de4 100644
--- a/package/Makefile
+++ b/package/Makefile
@@ -117,6 +117,8 @@ endif
$(curdir)/flags-install:= -j1
+$(curdir)//compile = $(STAGING_DIR)/.prepared $(BIN_DIR)
+
$(eval $(call stampfile,$(curdir),package,prereq,.config))
$(eval $(call stampfile,$(curdir),package,cleanup,$(TMP_DIR)/.build))
$(eval $(call stampfile,$(curdir),package,compile,$(TMP_DIR)/.build))
diff --git a/target/Makefile b/target/Makefile
index 83f9c4b093..3bbb9f4131 100644
--- a/target/Makefile
+++ b/target/Makefile
@@ -19,6 +19,8 @@ $(curdir)/builddirs-install:=\
$(curdir)/sdk/install:=$(curdir)/linux/install
$(curdir)/imagebuilder/install:=$(curdir)/linux/install
+$(curdir)//compile = $(STAGING_DIR)/.prepared $(BIN_DIR)
+
$(eval $(call stampfile,$(curdir),target,prereq,.config))
$(eval $(call stampfile,$(curdir),target,compile,$(TMP_DIR)/.build))
$(eval $(call stampfile,$(curdir),target,install,$(TMP_DIR)/.build))