Re: Aliens depending on Aliens

2014-01-09 Thread Paul LeoNerd Evans
On Mon, 6 Jan 2014 20:02:31 -0500 Chris Marshall devel.chm...@gmail.com wrote: 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. So, it seems my solution is to have

Re: Aliens depending on Aliens

2014-01-09 Thread Paul LeoNerd Evans
On Tue, 7 Jan 2014 01:22:30 +0100 Aristotle Pagaltzis pagalt...@gmx.de wrote: You need to configure_requires Alien::unibilium and the module must provide API to query its install location such that the Makefile.PL or Build.PL from Alien::libtermkey can set things up as necessary. (Or maybe

Re: Aliens depending on Aliens

2014-01-09 Thread David Mertens
I suppose this'll sound like I'm being picky but when you say this: On Thu, Jan 9, 2014 at 2:27 PM, Paul LeoNerd Evans leon...@leonerd.org.uk wrote: When the perl-level Alien::libtermkey's Build.PL runs, it is of course free to make queries of Alien::unibilium. But what good does this do?

Re: Aliens depending on Aliens

2014-01-09 Thread Chris Marshall
The job of an Alien module is to provide the external dependency to perl for configuration and use (usually for XS modules to link against). The job of an Alien module author is to implement that process via the Alien::XXX. Maybe you could start by figuring out how you would provide Alien

Re: Aliens depending on Aliens

2014-01-09 Thread Aristotle Pagaltzis
* Paul LeoNerd Evans leon...@leonerd.org.uk [2014-01-09 20:30]: I'm not following. Alien::libtermkey does indeed configure_require Alien::unibilium. When the perl-level Alien::libtermkey's Build.PL runs, it is of course free to make queries of Alien::unibilium. But what good does this do?

Re: Aliens depending on Aliens

2014-01-07 Thread Chris Marshall
On Mon, Jan 6, 2014 at 5:54 PM, Chris Marshall devel.chm...@gmail.com wrote: On Mon, Jan 6, 2014 at 5:32 PM, Paul LeoNerd Evans leon...@leonerd.org.uk wrote: ... This surely limits Alien wrappings to only being useful for C libraries that don't themselves have other C-level dependencies.

Aliens depending on Aliens

2014-01-06 Thread Paul LeoNerd Evans
So, another Alien question. I have two C libraries. One depends on the other. (Actually, it's more of a one-of-many dependencies, but this way it easiest). How is best to arrange for this to happen then? Outside of perl/Alien wrappings, this is a purely manual process. Install first library (as

Re: Aliens depending on Aliens

2014-01-06 Thread Ryan Voots
You can probably have Module::Build and such play with the PKG_CONFIG_PATH env variable to fill out where it should be. On Jan 6, 2014 10:51 AM, Paul LeoNerd Evans leon...@leonerd.org.uk wrote: So, another Alien question. I have two C libraries. One depends on the other. (Actually, it's more

Re: Aliens depending on Aliens

2014-01-06 Thread Paul LeoNerd Evans
On Mon, 6 Jan 2014 11:12:49 -0800 Ryan Voots simcop2...@simcop2387.info wrote: You can probably have Module::Build and such play with the PKG_CONFIG_PATH env variable to fill out where it should be. Hah, if only it were so simple... The trouble with non-standard install locations is that in

Re: Aliens depending on Aliens

2014-01-06 Thread David Mertens
Paul - Why use pkg_config when you can simply use include_dirs and extra_linker_flags (or their equivalent in EU::MM)? This is how I do things with Alien::TinyCC. See the Synopsishttps://metacpan.org/pod/Alien::TinyCC. Or is this approach insufficient for unibilium? David On Mon, Jan 6, 2014

Re: Aliens depending on Aliens

2014-01-06 Thread Paul LeoNerd Evans
On Mon, 6 Jan 2014 16:49:54 -0500 David Mertens dcmertens.p...@gmail.com wrote: Why use pkg_config when you can simply use include_dirs and extra_linker_flags (or their equivalent in EU::MM)? This is how I do things with Alien::TinyCC. See the Synopsishttps://metacpan.org/pod/Alien::TinyCC.

Re: Aliens depending on Aliens

2014-01-06 Thread Chris Marshall
Hi Paul- I'm a bit confused by the discussion so far. Alien modules are to provide external dependencies wrapped up for perl modules to use and not, in general, as a way to resolve C library dependencies. Once installed, an Alien module should provide all the information needed to use the

Re: Aliens depending on Aliens

2014-01-06 Thread Paul LeoNerd Evans
On Mon, 6 Jan 2014 17:21:04 -0500 Chris Marshall devel.chm...@gmail.com wrote: Hi Paul- I'm a bit confused by the discussion so far. Alien modules are to provide external dependencies wrapped up for perl modules to use and not, in general, as a way to resolve C library dependencies. Once

Re: Aliens depending on Aliens

2014-01-06 Thread Chris Marshall
On Mon, Jan 6, 2014 at 5:32 PM, Paul LeoNerd Evans leon...@leonerd.org.uk wrote: On Mon, 6 Jan 2014 17:21:04 -0500 Chris Marshall devel.chm...@gmail.com wrote: Hi Paul- I'm a bit confused by the discussion so far. Alien modules are to provide external dependencies wrapped up for perl

Re: Aliens depending on Aliens

2014-01-06 Thread Paul LeoNerd Evans
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.

Re: Aliens depending on Aliens

2014-01-06 Thread Aristotle Pagaltzis
* Paul LeoNerd Evans leon...@leonerd.org.uk [2014-01-06 23:35]: Now consider Alien. Alien::unibilium installs unibilium into the only place it knows how - namely, somewhere in Perl's @INC dir. At this point, how does the C library libtermkey's Makefile, manage to find unibilium, to

Re: Aliens depending on Aliens

2014-01-06 Thread David Mertens
Yes, exactly what Aristotle says. You need to add Alien::unibilium to your configure_requires, and your Alien::unibilium module needs to have either a method or an import function that sets the PKG_CONFIG_PATHhttp://askubuntu.com/questions/210210/pkg-config-path-environment-variable. I had trouble

Re: Aliens depending on Aliens

2014-01-06 Thread Chris Marshall
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