mirror of
https://abf.rosa.ru/djam/llvm12.git
synced 2025-02-23 15:22:50 +00:00
25 lines
977 B
Text
25 lines
977 B
Text
# CFLAGS that are known to be not suppported by clang
|
|
%noclang_optflags -fvar-tracking-assignments -frecord-gcc-switches -ffat-lto-objects
|
|
|
|
%clang_gcc_wrapper() \
|
|
# clang wrapper to remove compiler flags that clang does not know \
|
|
# how-to in Russian: https://nixtux.ru/768 \
|
|
BIN_DIR="${BIN_DIR:-$(pwd)/local_bin}" \
|
|
mkdir -p "$BIN_DIR" \
|
|
install -m 0755 %{_datadir}/clang/clang-gcc-wrapper.sh "${BIN_DIR}/clang++" \
|
|
sed -e "s,_CLANG_,$(which clang++),g" -i "${BIN_DIR}/clang++" \
|
|
install -m 0755 %{_datadir}/clang/clang-gcc-wrapper.sh "${BIN_DIR}/clang" \
|
|
sed -e "s,_CLANG_,$(which clang),g" -i "${BIN_DIR}/clang" \
|
|
export PATH="${BIN_DIR}:${PATH}" \
|
|
# set variables \
|
|
CLANG="$(which clang)" \
|
|
CLANGXX="$(which clang++)" \
|
|
CC="clang" \
|
|
CXX="clang++" \
|
|
CPP="clang++" \
|
|
# validate that clang wrapper is in PATH \
|
|
echo "$CLANG" | grep -q "$BIN_DIR" \
|
|
echo "$CLANGXX" | grep -q "$BIN_DIR" \
|
|
export CLANG CLANGXX CC CXX CPP \
|
|
export NOCLANG_OPTFLAGS="%{noclang_optflags}" \
|
|
%{nil}
|