Provide MM::maybe_command independently
We do not insert perl-ExtUtils-MM-Utils into perl-core because this is not a core module. It's a Fedora extension. Run regen/lib_cleanup.pl to regenerate Makefile.SH and other scripts to pass porting/regen.t because of addedd ExtUtils/MakeMaker/MM/Utils.pm file.
This commit is contained in:
parent
1eda1fc7e8
commit
df7d75b0c2
@ -0,0 +1,110 @@
|
|||||||
|
From 9575301256f67116eccdbb99b38fc804ba3dcf53 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||||
|
Date: Mon, 18 Apr 2016 16:24:03 +0200
|
||||||
|
Subject: [PATCH] Provide ExtUtils::MM methods as standalone
|
||||||
|
ExtUtils::MM::Utils
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
If you cannot afford depending on ExtUtils::MakeMaker, you can
|
||||||
|
depend on ExtUtils::MM::Utils instead.
|
||||||
|
|
||||||
|
<https://bugzilla.redhat.com/show_bug.cgi?id=1129443>
|
||||||
|
|
||||||
|
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||||
|
---
|
||||||
|
MANIFEST | 1 +
|
||||||
|
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm | 68 ++++++++++++++++++++++++
|
||||||
|
2 files changed, 69 insertions(+)
|
||||||
|
create mode 100644 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm
|
||||||
|
|
||||||
|
diff --git a/MANIFEST b/MANIFEST
|
||||||
|
index 6af238c..d4f0c56 100644
|
||||||
|
--- a/MANIFEST
|
||||||
|
+++ b/MANIFEST
|
||||||
|
@@ -1045,6 +1045,7 @@ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm MakeMaker methods for OS/2
|
||||||
|
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm MakeMaker adaptor class
|
||||||
|
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm MakeMaker methods for QNX
|
||||||
|
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm MakeMaker methods for Unix
|
||||||
|
+cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm Independed MM methods
|
||||||
|
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm MakeMaker methods for U/WIN
|
||||||
|
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm MakeMaker methods for VMS
|
||||||
|
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm MakeMaker methods for VOS
|
||||||
|
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..6bbc0d8
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm
|
||||||
|
@@ -0,0 +1,68 @@
|
||||||
|
+package ExtUtils::MM::Utils;
|
||||||
|
+
|
||||||
|
+require 5.006;
|
||||||
|
+
|
||||||
|
+use strict;
|
||||||
|
+use vars qw($VERSION);
|
||||||
|
+$VERSION = '7.11_06';
|
||||||
|
+$VERSION = eval $VERSION; ## no critic [BuiltinFunctions::ProhibitStringyEval]
|
||||||
|
+
|
||||||
|
+=head1 NAME
|
||||||
|
+
|
||||||
|
+ExtUtils::MM::Utils - ExtUtils::MM methods without dependency on ExtUtils::MakeMaker
|
||||||
|
+
|
||||||
|
+=head1 SYNOPSIS
|
||||||
|
+
|
||||||
|
+ require ExtUtils::MM::Utils;
|
||||||
|
+ MM->maybe_command($file);
|
||||||
|
+
|
||||||
|
+=head1 DESCRIPTION
|
||||||
|
+
|
||||||
|
+This is a collection of L<ExtUtils::MM> subroutines that are used by many
|
||||||
|
+other modules but that do not need full-featured L<ExtUtils::MakeMaker>. The
|
||||||
|
+issue with L<ExtUtils::MakeMaker> is it pulls in Perl header files and that is
|
||||||
|
+an overkill for small subroutines.
|
||||||
|
+
|
||||||
|
+An example is the L<IPC::Cmd> that caused installing GCC just because of
|
||||||
|
+three-line I<maybe_command()> from L<ExtUtils::MM_Unix>.
|
||||||
|
+
|
||||||
|
+The intentions is to use L<ExtUtils::MM::Utils> instead of
|
||||||
|
+L<ExtUtils::MakeMaker> for these trivial methods. You can still call them via
|
||||||
|
+L<MM> class name.
|
||||||
|
+
|
||||||
|
+=head1 METHODS
|
||||||
|
+
|
||||||
|
+=over 4
|
||||||
|
+
|
||||||
|
+=item maybe_command
|
||||||
|
+
|
||||||
|
+Returns true, if the argument is likely to be a command.
|
||||||
|
+
|
||||||
|
+=cut
|
||||||
|
+
|
||||||
|
+if (!exists $INC{'ExtUtils/MM.pm'}) {
|
||||||
|
+ *MM::maybe_command = *ExtUtils::MM::maybe_command = \&maybe_command;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+sub maybe_command {
|
||||||
|
+ my($self,$file) = @_;
|
||||||
|
+ return $file if -x $file && ! -d $file;
|
||||||
|
+ return;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+1;
|
||||||
|
+
|
||||||
|
+=back
|
||||||
|
+
|
||||||
|
+=head1 BUGS
|
||||||
|
+
|
||||||
|
+These methods are copied from L<ExtUtils::MM_Unix>. Other operating systems
|
||||||
|
+are not supported yet. The reason is this
|
||||||
|
+L<a hack for Linux
|
||||||
|
+distributions|https://bugzilla.redhat.com/show_bug.cgi?id=1129443>.
|
||||||
|
+
|
||||||
|
+=head1 SEE ALSO
|
||||||
|
+
|
||||||
|
+L<ExtUtils::MakeMaker>, L<ExtUtils::MM>
|
||||||
|
+
|
||||||
|
+=cut
|
||||||
|
--
|
||||||
|
2.5.5
|
||||||
|
|
47
perl.spec
47
perl.spec
@ -62,6 +62,9 @@ Patch4: perl-5.10.0-libresolv.patch
|
|||||||
# patches ExtUtils-MakeMaker
|
# patches ExtUtils-MakeMaker
|
||||||
Patch5: perl-USE_MM_LD_RUN_PATH.patch
|
Patch5: perl-USE_MM_LD_RUN_PATH.patch
|
||||||
|
|
||||||
|
# Provide maybe_command independently, bug #1129443
|
||||||
|
Patch6: perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch
|
||||||
|
|
||||||
# The Fedora builders started randomly failing this futime test
|
# The Fedora builders started randomly failing this futime test
|
||||||
# only on x86_64, so we just don't run it. Works fine on normal
|
# only on x86_64, so we just don't run it. Works fine on normal
|
||||||
# systems.
|
# systems.
|
||||||
@ -1078,6 +1081,20 @@ reference to a scalar it is used as the filename to open for ouput. Any other
|
|||||||
reference is used as the filehandle to write to. Otherwise output defaults to
|
reference is used as the filehandle to write to. Otherwise output defaults to
|
||||||
STDOUT.
|
STDOUT.
|
||||||
|
|
||||||
|
%if %{dual_life} || %{rebuild_from_scratch}
|
||||||
|
%package -n perl-ExtUtils-MM-Utils
|
||||||
|
Summary: ExtUtils::MM methods without dependency on ExtUtils::MakeMaker
|
||||||
|
License: GPL+ or Artistic
|
||||||
|
Group: Development/Libraries
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: %perl_compat
|
||||||
|
|
||||||
|
%description -n perl-ExtUtils-MM-Utils
|
||||||
|
This is a collection of ExtUtils::MM subroutines that are used by many
|
||||||
|
other modules but that do not need full-featured ExtUtils::MakeMaker. The
|
||||||
|
issue with ExtUtils::MakeMaker is it pulls in Perl header files and that
|
||||||
|
is an overkill for small subroutines.
|
||||||
|
%endif
|
||||||
|
|
||||||
%if %{dual_life} || %{rebuild_from_scratch}
|
%if %{dual_life} || %{rebuild_from_scratch}
|
||||||
%package ExtUtils-ParseXS
|
%package ExtUtils-ParseXS
|
||||||
@ -2358,6 +2375,7 @@ Perl extension for Version Objects
|
|||||||
%endif
|
%endif
|
||||||
%patch4 -p1
|
%patch4 -p1
|
||||||
%patch5 -p1
|
%patch5 -p1
|
||||||
|
%patch6 -p1
|
||||||
%patch7 -p1
|
%patch7 -p1
|
||||||
%patch8 -p1
|
%patch8 -p1
|
||||||
%patch15 -p1
|
%patch15 -p1
|
||||||
@ -2379,7 +2397,7 @@ perl -x patchlevel.h \
|
|||||||
%endif \
|
%endif \
|
||||||
'Fedora Patch4: use libresolv instead of libbind' \
|
'Fedora Patch4: use libresolv instead of libbind' \
|
||||||
'Fedora Patch5: USE_MM_LD_RUN_PATH' \
|
'Fedora Patch5: USE_MM_LD_RUN_PATH' \
|
||||||
'Fedora Patch6: Skip hostname tests, due to builders not being network capable' \
|
'Fedora Patch6: Provide MM::maybe_command independently (bug #1129443)' \
|
||||||
'Fedora Patch7: Dont run one io test due to random builder failures' \
|
'Fedora Patch7: Dont run one io test due to random builder failures' \
|
||||||
'Fedora Patch15: Define SONAME for libperl.so' \
|
'Fedora Patch15: Define SONAME for libperl.so' \
|
||||||
'Fedora Patch16: Install libperl.so to -Dshrpdir value' \
|
'Fedora Patch16: Install libperl.so to -Dshrpdir value' \
|
||||||
@ -2646,6 +2664,7 @@ sed \
|
|||||||
# lib/perl5db.t will fail if Term::ReadLine::Gnu is available
|
# lib/perl5db.t will fail if Term::ReadLine::Gnu is available
|
||||||
%check
|
%check
|
||||||
%if %{with test}
|
%if %{with test}
|
||||||
|
%{new_perl} -I/lib regen/lib_cleanup.pl
|
||||||
pushd t
|
pushd t
|
||||||
%{new_perl} -I../lib porting/customized.t --regen
|
%{new_perl} -I../lib porting/customized.t --regen
|
||||||
popd
|
popd
|
||||||
@ -2961,7 +2980,8 @@ popd
|
|||||||
%exclude %{privlib}/ExtUtils/Liblist.pm
|
%exclude %{privlib}/ExtUtils/Liblist.pm
|
||||||
%exclude %{privlib}/ExtUtils/MakeMaker
|
%exclude %{privlib}/ExtUtils/MakeMaker
|
||||||
%exclude %{privlib}/ExtUtils/MakeMaker.pm
|
%exclude %{privlib}/ExtUtils/MakeMaker.pm
|
||||||
%exclude %{privlib}/ExtUtils/MM*.pm
|
%exclude %{privlib}/ExtUtils/MM.pm
|
||||||
|
%exclude %{privlib}/ExtUtils/MM_*.pm
|
||||||
%exclude %{privlib}/ExtUtils/MY.pm
|
%exclude %{privlib}/ExtUtils/MY.pm
|
||||||
%exclude %{privlib}/ExtUtils/Mkbootstrap.pm
|
%exclude %{privlib}/ExtUtils/Mkbootstrap.pm
|
||||||
%exclude %{privlib}/ExtUtils/Mksymlists.pm
|
%exclude %{privlib}/ExtUtils/Mksymlists.pm
|
||||||
@ -2969,7 +2989,8 @@ popd
|
|||||||
%exclude %{_mandir}/man1/instmodsh.1*
|
%exclude %{_mandir}/man1/instmodsh.1*
|
||||||
%exclude %{_mandir}/man3/ExtUtils::Command::MM*
|
%exclude %{_mandir}/man3/ExtUtils::Command::MM*
|
||||||
%exclude %{_mandir}/man3/ExtUtils::Liblist.3*
|
%exclude %{_mandir}/man3/ExtUtils::Liblist.3*
|
||||||
%exclude %{_mandir}/man3/ExtUtils::MM*
|
%exclude %{_mandir}/man3/ExtUtils::MM.3*
|
||||||
|
%exclude %{_mandir}/man3/ExtUtils::MM_*
|
||||||
%exclude %{_mandir}/man3/ExtUtils::MY.3*
|
%exclude %{_mandir}/man3/ExtUtils::MY.3*
|
||||||
%exclude %{_mandir}/man3/ExtUtils::MakeMaker*
|
%exclude %{_mandir}/man3/ExtUtils::MakeMaker*
|
||||||
%exclude %{_mandir}/man3/ExtUtils::Mkbootstrap.3*
|
%exclude %{_mandir}/man3/ExtUtils::Mkbootstrap.3*
|
||||||
@ -2980,6 +3001,11 @@ popd
|
|||||||
%exclude %{privlib}/ExtUtils/Miniperl.pm
|
%exclude %{privlib}/ExtUtils/Miniperl.pm
|
||||||
%exclude %{_mandir}/man3/ExtUtils::Miniperl.3*
|
%exclude %{_mandir}/man3/ExtUtils::Miniperl.3*
|
||||||
|
|
||||||
|
# ExtUtils-MM-Utils
|
||||||
|
%exclude %dir %{privlib}/ExtUtils/MM
|
||||||
|
%exclude %{privlib}/ExtUtils/MM/Utils.pm
|
||||||
|
%exclude %{_mandir}/man3/ExtUtils::MM::Utils.*
|
||||||
|
|
||||||
# ExtUtils-ParseXS
|
# ExtUtils-ParseXS
|
||||||
%exclude %dir %{privlib}/ExtUtils/ParseXS
|
%exclude %dir %{privlib}/ExtUtils/ParseXS
|
||||||
%exclude %{privlib}/ExtUtils/ParseXS.pm
|
%exclude %{privlib}/ExtUtils/ParseXS.pm
|
||||||
@ -3903,7 +3929,8 @@ popd
|
|||||||
%{privlib}/ExtUtils/Liblist.pm
|
%{privlib}/ExtUtils/Liblist.pm
|
||||||
%{privlib}/ExtUtils/MakeMaker
|
%{privlib}/ExtUtils/MakeMaker
|
||||||
%{privlib}/ExtUtils/MakeMaker.pm
|
%{privlib}/ExtUtils/MakeMaker.pm
|
||||||
%{privlib}/ExtUtils/MM*.pm
|
%{privlib}/ExtUtils/MM.pm
|
||||||
|
%{privlib}/ExtUtils/MM_*.pm
|
||||||
%{privlib}/ExtUtils/MY.pm
|
%{privlib}/ExtUtils/MY.pm
|
||||||
%{privlib}/ExtUtils/Mkbootstrap.pm
|
%{privlib}/ExtUtils/Mkbootstrap.pm
|
||||||
%{privlib}/ExtUtils/Mksymlists.pm
|
%{privlib}/ExtUtils/Mksymlists.pm
|
||||||
@ -3911,7 +3938,8 @@ popd
|
|||||||
%{_mandir}/man1/instmodsh.1*
|
%{_mandir}/man1/instmodsh.1*
|
||||||
%{_mandir}/man3/ExtUtils::Command::MM*
|
%{_mandir}/man3/ExtUtils::Command::MM*
|
||||||
%{_mandir}/man3/ExtUtils::Liblist.3*
|
%{_mandir}/man3/ExtUtils::Liblist.3*
|
||||||
%{_mandir}/man3/ExtUtils::MM*
|
%{_mandir}/man3/ExtUtils::MM.3*
|
||||||
|
%{_mandir}/man3/ExtUtils::MM_*
|
||||||
%{_mandir}/man3/ExtUtils::MY.3*
|
%{_mandir}/man3/ExtUtils::MY.3*
|
||||||
%{_mandir}/man3/ExtUtils::MakeMaker*
|
%{_mandir}/man3/ExtUtils::MakeMaker*
|
||||||
%{_mandir}/man3/ExtUtils::Mkbootstrap.3*
|
%{_mandir}/man3/ExtUtils::Mkbootstrap.3*
|
||||||
@ -3924,6 +3952,14 @@ popd
|
|||||||
%{privlib}/ExtUtils/Miniperl.pm
|
%{privlib}/ExtUtils/Miniperl.pm
|
||||||
%{_mandir}/man3/ExtUtils::Miniperl.3*
|
%{_mandir}/man3/ExtUtils::Miniperl.3*
|
||||||
|
|
||||||
|
%if %{dual_life} || %{rebuild_from_scratch}
|
||||||
|
%files ExtUtils-MM-Utils
|
||||||
|
%dir %{privlib}/ExtUtils
|
||||||
|
%dir %{privlib}/ExtUtils/MM
|
||||||
|
%{privlib}/ExtUtils/MM/Utils.pm
|
||||||
|
%{_mandir}/man3/ExtUtils::MM::Utils.*
|
||||||
|
%endif
|
||||||
|
|
||||||
%if %{dual_life} || %{rebuild_from_scratch}
|
%if %{dual_life} || %{rebuild_from_scratch}
|
||||||
%files ExtUtils-ParseXS
|
%files ExtUtils-ParseXS
|
||||||
%dir %{privlib}/ExtUtils
|
%dir %{privlib}/ExtUtils
|
||||||
@ -4645,6 +4681,7 @@ popd
|
|||||||
(bug #1129443)
|
(bug #1129443)
|
||||||
- Remove perl-ExtUtils-ParseXS dependency on perl-devel (bug #1129443)
|
- Remove perl-ExtUtils-ParseXS dependency on perl-devel (bug #1129443)
|
||||||
- Require perl-devel by perl-ExtUtils-MakeMaker
|
- Require perl-devel by perl-ExtUtils-MakeMaker
|
||||||
|
- Provide MM::maybe_command independently (bug #1129443)
|
||||||
|
|
||||||
* Tue Mar 15 2016 Petr Pisar <ppisar@redhat.com> - 4:5.22.1-359
|
* Tue Mar 15 2016 Petr Pisar <ppisar@redhat.com> - 4:5.22.1-359
|
||||||
- Do not filter FCGI dependency, CGI is non-core now
|
- Do not filter FCGI dependency, CGI is non-core now
|
||||||
|
Loading…
Reference in New Issue
Block a user