build: include package directory in sha256sums when running on buildbot
authorJo-Philipp Wich <jo@mein.io>
Wed, 27 Jun 2018 16:51:25 +0000 (18:51 +0200)
committerJo-Philipp Wich <jo@mein.io>
Tue, 18 Dec 2018 08:44:01 +0000 (09:44 +0100)
In order to be able to better compare files to sync in the future, include
all BIN_DIR subdirectories in the checksum calculation.

To not break existing applications, restrict the recursive checksumming to
CONFIG_BUILDBOT for now.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(backported from 681e825f8fbf59a32c3b09810b2a3fef29880c63)

Makefile
rules.mk

index 0a1f96a973d7c30fb991866c11a98f39e42bc604..e38d44a810448b7c7def639658a2f9b25c6070b4 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -85,7 +85,7 @@ prereq: $(target/stamp-prereq) tmp/.prereq_packages
        fi
 
 checksum: FORCE
-       $(call sha256sums,$(BIN_DIR))
+       $(call sha256sums,$(BIN_DIR),$(CONFIG_BUILDBOT))
 
 diffconfig: FORCE
        mkdir -p $(BIN_DIR)
index 38afc7777af5d9cd0ea89bb10dac89f0cf6ed067..6b881a0c619c11e63d7504b31e4c16f4271f81bc 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -391,8 +391,9 @@ endef
 
 # Calculate sha256sum of any plain file within a given directory
 # $(1) => Input directory
+# $(2) => If set, recurse into subdirectories
 define sha256sums
-       (cd $(1); find . -maxdepth 1 -type f -not -name 'sha256sums' -printf "%P\n" | sort | \
+       (cd $(1); find . $(if $(2),,-maxdepth 1) -type f -not -name 'sha256sums' -printf "%P\n" | sort | \
                xargs -r $(STAGING_DIR_HOST)/bin/mkhash -n sha256 | sed -ne 's!^\(.*\) \(.*\)$$!\1 *\2!p' > sha256sums)
 endef