tools/squashfskit: fix version detection on non-linux system
authorAlexander Couzens <lynxis@fe80.eu>
Sat, 2 Mar 2019 13:46:57 +0000 (14:46 +0100)
committerFelix Fietkau <nbd@nbd.name>
Sun, 3 Mar 2019 18:45:10 +0000 (19:45 +0100)
gnu date is present in our staging_dir which means squashfskit will fail
to build. Prevent also a race condition if coreutils is build after
squashfskit.

To prevent a race condition, depend on coreutils.

Acked-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
tools/Makefile
tools/squashfskit4/patches/0001-fix-version.sh.patch [new file with mode: 0644]

index d9f92d5..83ed56d 100644 (file)
@@ -44,7 +44,7 @@ $(curdir)/bison/compile := $(curdir)/flex/compile
 $(curdir)/flex/compile := $(curdir)/libtool/compile
 $(curdir)/libtool/compile := $(curdir)/m4/compile $(curdir)/autoconf/compile $(curdir)/automake/compile $(curdir)/missing-macros/compile
 $(curdir)/squashfs/compile := $(curdir)/lzma-old/compile
-$(curdir)/squashfskit4/compile := $(curdir)/xz/compile $(curdir)/zlib/compile
+$(curdir)/squashfskit4/compile := $(curdir)/coreutils/compile $(curdir)/xz/compile $(curdir)/zlib/compile
 $(curdir)/quilt/compile := $(curdir)/autoconf/compile $(curdir)/findutils/compile
 $(curdir)/autoconf/compile := $(curdir)/m4/compile
 $(curdir)/automake/compile := $(curdir)/m4/compile $(curdir)/autoconf/compile $(curdir)/pkg-config/compile $(curdir)/xz/compile
diff --git a/tools/squashfskit4/patches/0001-fix-version.sh.patch b/tools/squashfskit4/patches/0001-fix-version.sh.patch
new file mode 100644 (file)
index 0000000..5f0894b
--- /dev/null
@@ -0,0 +1,21 @@
+--- a/squashfs-tools/version.sh
++++ b/squashfs-tools/version.sh
+@@ -27,13 +27,11 @@ if [ -z "$OUTPUT" ] ; then
+ fi
+ our_date() {
+-case $(uname) in
+-NetBSD|OpenBSD|DragonFly|FreeBSD|Darwin)
+-        date -r "$1" "$2"
+-        ;;
+-*)
+-        date -d "@$1" "$2"
+-esac
++      if date --version 2>&1 | grep -q "GNU coreutils"; then
++              date -d "@$1" "$2"
++      else
++              date -r "$1" "$2"
++      fi
+ }
+ try_version() {