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