There are many versions of llvm in the ports tree.

  • It is painful for builders (especially the ones using qemu) to have so many versions.
  • Some only exist to satisfy dependencies.

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

:!: 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.

:!: 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

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

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:

  • COMPILER_ARGS:Mc++17-lang
  • COMPILER_ARGS:Mc++14-lang
  • COMPILER_ARGS:Mc++11-lang
  • COMPILER_ARGS:Mc++0x
  • COMPILER_ARGS:Mc11

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

all the below has become obsolete 20191202:

port dependency upstream URL upstream at later version? comments

:!: TODO add more 20190807

:!: These data are stale.

Here are the data from powerpc64 INDEX-13 built 20181214. As of this date, the base compiler is still gcc4.2.1.

llvm40 5
llvm60 169
llvm70 13

  • obsoletellvmversions.txt
  • Last modified: 2026/10/12 10:55
  • (external edit)