summaryrefslogtreecommitdiffstats
path: root/taskcluster/scripts/misc/build-afl.sh
diff options
context:
space:
mode:
Diffstat (limited to 'taskcluster/scripts/misc/build-afl.sh')
-rwxr-xr-xtaskcluster/scripts/misc/build-afl.sh24
1 files changed, 24 insertions, 0 deletions
diff --git a/taskcluster/scripts/misc/build-afl.sh b/taskcluster/scripts/misc/build-afl.sh
new file mode 100755
index 0000000000..5039a7a7b1
--- /dev/null
+++ b/taskcluster/scripts/misc/build-afl.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+set -e -x
+
+artifact="$(basename "$TOOLCHAIN_ARTIFACT")"
+dir="${artifact%.tar.*}"
+scripts="$(realpath "${0%/*}")"
+
+cd "$MOZ_FETCHES_DIR/AFLplusplus"
+patch -p1 -i "$scripts/afl-nyx.patch"
+make -f GNUmakefile afl-showmap \
+ CC="$MOZ_FETCHES_DIR/clang/bin/clang"
+make -f GNUmakefile.llvm install \
+ CODE_COVERAGE=1 \
+ CPPFLAGS="--sysroot $MOZ_FETCHES_DIR/sysroot" \
+ DESTDIR="$dir" \
+ LLVM_CONFIG="$MOZ_FETCHES_DIR/clang/bin/llvm-config" \
+ PREFIX=/
+rm -rf "$dir/share"
+
+tar caf "$artifact" "$dir"
+
+mkdir -p "$UPLOAD_DIR"
+mv "$artifact" "$UPLOAD_DIR"