The LLVM Project is a collection of modular and reusable compiler and
toolchain technologies.
This port includes Clang (a C/C++/Objective-C compiler), LLD (a linker),
LLDB (a debugger), an OpenMP runtime library, and the LLVM infrastructure
these are built on.
===> The following configuration options are available for llvm90-9.0.1_6:
BE_AMDGPU=on: AMD GPU backend (required by mesa)
CLANG=on: Build clang
COMPILER_RT=on: Sanitizer libraries
DOCS=on: Build and/or install documentation
ELFV2=off: [PowerPC64] Use OpenPOWER ELF ABI v2 by default
EXTRAS=on: Extra clang tools
GOLD=on: Build the LLVM Gold plugin for LTO
LIT=on: Install lit and FileCheck test tools
LLD=on: Install lld, the LLVM linker
LLDB=on: Install lldb, the LLVM debugger
LLD_LINK=on: Link ld.lld to ld, so clang uses it
OPENMP=on: Install libomp, the LLVM OpenMP runtime library
PYCLANG=on: Install python bindings to libclang
====> Options available for the single BACKENDS: you have to select exactly one of them
BE_FREEBSD=off: Backends for FreeBSD architectures
BE_NATIVE=off: Backend(s) for this architecture (X86)
BE_STANDARD=on: All non-experimental backends
===> Use 'make config' to modify these settings
Cleanup: Remove devel/llvm[789]0
* remove old devel/llvm70
* remove old devel/llvm80
* remove old devel/llvm90
* remove ports explicitely depending on either of the three
Differential Revision: https://reviews.freebsd.org/D37936
devel/llvm*: Fix CONFLICT on cmark
If the user has the textproc/cmark package installed, the py*-CommonMark
package will fail to install. This in turn leads to build failures down
the line when sphinx tries to load commonmark. The result is confusing
and potentially wastes a lot of build time so just conflict upfront.
The previous code attempted to do this, but I'd listed the conflict
incorrectly in 2019. :(
PR: 239636
Reported by: Stephen Roznowski <sjrbulk@verizon.net>
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
textproc/libxml2: bump all LIB_DEPENDS consumers
This is a separate commit to facilitate easier cherry-picking for
quarterly.
PR: 262853, 262940, 262877, 263126
Approved by: fluffy (mentor)
textproc/libxml2: bump all dependencies
This should make sure that all dependent ports will pick
up the new version commited with a13ec21cd733f67a9fc0dc00ab45268bdc236246
devel/llvm90: enable COMPILER_RT on riscv64
1. COMPILER_RT builds libclang_rt.builtins-riscv64.a library, but not
cfi_blacklist.txt, so _COMPILER_RT_BLACKLISTS needs to be put into amd64 and
i386 cases.
2. Instead of:
.if ${ARCH}
.endif
.if {ARCH}
Do:
.if ${ARCH}
.elseif ${ARCH}
3. Remove whitespace at the end of line.
PR: 261106
Approved by: brooks (maintainer)
*/*: Remove redundant '-*' from CONFLICTS definitions
The conflict checks compare the patterns first against the package
names without version (as reported by "pkg query "%n"), then - if
there was no match - agsinst the full package names including the
version (as reported by "pkg query "%n-%v").
Approved by: portmgr (blanket)
devel/llvm*: Fix BE_NATIVE on aarch64
Fix two bugs in native-only backend support (BE_NATIVE). First, ARCH
is aarch64 not arm64. Second, consistently spell AArch64 not AAarch64
(extra 'a').
Because this only effects aarch64 in a non-default configuration, skip
the PORTREVISION bump that is technically required to reduce excess
heating in common cases.
Reported by: Mark Millard
devel/llvm90: enable GOLD on elfv2 systems
On powerpc64, ld.gold is only available on elfv2. Since we have a separate
option for elfv2, make it imply GOLD to make it available.
devel/llvm*: Avoid extraneous escapes
All of these single quotes are safe on their own, as they're enclosed in
double quotes. Removes the escapes, because they're currently passed through
to the underlying regex engine as \' to be interpreted as '.
A future change will forbid this escape, then an even further future change
will actually imbue \' with special meaning based on GNU interpretation
("end of subject").
No PORTREVISION bump or rebuild is needed, as they're functionally
equivalent.
PR: 247058
Approved by: koobs (mentor), brooks (maintainer)
MFH: 2020Q2 (blanket: trivial build fix)
devel/llvm*: Upgrade Sphinx dependency to 3.X
This avoids conflicts between Sphinx ports when not using Poudriere.
PR: 246500
Approved by: brooks (maintainer)
Update Sphinx
- Repocopy textproc/py-sphinx to textproc/py-sphinx18
Update it to 1.8.5 (latest version from 1.8.X).
This version supports Python 2 and 3.
Add test target.
- textproc/py-sphinx: Update to 3.0.2
Python 3 only (3.5+).
Add test target.
- Mk/Uses/python.mk: Add PY_SPHINX
(Only the first 15 lines of the commit message are shown above )
Fix build without CLANG enabled. [0]
Fix LLD build where PREFIX != LOCALBASE. [1]
powerpc64: add configure option to select ELFv2 ABI [2]
In preparation for compiler+ABI change in PowerPC64, this change adds a
configure option to select ELFv2 as default powerpc64 ABI when compiling
llvm90.
The new option automatically set when ELFv2 environment is detected
(when PPC_ABI=ELFv2)
PR: 241400 [1], 241410 [0]
Submitted by: Alfredo Dal'Ava Junior [2]
Differential Revision: https://reviews.freebsd.org/D22100 [2]
Rollup of fixes since the 9.0.0 release.
- Change the default -march for i386 from i486 to i586. This avoids
the need for libatomics and had been the defacto default for some
time. [0]
- Add -m(no)-spe to clang. (powerpc)
- Deduce MIPS specific ELF header flags from `emulation`. (mips)
- Fix a variety of assertions and compile/link errors including crashes
with CPUTYPE=haswell. [1]
- Switch back to https for downloads. [2]
The new patches were initially committed to FreeBSD src by dim@.
PR: 240918 [0], 240759 [1], 240870 [2]
Reported by: jbeich [0,1], Miyashita Touka <imagin8r@protonmail.com> [2]
Update to 9.0.0 release.
Attempt to fix linkin of openmp when the linker isn't LLD.
Enable LLD_LINK by default. It is increasingly the case that lld is a
safe choice so just go with it.
Enable SecurePLT on PowerPC for FreeBSD 13 and up.
PR: 240730, 240737
Drop C++11 workaround for GCC < 6 after r449590
lang/gcc5 will expire in ~1 month. If someone still uses lang/gcc48
they should backport C++11 fix instead. QA on GCC architecuters is
currently limited to powerpc64 which uses GCC_DEFAULT.
PR: 193528
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]
Assorted minor improvements:
- Add a build conflict for commonmark-cmark-* when DOCS are enabled.
This prevents a failure later on in the build. [0]
- Add a new option BE_AMDGPU which can be used to enable the AMDGPU
backed used by mesa when BE_NATIVE or BE_FREEBSD is set. Enable this
option by default to limit later surprises. [1]
- Use LLVM_ENABLE_Z3_SOLVER instead of the now removed
CLANG_ANALYZER_ENABLE_Z3_SOLVER to disable Z3 discovery and linkage.
PR: 239636 [0], 230789 [1]
Welcome LLVM 9.0.0rc1 to the tree.
Of particular interest in this release: the RISCV backend is enabled
by default and FreeBSD PowerPC support is much improved.
Sponsored by: DARPA, AFRL