]> git.pld-linux.org Git - packages/elfutils.git/blobdiff - elfutils.spec
separate libs and tools; rel 2
[packages/elfutils.git] / elfutils.spec
index f8b05c458c147cb83e9c2c4c1869462f7067f8ea..998155439a2ffe154344acca0ebc66f8c7501c9b 100644 (file)
@@ -1,3 +1,5 @@
+# TODO:
+# - package debuginfod.service
 #
 # Conditional build:
 %bcond_without debuginfod      # debuginfod server and client
@@ -6,34 +8,35 @@
 Summary:       A collection of utilities and DSOs to handle compiled objects
 Summary(pl.UTF-8):     Zestaw narzędzi i bibliotek do obsługi skompilowanych obiektów
 Name:          elfutils
-Version:       0.178
-Release:       1
+Version:       0.191
+Release:       2
 License:       GPL v2+ or LGPL v3+ (libraries), GPL v3+ (programs)
 Group:         Development/Tools
 Source0:       https://sourceware.org/elfutils/ftp/%{version}/%{name}-%{version}.tar.bz2
-# Source0-md5: 5480d0b7174446aba13a6adde107287f
+# Source0-md5: 636547248fb3fae58ec48030298d3ef7
 Patch0:                %{name}-pl.po.patch
 Patch1:                %{name}-debian-manpages.patch
-Patch2:                %{name}-awk.patch
 Patch3:                %{name}-align.patch
 Patch4:                %{name}-paxflags.patch
 Patch5:                %{name}-sparc.patch
-Patch6:                %{name}-cxx.patch
-Patch7:                x32.patch
+Patch6:                disable-tests.patch
 URL:           https://sourceware.org/elfutils/
 BuildRequires: autoconf >= 2.63
 BuildRequires: automake >= 1:1.11
+%{?with_tests:BuildRequires:   bsdtar}
 BuildRequires: bzip2-devel
 BuildRequires: gawk
 BuildRequires: gcc >= 6:4.3
-BuildRequires: gettext-tools
+BuildRequires: gettext-tools >= 0.19.6
 BuildRequires: glibc-devel >= 6:2.7
-BuildRequires: libstdc++-devel
+BuildRequires: libstdc++-devel >= 6:4.7
 BuildRequires: perl-tools-pod
-BuildRequires: rpmbuild(macros) >= 1.315
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.527
 BuildRequires: sharutils
 BuildRequires: xz-devel
 BuildRequires: zlib-devel
+BuildRequires: zstd-devel >= 1.4.0
 %if %{with tests} && %(test -d /proc/self ; echo $?)
 # native test needs proc (for libdwfl -p PID to work)
 BuildRequires: MOUNTED_PROC
@@ -44,7 +47,7 @@ BuildRequires:        libarchive-devel >= 3.1.2
 BuildRequires: libmicrohttpd-devel >= 0.9.33
 BuildRequires: sqlite3-devel >= 3.7.17
 %endif
-Requires:      %{name}-libelf = %{version}-%{release}
+Requires:      %{name}-libs = %{version}-%{release}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # fails to build with -Wl,-s
@@ -61,28 +64,41 @@ Elfutils is a collection of utilities, including ld (a linker), nm
 (for listing symbols from object files), size (for listing the section
 sizes of an object or archive file), strip (for discarding symbols),
 readline (the see the raw ELF file structures), and elflint (to check
-for well-formed ELF files). Also included are numerous helper
-libraries which implement DWARF, ELF, and machine-specific ELF
-handling.
+for well-formed ELF files).
 
 %description -l pl.UTF-8
 Elfutils to zestaw narzędzi, składający się z ld (linkera), nm (do
 listowania symboli z plików obiektów), size (do listowania rozmiarów
 sekcji plików obiektów lub archiwów), strip (do usuwania symboli),
 readline (do oglądania surowych struktur plików ELF) oraz elflint (do
-sprawdzania poprawności plików ELF). Dołączone są także liczne
-biblioteki pomocnicze z zaimplementowaną obsługą DWARF, ELF i ELF
-specyficznych dla architektury.
+sprawdzania poprawności plików ELF).
+
+%package libs
+Summary:       Libraries to handle compiled objects
+Summary(pl.UTF-8):     Biblioteki do obsługi skompilowanych obiektów
+Group:         Libraries
+Requires:      %{name}-libelf = %{version}-%{release}
+Requires:      zstd >= 1.4.0
+
+%description libs
+Libraries which implement DWARF, ELF, and machine-specific ELF
+handling.
+
+%description libs -l pl.UTF-8
+Biblioteki z zaimplementowaną obsługą DWARF, ELF i ELF specyficznych
+dla architektury.
 
 %package devel
 Summary:       Development part of libraries to handle compiled objects
 Summary(pl.UTF-8):     Część programistyczna bibliotek do obsługi skompilowanych obiektów
 Group:         Development/Libraries
-Requires:      %{name} = %{version}-%{release}
+Requires:      %{name}-libs = %{version}-%{release}
 Requires:      bzip2-devel
 Requires:      xz-devel
 Requires:      zlib-devel
-Obsoletes:     libelf-devel
+Requires:      zstd-devel >= 1.4.0
+Obsoletes:     libelf-devel < 0.8.14
+Obsoletes:     libelf0-devel < 0.8.14
 
 %description devel
 The elfutils-devel package contains the development part of libraries
@@ -123,7 +139,8 @@ Summary:    Static libraries to handle compiled objects
 Summary(pl.UTF-8):     Statyczne biblioteki do obsługi skompilowanych obiektów
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
-Obsoletes:     libelf-static
+Requires:      zstd >= 1.4.0
+Obsoletes:     libelf-static < 0.8.14
 
 %description static
 The elfutils-static package contains the static libraries to create
@@ -142,30 +159,40 @@ służących do odpluskwiania. libasm udostępnia programowalny interfejs
 asemblera.
 
 %package debuginfod
-Summary:       debuginfod library, server and client
-Summary(pl.UTF-8):     Biblioteka, serwer i klient debuginfod
+Summary:       debuginfod server and client
+Summary(pl.UTF-8):     Serwer i klient debuginfod
 Group:         Libraries
-Requires:      %{name} = %{version}-%{release}
-%if %{with debuginfod}
-# for library
-Requires:      curl-libs >= 7.29.0
-# the rest for server
+Requires:      %{name}-libs = %{version}-%{release}
+Requires:      %{name}-debuginfod-libs = %{version}-%{release}
 Requires:      libarchive >= 3.1.2
 Requires:      libmicrohttpd >= 0.9.33
-Requires:      sqlite3 >= 3.7.17
-%endif
+Requires:      sqlite3-libs >= 3.7.17
 
 %description debuginfod
-debuginfod library, server and client.
+debuginfod server and client.
 
 %description debuginfod -l pl.UTF-8
-Biblioteka, serwer i klient debuginfod.
+Serwer i klient debuginfod.
+
+%package debuginfod-libs
+Summary:       debuginfod library
+Summary(pl.UTF-8):     Biblioteka debuginfod
+Group:         Libraries
+Requires:      %{name}-libelf = %{version}-%{release}
+Requires:      curl-libs >= 7.29.0
+Conflicts:     elfutils-debuginfod < 0.187-3
+
+%description debuginfod-libs
+debuginfod library.
+
+%description debuginfod-libs -l pl.UTF-8
+Biblioteka debuginfod.
 
 %package debuginfod-devel
 Summary:       Header file for debuginfod library
 Summary(pl.UTF-8):     Plik nagłówkowy biblioteki debuginfod
 Group:         Development/Libraries
-Requires:      %{name}-debuginfod = %{version}-%{release}
+Requires:      %{name}-debuginfod-libs = %{version}-%{release}
 Requires:      %{name}-devel = %{version}-%{release}
 
 %description debuginfod-devel
@@ -178,15 +205,18 @@ Plik nagłówkowy biblioteki debuginfod.
 %setup -q
 %patch0 -p1
 %patch1 -p1
-%patch2 -p1
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
-%patch7 -p1
 
 %{__rm} po/stamp-po
 
+# temporarily disable failing tests (depending on arch)
+%ifarch x32
+%{__sed} -i -e 's/run-backtrace-native-biarch.sh//' tests/Makefile.am
+%endif
+
 # make sure this is not even tried on arch it has no chance to run
 %ifarch %{ix86}
 %{__sed} -i -e 's/run-disasm-x86-64.sh//' tests/Makefile.am
@@ -195,12 +225,12 @@ Plik nagłówkowy biblioteki debuginfod.
 %build
 #%%{__gettextize}
 %{__aclocal} -I m4
-%{__autoheader}
 %{__autoconf}
+%{__autoheader}
 %{__automake}
 %configure \
        --disable-silent-rules \
-       --disable-werror \
+       %{__enable_disable debuginfod} \
        --program-prefix=%{programprefix}
 
 # make check depends on test-nlist not stripped
@@ -233,24 +263,27 @@ ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libelf-*.so) \
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post  -p /sbin/ldconfig
-%postun        -p /sbin/ldconfig
+%post  libs -p /sbin/ldconfig
+%postun        libs -p /sbin/ldconfig
 
 %post  libelf -p /sbin/ldconfig
 %postun        libelf -p /sbin/ldconfig
 
-%post  debuginfod -p /sbin/ldconfig
-%postun        debuginfod -p /sbin/ldconfig
+%post  debuginfod-libs -p /sbin/ldconfig
+%postun        debuginfod-libs -p /sbin/ldconfig
 
 %files
 %defattr(644,root,root,755)
 %doc AUTHORS CONTRIBUTING ChangeLog NEWS NOTES README THANKS TODO
 %attr(755,root,root) %{_bindir}/eu-*
+%{_mandir}/man1/eu-*.1*
+
+%files libs
+%defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libasm-*.so
 %attr(755,root,root) %ghost %{_libdir}/libasm.so.1
 %attr(755,root,root) %{_libdir}/libdw-*.so
 %attr(755,root,root) %ghost %{_libdir}/libdw.so.1
-%{_mandir}/man1/eu-*.1*
 
 %files devel
 %defattr(644,root,root,755)
@@ -287,14 +320,23 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libdw.a
 %{_libdir}/libelf.a
 
+%if %{with debuginfod}
 %files debuginfod
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdebuginfod-*.so
-%attr(755,root,root) %ghost %{_libdir}/libdebuginfod.so.1
 %attr(755,root,root) %{_bindir}/debuginfod
 %attr(755,root,root) %{_bindir}/debuginfod-find
 %{_mandir}/man1/debuginfod-find.1*
+%{_mandir}/man7/debuginfod-client-config.7*
 %{_mandir}/man8/debuginfod.8*
+# uncomment after packaging debuginfod.service
+#%{_mandir}/man8/debuginfod.service.8*
+%attr(755,root,root) /etc/profile.d/debuginfod.sh
+%attr(755,root,root) /etc/profile.d/debuginfod.csh
+
+%files debuginfod-libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libdebuginfod-*.so
+%attr(755,root,root) %ghost %{_libdir}/libdebuginfod.so.1
 
 %files debuginfod-devel
 %defattr(644,root,root,755)
@@ -302,3 +344,4 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/elfutils/debuginfod.h
 %{_pkgconfigdir}/libdebuginfod.pc
 %{_mandir}/man3/debuginfod_*.3*
+%endif
This page took 0.265253 seconds and 4 git commands to generate.