The LLVM Project is a collection of modular and reusable compiler and
toolchain technologies. This version adds support for the Arm Morello
prototype architecture (CHERI ported to ARMv8-A).
This port includes Clang (a C/C++/Objective-C compiler), LLD (a linker),
and the LLVM infrastructure these are built on.
===> The following configuration options are available for llvm-morello-17.0.d20261007:
CLANG=on: Build clang
DOCS=on: Build and/or install documentation
EXTRAS=on: Extra clang tools
LIT=on: Install lit and FileCheck test tools
LLD=on: Install lld linker
STATIC_LIBS=on: Install static libraries (does not effect sanitizers)
XTOOLCHAIN=on: Install cross toolchain file
===> Use 'make config' to modify these settings
devel/llvm-{cheri,morello}: new snapshots
Update CHERI and Morello LLVM compilers to new snapshots.
Attempt to fix builds with LLVM 21 by conditionally applying the patch
used with devel/llvm17. I'm not applying it universally as llvm-morello
fails to compile with it on my 14.4-RELEASE test system.
Sponsored by: DARPA, AFRL
devel/llvm-morello: new snapshot
Includes a fix for a bug (padding of globals in hybrid mode) that
prevented compiling a working FreeBSD aarch64 system.
Sponsored by: DARPA, AFRL
devel/llvm-{cheri,morello}: Update distinfo for new snapshots
Missed in earlier commit.
Fixes: 0f4057007926 ("devel/llvm-{cheri,morello}: new snapshots")
devel/llvm-{cheri,morello}: new snapshots, enable STATIC_LIBS
We've now got some reserarch partners who want to build compiler passes
so enable static libraries in the packages.
Sponsored by: DARPA, AFRL
devel/llvm-{cheri*,morello}: new snapshots
Update llvm-cheri to a new LLVM 17 based snapshot, llvm-cheriot to an
LLVM 18 based snapshot, and llvm-morello to a snapshot with new function
pointer semantics to better support compartmentalization.
Update the wrapper script to enable the new function pointer semantics
on sufficently new CheriBSD system.
Sponsored by: DARPA, AFRL
devel/llvm-{cheri,morello}: add clang-tools-extras
This adds clangd among other things.
(Due to the port structure, this includes a graturious PORTREVISION bump
in llvm-cheriot. It doesn't seem worth the effort to avoid at this
point.)
devel/llvm-{cheri,cheriot,morello}: update
Update to the latest snapshots.
We've done OK so far with installing standard headers as part of
devel/llvm## ports so extend that to these ports. This is certainly
correct for llvm-cheriot. Practical testing is likely required for the
others.
devel/llvm-{cheri,cheriot,morello}: link llvm-cxx{dump,filt}
These commands were some how not linked into bin long ago. Correct
this error.
(Some other commands are also missing, but were specifically missing
llvm-cxxfilt).
Reported by: jrtc27
Sponsoredy by: AFRL, DARPA
devel/llvm-{cheri,cheriot,morello}: assorted fixups
Allow override of GH_PROJECT and GH_ACCOUNT[0] and fix GH_PROJECT in
llvm-cheriot. No change in the source, but the filename is now
corrected.
Centralize include of Makefile.snapshot.
Reported by: Irina Dudina <irina.dudina@ed.ac.uk>
devel/llvm-{cheri,cheriot,morello}: new snapshots
Major changes:
llvm-cheri: merge LLVM 15
llvm-cheriot: switch the fork at github.com/CHERIoT-Platform
llvm-morello: merge LLVM 14
Rework patching and filtering of commands and man pages to better
accomdate version skew between the different ports now that all three
have different bases.
Centralize the addition of ${.CURDIR}/files to EXTRA_PATCHS.
devel/llvm-{cheri,morello}: update to new snapshots
llvm-cheri: a few months of updates and fixes
llvm-morello: support for Morello benchmarking ABI
Sponsored by: DARPA
bsd.sites.mk: Update all ports using USE_GITLAB
Replace GL_COMMIT by GL_TAGNAME in all ports. The new GL_TAGNAME is
backwards-compatible (accepting any commit hash as before), but also
understands an actual tag name. Moving to tag names where appropriate is
left to individual ports' maintainers.
Approved by: portmgr (tcberner, mentor)
Differential Revision: https://reviews.freebsd.org/D37077
devel/llvm-morello: new snapshot
Includes a change to improve both performance and readability of default
-O0 code on CHERI where the prior code resulated in far too many
pointer bounds and stack spills where they were unneeded.
Sponsored by: DARPA
devel/llvm-{cheri,morello}: new snapshots, lit fixes
Fix the the python module name to use an '_' in place of '-' in the
port-specific module name.
PR: 270670, 269931
Sponsored by: DARPA
Co-Authored-by: Pawel Biernacki <kaktus@freebsd.org>
devel/llvm-{cheri,morello}: add a STATIC_LIBS option
When enabled assorted LLVM componant static libraries are included in
the package. Unlike mainstream LLVM ports I've disabled this by
default as the libraries are of limited use here.
Sponsored by: DARPA
devel/llvm-{cheri,morello}: Update to new snapshots
llvm-cheri:
- This updates from an LLVM 13 base to an LLVM 14 base.
- Save a little compile time by dropping MIPS support. The CHERI
MIPS target still exists, but CheriBSD no longer supports it and the
places that use it (e.g., https://cheri-compiler-explorer.cl.cam.ac.uk)
use a Linux build.
llvm-morello:
- Minor optimization improvements
llvm-{cheri,morello}: don't install std*.h
As with regular llvm ports, don't install std*.h as they conflict with
FreeBSD versions.
While here, update llvm-cheri to the latest snapshot.
devel/llvm-morello: 2022-10-03 snapshot
Among other things, this works around precision issues in the
RRLEN/RRMASK instructions.
Sponsored by: DARPA, AFRL
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 )
llvm-{cheri,morello}: Update to new shapshots
Update llvm-cheri to the latest commit on the dev branch and
llvm-morello to the latest on morello/main.
For llvm-morello this update includes a change to the default varargs
ABI (all major consumers have already switched to using this ABI).
Sponsored by: DARPA, AFRL
devel/llvm-morello: Update to a new snapshot
This snapshot includes the final version of the patch applied in
93a0c2d46a28d0929d75182583ca2fc63bf8898b.
Sponsored by: DARPA, AFRL
devel/llvm-morello: Update to a new snapshot
Of particular intrest in this update, instruction encoding is now
implied by -march and -mabi when targeting Morello.
devel/llvm-{cheri,morello}: Add ld symlink
Add an ld -> ld.lld symlink in ${PREFIX}/llvm-{cheri,morello}/bin so
that clang finds the linker without adding -fuse-ld=ld.lld.
devel/llvm-{cheri,morello}: new snapshots
Update both llvm-cheri and llvm-morello to new snapshots as we head for
a CheriBSD release with package support.
Switch llvm-morello to use a Makefile.snapshot for more consistancy
with other LLVM snapshot ports.
devel/llvm-morello: Add a port of Morello LLVM
This port of LLVM to the Arm Morello prototype architecture is based
on the University of Cambridge's CHERI LLVM.