Bug 195454 - lang/perl* have some problems
Summary: lang/perl* have some problems
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Many People
Assignee: freebsd-perl (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-11-27 18:20 UTC by Pavel Timofeev
Modified: 2014-11-29 14:43 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pavel Timofeev 2014-11-27 18:20:18 UTC
After latest upgrade and fixes I get this (while reinstalling perl5.18)

The operation will free 50 MB.
[1/1] Deleting perl5-5.18.4_7: 100%

===>  Installing for perl5-5.18.4_7
===>  Checking if perl5 already installed
===>   Registering installation for perl5-5.18.4_7 as automatic
makewhatis: /usr/local/lib/perl5/5.18/man: No such file or directory
pkg-static: POST-INSTALL script failed
===> SECURITY REPORT:
      This port has installed the following files which may act as network
      servers and may therefore pose a remote security risk to the system.
/usr/local/lib/perl5/5.18/mach/CORE/libperl.so.5.18


makewhatis and pkg-static messagess are suspicious.




More then, I can't install any of the perl modules

===>   Registering installation for p5-XML-Parser-2.41_2
pkg-static: lstat(/usr/ports/textproc/p5-XML-Parser/work/stage/usr/local/./usr/local/lib/perl5/site_perl/mach/5.18/auto/XML/Parser/.packlist): No such file or directory
*** Error code 74

Stop.
make: stopped in /usr/ports/textproc/p5-XML-Parser

===>>> A backup package for p5-XML-Parser-2.41_2 should



It's really bad =(
Comment 1 Pavel Timofeev 2014-11-27 18:42:36 UTC
Wow, I've noticed strange notes in pkg-plist in some modules.
It's bare filepath with . at the start.



/usr/ports/archivers/p5-Archive-Zip/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/Archive/Zip/.packlist
/usr/ports/devel/p5-Locale-gettext/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/Locale/gettext/.packlist
/usr/ports/devel/p5-Locale-gettext/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/Locale/gettext/.packlist
/usr/ports/devel/p5-Filter/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/Filter/Util/Call/.packlist
/usr/ports/net-mgmt/net-snmp/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/Bundle/NetSNMP/.packlist
/usr/ports/textproc/p5-XML-SAX-Base/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/XML/SAX/Base/.packlist
/usr/ports/textproc/p5-XML-SAX-Expat/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/XML/SAX/Expat/.packlist
/usr/ports/textproc/p5-XML-NamespaceSupport/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/XML/NamespaceSupport/.packlist
/usr/ports/textproc/p5-XML-SAX/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/XML/SAX/.packlist
/usr/ports/textproc/p5-XML-Simple/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/XML/Simple/.packlist
/usr/ports/textproc/p5-XML-Parser/pkg-plist:./usr/local/lib/perl5/site_perl/mach/5.18/auto/XML/Parser/.packlist
Comment 2 Pavel Timofeev 2014-11-27 18:55:44 UTC
Hmm, second problem with modules goes away after deleting ports tree and extracting it again.

But the first (makewhatis and pkg-static messagess) is still actual.
Comment 3 Pavel Timofeev 2014-11-27 19:28:50 UTC
And looks like USE_PERL option doesn't work.
Comment 4 Mark Linimon freebsd_committer freebsd_triage 2014-11-27 20:42:42 UTC
Over to maintainers.  This may already have been addressed.
Comment 5 Henk van Oers 2014-11-28 06:40:04 UTC
(In reply to timp87 from comment #2)
> Hmm, second problem with modules goes away after deleting ports tree and
> extracting it again.

Thanks for the tip.
I'l do that now.

portmaster p5-
[snip]

===>  Installing for p5-Params-Util-1.07_1
===>  Checking if p5-Params-Util already installed
===>   Registering installation for p5-Params-Util-1.07_1 as automatic
pkg-static: lstat(/usr/ports/devel/p5-Params-Util/work/stage/usr/local/./usr/local/lib/perl5/site_perl/mach/5.16/auto/Params/Util/.packlist): No such file or directory
*** [fake-pkg] Error code 74

Stop in /usr/ports/devel/p5-Params-Util.

===>>> Installation of p5-Params-Util-1.07_1 (devel/p5-Params-Util) failed
===>>> Aborting update
Comment 6 Pavel Timofeev 2014-11-28 07:56:03 UTC
(In reply to Henk van Oers from comment #5)
> (In reply to timp87 from comment #2)
> > Hmm, second problem with modules goes away after deleting ports tree and
> > extracting it again.
> 
> Thanks for the tip.
> I'l do that now.
> 
> portmaster p5-
> [snip]
> 
> ===>  Installing for p5-Params-Util-1.07_1
> ===>  Checking if p5-Params-Util already installed
> ===>   Registering installation for p5-Params-Util-1.07_1 as automatic
> pkg-static:
> lstat(/usr/ports/devel/p5-Params-Util/work/stage/usr/local/./usr/local/lib/
> perl5/site_perl/mach/5.16/auto/Params/Util/.packlist): No such file or
> directory
> *** [fake-pkg] Error code 74
> 
> Stop in /usr/ports/devel/p5-Params-Util.
> 
> ===>>> Installation of p5-Params-Util-1.07_1 (devel/p5-Params-Util) failed
> ===>>> Aborting update

You're welcome! Looks like these lines with bare filepath were added to pkg-plists of already installed modules before, on some step of updating.

That's a mess. This update of perl is really terrible =(


I still have problems with USE_PERL option of lang/perl5.18 (Do you?).
And these
makewhatis: /usr/local/lib/perl5/5.18/man: No such file or directory
pkg-static: POST-INSTALL script failed
Comment 7 Pavel Timofeev 2014-11-28 08:05:25 UTC
perl5.20 complains about makewhatis and pkg-static too.
And perl5.20 even doesn't have an option to make a link to /usr/bin (USE_PERL)!


The operation will free 50 MB.
[1/1] Deleting perl5-5.18.4_7: 100%

===>  Installing for perl5.20-5.20.1_6
===>  Checking if perl5.20 already installed
===>   Registering installation for perl5.20-5.20.1_6
makewhatis: /usr/local/lib/perl5/5.20/man: No such file or directory
pkg-static: POST-INSTALL script failed
===> SECURITY REPORT:
      This port has installed the following files which may act as network
      servers and may therefore pose a remote security risk to the system.
Comment 8 Pavel Timofeev 2014-11-28 08:39:38 UTC
These all issues

makewhatis: /usr/local/lib/perl5/5.18/man: No such file or directory
pkg-static: POST-INSTALL script failed
and non-working USE_PERL

are because the Makefile uses "perl5_version", "use.perl", "perl-man.conf" filenames, but there are no such files in "files" dir.
There are only similar files, but with ".in" at the end of name.

So, here is a root. Same situation in all lang/perl5.x ports.
Comment 9 Mathieu Arnold freebsd_committer freebsd_triage 2014-11-28 12:48:08 UTC
Ok, so, that has been fixed in r373565.
Comment 10 Pavel Timofeev 2014-11-28 12:56:56 UTC
(In reply to Mathieu Arnold from comment #9)
> Ok, so, that has been fixed in r373565.

And it will fix USE_PERL option (even a visibility in perl5.20?)
Comment 11 Pavel Timofeev 2014-11-28 12:59:25 UTC
(In reply to timp87 from comment #10)
> (In reply to Mathieu Arnold from comment #9)
> > Ok, so, that has been fixed in r373565.
> 
> And it will fix USE_PERL option (even a visibility in perl5.20?)

I mean what about

pkg-static: POST-INSTALL script failed


?
Comment 12 Mathieu Arnold freebsd_committer freebsd_triage 2014-11-28 13:01:00 UTC
(In reply to timp87 from comment #10)
> (In reply to Mathieu Arnold from comment #9)
> > Ok, so, that has been fixed in r373565.
> 
> And it will fix USE_PERL option (even a visibility in perl5.20?)

I can't see any problem with the USE_PERL option, I have not touched that.  What problem are you encountering exactly ?
Comment 13 Mathieu Arnold freebsd_committer freebsd_triage 2014-11-28 13:01:25 UTC
(In reply to timp87 from comment #11)
> (In reply to timp87 from comment #10)
> > (In reply to Mathieu Arnold from comment #9)
> > > Ok, so, that has been fixed in r373565.
> > 
> > And it will fix USE_PERL option (even a visibility in perl5.20?)
> 
> I mean what about
> 
> pkg-static: POST-INSTALL script failed
> 
> 
> ?

That was because of makewhatis failing, it is fixed.
Comment 14 Pavel Timofeev 2014-11-28 13:43:26 UTC
(In reply to Mathieu Arnold from comment #13)
> (In reply to timp87 from comment #11)
> > (In reply to timp87 from comment #10)
> > > (In reply to Mathieu Arnold from comment #9)
> > > > Ok, so, that has been fixed in r373565.
> > > 
> > > And it will fix USE_PERL  (even a visibility in perl5.20?)
> > 
> > I mean what about
> > 
> > pkg-static: POST-INSTALL script failed
> > 
> > 
> > ?
> 
> That was because of makewhatis failing, it is fixed.

Oh, yeah, you're right.
Got latest ports tree and yes, POST-INSTALL script is fixed.


But I don't see the USE_PERL option for lang/perl5.20 at all.


root@timbsd:/usr/ports/lang/perl5.20 # make showconfig
===> The following configuration options are available for perl5.20-5.20.1_7:
     DEBUG=off: Build with debugging support
     GDBM=off: GDBM_File extension
     MULTIPLICITY=off: Use multiplicity
     PERL_64BITINT=on: Use 64 bit integers (on i386)
     PTHREAD=on: Build with -pthread
     SITECUSTOMIZE=off: Run-time customization of @INC
====> Exclusive OPTIONS: you can only select none or one of them
     THREADS=on: Build threaded perl
     PERL_MALLOC=off: Use Perl malloc
===> Use 'make config' to modify these settings


while lang/perl5.1[468] have it in one form or anotherю
Comment 15 Mathieu Arnold freebsd_committer freebsd_triage 2014-11-28 15:08:38 UTC
(In reply to timp87 from comment #14)
> But I don't see the USE_PERL option for lang/perl5.20 at all.

That's right, it was removed.  The only thing it was doing in the end is making an obsolete symlink in /usr/bin.  Perl has been removed from base ten years ago, it was way past time to remove this compatibility bit.
Comment 16 Pavel Timofeev 2014-11-28 15:16:17 UTC
(In reply to Mathieu Arnold from comment #15)
> (In reply to timp87 from comment #14)
> > But I don't see the USE_PERL option for lang/perl5.20 at all.
> 
> That's right, it was removed.  The only thing it was doing in the end is
> making an obsolete symlink in /usr/bin.  Perl has been removed from base ten
> years ago, it was way past time to remove this compatibility bit.

Understood. IMO it should be mentioned in UPDATING.
Comment 17 Chris Hutchinson 2014-11-28 22:53:35 UTC
(In reply to Mathieu Arnold from comment #15)
> (In reply to timp87 from comment #14)
> > But I don't see the USE_PERL option for lang/perl5.20 at all.
> 
> That's right, it was removed.  The only thing it was doing in the end is
> making an obsolete symlink in /usr/bin.  Perl has been removed from base ten
> years ago, it was way past time to remove this compatibility bit.

I remember discussion on this topic on the list. But what I
*don't* recall was, was what the final consensus was for an
*official* shebang. Was one ever decided on?

Thanks

--Chris
Comment 18 Mathieu Arnold freebsd_committer freebsd_triage 2014-11-29 14:43:57 UTC
(In reply to C Hutchinson from comment #17)
> I remember discussion on this topic on the list. But what I
> *don't* recall was, was what the final consensus was for an
> *official* shebang. Was one ever decided on?

Well, the right way is /usr/local/bin/perl, it is enforced in the ports tree by USES=shebangfix.  If you have /usr/local/bin in your PATH, and you need to be compatible with other OS, you can also use /usr/bin/env perl.