lang/llvm - The NetBSD Packages Collection

Low Level Virtual Machine compiler infrastructure

Low Level Virtual Machine (LLVM) is:

A compilation strategy designed to enable effective program optimization across
the entire lifetime of a program. LLVM supports effective optimization at
compile time, link-time (particularly interprocedural), run-time and offline
(i.e., after software is installed), while remaining transparent to developers
and maintaining compatibility with existing build scripts.

A virtual instruction set - LLVM is a low-level object code representation that
uses simple RISC-like instructions, but provides rich, language-independent,
type information and dataflow (SSA) information about operands. This combination
enables sophisticated transformations on object code, while remaining
light-weight enough to be attached to the executable. This combination is key to
allowing link-time, run-time, and offline transformations.

A compiler infrastructure - LLVM is also a collection of source code that
implements the language and compilation strategy. The primary components of the
LLVM infrastructure are the C & C++ front-end, a link-time optimization
framework with a growing set of global and interprocedural analyses and
transformations, static back-ends for the X86, X86-64, PowerPC 32/64, ARM,
Thumb, IA-64 and SPARC architectures, a back-end which emits portable C
code, and a Just-In-Time compiler for X86, X86-64, PowerPC 32/64 processors.

Build dependencies

devel/cmake lang/python312 pkgtools/mktools pkgtools/cwrappers

Runtime dependencies

textproc/libxml2 archivers/zstd textproc/libxml2

Binary packages

OSArchitectureVersion
NetBSD 10.0aarch64llvm-18.1.8.tgz
NetBSD 10.0aarch64llvm-17.0.6nb1.tgz
NetBSD 10.0aarch64ebllvm-17.0.6nb1.tgz
NetBSD 10.0aarch64ebllvm-18.1.8.tgz
NetBSD 10.0earmv6hfllvm-16.0.6nb1.tgz
NetBSD 10.0earmv6hfllvm-17.0.6nb1.tgz
NetBSD 10.0earmv7hfllvm-16.0.6nb1.tgz
NetBSD 10.0earmv7hfllvm-17.0.6nb1.tgz
NetBSD 10.0i386llvm-18.1.8.tgz
NetBSD 10.0i386llvm-17.0.6nb1.tgz
NetBSD 10.0mips64ebllvm-17.0.6nb1.tgz
NetBSD 10.0powerpcllvm-18.1.8.tgz
NetBSD 10.0powerpcllvm-15.0.7nb2.tgz
NetBSD 10.0powerpcllvm-16.0.6nb1.tgz
NetBSD 10.0powerpcllvm-16.0.6nb1.tgz
NetBSD 10.0sparc64llvm-17.0.6nb1.tgz
NetBSD 10.0sparc64llvm-18.1.8.tgz
NetBSD 10.0sparcllvm-17.0.6nb1.tgz
NetBSD 10.0sparcllvm-18.1.8.tgz
NetBSD 10.0x86_64llvm-18.1.8.tgz
NetBSD 10.0x86_64llvm-17.0.6nb1.tgz
NetBSD 9.0aarch64llvm-17.0.6nb1.tgz
NetBSD 9.0earmv6hfllvm-18.1.8.tgz
NetBSD 9.0earmv6hfllvm-16.0.6nb1.tgz
NetBSD 9.0earmv6hfllvm-17.0.6nb1.tgz
NetBSD 9.0earmv7hfllvm-16.0.6nb1.tgz
NetBSD 9.0earmv7hfllvm-17.0.6nb1.tgz
NetBSD 9.0i386llvm-18.1.8.tgz
NetBSD 9.0i386llvm-17.0.6nb1.tgz
NetBSD 9.0powerpcllvm-16.0.6nb1.tgz
NetBSD 9.0powerpcllvm-15.0.7nb2.tgz
NetBSD 9.0powerpcllvm-16.0.6nb1.tgz
NetBSD 9.0sparc64llvm-16.0.6nb1.tgz
NetBSD 9.0sparc64llvm-18.1.8.tgz
NetBSD 9.0x86_64llvm-18.1.8.tgz
NetBSD 9.0x86_64llvm-17.0.6nb1.tgz
NetBSD 9.3x86_64llvm-18.1.8.tgz

Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.

Available build options

debug
Enable debugging facilities in the package.
llvm-target-aarch64
Support code generation for 64-bit ARM CPUs.
llvm-target-amdgpu
Support code generation for AMD GPUs.
llvm-target-arc
llvm-target-arm
Support code generation for ARM CPUs.
llvm-target-avr
llvm-target-bpf
llvm-target-csky
llvm-target-directx
llvm-target-hexagon
llvm-target-lanai
llvm-target-loongarch
llvm-target-m68k
llvm-target-mips
Support code generation for MIPS CPUs.
llvm-target-msp430
llvm-target-nvptx
llvm-target-powerpc
Support code generation for PowerPC CPUs.
llvm-target-riscv
llvm-target-sparc
Support code generation for SPARC CPUs.
llvm-target-spirv
llvm-target-systemz
llvm-target-ve
llvm-target-webassembly
Support code generation for WebAssembly virtual machine.
llvm-target-x86
llvm-target-xcore
llvm-target-xtensa
terminfo
Use terminfo.
tests
Build and install tests.
z3
Enable support for the Z3 theorem prover.

Known vulnerabilities

The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.

Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.


Problem reports, updates or suggestions for this package should be reported with send-pr.