File libdwarf.spec of Package libdwarf

#
# spec file for package libdwarf (Version 20100808)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild


Name:           libdwarf
Url:            http://reality.sgiweb.org/davea/dwarf.html
Summary:        Documentation for libdwarf
Version:        20100808
Release:        1
License:        LGPLv2.1+
Group:          System/Libraries
Source:         libdwarf-%{version}.tar.bz2
Patch0:         libdwarf-relocation-support.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  binutils-devel libelf-devel

%description
Documentation for libdwarf.



Authors:
--------
    David Anderson <davea42@earthlink.net>

%package devel
Summary:        Static libraries of libdwarf
Group:          System/Libraries
AutoReqProv:    on
PreReq:         %install_info_prereq
License:        LGPLv2.1+
Requires:       %{name} = %{version}

%description devel
Contains the static libraries and header files of libdwarf.

Libdwarf is a library of functions to provide creation of DWARF
debugging information records, DWARF line number information, DWARF
address range and pubnames information, weak names information, and
DWARF frame description information.



Authors:
--------
    David Anderson <davea42@earthlink.net>

%package tools
Summary:        Access DWARF debugging information
Group:          System/Libraries
AutoReqProv:    on
PreReq:         %install_info_prereq
License:        LGPLv2.1+

%description tools
Library of functions to provide creation of DWARF debugging information
records, DWARF line number information, DWARF address range and
pubnames information, weak names information, and DWARF frame
description information.



Authors:
--------
    David Anderson <davea42@earthlink.net>

%package doc
License:        GPLv2+
Summary:        DWARF-related tools
Group:          System/Libraries
AutoReqProv:    on
PreReq:         %install_info_prereq

%description doc
Contains dwarfdump, a tool to access DWARF debug information.



Authors:
--------
    David Anderson <davea42@earthlink.net>

%prep
%setup -q -n dwarf-%{version}
#%patch0 -p1

%build
export CFLAGS="$RPM_OPT_FLAGS"
## libdwarf
cd libdwarf
CFLAGS="$CFLAGS -fPIC" %configure --enable-shared
make
cd -
## dwarfdump
cd dwarfdump
%configure
# LD_LIBRARY_PATH required since libdwarf.so and libdwarf.a
# are available - and tag_tree_build get linked against
# shared library. This workaround avoids patching of dwarfdump
# Makefile
#  - dgollub (20081001)
# only run make with -j1
LD_LIBRARY_PATH="../libdwarf" make

%install
mkdir -p %{buildroot}%{_libdir}
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_includedir}/libdwarf
install -m 0644 libdwarf/libdwarf.a %{buildroot}%{_libdir}
install -m 0644 libdwarf/libdwarf.so* %{buildroot}%{_libdir}
install -m 0755 dwarfdump/dwarfdump %{buildroot}%{_bindir}
install -m 0644 libdwarf/libdwarf.h %{buildroot}%{_includedir}/libdwarf
install -m 0644 libdwarf/dwarf.h %{buildroot}%{_includedir}/libdwarf

%clean
rm -rf %{buildroot}

%post -n libdwarf -p /sbin/ldconfig

%postun -n libdwarf -p /sbin/ldconfig

%files
%defattr(-,root,root)
%{_libdir}/libdwarf.*so

%files devel
%defattr(-,root,root)
%{_libdir}/libdwarf.a
%{_includedir}/libdwarf

%files tools
%defattr(-,root,root)
%{_bindir}/dwarfdump
%doc ./dwarfdump/README

%files doc
%defattr(-,root,root)
%doc libdwarf/*.pdf
%doc ./libdwarf/README

%changelog
openSUSE Build Service is sponsored by