]> git.pld-linux.org Git - packages/elfutils.git/blame - elfutils.spec
- added inline patch instead of -fgnu89-inline to kill warnings from public libdw.h
[packages/elfutils.git] / elfutils.spec
CommitLineData
fb301307
JB
1#
2# Conditional build:
0f22fc8f 3%bcond_without tests # do not perform tests
fb301307 4#
7f09d52f 5Summary: A collection of utilities and DSOs to handle compiled objects
cc5b5c39 6Summary(pl.UTF-8): Zestaw narzędzi i bibliotek do obsługi skompilowanych obiektów
d5753979 7Name: elfutils
2297ccd3 8Version: 0.127
803346d3 9Release: 2
a387ef5e 10License: GPL v2 with OSL linking exception
d5753979 11Group: Development/Tools
e3d31b18 12# http://download.fedora.redhat.com/pub/fedora/linux/core/development/source/SRPMS/
2297ccd3
JB
13# or abuse systemtap to get .tar.gz directly
14Source0: ftp://sources.redhat.com/pub/systemtap/elfutils/%{name}-%{version}.tar.gz
15# Source0-md5: 905411e1deda0aee17ae99dbdeaf7506
b1ad9ed4 16Patch0: %{name}-pl.po.patch
0937133b 17Patch1: %{name}-debian-manpages.patch
30cc8b05 18Patch2: %{name}-portability.patch
6e7aa217
JB
19Patch3: %{name}-robustify.patch
20Patch4: %{name}-align.patch
2adb9a49
JB
21Patch5: %{name}-paxflags.patch
22Patch6: %{name}-alpha.patch
4a8c3342 23Patch7: %{name}-sparc.patch
80e874f2 24Patch8: %{name}-strip-copy-symtab.patch
7e543618 25Patch9: %{name}-gcc4.patch
b0b80115 26Patch10: %{name}-inline.patch
7f09d52f 27#URL: file://home/devel/drepper
5a22e3bf 28BuildRequires: autoconf >= 2.59
fb1f2abe 29BuildRequires: automake >= 1:1.7
b0b80115 30BuildRequires: gcc >= 3.2
b1ad9ed4 31BuildRequires: gettext-devel
5ac8a270 32%ifarch %{x8664} alpha ia64 ppc64 s390x sparc64
13e1fe93 33# PR*FAST{8,16} in <inttypes.h> were broken for 64-bit archs in older versions
ad511c9f 34# also needed for nanosecond timestamps on alpha
13e1fe93
JB
35BuildRequires: glibc-devel >= 6:2.3.4
36%endif
095507bb 37BuildRequires: libltdl-devel
0937133b 38BuildRequires: perl-tools-pod
21429b83 39BuildRequires: rpmbuild(macros) >= 1.315
b1ad9ed4 40BuildRequires: sharutils
4a8c3342
JB
41%if %{with tests} && %(test -d /proc/self ; echo $?)
42# native test needs proc (for libdwfl -p PID to work)
43BuildRequires: MOUNTED_PROC
44%endif
fb301307 45Requires: %{name}-libelf = %{version}-%{release}
7f09d52f 46BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
ecbc8f89 47
dea0813b 48# fails to build with -Wl,-s
49%define filterout_ld (-Wl,)?-[sS] (-Wl,)?--strip.*
50
0937133b 51%define _programprefix eu-
ecbc8f89
AF
52
53%description
d5753979
AF
54Elfutils is a collection of utilities, including ld (a linker), nm
55(for listing symbols from object files), size (for listing the section
56sizes of an object or archive file), strip (for discarding symbols),
57readline (the see the raw ELF file structures), and elflint (to check
58for well-formed ELF files). Also included are numerous helper
59libraries which implement DWARF, ELF, and machine-specific ELF
ecbc8f89
AF
60handling.
61
13991385
JR
62%description -l pl.UTF-8
63Elfutils to zestaw narzędzi, składający się z ld (linkera), nm (do
64listowania symboli z plików obiektów), size (do listowania rozmiarów
65sekcji plików obiektów lub archiwów), strip (do usuwania symboli),
66readline (do oglądania surowych struktur plików ELF) oraz elflint (do
67sprawdzania poprawności plików ELF). Dołączone są także liczne
68biblioteki pomocnicze z zaimplementowaną obsługą DWARF, ELF i ELF
7f09d52f
JB
69specyficznych dla architektury.
70
ecbc8f89 71%package devel
7f09d52f 72Summary: Development part of libraries to handle compiled objects
cc5b5c39 73Summary(pl.UTF-8): Część programistyczna bibliotek do obsługi skompilowanych obiektów
7f09d52f 74Group: Development/Libraries
fb301307 75Requires: %{name} = %{version}-%{release}
d5753979 76Obsoletes: libelf-devel
ecbc8f89
AF
77
78%description devel
7f09d52f
JB
79The elfutils-devel package contains the development part of libraries
80to create applications for handling compiled objects. libelf allows
81you to access the internals of the ELF object file format, so you can
82see the different sections of an ELF file. libebl provides some
83higher-level ELF access functionality. libdwarf provides access to the
84DWARF debugging information. libasm provides a programmable assembler
ecbc8f89
AF
85interface.
86
13991385
JR
87%description devel -l pl.UTF-8
88Pakiet elfutils-devel zawiera część programistyczną bibliotek do
89tworzenia aplikacji obsługujących skompilowane obiekty. libelf pozwala
90na dostęp do wnętrzności formatu pliku obiektowego ELF, co pozwala na
91oglądanie różnych sekcji pliku ELF. libebl udostępnia funkcjonalność
92dostępu do plików ELF trochę wyższego poziomu. libdwarf pozwala na
93dostęp do informacji DWARF służących do odpluskwiania. libasm
94udostępnia programowalny interfejs asemblera.
7f09d52f 95
ecbc8f89 96%package libelf
7f09d52f 97Summary: Library to read and write ELF files
cc5b5c39 98Summary(pl.UTF-8): Biblioteki do odczytu i zapisu plików ELF
7f09d52f 99Group: Libraries
e21fb8cd 100#Obsoletes: libelf
ecbc8f89
AF
101
102%description libelf
103The elfutils-libelf package provides a DSO which allows reading and
d5753979
AF
104writing ELF files on a high level. Third party programs depend on this
105package to read internals of ELF files. The programs of the elfutils
106package use it also to generate new ELF files.
ecbc8f89 107
13991385
JR
108%description libelf -l pl.UTF-8
109Pakiet elfutils-libelf udostępnia bibliotekę dzieloną, która pozwala
110na wysokopoziomowe czytanie i zapisywanie plików ELF. Inne programy
111wymagają tego pakietu, aby odczytywać zawartość plików ELF. Programy z
112pakietu elfutils używają jej także do generowania nowych plików ELF.
7f09d52f 113
2a18e913 114%package static
7f09d52f 115Summary: Static libraries to handle compiled objects
cc5b5c39 116Summary(pl.UTF-8): Statyczne biblioteki do obsługi skompilowanych obiektów
7f09d52f 117Group: Development/Libraries
fb301307 118Requires: %{name}-devel = %{version}-%{release}
9da385b9 119Obsoletes: libelf-static
2a18e913
AF
120
121%description static
122The elfutils-static package contains the static libraries to create
123applications for handling compiled objects. libelf allows you to
124access the internals of the ELF object file format, so you can see the
125different sections of an ELF file. libebl provides some higher-level
126ELF access functionality. libdwarf provides access to the DWARF
127debugging information. libasm provides a programmable assembler
128interface.
129
13991385 130%description static -l pl.UTF-8
7f09d52f 131Pakiet elfutils-static zawiera statyczne biblioteki do tworzenia
13991385
JR
132aplikacji obsługujących skompilowane obiekty. libelf pozwala na dostęp
133do wnętrzności formatu pliku obiektowego ELF, co pozwala na oglądanie
134różnych sekcji pliku ELF. libebl udostępnia funkcjonalność dostępu do
135plików ELF trochę wyższego poziomu. libdwarf pozwala na dostęp do
136informacji DWARF służących do odpluskwiania. libasm udostępnia
7f09d52f 137programowalny interfejs asemblera.
2a18e913 138
ecbc8f89
AF
139%prep
140%setup -q
9a404d6e 141%patch0 -p1
0937133b 142%patch1 -p1
5d5c3b33 143%patch2 -p1
30cc8b05
JR
144%patch3 -p1
145%patch4 -p1
f1d8205d 146%patch5 -p1
e3d31b18 147# update/drop?
3dfc27e9 148%patch6 -p1
4a8c3342 149%patch7 -p1
a3c91b8a 150%patch8 -p1
7e543618 151%patch9 -p1
b0b80115 152%patch10 -p1
ecbc8f89 153
80e874f2 154# strip-test5 needs adjusting for strip-copy-symtab patch (already in FC, but not worth bothering)
432bd74c
JB
155# dwfl-bug-addr-overflow sources are missing in tar
156sed -i -e 's/ run-strip-test5\.sh / /;s/dwfl-bug-addr-overflow/$(nil)/' tests/Makefile.am
80e874f2 157
ecbc8f89 158%build
30cc8b05 159#%%{__gettextize}
d5753979
AF
160%{__aclocal}
161%{__autoheader}
162%{__automake}
163%{__autoconf}
0d4a03ed 164
d5753979 165%configure \
7f09d52f
JB
166 --program-prefix=%{_programprefix} \
167 --enable-shared
ecbc8f89 168
fb301307
JB
169# make check depends on test-nlist not stripped
170%{__perl} -pi -e 's/^(LDFLAGS =.*)-s/$1/' tests/Makefile
171
b1ad9ed4 172%{__make}
0937133b 173%{__make} -C debian/man
6771db41 174%if %{with tests}
80e874f2
JB
175# some tests rely on English messages
176LC_ALL=C \
6771db41
JB
177%{__make} -C tests check
178%endif
0937133b 179
ecbc8f89 180%install
d5753979 181rm -rf $RPM_BUILD_ROOT
30cc8b05 182install -d $RPM_BUILD_ROOT{%{_mandir}/man1,/%{_lib}}
ecbc8f89 183
b1ad9ed4
JB
184# *OBJEXT must be passed to workaround problem with messed gettext,
185# which doesn't like *-po dir names
d5753979 186%{__make} install \
b1ad9ed4 187 DESTDIR=$RPM_BUILD_ROOT \
f4ce45fa 188 MKINSTALLDIRS=$(pwd)/config/mkinstalldirs \
fb301307
JB
189 CATOBJEXT=.gmo \
190 INSTOBJEXT=.mo
ecbc8f89 191
0937133b 192install debian/man/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
ecbc8f89 193
b7d56473 194mv $RPM_BUILD_ROOT%{_libdir}/libelf-*.so $RPM_BUILD_ROOT/%{_lib}
30cc8b05
JR
195ln -sf /%{_lib}/$(cd $RPM_BUILD_ROOT/%{_lib} ; echo libelf-*.so) \
196 $RPM_BUILD_ROOT%{_libdir}/libelf.so
197
ddf1f990
AM
198/sbin/ldconfig -n -N $RPM_BUILD_ROOT%{_libdir}
199/sbin/ldconfig -n -N $RPM_BUILD_ROOT/%{_lib}
200
9a404d6e 201%find_lang libelf
9a404d6e 202%find_lang %{name}
ecbc8f89
AF
203
204%clean
0937133b 205rm -rf $RPM_BUILD_ROOT
ecbc8f89 206
7f09d52f
JB
207%post -p /sbin/ldconfig
208%postun -p /sbin/ldconfig
ecbc8f89 209
7f09d52f
JB
210%post libelf -p /sbin/ldconfig
211%postun libelf -p /sbin/ldconfig
ecbc8f89 212
9a404d6e 213%files -f %{name}.lang
d5753979 214%defattr(644,root,root,755)
0937133b 215%doc AUTHORS COPYING NEWS NOTES README THANKS TODO
2a18e913 216%attr(755,root,root) %{_bindir}/*
0937133b 217%attr(755,root,root) %{_libdir}/libasm-*.so
ddf1f990 218%ghost %attr(755,root,root) %{_libdir}/libasm.so.*
0937133b 219%attr(755,root,root) %{_libdir}/libdw-*.so
ddf1f990 220%ghost %attr(755,root,root) %{_libdir}/libdw.so.*
ecbc8f89 221%dir %{_libdir}/elfutils
2a18e913 222%attr(755,root,root) %{_libdir}/elfutils/lib*.so
0937133b 223%{_mandir}/man1/*.1*
ecbc8f89
AF
224
225%files devel
d5753979 226%defattr(644,root,root,755)
0937133b
JB
227%attr(755,root,root) %{_libdir}/libasm.so
228%attr(755,root,root) %{_libdir}/libdw.so
0937133b
JB
229%attr(755,root,root) %{_libdir}/libelf.so
230%{_libdir}/libebl.a
2a18e913 231%{_includedir}/*
ecbc8f89 232
9a404d6e 233%files libelf -f libelf.lang
d5753979 234%defattr(644,root,root,755)
30cc8b05 235%attr(755,root,root) /%{_lib}/libelf-*.so
ddf1f990 236%ghost %attr(755,root,root) /%{_lib}/libelf.so.*
2a18e913
AF
237
238%files static
239%defattr(644,root,root,755)
0937133b
JB
240%{_libdir}/libasm.a
241%{_libdir}/libdw.a
0937133b 242%{_libdir}/libelf.a
This page took 0.073067 seconds and 4 git commands to generate.