reworked LTO to have no-lto package, gcc defaults to gnu-ld, clang defaults to lld now

This commit is contained in:
Moritz Gmeiner 2023-08-28 17:52:19 +02:00
commit 75f64148b7
13 changed files with 49 additions and 26 deletions

15
env/clang vendored
View file

@ -1,4 +1,5 @@
COMMON_FLAGS="-O2 -pipe -march=native"
COMMON_FLAGS="-O2 -pipe -march=native -flto=full"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
@ -8,9 +9,19 @@ CC="clang"
CXX="clang++"
AR="llvm-ar"
AS="clang -c"
CPP="clang-cpp"
NM="llvm-nm"
STRIP="llvm-strip"
RANLIB="llvm-ranlib"
OBJCOPY="llvm-objcopy"
STRINGS="llvm-strings"
OBJDUMP="llvm-objdump"
READELF="llvm-readelf"
ADDR2LINE="llvm-addr2line"
LDFLAGS="-Wl,--as-needed -rtlib=compiler-rt -unwindlib=libunwind"
LD="ld.lld"
LDFLAGS="-Wl,--as-needed -rtlib=compiler-rt -unwindlib=libunwind -fuse-ld=lld -flto"
USE="clang llvm-libunwind"