summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharles Baylis <charles.baylis@linaro.org>2017-02-06 13:18:42 +0000
committerChristophe Lyon <christophe.lyon@linaro.org>2017-02-17 12:13:00 +0000
commit45e9014b91dad3dcb8bd230a8b0411dd195260d6 (patch)
tree12e8f99619f13e17c669213a032a3ad234a21e7a
parent7a66cd3a841795e87564048ef649e8de8f512445 (diff)
Check for symlinks in win32 tarballs.
Add test to ensure that no symlinks are found in win32 release tarballs. Change-Id: Ib9efc6b494a261b8cadd3f6b27091801d743cda5
-rwxr-xr-xTestRelease.job16
1 files changed, 16 insertions, 0 deletions
diff --git a/TestRelease.job b/TestRelease.job
index 25f00d25..83148ec0 100755
--- a/TestRelease.job
+++ b/TestRelease.job
@@ -80,6 +80,22 @@ fi
target="`echo ${dir} | egrep -o '(arm|aarch64)[_0-9a-z-]*' | sed -e 's:-\$::'`"
win32="`echo {$file} | grep -c mingw`"
+# For Windows releases, check for symlinks in the release tarball. Some
+# extractors for Windows do not handle symlinks well, so Abe should
+# generate tarballs without symlinks.
+if test ${win32} -ne 0; then
+ find "${testdir}" -type l > ${testdir}/symlinks.txt 2>&1
+ SYMLINKS="$(grep -c ^ ${testdir}/symlinks.txt)"
+ if [ "$SYMLINKS" -eq 0 ]; then
+ echo "No symlinks found in release"
+ else
+ cat ${testdir}/symlinks.txt
+ echo "Found symlinks in release: FAILURE"
+ exit 1
+ fi
+fi
+
+
# Bare metal builds need special care
baremetal="`echo ${target} | egrep -c "\-eabi|\-elf"`"
if test ${baremetal} -gt 0; then