Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 Apr 2025 18:06:54 +0200
From:      Dimitry Andric <dim@FreeBSD.org>
To:        FreeBSD CURRENT <freebsd-current@freebsd.org>
Subject:   HEADS UP: libllvm, libclang, and liblldb converted into shared libraries
Message-ID:  <B44B37E9-16C8-46B2-95CA-2A9072174FFF@FreeBSD.org>

index | next in thread | raw e-mail

Hi,

In https://cgit.freebsd.org/src/commit/?id=2e47f35be5dc I committed a
change to convert libllvm, libclang, and liblldb into private shared
libraries. This means that tools like clang, lld, lldb, and more are now
quite a bit smaller, as all the common functionality is located in those
shared libraries.

Note that these shared libraries are not the same as upstream's, and are
_not_ ABI compatible, which is why they are installed as private shared
libraries. If you need ABI compatibility and/or the llvm-config tools,
please use one of the devel/llvm ports.

This affects the following binaries in the base system (some of them
only exist if they're enabled through various WITH_XXX options):

- addr2line
- ar
- bugpoint
- c++
- c++filt
- cc
- clang
- clang++
- clang-cpp
- clang-format
- cpp
- gcov
- ld.lld
- llc
- lldb
- lldb-server
- lli
- llvm-addr2line
- llvm-ar
- llvm-as
- llvm-bcanalyzer
- llvm-cov
- llvm-cxxdump
- llvm-cxxfilt
- llvm-diff
- llvm-dis
- llvm-dwarfdump
- llvm-dwarfutil
- llvm-dwp
- llvm-extract
- llvm-link
- llvm-lto
- llvm-lto2
- llvm-mc
- llvm-mca
- llvm-modextract
- llvm-nm
- llvm-objcopy
- llvm-objdump
- llvm-pdbutil
- llvm-profdata
- llvm-ranlib
- llvm-readelf
- llvm-readobj
- llvm-rtdyld
- llvm-size
- llvm-strings
- llvm-strip
- llvm-symbolizer
- llvm-xray
- nm
- objcopy
- objdump
- opt
- ranlib
- readelf
- size
- strings
- strip

In addition, all these executables are now position independent (PIE).

Please let me know if you encounter any problems resulting due to this
change, as I intend to MFC it. For example, I tried covering all
incremental build scenarios, but I may have missed some corner case.

-Dimitry



help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B44B37E9-16C8-46B2-95CA-2A9072174FFF>