On Mon, Jan 6, 2014 at 6:43 PM, Paul "LeoNerd" Evans
<leon...@leonerd.org.uk> wrote:
> On Mon, 6 Jan 2014 17:54:56 -0500
> Chris Marshall <devel.chm...@gmail.com> wrote:
>
>> Again, Alien modules are for *perl* to access external dependencies
>> and not for other external dependencies to access eachother---you've
>> already given a bunch of examples of the standard pkg-config use
>> in builds.
>
> ...
>
> Once again, a summary of the facts:
>
>  1) Alien::unibilium has to install the unibilium C library into Perl's
>     @INC dir, and thus make up path names that /ONLY IT CAN KNOW/ for
>     where to put the include and .pc files
>
>  2) Alien::unibilium has to install unibilium.pc into lib/pkg-config
>     knowing full well that the contents of the file as supplied by the
>     unibilium C library /CANNOT BE USED/ as they stand, as certain
>     options are missing (namely, the true $libdir and the adjustment of
>     the RPATH linker option).
>
>  3) libtermkey, the C library, invokes pkg-config in order to find
>     unibilium, and does not involve Perl in the process at all.
>
> Right now, about the only idea that I can see is that Alien::unibilium
> has to invent a new unibilium.pc file that is useable as it stands, so
> it can force the Makefile to find it by only setting PKG_CONFIG_PATH to
> include the directory it can be found in. But this then involves an
> Alien wrapping writing a new .pc file when it installs, other than the
> one the original library actually supplied. That feels wrong to me.

pkg-config has a standard format.  I see no reason why
the Alien::unibilium could not make a valid .pc file that
could be used by the standard autoconf enabled builds.

--Chris

Reply via email to