shlib/install: accomodate Perl 5.26.0 @INC changes
commit30f00e25bc50e779e7974d5d8a590a42dc62a9c8
authorKyle J. McKay <mackyle@gmail.com>
Sat, 30 Mar 2019 22:06:07 +0000 (30 15:06 -0700)
committerKyle J. McKay <mackyle@gmail.com>
Sat, 30 Mar 2019 22:06:07 +0000 (30 15:06 -0700)
tree85c629e337bc51c4e98f8da53a732f7901f13518
parent5ac9c1b783ac78480f42924d224ea436f384707e
shlib/install: accomodate Perl 5.26.0 @INC changes

As of Perl 5.26.0 (released 2017-05-30), Perl no longer includes "." in
@INC by default.

This was done by Perl for security purposes and has always been the default
under taint (perl -T/-t) mode.

The initial failure without "." in @INC occurs during install.

The reason install presents a special challenge is that the config file
needs to be accessed before it's been installed into its final location so
even though it's possible to extract the configured value for the final
location, at initial install time that's not the correct value to use.

Relying on "." being in @INC had solved the issue, but in keeping with it
being a "security" change to Perl, just blindly always adding back "." to
@INC always seems like the wrong thing to do.  Another approach is
used instead where during intial install the actual path of the current
directory is added instead of ".".

A few Perl "-I." arguments used during install have also been replaced.

This change addresses that problem, but more changes might be necessary to
completely accomodate the @INC change as although the code has always made
an attempt to not depend on that, other places may also have been overlooked.

Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
install.sh
make-apache-conf.sh
shlib.sh