From 72057ba61b30aa74903615a2d7d45f8d5d1afcb2 Mon Sep 17 00:00:00 2001 From: Marcus Poller Date: Mon, 16 Feb 2026 10:02:40 +0100 Subject: [PATCH] fedora pkgconf fix RedHat has a long indirect call of shell scripts to finally invoke /usr/bin/pkgconfig; Vanagons LD_LIBRARY_PATH breaks this chain. We will skip the call chain. See code comment for details. --- configs/components/ruby-augeas.rb | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/configs/components/ruby-augeas.rb b/configs/components/ruby-augeas.rb index 718e40e9..8e5b82b1 100644 --- a/configs/components/ruby-augeas.rb +++ b/configs/components/ruby-augeas.rb @@ -50,10 +50,21 @@ build_commands = [] extconf = "#{ruby} ext/augeas/extconf.rb" - # The pkg-config shim gets confused on Almalinux 9 and 10 that we are building on - # due to the version of rpm being cranky about using our older OpenSSL version, - # so bypass the shim and use pkgconf directly. - extconf += ' --with-pkg-config=/usr/bin/pkgconf' if platform.name =~ /(el|redhatfips)-(9|10)/ + # WORKAROUND + # RedHat has a long call chain for package-config + # + # Explanation: + # redhat derivatives use a pkg-conf-shim. Detailed call path: + # /usr/bin/pkg-config --exists augeas + # calls + # LD_LIBRARY_PATH=/opt/puppetlabs/puppet/lib rpm --eval '%{_target_cpu}-%{_vendor}-%{_target_os}%{?_gnu}' + # rpm: symbol lookup error: /lib64/librpm_sequoia.so.1: undefined symbol: EVP_idea_cfb64, version OPENSSL_3.0.0 + # and it breaks. The intention seems to be to get the current architecture and call + # /usr/bin/x86_64-linux-gnu-pkg-config + # which sets PKG_CONFIG_PATH variables and calls + # /usr/bin/pkgconf + # we will skip the RedHat call stack and call the pkgconf binary directly. + extconf += ' --with-pkg-config=/usr/bin/pkgconf' if platform.name =~ /((el|redhatfips)-(9|10))|fedora/ build_commands << extconf build_commands << "#{platform[:make]} -e -j$(shell expr $(shell #{platform[:num_cores]}) + 1)"