[packages/libdwarf] - added link patch: set soname, link library with libelf

qboosh qboosh at pld-linux.org
Thu Jul 11 20:09:11 CEST 2013


commit 630a84575aa15179774e205e739752e3e5f61f9a
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Thu Jul 11 20:08:58 2013 +0200

    - added link patch: set soname, link library with libelf

 libdwarf-link.patch | 11 +++++++++++
 libdwarf.spec       | 13 ++++++++++---
 2 files changed, 21 insertions(+), 3 deletions(-)
---
diff --git a/libdwarf.spec b/libdwarf.spec
index 6ecd04c..fb0f5f0 100644
--- a/libdwarf.spec
+++ b/libdwarf.spec
@@ -10,6 +10,7 @@ Group:		Libraries
 Source0:	http://reality.sgiweb.org/davea/%{name}-%{snap}.tar.gz
 # Source0-md5:	64b42692e947d5180e162e46c689dfbf
 Patch0:		%{name}-makefile.patch
+Patch1:		%{name}-link.patch
 URL:		http://reality.sgiweb.org/davea/dwarf.html
 BuildRequires:	elfutils-devel
 BuildRequires:	libstdc++-devel
@@ -60,6 +61,7 @@ Narzędzie wypisujące informacje debugowe DWARF z obiektów ELF.
 %prep
 %setup -q -n dwarf-%{snap}
 %patch0 -p1
+%patch1 -p1
 
 %build
 cd libdwarf
@@ -96,8 +98,11 @@ cd ..
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_bindir},%{_includedir},%{_libdir},%{_mandir}/man1}
 
-install libdwarf/libdwarf.h $RPM_BUILD_ROOT%{_includedir}
-install libdwarf/libdwarf.{a,so} $RPM_BUILD_ROOT%{_libdir}
+install libdwarf/libdwarf.so $RPM_BUILD_ROOT%{_libdir}/libdwarf.so.0.%{snap}
+ln -sf libdwarf.so.0.%{snap} $RPM_BUILD_ROOT%{_libdir}/libdwarf.so.0
+ln -sf libdwarf.so.0.%{snap} $RPM_BUILD_ROOT%{_libdir}/libdwarf.so
+install libdwarf/libdwarf.a $RPM_BUILD_ROOT%{_libdir}
+cp -p libdwarf/libdwarf.h $RPM_BUILD_ROOT%{_includedir}
 
 for d in dwarfdump ; do
 # dwarfdump2 is just a C++ version of dwarfdump
@@ -115,10 +120,12 @@ rm -rf $RPM_BUILD_ROOT
 %files
 %defattr(644,root,root,755)
 %doc libdwarf/CHANGES libdwarf/COPYING libdwarf/ChangeLog* libdwarf/NEWS libdwarf/README
-%attr(755,root,root) %{_libdir}/libdwarf.so
+%attr(755,root,root) %{_libdir}/libdwarf.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdwarf.so.0
 
 %files devel
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libdwarf.so
 %{_includedir}/libdwarf.h
 
 %files static
diff --git a/libdwarf-link.patch b/libdwarf-link.patch
new file mode 100644
index 0000000..4651624
--- /dev/null
+++ b/libdwarf-link.patch
@@ -0,0 +1,11 @@
+--- dwarf-20130207/libdwarf/Makefile.in.orig	2013-01-30 18:58:11.000000000 +0100
++++ dwarf-20130207/libdwarf/Makefile.in	2013-07-11 19:45:33.900021085 +0200
+@@ -132,7 +132,7 @@
+ 	$(AR) $(ARFLAGS) $@ $(OBJS)  dwarf_names.o
+ 
+ libdwarf.so: dwarf_names.h dwarf_names.c $(OBJS) dwarf_names.o
+-	$(CC) $(CFLAGS) -shared $(OBJS)  dwarf_names.o -o $@
++	$(CC) $(CFLAGS) -shared -Wl,-soname,libdwarf.so.0 $(OBJS)  dwarf_names.o -o $@ -lelf
+ 
+ none:
+ 	echo "do nothing"
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/libdwarf.git/commitdiff/630a84575aa15179774e205e739752e3e5f61f9a



More information about the pld-cvs-commit mailing list