/
githubmirror
/
kmod
Обзор
Документация
Войти
/
githubmirror
/
kmod
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
scripts/sanitizer-env.sh
51 строка
1 KB
Emil Velikov
scripts/sanitizer-env.sh: remove incorrect $CC quotes
05 июн 2025, 09:38
05 июн 2025, 09:38
dbc686e
Код
Авторство
О чём код?
#!/bin/bash # set -euo pipefail # don't set these, since this script is sourced if [[ ${CC-} == *gcc* ]]; then OUR_PRELOAD=$($CC -print-file-name=libasan.so) elif [[ ${CC-} == *clang* ]]; then # With v19, the library lacks the CPU arch in its name OUR_PRELOAD=$($CC -print-file-name=libclang_rt.asan.so) if ! test -f "$OUR_PRELOAD"; then OUR_PRELOAD=$($CC -print-file-name=libclang_rt.asan-x86_64.so) fi else cat <<- EOF >&2 WARNING: Unknown compiler CC="${CC-}" - gcc and clang are supported. Assuming "gcc", manually set the variable and retry if needed. EOF OUR_PRELOAD=$(gcc -print-file-name=libasan.so) fi if test -f "$OUR_PRELOAD"; then # In some cases, like in Fedora, the file is a script which cannot be # preloaded. Attempt to extract the details from within. if grep -q INPUT "$OUR_PRELOAD"; then input=$(sed -r -n "s/INPUT \( (.*) \)/\1/p" "$OUR_PRELOAD") test -f "$input" && OUR_PRELOAD="$input" fi LD_PRELOAD=${LD_PRELOAD+${LD_PRELOAD}:}$OUR_PRELOAD export LD_PRELOAD cat <<- EOF LD_PRELOAD has been set to "$LD_PRELOAD". The sanitizer might report issues with ANY process you execute. EOF else cat <<- EOF >&2 WARNING: compiler returned non-existing library name "$OUR_PRELOAD". Make sure to install the relevant packages and ensure this script references the correct library name. LD_PRELOAD will NOT be set. EOF fi unset OUR_PRELOAD