[vlc-devel] [vlc-commits] Remove ugly builtin support

Rémi Denis-Courmont remi at remlab.net
Mon May 2 12:13:03 CEST 2011


On Monday 02 May 2011, Jean-Baptiste Kempf wrote:
> On Mon, May 02, 2011 at 11:44:50AM +0200, Pierre d'Herbemont wrote :
> > But you'll have to unbreak the
> > circular dependency between libvlc and the plugins first.
> What is this circular dependency, then?

There is of course no circular dependency. By definition, a circular dependency 
could not be resolved.

On Windows, the linker does not allow unresolved symbols. So the modules are 
linked against the core which provides the core symbols. In the past, the 
symbols were in the brittle and unloved "vlc_symbols.h". To link the modules 
against the core, the core must be built before the modules.

On Linux, this is not really required. Still it provides an extra safety 
against missing functions, so it is nice to have.

Of course, to link the modules statically into the core library, the modules 
would have to be built before the full static core library is linked. As far 
as the current build system is concerned, this is not an issue at all, so long 
as the core is also statically linked.

> How can we address it?

The real issue was not addressed by that ugly hack. To link LibVLC statically, 
you need to know the list of modules, so that you can link the whole stuff in 
one piece at some point in the build process.

I am quite sure this has already been discussed.

Rémi Denis-Courmont

More information about the vlc-devel mailing list