autobuild: find correct clang version and fuzzer library
Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com> Change-Id: Id042892837bb328a64447f8b41df8c11bbeeb24b Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15336 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Michal Berger <michal.berger@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
This commit is contained in:
parent
5303e1bd54
commit
26b4652e2e
22
autobuild.sh
22
autobuild.sh
@ -60,19 +60,21 @@ function ocf_precompile() {
|
|||||||
./configure $config_params
|
./configure $config_params
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Find matching llvm fuzzer library and clang compiler version
|
||||||
function llvm_precompile() {
|
function llvm_precompile() {
|
||||||
# llvm need clang compiler
|
[[ $(clang --version) =~ "version "(([0-9]+).([0-9]+).([0-9]+)) ]]
|
||||||
local clangV
|
clang_version=${BASH_REMATCH[1]}
|
||||||
local clang_complier
|
clang_num=${BASH_REMATCH[2]}
|
||||||
|
|
||||||
clangV=$(clang --version | grep version | cut -d" " -f3)
|
export CC=clang-$clang_num
|
||||||
clang_complier=$(echo "$clangV" | cut -d"." -f1)
|
export CXX=clang++-$clang_num
|
||||||
|
|
||||||
export CC=clang-$clang_complier
|
fuzzer_libs=(/usr/lib*/clang/"$clang_version"/lib/linux/libclang_rt.fuzzer_no_main-x86_64.a)
|
||||||
export CXX=clang++-$clang_complier
|
fuzzer_lib=${fuzzer_libs[0]}
|
||||||
# Set config to use precompiled library
|
[[ -e $fuzzer_lib ]]
|
||||||
config_params="$config_params --with-fuzzer=/usr/lib64/clang/$clangV/lib/linux/libclang_rt.fuzzer_no_main-x86_64.a"
|
|
||||||
# need to reconfigure to avoid clearing llvm related files on future make clean.
|
config_params="$config_params --with-fuzzer=$fuzzer_lib"
|
||||||
|
# Need to reconfigure to avoid clearing llvm related files on future make clean.
|
||||||
./configure $config_params
|
./configure $config_params
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user