aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools
diff options
context:
space:
mode:
authorMark Hatle <mark.hatle@windriver.com>2017-08-15 16:41:57 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-08-16 17:44:22 +0100
commit586875cea5769fea7d17bae2677eab72e4fc7e31 (patch)
tree048cc0426d5f782afa26c444b182369925d27535 /meta/recipes-devtools
parentbf017930036f19b3d6df8e5b50d9979ee7045c5c (diff)
downloadopenembedded-core-contrib-586875cea5769fea7d17bae2677eab72e4fc7e31.tar.gz
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: 99376f602c997fec96dbb28ddbe3fa5f68fde2c3) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
-rw-r--r--meta/recipes-devtools/rpm/files/0001-perl-disable-auto-reqs.patch32
-rw-r--r--meta/recipes-devtools/rpm/rpm_git.bb1
2 files changed, 33 insertions, 0 deletions
diff --git a/meta/recipes-devtools/rpm/files/0001-perl-disable-auto-reqs.patch b/meta/recipes-devtools/rpm/files/0001-perl-disable-auto-reqs.patch
new file mode 100644
index 0000000000..a6c58699d3
--- /dev/null
+++ b/meta/recipes-devtools/rpm/files/0001-perl-disable-auto-reqs.patch
@@ -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
diff --git a/meta/recipes-devtools/rpm/rpm_git.bb b/meta/recipes-devtools/rpm/rpm_git.bb
index 2f814c44e7..ea894a3470 100644
--- a/meta/recipes-devtools/rpm/rpm_git.bb
+++ b/meta/recipes-devtools/rpm/rpm_git.bb
@@ -42,6 +42,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm \
file://0002-Run-binary-package-creation-via-thread-pools.patch \
file://0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch \
file://0004-build-pack.c-remove-static-local-variables-from-buil.patch \
+ file://0001-perl-disable-auto-reqs.patch \
"
UPSTREAM_VERSION_UNKNOWN = "1"