rpm: Disable perl dependency generation

When rpmdeps files a perl script, it attempts to determine what it provides
and what it requires.  Often the requires are incorrect, within the context
of Wind River Linux.  This results in an error that DNF is unable to install
a package due to one or more unresolved dependencies.

In RPM5 we had disabled this behavior, the alternative is to require that all
perl scripts be 'complete', in that they only require things they absolutely
need and that OE provides.  If we ever enforce that, this commit can be
reverted.  Until they fall back to prior behavior (which also matches ipkg
and deb style packages.)

(From OE-Core rev: bd8e5dc3ebabb3d88169e2f848219ca201fa5fdb)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mark Hatle 2017-08-29 23:21:19 +02:00 committed by Richard Purdie
parent 371f480aeb
commit 09471f0593
2 changed files with 33 additions and 0 deletions

View File

@ -0,0 +1,32 @@
perl: disable auto requires
When generating automatic requirements, it's possible for perl scripts to
declare 'optional' dependencies. These seem to often be incorrect and will
cause installation failures in OE. Instead of fixing the perl scripts, it
was decided it is better to simply disable the automatic dependency
generation. This matches the behavior from the previous RPM5 implementation.
Upstream-Status: Inappropriate [OE specific configuration]
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Index: git/fileattrs/perl.attr
===================================================================
--- git.orig/fileattrs/perl.attr
+++ git/fileattrs/perl.attr
@@ -1,3 +1,3 @@
-%__perl_requires %{_rpmconfigdir}/perl.req
+#__perl_requires %{_rpmconfigdir}/perl.req
%__perl_magic ^.*[Pp]erl .*$
%__perl_flags exeonly
Index: git/fileattrs/perllib.attr
===================================================================
--- git.orig/fileattrs/perllib.attr
+++ git/fileattrs/perllib.attr
@@ -1,5 +1,5 @@
%__perllib_provides %{_rpmconfigdir}/perl.prov
-%__perllib_requires %{_rpmconfigdir}/perl.req
+#__perllib_requires %{_rpmconfigdir}/perl.req
%__perllib_magic ^Perl[[:digit:]] module source.*
%__perllib_path \\.pm$
%__perllib_flags magic_and_path

View File

@ -38,6 +38,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm \
file://0011-Do-not-require-that-ELF-binaries-are-executable-to-b.patch \
file://0012-Use-conditional-to-access-_docdir-in-macros.in.patch \
file://0013-Add-a-new-option-alldeps-to-rpmdeps.patch \
file://0001-perl-disable-auto-reqs.patch \
"
PV = "4.13.90+git${SRCPV}"