summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorMichael Stahl <Michael.Stahl@cib.de>2019-07-31 12:30:26 +0200
committerMichael Stahl <Michael.Stahl@cib.de>2019-07-31 16:51:58 +0200
commitb1d555ed42a035e0489accc19903c1ed8897bcee (patch)
tree7364e3d1e637ad83ccbf456b07ff4617e73ee117 /solenv
parent6b962889b2581ed67e20e4f3028757859361c28e (diff)
solenv installer: don't let RPM generate config(...) Requires
Fedora 30's rpm 4.14.2.1 will generate this Requires: config(lodevbasis6.1-core) = 6.1.7.0.0-1 ... but no corresponding Provides because that's disabled, so the package cannot be installed. The reason is that there is one %config file in the -core rpm: %attr(0644,root,root) %config(noreplace) "/opt/libreofficedev6.1/./share/psprint/psprint.conf" Old RPM from CentOS6 does not generate these config requires. Unfortunately there doesn't appear to be a way to disable this config(...) without disabling AutoReq, so do that, and invoke the shell script find-requires-x11.sh manually from epmfile.pm. Change-Id: I7fee0d9cd1b9e79f81bd4c611500e84736564881 Reviewed-on: https://gerrit.libreoffice.org/76736 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Diffstat (limited to 'solenv')
-rw-r--r--solenv/bin/modules/installer/epmfile.pm12
1 files changed, 6 insertions, 6 deletions
diff --git a/solenv/bin/modules/installer/epmfile.pm b/solenv/bin/modules/installer/epmfile.pm
index b85648d1e702..6da8ea0a4b00 100644
--- a/solenv/bin/modules/installer/epmfile.pm
+++ b/solenv/bin/modules/installer/epmfile.pm
@@ -1182,15 +1182,15 @@ sub set_autoprovreq_in_specfile
{
my ($changefile, $findrequires, $bindir) = @_;
- my $autoreqprovline;
+ my $autoreqprovline = "AutoReqProv\: no\n";
if ( $findrequires )
{
- $autoreqprovline = "AutoProv\: no\n%define _use_internal_dependency_generator 0\n%define __find_requires $bindir/$findrequires\n";
- }
- else
- {
- $autoreqprovline = "AutoReqProv\: no\n";
+ # don't let rpm invoke it, we never want to use AutoReq because
+ # rpm will generate Requires: config(packagename)
+ open (FINDREQUIRES, "echo | $bindir/$findrequires |");
+ while (<FINDREQUIRES>) { $autoreqprovline .= "Requires: $_\n"; }
+ close (FINDREQUIRES);
}
$autoreqprovline .= "%define _binary_filedigest_algorithm 1\n%define _binary_payload w9.gzdio\n";