Why is not llvm-config executable included?

Palle Girgensohn girgen at FreeBSD.org
Sat Feb 15 22:10:47 UTC 2020



> 15 feb. 2020 kl. 19:58 skrev Konstantin Belousov <kostikbel at gmail.com>:
> 
> On Sat, Feb 15, 2020 at 07:35:29PM +0100, Palle Girgensohn wrote:
>> Hi!
>> 
>> I try to build postgresql with llvm from base in 13.0-CURRENT, but although it seems to me that llvm is indeed included in base, the executable `llvm-config` is not. PostgreSQL's build process expects to be able to use this to configure itself when building with llvm.
>> 
>> Any ideas how to deal with this, apart from installing devel/llbm90 which seems a bit bonkers?
> 
> If you need llvm you must install it from ports.  The fact that /usr/bin/cc
> is clang with llvm behind it is somewhat accidental.
> 
> One of the reason why llvm in base should not be used as llvm infrastructure
> is because llvm API and ABI is not stable across llvm releases, and exposing
> that would make compiler updates in stable impossible due to the stable
> branches guarantee of ABI stability.
> 
> Another reason is that we generally do not want to make base depended on
> specific on llvm or any other compiler' internals.  It should stay as
> (reasonably portable) C+gnu ext project.

Ah, OK, makes sense. So if postgresql depends on llvm, it simply has to depend on the port, right?

Palle



More information about the freebsd-hackers mailing list