[vlc-devel] [vlc-commits] contrib: luac: add luac cross-compiler

Rémi Denis-Courmont remi at remlab.net
Sat Aug 6 18:05:44 CEST 2016

Le lauantaina 6. elokuuta 2016, 17.29.26 EEST Jean-Baptiste Kempf a écrit :
> On 06 Aug, Rémi Denis-Courmont wrote :
> > vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Sat Aug  6
> > 16:09:12 2016 +0300| [0e9596f4f84ca05e48de238a16c0a496eb84983d] |
> > committer: Rémi Denis-Courmont
> > 
> > contrib: luac: add luac cross-compiler
> Installing it outside in $CONTRIBS/bin istead of $CONTRIBS/{TRIPLET}/bin
> make it that it is not packaged with creating prebuilt packages.
> Is that really the wanted behavior?

Frankly, I did not "intend" the inclusive or exclusive behaviour: the 
exclusive behaviour just happened implicitly. It does not really matter to me 
as I don´t use prebuilt contribs. I believe that the main "victims" are native 
Windows builders, and I can´t speak for them or the others.

Prebuilt packages are currently name(space)d per host triplet. If you ship 
cross-tools in them, then you need to name (and build! and distribute!) them 
per host and build sextet. As long as build machine run-time versions do not 
cause problems of their own, it is doable. But it has never been done.

I think we just assumed a fixed build triplet per host triplet, as follows:
- for MacOS hosts: build = x86_64-darwin-apple,
- for all other hosts: build = i686-linux-gnu (or less).
At some point, there was or will be a flag day switch to x86_64-linux-gnu.

Nothing prevents continuing to ship prebuilt packages in that lame fashion, 
including cross-tools. It should be a trivial matter of adding bin/TRIPLET-* 
files in the tarballs.

A better approach is to keep excluding cross-tools from prebuilt contribs, and 
provide separate prebuilt cross-tools. That would require a lot less duplicate 
build effort and storage space.

As for the search path, I don´t particularly enjoy having to set it. I just 
don´t see how to avoid it without either breaking something, parting with 
autotools, or inventing the AC_PATH_TOOL(S) macro. The first two seem worse; I 
don´t know how feasible the last one is.

Personally, I just linked TRIPLET-luac symbolically into ~/bin instead. If 
prebuilt contribs were unpacked in /usr/local/{bin,TRIPLET} or /usr/

Rémi Denis-Courmont

More information about the vlc-devel mailing list