Versions of LLVM

There are many versions of llvm in the ports tree.

This page discusses the list of ports that we should try to update to reduce the dependencies.

Notes on versions

/!\ devel/llvm10 is actually version 10.0, and thus is sorted here after devel/llvm90, which is version 9.0. The same caveat will apply for devel/llvm11 and all subsequent versions.

Current versions in the tree

/!\ The usage column does not include ports that hardwire the version. See HardcodedLLVMVersions for that list.

port

usage

status

comments

llvm70

USES=obj (mostly gnustep-derived ports)

obsolete

defined in Mk/Uses/objc.mk; last changed as of r492056

llvm80

supported

llvm90

tree-wide default

supported

defined in Mk/bsd.default-versions.mk

llvm10

fallback via USES=xyz for GCC-based systems

supported

defined in Uses/compiler.mk

llvm11

experimental

supported

Dependency statistics

Processing INDEX-13 20210124 (and deleting self-references) produces:

       6 /tmp/llvm60
      33 /tmp/llvm70
       9 /tmp/llvm80
     121 /tmp/llvm90
     170 /tmp/llvm10
       0 /tmp/llvm11

Default version

For architectures that support llvm in base, the default version is determined by whatever is installed in base.

For other architectures, if a port sets USES=compiler, llvm10 will be set if:

See Mk/Uses/compiler.mk for the code.


CategoryPorts CategoryTodo

ObsoleteLLVMVersions (last edited 2021-02-19T18:03:46+0000 by MarkLinimon)