diff options
Diffstat (limited to 'llvm/lib/Fuzzer/fuzzer-test-suite/openssl-1.0.2d/build.sh')
-rwxr-xr-x | llvm/lib/Fuzzer/fuzzer-test-suite/openssl-1.0.2d/build.sh | 25 |
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 |