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