Perl5-Alien / Alien-Base

Base classes for Alien:: modules (deprecated, see Alien-Build)
Other
35 stars 19 forks source link

Don't Panic when install gets relocated #111

Closed plicease closed 9 years ago

plicease commented 9 years ago

This updates the -L and -I flags to the correct paths when the share dir gets relocated, something that is supported by recent Perls. My first attempt at this (see branch "movable" if interested) was to provide a %s placeholder in the ConfigData and expand it in Alien::Base, but this seemed unnecessarily complicated (Also the implementation is incomplete).

It should also handle a weird corner case when Perl is configured to install modules to a different directory form where modules get used. This is the default for AFS. It is also the case at $work where the SAs have a mildly idiotic install procedure for perl modules.

This kind of thing is tricky to test from Test::More, so I opted to add a test in the .travis.yml by installing with cpanm and the -l flag.

I noticed while I was in there that we hadn't been testing Acme::Ford::Prefect from this .travis.yml (it does get tested in the Alien-Base-Extras's .travis.yml). I can't say for sure, but I think the travis semantics have changed in a subtle way, because I am pretty sure I checked the output when I came up with the older version of the .travis.yml, and I did it the way I did it on purpose. Anyhow, I have fixed that while I was at it.

jberger commented 9 years ago

Be sure that this gets a thorough workout on mac (are there others that use mach binaries?). These were the source of almost all the path pain.

mohawk2 commented 9 years ago

When Joel and Graham are happy it's been worked through on Mac: aye.

plicease commented 9 years ago

I developed these changes on my airbook, with both the acme modules and Alien::FFI.

jberger commented 9 years ago

In that case Aye.

plicease commented 9 years ago

@mohawk2 @jberger if you guys have a sec can you take a look at #110 ? I'd like to include that with this in a dev release.