postgres.git / summary / log / commit / refs
commit ecf7c48462396b98c50d32cc77ec5a024fefc34c
Author: Noah Misch <noah@leadboat.com>
Date: Wed Aug 07 18:43:34 2024 +0000
Teach RPM the package name provided in Perl alias packages.
When commit 1185be355462d1dc7e2950a7e52eb7ca0cb6f3c8 introduced
installation of a file containing "use PostgreSQL::Test::Utils", the RPM
Package Manager said "nothing provides perl(PostgreSQL::Test::Utils)".
Discussed on pgsql-packagers. Back-patch to v12, v13, and v14 only;
newer versions don't have the alias packages.
Reviewed by Andrew Dunstan, Tom Lane, and John Harvey. Reported by John
Harvey.
src/test/perl/PostgreSQL/Test/Cluster.pm | 6 ++++++
src/test/perl/PostgreSQL/Test/Utils.pm | 6 ++++++
2 files changed, 12 insertions(+)
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 14e9138a394..c0c275a291b 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -10,4 +10,10 @@ use warnings;
BEGIN { *PostgreSQL::Test::Cluster:: = \*PostgresNode::; }
use PostgresNode ();
+# There's no runtime requirement for the following package declaration, but it
+# convinces the RPM Package Manager that this file provides the Perl package
+# in question. Perl v5.10.1 segfaults if a declaration of the to-be-aliased
+# package precedes the aliasing itself, hence the abnormal placement.
+package PostgreSQL::Test::Cluster;
+
1;
diff --git a/src/test/perl/PostgreSQL/Test/Utils.pm b/src/test/perl/PostgreSQL/Test/Utils.pm
index 2d15bbf21d7..3b77a6e95d2 100644
--- a/src/test/perl/PostgreSQL/Test/Utils.pm
+++ b/src/test/perl/PostgreSQL/Test/Utils.pm
@@ -8,4 +8,10 @@ use warnings;
BEGIN { *PostgreSQL::Test::Utils:: = \*TestLib::; }
use TestLib ();
+# There's no runtime requirement for the following package declaration, but it
+# convinces the RPM Package Manager that this file provides the Perl package
+# in question. Perl v5.10.1 segfaults if a declaration of the to-be-aliased
+# package precedes the aliasing itself, hence the abnormal placement.
+package PostgreSQL::Test::Utils;
+
1;
[parent: 7f875fb5bd60]