Subject: | Variables expanded too far in Makefile |
Recent versions of MakeMaker expand variables too far... older versions
proceduced the following in Makefile:
PREFIX = /usr
SITEPREFIX = $(PREFIX)
VENDORPREFIX = $(PREFIX)
INSTALLDIRS = site
INSTALLPRIVLIB = $(PREFIX)/lib/perl5/5.6.1
INSTALLARCHLIB = $(PREFIX)/lib/perl5/5.6.1/i386-linux
INSTALLSITELIB = $(SITEPREFIX)/lib/perl5/site_perl/5.6.1
...
new versions (I tested 6.03 and 6.05) produce the
following:
INSTALLDIRS = site
PREFIX = /usr
SITEPREFIX = /usr
VENDORPREFIX = /usr
INSTALLPRIVLIB = /usr/lib/perl5/5.8.0
INSTALLSITELIB = /usr/lib/perl5/site_perl/5.8.0
This is a problem because it makes it impractical to override
the PREFIX at invocation time... i.e. specifically it makes it
impractical to build for one prefix but install into another
(for example, when making RPM packages). In general it would
seem that least amount of pre-expansion is always the better
way to go, no?