Skip Menu |
 

This queue is for tickets about the XML-LibXSLT CPAN distribution.

Report information
The Basics
Id: 83028
Status: open
Priority: 0/
Queue: XML-LibXSLT

People
Owner: Nobody in particular
Requestors: JANPAZ [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 1.80
Fixed in: (no value)

Attachments
XML-LibXSLT-1.92-Do-not-link-against-perl-extension-libraries.patch
XML-LibXSLT-1.95-Do-not-link-to-Config-libs.patch



Subject: Shouldn't Makefile.PL use $Config{perllibs} instead of $Config{libs}?
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 1068
Hello, XML::LibXSLT's Makefile.PL does $config{LIBS}.=' '.$Config{libs}; Thus it appends to the gcc command all libraries needed by perl _and_ by extensions. Wouldn't it be more correct to use $Config{perllibs}? The man Config says "perllibs" From End.U: The list of libraries needed by Perl only (any libraries needed by extensions only will by dropped, if using dynamic loading). We've hit the issue when trying to install XML::LibXSLT on OpenShift: https://bugzilla.redhat.com/show_bug.cgi?id=905369 Basically, the $Config{libs} contains -lgdbm on RHEL 6 but that is not installed by default (nor by perl-devel). I've then opened bugzilla against RHEL 6 https://bugzilla.redhat.com/show_bug.cgi?id=905482 to address that but in offline communication, usage of perllibs was suggested. I understand that this is to certain extend a packaging issue within RHEL but on the other hand, if XML::LibXSLT does not need the libraries needed by the extensions only to build, it might get away with perllibs, instead of libs.
MIME-Version: 1.0
X-Mailer: MIME-tools 5.504 (Entity 5.504)
X-RT-Interface: API
Content-Type: multipart/mixed; boundary="----------=_1420732706-2631-2"
Message-ID: <rt-4.0.18-2631-1420732706-1036.0-0-0 [...] rt.cpan.org>
Message-ID: <rt-4.0.18-2631-1420732706-40.83028-0-0 [...] rt.cpan.org>
X-RT-Original-Encoding: utf-8
From: ppisar [...] redhat.com
Content-Length: 0
Content-Disposition: inline
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 321
Download (untitled) / with headers
text/plain 321b
Dne Út 29.led.2013 09:28:21, JANPAZ napsal(a): Show quoted text
> Hello, > > XML::LibXSLT's Makefile.PL does > > $config{LIBS}.=' '.$Config{libs}; > > Thus it appends to the gcc command all libraries needed by perl _and_ by > extensions. Wouldn't it be more correct to use $Config{perllibs}?
Attached patch implements it. -- Petr
MIME-Version: 1.0
Subject: XML-LibXSLT-1.92-Do-not-link-against-perl-extension-libraries.patch
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Type: text/x-patch; name="XML-LibXSLT-1.92-Do-not-link-against-perl-extension-libraries.patch"
Content-Disposition: inline; filename="XML-LibXSLT-1.92-Do-not-link-against-perl-extension-libraries.patch"
Content-Transfer-Encoding: binary
Content-Length: 818
From f1b7d486cbb1fb62f0e5c141f3012a38278a90bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> Date: Thu, 8 Jan 2015 16:37:23 +0100 Subject: [PATCH] Do not link against perl extension libraries MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CPAN RT #83028 Signed-off-by: Petr Písař <ppisar@redhat.com> --- Makefile.PL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.PL b/Makefile.PL index ce33f36..dd8468f 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -192,7 +192,7 @@ if (have_library($::is_Win32 ? "libexslt" : "exslt")) { $config{DEFINE} .= " -DHAVE_EXSLT" } -$config{LIBS}.=' '.$Config{libs}; +$config{LIBS}.=' '.$Config{perllibs}; if ($DEBUG) { print "LIBS: $config{LIBS}\n"; -- 1.9.3
MIME-Version: 1.0
In-Reply-To: <rt-4.0.18-2631-1420732706-1036.0-0-0 [...] rt.cpan.org>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: API
References: <rt-4.0.18-2631-1420732706-1036.0-0-0 [...] rt.cpan.org>
Content-Type: text/plain; charset="utf-8"
Message-ID: <rt-4.0.18-4567-1503037777-1688.0-0-0 [...] rt.cpan.org>
Message-ID: <rt-4.0.18-4567-1503037778-1892.83028-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
From: ppisar [...] redhat.com
Content-Length: 492
Download (untitled) / with headers
text/plain 492b
Dne Čt 08.led.2015 10:58:26, ppisar napsal(a): Show quoted text
> Dne Út 29.led.2013 09:28:21, JANPAZ napsal(a):
> > Hello, > > > > XML::LibXSLT's Makefile.PL does > > > > $config{LIBS}.=' '.$Config{libs}; > > > > Thus it appends to the gcc command all libraries needed by perl _and_ by > > extensions. Wouldn't it be more correct to use $Config{perllibs}?
>
Both variables are wrong. XML-LibXSLT should not use any of them <https://www.nntp.perl.org/group/perl.perl5.porters/2017/08/msg245959.html>.
MIME-Version: 1.0
In-Reply-To: <rt-4.0.18-4567-1503037777-1688.0-0-0 [...] rt.cpan.org>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
X-RT-Interface: API
References: <rt-4.0.18-2631-1420732706-1036.0-0-0 [...] rt.cpan.org> <rt-4.0.18-4567-1503037777-1688.0-0-0 [...] rt.cpan.org>
Content-Type: multipart/mixed; boundary="----------=_1503050150-9806-2"
Message-ID: <rt-4.0.18-9806-1503050150-1812.0-0-0 [...] rt.cpan.org>
Message-ID: <rt-4.0.18-9806-1503050150-1378.83028-0-0 [...] rt.cpan.org>
X-RT-Original-Encoding: utf-8
From: ppisar [...] redhat.com
Content-Length: 0
Content-Disposition: inline
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 230
Download (untitled) / with headers
text/plain 230b
Dne Pá 18.srp.2017 02:29:38, ppisar napsal(a): Show quoted text
> Both variables are wrong. XML-LibXSLT should not use any of them > <https://www.nntp.perl.org/group/perl.perl5.porters/2017/08/msg245959.html>.
And this patch removes the flags.
MIME-Version: 1.0
Subject: XML-LibXSLT-1.95-Do-not-link-to-Config-libs.patch
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Type: application/octet-stream; name="XML-LibXSLT-1.95-Do-not-link-to-Config-libs.patch"
Content-Disposition: inline; filename="XML-LibXSLT-1.95-Do-not-link-to-Config-libs.patch"
Content-Transfer-Encoding: base64
Content-Length: 1035
From 6a2e22d0d50d2fec26424cb0dcc44eb086c880db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> Date: Fri, 18 Aug 2017 11:35:33 +0200 Subject: [PATCH] Do not link to $Config{libs} MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit $Config{libs} as well as $Config{perllibs} are not designed for passing them to linker when building non-core XS modules. They brought in dependency on unnecessary libraries. This patch can break Win32 platform as the linker works differently there. CPAN RT #83028 Signed-off-by: Petr Písař <ppisar@redhat.com> --- Makefile.PL | 2 -- 1 file changed, 2 deletions(-) diff --git a/Makefile.PL b/Makefile.PL index fc0a370..4cc57a9 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -198,8 +198,6 @@ if (have_library($::is_Win32 ? "libexslt" : "exslt")) { $config{DEFINE} .= " -DHAVE_EXSLT" } -$config{LIBS}.=' '.$Config{libs}; - if ($DEBUG) { print "LIBS: $config{LIBS}\n"; print "INC: $config{INC}\n"; -- 2.9.5


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.