Talking with the Redhat folks about the PREFIX problem.
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=78053

They suggested:

  How about adding DESTDIR support to MakeMaker instead?  (Reference:
  http://www.gnu.org/manual/make-3.79.1/html_chapter/make_14.html#SEC119 see 
  the bottom of that section).  DESTDIR is normally not set by anything in 
  the Makefile.  It is left to be set by the user on the command line.  Since 
  it prepends all paths in the Makefile, if it's not set, all paths work as 
  normal.  If it is set, the makefile installs everything into a root defined
  by the DESTDIR variable.  Since this variable isn't used for anything 
  else, this would accomplish the what rpm needs for installing into a 
  buildroot directory.

This seems to make sense.  Essentially, we'd have something like.

     DESTDIR =
     SITEPREFIX = /usr/local
     INSTALLSITEDIR = $(DESTDIR)$(SITEPREFIX)/lib/perl

That plus fixing it so that $(*PREFIX) are left in the INSTALL* variables,
rather than being fully expanded as they are now, and also making it so that
when PREFIX is set at Makefile.PL time all other *PREFIXes are overridden:

     PREFIX = foo
     PERLPREFIX = $(PREFIX)
     SITEPREFIX = $(PREFIX)
     VENDORPREFIX = $(PREFIX)

This means package developers can use the DESTDIR fake root:

     perl Makefile.PL
     make install DESTDIR=/tmp/rpm-build

or they can do it the old way using PREFIX.  The only thing this leaves not
working is:

     perl Makefile.PL
     make install PREFIX=foo


-- 

Michael G. Schwern   <[EMAIL PROTECTED]>    http://www.pobox.com/~schwern/
Perl Quality Assurance      <[EMAIL PROTECTED]>         Kwalitee Is Job One
I'm a man, but I can change... if I have to.
    -- Red Green

Reply via email to