summaryrefslogtreecommitdiffstats
path: root/taskcluster/scripts/misc/build-xar-linux.sh
diff options
context:
space:
mode:
Diffstat (limited to 'taskcluster/scripts/misc/build-xar-linux.sh')
-rwxr-xr-xtaskcluster/scripts/misc/build-xar-linux.sh25
1 files changed, 25 insertions, 0 deletions
diff --git a/taskcluster/scripts/misc/build-xar-linux.sh b/taskcluster/scripts/misc/build-xar-linux.sh
new file mode 100755
index 0000000000..497e18217e
--- /dev/null
+++ b/taskcluster/scripts/misc/build-xar-linux.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+set -x -e -v
+
+# This script is for building xar for Linux.
+mkdir -p $UPLOAD_DIR
+
+export PATH=$PATH:$MOZ_FETCHES_DIR/clang/bin
+cd $MOZ_FETCHES_DIR/xar/xar
+
+./autogen.sh --prefix=/builds/worker --enable-static
+
+# Force statically-linking to libcrypto. pkg-config --static will tell
+# us the extra flags that are needed (in practice, -ldl -pthread),
+# and -lcrypto, which we need to change to actually link statically.
+CRYPTO=$(pkg-config --static --libs libcrypto | sed 's/-lcrypto/-l:libcrypto.a/')
+sed -i "s/-lcrypto/$CRYPTO/" src/Makefile.inc
+
+make_flags="-j$(nproc)"
+make $make_flags
+
+cd $(mktemp -d)
+mkdir xar
+
+cp $MOZ_FETCHES_DIR/xar/xar/src/xar ./xar/xar
+tar caf $UPLOAD_DIR/xar.tar.zst ./xar