[libdwarf] Fixed to build properly in a clean environment
Tom Hughes
tomh at fedoraproject.org
Fri Feb 8 14:46:31 UTC 2013
commit ce8e563dc00e181d801e0ab593fe0002cc8a8e85
Author: Tom Hughes <tom at compton.nu>
Date: Fri Feb 8 14:46:04 2013 +0000
Fixed to build properly in a clean environment
libdwarf-soname.patch | 18 ++++++++++++++++++
libdwarf.spec | 6 +++---
2 files changed, 21 insertions(+), 3 deletions(-)
---
diff --git a/libdwarf-soname.patch b/libdwarf-soname.patch
new file mode 100644
index 0000000..a392439
--- /dev/null
+++ b/libdwarf-soname.patch
@@ -0,0 +1,18 @@
+diff --git a/libdwarf/Makefile.in b/libdwarf/Makefile.in
+index 76add35..1876507 100644
+--- a/libdwarf/Makefile.in
++++ b/libdwarf/Makefile.in
+@@ -131,8 +131,11 @@ all: @build_shared@ @build_nonshared@
+ libdwarf.a: dwarf_names.h dwarf_names.c $(OBJS) dwarf_names.o
+ $(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 $@
++libdwarf.so: $(SONAME)
++ ln -s $(SONAME) $@
++
++$(SONAME): dwarf_names.h dwarf_names.c $(OBJS) dwarf_names.o
++ $(CC) $(CFLAGS) -shared $(OBJS) -Wl,-soname,$(SONAME) dwarf_names.o -o $@
+
+ none:
+ echo "do nothing"
diff --git a/libdwarf.spec b/libdwarf.spec
index b037655..addc566 100644
--- a/libdwarf.spec
+++ b/libdwarf.spec
@@ -11,6 +11,7 @@ Group: Development/Libraries
License: LGPLv2
URL: http://reality.sgiweb.org/davea/dwarf.html
Source0: http://reality.sgiweb.org/davea/%{name}-%{version}.tar.gz
+Patch0: libdwarf-soname.patch
BuildRequires: binutils-devel elfutils-libelf-devel
@@ -49,12 +50,11 @@ to access DWARF debug information.
%prep
%setup -q -n dwarf-%{version}
-mv libdwarf/Makefile.in libdwarf/Makefile.in.orig
-sed -e 's/-shared $(OBJS)/-shared $(OBJS) -Wl,-soname,%{soname}/' < libdwarf/Makefile.in.orig > libdwarf/Makefile.in
+%patch0 -p1 -b .soname
%build
CFLAGS="$RPM_OPT_FLAGS" %configure --enable-shared
-make %{?_smp_mflags}
+LD_LIBRARY_PATH="../libdwarf" make %{?_smp_mflags} SONAME="%{soname}"
%install
install -pDm 0644 libdwarf/dwarf.h %{buildroot}%{_includedir}/libdwarf/dwarf.h
More information about the scm-commits
mailing list