Why is not llvm-config executable included?

Konstantin Belousov kostikbel at gmail.com
Sat Feb 15 22:27:48 UTC 2020


On Sat, Feb 15, 2020 at 11:10:44PM +0100, Palle Girgensohn wrote:
> 
> 
> > 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?

Same as any other consumer of llvm, for instance mesa-drm.


More information about the freebsd-hackers mailing list