Skip to content

Commit 1bd908c

Browse files
author
2b57
committed
stage1 works
1 parent 5d87c36 commit 1bd908c

File tree

3 files changed

+19
-3
lines changed

3 files changed

+19
-3
lines changed

profiles/features/bootstrap/make.defaults

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,7 @@ BOOTSTRAP_USE="${BOOTSTRAP_USE} libcxxabi"
1919

2020
# sys-devel/gcc
2121
# only libgcc and stdlib are needed
22-
BOOTSTRAP_USE="${BOOTSTRAP_USE} -fortran"
22+
BOOTSTRAP_USE="${BOOTSTRAP_USE} -fortran"
23+
24+
# llvm & clang: explicitly disable all extra targets, otherwise linking stage2 fails
25+
BOOTSTRAP_USE="${BOOTSTRAP_USE} -llvm_targets_BPF -llvm_targets_AMDGPU -llvm_targets_NVPTX -llvm_targets_BPF"

profiles/features/clang/make.defaults

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,21 @@
1+
# use Clang as a primary compiler
12
CC="clang"
23
CXX="clang++"
4+
5+
# call Clang to link, it will invoke lld if needed
6+
# from man clang:
7+
# The clang executable is actually a small driver which controls the overall
8+
# execution of other tools such as the compiler, assembler and linker.
9+
# Typically you do not need to interact with the driver, but you transparently
10+
# use it to run the other tools
11+
LD="clang"
12+
13+
# some linker flags
14+
LDFLAGS="-fuse-ld=lld -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed"
15+
16+
# use LLVM-provided binutils
317
AR="llvm-ar"
418
NM="llvm-nm"
5-
LD="lld"
619
RANLIB="llvm-ranlib"
720

821
# curl needed by cmake

profiles/features/lto/use.force

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
lto
1+
lto

0 commit comments

Comments
 (0)