[Buildroot] [git commit] support/dependencies/check-host-tar.sh: blacklist tar 1.35+
Peter Korsgaard
peter at korsgaard.com
Mon Nov 13 21:51:20 UTC 2023
commit: https://git.buildroot.net/buildroot/commit/?id=f1ee7015a48e7820e74dc99c58708a732e14c0aa
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
GNU tar 1.35 changed the behaviour for the devmajor/devminor fields,
breaking the download hash validation. For details, see:
https://lists.gnu.org/archive/html/info-gnu/2023-07/msg00005.html
https://patchwork.ozlabs.org/project/buildroot/patch/20231018141155.533944-1-vfazio@gmail.com/
To work around this issue, blacklist tar 1.35+ similar to how we do it for
pre-1.27 versions so Buildroot falls back to building host-tar (which is
currently 1.34).
Signed-off-by: Peter Korsgaard <peter at korsgaard.com>
---
support/dependencies/check-host-tar.sh | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/support/dependencies/check-host-tar.sh b/support/dependencies/check-host-tar.sh
index b7d607a47a..7d6b3bf688 100755
--- a/support/dependencies/check-host-tar.sh
+++ b/support/dependencies/check-host-tar.sh
@@ -33,7 +33,12 @@ fi
major_min=1
minor_min=27
-if [ $major -lt $major_min ]; then
+# Maximal version = 1.34 (1.35 changed devmajor/devminor for files)
+# https://lists.gnu.org/archive/html/info-gnu/2023-07/msg00005.html
+major_max=1
+minor_max=34
+
+if [ $major -lt $major_min -o $major -gt $major_max ]; then
# echo nothing: no suitable tar found
exit 1
fi
@@ -43,5 +48,10 @@ if [ $major -eq $major_min -a $minor -lt $minor_min ]; then
exit 1
fi
+if [ $major -eq $major_max -a $minor -gt $minor_max ]; then
+ # echo nothing: no suitable tar found
+ exit 1
+fi
+
# valid
echo $tar
More information about the buildroot
mailing list