Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 22 Jun 2013 11:32:55 +0200
From:      Miroslav Lachman <000.fbsd@quip.cz>
To:        lev@FreeBSD.org
Cc:        perl@FreeBSD.org, Boris Samorodov <bsam@passap.ru>, apache@FreeBSD.org, freebsd-ports@freebsd.org
Subject:   Re: "portmaster -r perl" rebuild almost everything, including apache24, php53 etc.
Message-ID:  <51C56F47.4000001@quip.cz>
In-Reply-To: <607933663.20130622131234@serebryakov.spb.ru>
References:  <1306476328.20130621232328@serebryakov.spb.ru> <51C5611D.2000807@passap.ru> <607933663.20130622131234@serebryakov.spb.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
Lev Serebryakov wrote:
> Hello, Boris.
> You wrote 22 июня 2013 г., 12:32:29:
>
>>>    Is it ok?
> BS>  Technically "portmaster -r perl" rebuild all that depends on perl.
> BS>  So you get what you asked for.
>
> BS>  Should almost whole ports be rebuilded at a minor perl upgrade is
> BS>  another question. And I think that the most resent change in perl
>    I'm surprised, that so many ports, which doesn't contain any perl
>   code after build (like apache24 and php) depends on perl in runtime.
>   Why? I understand, why all p5-* or nod_perl should be rebuild, but
>   why php53 should!? For example, php53 doesn't contains perl
>   dependency directly. Ok, it depend on apache24 in my configuration,
>   let see at apache24. It has USE_PERL5=yes. Let check, does it need it
>   at runtime.
>
> % cd /usr/ports/www/apache24
> % grep \\.pm pkg-plist
> % pkg info -lg apache\* | grep -E '/usr/local/(bin|sbin|lib|libexec)' | xargs ldd | grep perl
> ldd: /usr/local/libexec/apache22/httpd.exp: not a dynamic executable
> ldd: /usr/local/sbin/apachectl: not a dynamic executable
> ldd: /usr/local/sbin/apxs: not a dynamic executable
> ldd: /usr/local/sbin/dbmmanage: not a dynamic executable
> ldd: /usr/local/sbin/envvars: not a dynamic executable
> ldd: /usr/local/sbin/split-logfile: not a dynamic executable
> % grep perl /usr/local/sbin/apachectl /usr/local/sbin/apxs /usr/local/sbin/dbmmanage /usr/local/sbin/envvars /usr/local/sbin/split-logfile
> /usr/local/sbin/apxs:#!/usr/bin/perl -w
> /usr/local/sbin/apxs:                                                     # perl variable.
> /usr/local/sbin/dbmmanage:#!/usr/bin/perl
> /usr/local/sbin/dbmmanage:# http://www.perl.com/CPAN/modules/by-module/HTTPD/HTTPD-Tools-x.xx.tar.gz
> /usr/local/sbin/split-logfile:#!/usr/bin/perl
> %
>
>   Ok, apache24 need perl for its scripts and only for scripts, not for
> perl modules! Should we rebuild it on perl upgrade? I don't think so.
> Should we rebuild php53, which doesn't depends on these scripts, on
> perl upgrade? I'm sure, we shouldn't. Should we rebuild phpMyAdmin or
> Roundcube, pure-php software on perl upgrade!? IT IS MADNESS!

It is an issue for a long time and can be partially fixed by 
EXPLICIT_PACKAGE_DEPENDS=true in make.conf
Then you will have recorded direct depencencies only.

Miroslav Lachman



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?51C56F47.4000001>