On 27/11/2018 20:53, Ken Moffat via blfs-dev wrote:
On Tue, Nov 27, 2018 at 10:54:44AM -0600, Bruce Dubbs via blfs-dev wrote:
On 11/27/2018 10:07 AM, Pierre Labastie via blfs-dev wrote:
Well,
Up to now, I believed that we were trying to avoid bundled libraries in
book packages. This is a small example: Perl Error is a small standalone
library, that is bundled with git. Why should we use the bundled one? If
the Error module is in /usr/lib/perl, git will use that one. Usually,
The CPAN version of the module is slightly ahead of git bundled one
(presently, CPAN version is 0.17027, while git-2.19.1 provides 0.17025).
Actually, git also uses the MailTools perl module (for Mail::Address).
Maybe we should provide this one too. At least, the version in git is up
to date.
There are pros and cons to a dedicated version. First, the dedicated
version is known to work with git. Second, the installation is completely
automated. Dedicated versions are only really appropriate if no other
application is using the module.
The only con I can think of right now is that an upstream perl fix of a bug
that affects git's use of the module will not be in place until upstream git
installs it. Not all upstream releases are bug fixes. Some are enhancements
that may not be needed by git.
-- Bruce
Either we continue as now, except that we archive Error.pm, or, I
think, we will need to separately install Git.pm as well as Error
and Mail::Address.
Git.pm is not in CPAN, is it? The other modules are both in CPAN (and
are shipped in a directory "FromCPAN" in git tarball).
If we do the latter, presumably we somehow have to set
NO_PERL_CPAN_FALLBACKS.perl/Git/LoadCPAN
Doing that should ensure that anyone whose git usage requires these
modules will get an error if they have not installed them:
BUG: [snip]
If BLFS does that (and I have not tested how that NO_PERL...
should be set), the three modules would then become recommended,
because there is a simple way to use the shipped versions.
To set the variable, just call make with "make
NO_PERL_CPAN_FALLBACKS=whatever". But I'm not sure we want to do that,
even if we have Error and Mail::Address Perl modules in the book. If
those modules are installed in standard Perl location, they will be used
instead of the bundled ones (which are installed anyway in another
location). If they are not found in the standard location, git uses the
bundled ones (unless NO_PERL_CPAN_FALLBACKS has been set to anything
other than "", which triggers the error reported by Ken). The mechanism
can be seen inĀ perl/Git/LoadCPAN.pm (in git source tree).
Pierre
--
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page