Update to a new snapshot and migrate to the llvm monorepo.
We now always download everthing so apply all patches (except the ELFv2
patches) unconditionally. Don't imply CLANG fo ELFV2 since the patches
will always apply.
Install llvm-devel.mk for CROSS_TOOLCHAIN support subsuming the
role of xtoolchain-llvm-devel. This means that users will get the
dependency for CROSS_TOOLCHAIN=llvm-devel by installing llvm-devel.
To avoid unnecessicary churn in other xtoolchain-llvm* ports, leave
xtoolchain-llvm-devel in place and make it IGNORE in the -devel case.
Once llvm90 (and maybe llvm80) are updated I'll remove it or move it as
appropriate.
Always install a link from ld.lld to ld as was done by
xtoolchain-llvm-devel.
Sponsored by: DARPA, AFRL
llvm90:
Enable OpenMP on power64. [0]
Add an option to link ld.lld to ld and enable by default on power64. [1]
xtoolchain-llvm-devel:
Add the ability to disable linking ld.lld to ld in slave ports.
xtoolchain-llvm90:
Disable linking ld.lld to ld since llvm90 can now do it.
PR: 240516 [0]
Submitted by: pkubaj [0]
Requested by: kib [1]
Add experimental xtoolchain ports for llvm-devel and llvm40.
With an appropriate port installed, in principle you can build a cross
world and/or kernel without a bootstrap compiler or binutils with:
make CROSS_TOOLCHAIN=llvm40 TARGET=arm64 buildworld buildkernel
In practice, this only has a chance of working on platforms with solid
LLD support. At the moment I've had some success with i386, amd64, and
arm64.
Sponsored by: DARPA, AFRL