[MacPorts] #44418: p5-sgmlspm: fix installation

MacPorts noreply at macports.org
Mon Jul 28 22:44:59 PDT 2014


#44418: p5-sgmlspm: fix installation
-------------------------+-----------------------------
  Reporter:  mojca@…     |      Owner:  tlockhart1976@…
      Type:  defect      |     Status:  new
  Priority:  Normal      |  Milestone:
 Component:  ports       |    Version:
Resolution:              |   Keywords:
      Port:  p5-sgmlspm  |
-------------------------+-----------------------------

Comment (by mojca@…):

 If you had a properly installed `p5.1x-sgmlspm` port once and if you just
 deactivated it, the next `sudo port install p5.1x-sgmlspm` command will
 just put those files back without "recompiling" everything. So make sure
 that you have `perl5.1x` deactivated and that `port installed '*sgmlspm'`
 doesn't give you any results, not even deactivated ones (you need the
 quotes, else shell replaced the `*` with contents of current directory).

 Now let's forget about the file in `/opt/local/bin` for a moment. The
 module should install files under
 {{{
   /opt/local/lib/perl5/vendor_perl/5.16.3/SGMLS.pm
   /opt/local/lib/perl5/vendor_perl/5.16.3/SGMLS/Output.pm
   /opt/local/lib/perl5/vendor_perl/5.16.3/SGMLS/Refs.pm
   /opt/local/lib/perl5/vendor_perl/5.16.3/skel.pl
 }}}
 for example. It '''should not''' install files under
 {{{
   /opt/local/lib/perl5/SGMLS.pm
   /opt/local/lib/perl5/SGMLS/Output.pm
   /opt/local/lib/perl5/SGMLS/Refs.pm
   /opt/local/lib/perl5/skel.pl
 }}}

 If you take a look at some random Perl modules, for example
 `p5.16-version`, you'll notice that the `Portfile` usually doesn't need
 any special code to install "properly" (please note that `p5.16-version`
 is probably a bad example as it also installs some binary code). I don't
 know why this particular port needs special handling (all those `build
 .args-append` and patching the Makefiles). Ideally the Makefiles would be
 written in such a way that the port wouldn't need any special code at all.

 Ryan says that
 {{{
 xinstall -d -m 775 ${destroot}${perl5.lib}
 }}}
 is problematic for example because `perl5.lib` isn't defined if that
 particular version of perl is missing.

-- 
Ticket URL: <https://trac.macports.org/ticket/44418#comment:16>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list