diff --git a/elfutils-0.180.tar.bz2 b/elfutils-0.182.tar.bz2 similarity index 53% rename from elfutils-0.180.tar.bz2 rename to elfutils-0.182.tar.bz2 index cdb4e3c77c48a4f6768c2c1d9ce1d3ee15436315..2d37aecd4af8d252b55c7e9e0ee5f9a5420f1221 100644 Binary files a/elfutils-0.180.tar.bz2 and b/elfutils-0.182.tar.bz2 differ diff --git a/elfutils.spec b/elfutils.spec index 977d8f6181512ca87b9a34b1de0adb75c05fc8d5..3e8c6bda763626cadf6b62716110cd01fd5ab970 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ # -*- rpm-spec from http://elfutils.org/ -*- Name: elfutils -Version: 0.180 +Version: 0.182 Release: 1 Summary: A collection of utilities and DSOs to handle ELF files and DWARF data URL: http://elfutils.org/ @@ -13,6 +13,12 @@ Requires: glibc >= 2.7 libstdc++ BuildRoot: %{_tmppath}/%{name}-root BuildRequires: gcc >= 4.1.2-33 m4 zlib-devel gdb-headless +#for debuginfod +BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33 +BuildRequires: pkgconfig(libcurl) >= 7.29.0 +BuildRequires: pkgconfig(sqlite3) >= 3.7.17 +BuildRequires: pkgconfig(libarchive) >= 3.1.2 + %define _gnu %{nil} %define _programprefix eu- @@ -53,11 +59,53 @@ assembler interface. libelf allows you to access the internals of the ELF object file format, so you can see the different sections of an ELF file. +%package help +Summary: Help documents for elfutils + +%description help +This package contains help documents for elfutils + +%package debuginfod-client +Summary: Library and command line client for build-id HTTP ELF/DWARF server +License: GPLv3+ and (GPLv2+ or LGPLv3+) + +%package debuginfod-client-devel +Summary: Libraries and headers to build debuginfod client applications +License: GPLv2+ or LGPLv3+ + +%package debuginfod +Summary: HHTP ELF/DWARF file server address by build-id +License: GPLv3+ +BuildRequires: systemd +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Requires(pre): shadow-utils +# To extract .dep files with a bsdtar (=libarchive) subshell +Requires: bsdtar + +%description debuginfod-client +The elfutils-debuginfod-client package contains shared libraries +dynamically loaded from -ldw, which use a debuginfod service +to look up debuginfo and associated data. Also includes a +command-line frontend. + +%description debuginfod-client-devel +The elfutils-debuginfod-client-devel package contains the libraries +to create applications to use the debuginfod service. + +%description debuginfod +The elfutils-debuginfod package contains the debuginfod binary +and control files for a service that can provide ELF/DWARF +files to remote clients, based on build-id identification. +The ELF/DWARF file searching functions in libdwfl can query +such servers to download those files on demand. + %prep %setup -q %build -%configure --program-prefix=%{_programprefix} --disable-debuginfod +%configure --program-prefix=%{_programprefix} make -s %{?_smp_mflags} %install @@ -67,7 +115,14 @@ mkdir -p ${RPM_BUILD_ROOT}%{_prefix} %make_install chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so* +rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.sh +rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.csh + install -Dm0644 config/10-default-yama-scope.conf ${RPM_BUILD_ROOT}%{_sysctldir}/10-default-yama-scope.conf +install -Dm0644 config/debuginfod.service ${RPM_BUILD_ROOT}%{_unitdir}/debuginfod.service +install -Dm0644 config/debuginfod.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/debuginfod +mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod +touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite %check make -s %{?_smp_mflags} check @@ -111,8 +166,6 @@ rm -rf ${RPM_BUILD_ROOT} %{_libdir}/libelf-%{version}.so %{_libdir}/libelf.so.* %{_datadir}/locale/*/LC_MESSAGES/elfutils.mo -%{_datadir}/man/man1/eu-*.gz -%{_datadir}/man/man3/elf_*.gz %{_sysctldir}/10-default-yama-scope.conf %files devel @@ -138,7 +191,54 @@ rm -rf ${RPM_BUILD_ROOT} %{_libdir}/pkgconfig/libdw.pc %{_libdir}/pkgconfig/libelf.pc +%files help +%{_mandir}/man1/eu-*.1* +%{_mandir}/man1/debuginfod-find.1* +%{_mandir}/man3/debuginfod_*.3* +%{_mandir}/man3/elf_*.3* +%{_mandir}/man8/debuginfod.8* + +%files debuginfod-client +%defattr(-,root,root) +%{_libdir}/libdebuginfod-%{version}.so +%{_bindir}/debuginfod-find + +%files debuginfod-client-devel +%defattr(-,root,root) +%{_libdir}/pkgconfig/libdebuginfod.pc +%{_includedir}/elfutils/debuginfod.h +%{_libdir}/libdebuginfod.so* + +%files debuginfod +%defattr(-,root,root) +%{_bindir}/debuginfod +%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sysconfig/debuginfod +%{_unitdir}/debuginfod.service +%{_sysconfdir}/sysconfig/debuginfod + +%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod +%verify(not md5 size mtime) %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite + +%pre debuginfod +getent group debuginfod >/dev/null || groupadd -r debuginfod +getent passwd debuginfod >/dev/null || \ + useradd -r -g debuginfod -d /var/cache/debuginfod -s /sbin/nologin \ + -c "elfutils debuginfo server" debuginfod +exit 0 + +%post debuginfod +%systemd_post debuginfod.service + +%postun debuginfod +%systemd_postun_with_restart debuginfod.service + %changelog +* Tue Jan 26 2021 yang_zhuang_zhuang - 0.182-1 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:update version to 0.182 + * Wed Jul 29 2020 yang_zhuang_zhuang - 0.180-1 - Type:enhancement - ID:NA