summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Fuzzer/fuzzer-test-suite/openssl-1.0.2d/build.sh
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Fuzzer/fuzzer-test-suite/openssl-1.0.2d/build.sh')
-rwxr-xr-xllvm/lib/Fuzzer/fuzzer-test-suite/openssl-1.0.2d/build.sh25
1 files changed, 25 insertions, 0 deletions
diff --git a/llvm/lib/Fuzzer/fuzzer-test-suite/openssl-1.0.2d/build.sh b/llvm/lib/Fuzzer/fuzzer-test-suite/openssl-1.0.2d/build.sh
new file mode 100755
index 00000000000..e60818be3cc
--- /dev/null
+++ b/llvm/lib/Fuzzer/fuzzer-test-suite/openssl-1.0.2d/build.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+[ -e $(basename $0) ] && echo "PLEASE USE THIS SCRIPT FROM ANOTHER DIR" && exit 1
+SCRIPT_DIR=$(dirname $0)
+EXECUTABLE_NAME_BASE=$(basename $SCRIPT_DIR)
+LIBFUZZER_SRC=$(dirname $(dirname $SCRIPT_DIR))
+JOBS=20
+
+# FUZZ_CXXFLAGS=" -g -fsanitize=address -fsanitize-coverage=edge"
+FUZZ_CXXFLAGS=" -g -fsanitize=address -fsanitize-coverage=trace-pc-guard,trace-cmp,trace-div,trace-gep"
+
+get() {
+ [ ! -e SRC ] && git clone https://github.com/openssl/openssl.git SRC && (cd SRC && git checkout OpenSSL_1_0_2d)
+# [ ! -e SRC ] && wget https://www.openssl.org/source/openssl-1.0.1f.tar.gz && tar xf openssl-1.0.1f.tar.gz && mv openssl-1.0.1f SRC
+}
+build_lib() {
+ rm -rf BUILD
+ cp -rf SRC BUILD
+ (cd BUILD && ./config && make clean && make CC="clang $FUZZ_CXXFLAGS" -j $JOBS)
+}
+
+get
+build_lib
+$LIBFUZZER_SRC/build.sh
+echo clang++ -g $SCRIPT_DIR/target.cc -DCERT_PATH=\"$SCRIPT_DIR/\" $FUZZ_CXXFLAGS BUILD/libssl.a BUILD/libcrypto.a libFuzzer.a -lgcrypt -o $EXECUTABLE_NAME_BASE
OpenPOWER on IntegriCloud