rpms/perl-Alien-wxWidgets/devel perl-Alien-wxWidgets-SONAME.patch, 1.1, 1.2 perl-Alien-wxWidgets.spec, 1.22, 1.23
Štěpán Kasal
kasal at fedoraproject.org
Tue Aug 25 09:29:32 UTC 2009
Author: kasal
Update of /cvs/extras/rpms/perl-Alien-wxWidgets/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv29605
Modified Files:
perl-Alien-wxWidgets-SONAME.patch perl-Alien-wxWidgets.spec
Log Message:
* Mon Aug 24 2009 Stepan Kasal <skasal at redhat.com> - 0.44-2
- fix the soname patch
perl-Alien-wxWidgets-SONAME.patch:
Any_wx_config_Bakefile.pm | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
Index: perl-Alien-wxWidgets-SONAME.patch
===================================================================
RCS file: /cvs/extras/rpms/perl-Alien-wxWidgets/devel/perl-Alien-wxWidgets-SONAME.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- perl-Alien-wxWidgets-SONAME.patch 20 Aug 2009 15:19:20 -0000 1.1
+++ perl-Alien-wxWidgets-SONAME.patch 25 Aug 2009 09:29:32 -0000 1.2
@@ -1,27 +1,35 @@
-2009-08-20 Stepan Kasal <skasal at redhat.com>
-
+2009-08-24 Stepan Kasal <skasal at redhat.com>
+
+perl-Wx did not run if wxGTK-devel was not installed.
+
+The problem was that the package containes list of dynamic libraries
+to open, and that it had the *.so links, that are normally used by ld
+only, not by the dynamic linker. Consequently, these links go to the
+devel subpackage in every sane distro.
+
+soname can be displayed by objdump or eu-readelf. But first, we need
+the full path name; for standard paths, gcc can help.
+
+2009-08-24 Stepan Kasal <skasal at redhat.com>
+
* inc/My/Build/Any_wx_config_Bakefile.pm: convert the lib*.so
- file name to the canonical name (soname); the *.so symlink
- usually belongs to package *-devel and may not be available at
- runtime.
-
---- Alien-wxWidgets-0.42/inc/My/Build/Any_wx_config_Bakefile.pm.orig 2008-11-08 00:52:22.000000000 +0100
-+++ Alien-wxWidgets-0.42/inc/My/Build/Any_wx_config_Bakefile.pm 2009-08-20 15:51:52.000000000 +0200
-@@ -32,6 +32,17 @@
+ file name to the canonical soname.
+
+--- Alien-wxWidgets-0.44/inc/My/Build/Any_wx_config_Bakefile.pm.soname 2009-08-09 13:13:40.000000000 +0200
++++ Alien-wxWidgets-0.44/inc/My/Build/Any_wx_config_Bakefile.pm 2009-08-24 15:44:10.000000000 +0200
+@@ -35,7 +35,14 @@
&& $lib =~ m/(?:gtk2?|mac)[ud]{0,2}-/;
my $dll = "lib${name}." . $self->awx_dlext;
-+ open PIPE1, "ldconfig -p |";
-+ while (<PIPE1>) {
-+ if (s/^\s+${dll}\s(.*\s)?=>\s+//) {
-+ for (`objdump -p $_`) {
-+ if (s/^\s+SONAME\s+//) { chomp; $dll = $_; }
-+ }
-+ last;
-+ }
+- $data{dlls}{$key} = { dll => $dll,
++ my $dll_path = `gcc -print-file-name=$dll`;
++ chomp $dll_path;
++ my $dll_soname = 'not_found';
++ if ( -r "$dll_path" && `objdump -p $dll_path` =~ m/^\s+SONAME\s+(\S+)/m) {
++ $dll_soname = $1;
+ }
-+ close PIPE1;
+
- $data{dlls}{$key} = { dll => $dll,
++ $data{dlls}{$key} = { dll => $dll_soname,
link => $lib };
}
+ if( $self->awx_is_monolithic ) {
Index: perl-Alien-wxWidgets.spec
===================================================================
RCS file: /cvs/extras/rpms/perl-Alien-wxWidgets/devel/perl-Alien-wxWidgets.spec,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -p -r1.22 -r1.23
--- perl-Alien-wxWidgets.spec 20 Aug 2009 15:19:20 -0000 1.22
+++ perl-Alien-wxWidgets.spec 25 Aug 2009 09:29:32 -0000 1.23
@@ -1,6 +1,6 @@
Name: perl-Alien-wxWidgets
Version: 0.44
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Building, finding and using wxWidgets binaries
Group: Development/Libraries
@@ -59,6 +59,9 @@ rm -rf $RPM_BUILD_ROOT
%changelog
+* Mon Aug 24 2009 Stepan Kasal <skasal at redhat.com> - 0.44-2
+- fix the soname patch
+
* Thu Aug 20 2009 Stepan Kasal <skasal at redhat.com> - 0.44-1
- new upstream version
- add patch to remember the canonical sonames of libraries, so that
More information about the fedora-extras-commits
mailing list