Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: Module packlists vs. vendors

by Anonymous Monk
on Sep 07, 2012 at 18:55 UTC ( #992360=note: print w/ replies, xml ) Need Help??


in reply to Module packlists vs. vendors

Um, what?

Marc Lehman states the problem pretty well, if you want to call it perl instead of debperl, you should not break it by removing .packlist files , so this is a debian bug, and they should fix it


Comment on Re: Module packlists vs. vendors
Re^2: Module packlists vs. vendors
by mbethke (Hermit) on Sep 07, 2012 at 21:07 UTC
    Marc Lehman states the problem pretty well, if you want to call it perl instead of debperl, you should not break it by removing .packlist files , so this is a debian bug, and they should fix it

    If it was just about not removing the files, that'd be easy, I solved that part in 15 minutes on Gentoo. Alas, the files are not even installed by a standard Makefile as produced by ExtUtils:MM when using the vendor_install target, so it doesn't seem only Debian's problem but intended behavior---with ExtUtils::MM being a core module I presume even some sort of official Perl policy. I'd be interested in why this is so and if I can/should circumvent it.

    Edit: so far every single vendor I've looked at (OK, just Linuxen: Gentoo, Debian, Ubuntu and CentOS) doesn't package the packlists. If someone could point me to one who does so I can look at their policy and build system, that would be enormously helpful already.

      If it was just about not removing the files, that'd be easy, I solved that part in 15 minutes on Gentoo. Alas, the files are not even installed by a standard Makefile as produced by ExtUtils:MM when using the vendor_install target, so it doesn't seem only Debian's problem but intended behavior---with ExtUtils::MM being a core module I presume even some sort of official Perl policy. I'd be interested in why this is so and if I can/should circumvent it.

      That is really hard to read/disgest.

      I think you're wrong, I used make install_vendor and I got ../lib/perl5/MSWin32-x86-multi-thread/auto/Foo/.packlist

      Ball is in your court.

        Thanks, that's a neat way to test a minimal setup! I always just traced the build process for some popular CPAN modules. Something weird is going on, I do the exact same thing and get no packlists, both on Gentoo and on Ubuntu:

        Whereas install_site does the right thing:

        $ make install_site Appending installation info to ../lib/perl5/x86_64-linux-thread-multi/ +perllocal.pod $ find .. -name .packlist ../lib/perl5/x86_64-linux-thread-multi/auto/Foo/.packlist

        Which seems logical when I compare the respective sections in the Makefile:

        pure_site_install :: all $(NOECHO) $(MOD_INSTALL) \ read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist + \ $(INST_LIB) $(DESTINSTALLSITELIB) \ $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ $(INST_BIN) $(DESTINSTALLSITEBIN) \ $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ $(PERL_ARCHLIB)/auto/$(FULLEXT) pure_vendor_install :: all $(NOECHO) $(MOD_INSTALL) \ $(INST_LIB) $(DESTINSTALLVENDORLIB) \ $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ $(INST_BIN) $(DESTINSTALLVENDORBIN) \ $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR)

        How do these parts look in your Makefile? Mine seem to come almost verbatim (modulo some path concatenation rituals) from MM_Unix.pm and as far as I can see, MM_Win32 just inherits these.

      Edit: so far every single vendor I've looked at (OK, just Linuxen: Gentoo, Debian, Ubuntu and CentOS) doesn't package the packlists. If someone could point me to one who does so I can look at their policy and build system, that would be enormously helpful already.

      :) ActiveState has long included packlists .... I doubt they have an official documented policy

      search engines and websites (centos.org .... ) are useless for getting this kind of information

      The only policy I've ever seen is http://www.debian.org/doc/packaging-manuals/perl-policy/ch-module_packages.html

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://992360]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (8)
As of 2014-09-24 06:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (246 votes), past polls