[Buildroot] [PATCH 3/6] infra: fix 'packages-file-list.txt' with TLP
Jérôme Pouiller
jezz at sysmic.org
Mon Nov 14 13:22:35 UTC 2016
Until now, `$(BUILD_DIR)/packages-file-list.txt' was not filled properly when
top level parallelization is enabled. Therefore, all scripts that rely on
packages-file-list.txt did not work.
In order to fix it,this patch place target installation task in a critical
section.
Signed-off-by: Jérôme Pouiller <jezz at sysmic.org>
---
package/pkg-generic.mk | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index 987efa6..c5f70e0 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk
@@ -62,6 +62,9 @@ GLOBAL_INSTRUMENTATION_HOOKS += step_time
# files currently installed in the target. Note that the MD5 is also
# stored, in order to identify if the files are overwritten.
define step_pkg_size_start
+ while ! flock $(BUILD_DIR) -c "[ ! -e $(BUILD_DIR)/.target_lock ] && touch $(BUILD_DIR)/.target_lock"; do \
+ sleep 0.5; \
+ done
(cd $(TARGET_DIR) ; find . -type f -print0 | xargs -0 md5sum) | sort > \
$($(PKG)_DIR)/.br_filelist_before
endef
@@ -78,6 +81,7 @@ define step_pkg_size_end
while read hash file ; do \
echo "$(1),$${file}" >> $(BUILD_DIR)/packages-file-list.txt ; \
done
+ rm $(BUILD_DIR)/.target_lock
endef
define step_pkg_size
--
2.9.3
More information about the buildroot
mailing list