Sync from SUSE:SLFO:Main elfutils revision 396796d0eec8c4bab9491927df015e95

This commit is contained in:
Adrian Schröter 2024-05-03 12:19:40 +02:00
commit 095f93db14
14 changed files with 2481 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

View File

@ -0,0 +1,16 @@
All patches need to have a patch description header similar to what is used in
SUSE kernel git tree.
Patches added without this will be reverted.
From: Name <email>
Subject: Summary of fix
Date: date
References: bnc#xxxxxx (bugzilla reference)
Upstream: upstream revision or a description of why it is not upstream
Signed-Off-by: Name <email> (same as From: if committer is patch author)
Short paragraph describing problem/fix.
References to upstream repo/commit-id if applicable.

3
_multibuild Normal file
View File

@ -0,0 +1,3 @@
<multibuild>
<package>elfutils-debuginfod</package>
</multibuild>

7
baselibs.conf Normal file
View File

@ -0,0 +1,7 @@
libasm1
libdw1
libelf1
libelf-devel
requires -libelf-<targettype>
requires "libelf1-<targettype> = <version>"
conflicts "libelf0-devel-<targettype>"

BIN
elfutils-0.189.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.

BIN
elfutils-0.189.tar.bz2.sig Normal file

Binary file not shown.

381
elfutils-debuginfod.changes Normal file
View File

@ -0,0 +1,381 @@
-------------------------------------------------------------------
Tue Mar 7 12:36:01 UTC 2023 - Martin Liška <mliska@suse.cz>
- Fix file listing for 15.x builds.
-------------------------------------------------------------------
Fri Mar 3 16:52:50 UTC 2023 - Martin Liška <mliska@suse.cz>
- Update to version 0.189:
* configure: eu-nm, eu-addr2line and eu-stack can provide demangled symbols
when linked with libstdc++. Use --disable-demangler to disable.
A new option --enable-sanitize-memory has been added for msan
sanitizer support.
* libelf: elf_compress now supports ELFCOMPRESS_ZSTD when build against
libzstd
* libdwfl: dwfl_module_return_value_location now returns 0 (no return type)
for DIEs that point to a DW_TAG_unspecified_type.
* elfcompress: -t, --type= now support zstd if libelf has been build with
ELFCOMPRESS_ZSTD support.
* backends: Add support for LoongArch and Synopsys ARCv2 processors.
- drop upsteam patches:
* elfutils-0.188-CURLOPT_PROTOCOLS_STR.patch
* elfutils-0.188-CURL_AT_LEAST_VERSION.patch
* elfutils-0.188-deprecated-CURLINFO.patch
* support-DW_TAG_unspecified_type.patch
- Enable -Werror=use-after-free again.
-------------------------------------------------------------------
Thu Feb 23 09:29:20 UTC 2023 - Martin Liška <mliska@suse.cz>
- Disable a false-positive -Werror=use-after-free warning.
-------------------------------------------------------------------
Thu Feb 16 13:00:33 UTC 2023 - Pedro Monreal <pmonreal@suse.com>
- Fix build with libcurl version 7.88.0 for various deprecated
constants. Add patches:
* elfutils-0.188-CURLOPT_PROTOCOLS_STR.patch
* elfutils-0.188-CURL_AT_LEAST_VERSION.patch
* elfutils-0.188-deprecated-CURLINFO.patch
-------------------------------------------------------------------
Tue Feb 14 09:46:19 UTC 2023 - Martin Liška <mliska@suse.cz>
- Add support-DW_TAG_unspecified_type.patch that fixes PR30047.
-------------------------------------------------------------------
Fri Dec 9 08:34:19 UTC 2022 - Thorsten Kukuk <kukuk@suse.com>
- Remove dependency to not used sysconfig package
- Weaken systemd dependency, no hard requires necessary
-------------------------------------------------------------------
Wed Nov 9 15:31:15 UTC 2022 - Dirk Müller <dmueller@suse.com>
- align patches section
- remove date/time handling weirdness, elfutils does no longer
use __DATE__ or __TIME__ (as proven by the newly added -Werror=date-time)
-------------------------------------------------------------------
Mon Nov 7 08:38:51 UTC 2022 - Martin Liška <mliska@suse.cz>
- Update to version 0.188:
* readelf: Add -D, --use-dynamic option.
* debuginfod-client: Add $DEBUGINFOD_HEADERS_FILE setting to supply
outgoing debuginfod_find_section.
* debuginfod: Add --disable-source-scan option.
* libdwfl: Add new function dwfl_get_debuginfod_client.
Add new function dwfl_frame_reg.
Add new function dwfl_report_offline_memory.
- Remove upstreamed patches:
* 0001-libelf-Sync-elf.h-from-glibc.patch
* 0002-backends-Handle-new-RISC-V-specific-definitions.patch
* 0003-elflint-Allow-zero-p_memsz-for-PT_RISCV_ATTRIBUTES.patch
* 0004-readelf-Handle-SHT_RISCV_ATTRIBUTES-like-SHT_GNU_ATT.patch
* PR29474-debuginfod.patch
* config-Move-the-2-dev-null-inside-the-sh-c-quotes-fo.patch
* support-nullglob-in-profile.-.in-files.patch
-------------------------------------------------------------------
Wed Aug 17 11:42:11 UTC 2022 - Martin Liška <mliska@suse.cz>
- Use %ghost for debuginfod.sqlite file.
-------------------------------------------------------------------
Tue Aug 16 13:29:30 UTC 2022 - Martin Liška <mliska@suse.cz>
- Add support-nullglob-in-profile.-.in-files.patch
fixes boo#1202440.
-------------------------------------------------------------------
Mon Aug 15 11:04:57 UTC 2022 - Martin Liška <mliska@suse.cz>
- Add PR29474-debuginfod.patch in order to fix PR29474.
-------------------------------------------------------------------
Fri Aug 12 12:35:57 UTC 2022 - Martin Liška <mliska@suse.cz>
- Add Recommends for libdebuginfod1 so that debuginfod-profile
sets the DEBUGINFOD_URLS.
-------------------------------------------------------------------
Wed Jun 15 11:28:34 UTC 2022 - Martin Liška <mliska@suse.cz>
- Add debuginfod-profile subpackage that collects settings
files (boo#1200100).
-------------------------------------------------------------------
Fri May 13 12:16:45 UTC 2022 - Martin Liška <mliska@suse.cz>
- Add config-Move-the-2-dev-null-inside-the-sh-c-quotes-fo.patch
in order to fix boo#1199265.
-------------------------------------------------------------------
Mon May 2 07:30:54 UTC 2022 - Martin Liška <mliska@suse.cz>
- Do not set DEBUGINFOD_URLS for anything older than Tumbleweed.
-------------------------------------------------------------------
Tue Apr 26 07:16:29 UTC 2022 - Martin Liška <mliska@suse.cz>
- Update to version 0.187:
* debuginfod: Support -C option for connection thread pooling.
* debuginfod-client: Negative cache file are now zero sized instead of
no-permission files.
* addr2line: The -A, --absolute option, which shows file names including
the full compilation directory is now the default. To get the
old behavior use the new option --relative.
* readelf, elflint: Recognize FDO Packaging Metadata ELF notes
* libdw, debuginfo-client: Load libcurl lazily only when files need to
be fetched remotely. libcurl is now never
loaded when DEBUGINFOD_URLS is unset. And when
DEBUGINFOD_URLS is set, libcurl is only loaded
when the debuginfod_begin function is called.
-------------------------------------------------------------------
Wed Apr 13 15:15:25 UTC 2022 - Callum Farmer <gmbr3@opensuse.org>
- Change to systemd-sysusers
* Add elfutils-debuginfod.sysusers
-------------------------------------------------------------------
Fri Feb 25 19:36:08 UTC 2022 - Tony Jones <tonyj@suse.com>
- Add support for zstd, needed to inspect kernel modules (bsc#1196510)
-------------------------------------------------------------------
Thu Nov 11 08:56:25 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to version 0.186:
debuginfod-client: Default $DEBUGINFOD_URLS is computed from drop-in files
etc/debuginfod*.urls rather than hardcoded into the
/etc/profile.d/debuginfod* scripts.
Add $DEBUGINFOD_MAXSIZE and $DEBUGINFOD_MAXTIME settings
for skipping large/slow transfers.
Add $DEBUGINFOD_RETRY for retrying aborted lookups.
debuginfod: Supply extra HTTP response headers, describing archive/file
names that satisfy the requested buildid content.
Support -d :memory: option for in-memory databases.
Protect against loops in federated server configurations.
Add -r option to use -I/-X regexes for grooming stale files.
Protect against wasted CPU from duplicate concurrent requests.
Limit the duration of groom ops roughly to rescan (-t) times.
Add --passive mode for serving from read-only database.
Several other performance improvements & prometheus metrics.
libdw: Support for the NVIDIA Cuda line map extensions.
DW_LNE_NVIDIA_inlined_call and DW_LNE_NVIDIA_set_function_name
are defined in dwarf.h. New functions dwarf_linecontext and
dwarf_linefunctionname
- Remove tests-Allow-an-extra-pthread_kill-frame-in-backtrace.patch
and disable-run-readelf-self-test.patch.
- Remove -flto-partition=none -Wno-error=stack-usage= from _lto_flags
-------------------------------------------------------------------
Tue Oct 5 06:02:09 UTC 2021 - Stephan Kulow <coolo@suse.com>
- Enhance license fields: all the libraries actually have a different
license to the tools. While the tools are GPL-3.0-or-later, the
libraries are (LGPL-3.0-or-later OR GPL-2.0-or-later)
-------------------------------------------------------------------
Tue Sep 14 14:14:57 UTC 2021 - Martin Liška <mliska@suse.cz>
- Add harden_debuginfod.service.patch as
Automatic systemd hardening effort by the security team.
-------------------------------------------------------------------
Thu Aug 5 18:12:21 UTC 2021 - Martin Liška <mliska@suse.cz>
- Add tests-Allow-an-extra-pthread_kill-frame-in-backtrace.patch
in order to fix boo#1189083.
-------------------------------------------------------------------
Mon May 24 07:39:53 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to version 0.185:
debuginfod-client: Simplify curl handle reuse so downloads which
return an error are retried.
elfcompress: Always exit with code 0 when the operation succeeds (even
when nothing was done). On error the exit code is now always 1.
-------------------------------------------------------------------
Mon May 10 19:39:44 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to version 0.184:
debuginfod: Use libarchive's bsdtar as the .deb-family file unpacker.
debuginfod-client: Client caches negative results. If a query for a
file failed with 404, an empty 000 permission
file is created in the cache. This will prevent
requesting the same file for the next 10 minutes.
Client objects now carry long-lived curl handles
for outgoing connections. This makes it more
efficient for multiple sequential queries, because
the TCP connections and/or TLS state info are kept
around awhile, avoiding O(100ms) setup latencies.
libdw: handle DW_FORM_indirect when reading attributes
translations: Update Polish translation.
- Add 2 build dependences for tests.
-------------------------------------------------------------------
Tue Mar 16 15:40:31 UTC 2021 - Martin Liška <mliska@suse.cz>
- Enable https://debuginfod.opensuse.org/ debuginfod server
by default now.
- Add disable-run-readelf-self-test.patch in order to disable
a failing test-case with GCC 11 (PR27367).
-------------------------------------------------------------------
Mon Feb 8 10:59:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Update to version 0.183:
debuginfod: New thread-busy metric and more detailed error metrics.
New --fdcache-mintmp and tracking of filesystem freespace.
New increased webapi concurrency while grooming.
debuginfod-client: DEBUGINFOD_SONAME macro added to debuginfod.h which
can be used to dlopen the libdebuginfod.so library.
New function debuginfod_set_verbose_fd and
DEBUGINFOD_VERBOSE environment variable.
config: profile.sh and profile.csh won't export DEBUGINFOD_URLS unless
configured --enable-debuginfod-urls[=URLS]
elflint, readelf: Recognize SHF_GNU_RETAIN.
Handle SHT_X86_64_UNWIND as valid relocation target.
- Remove config-do-not-define-DEBUGINFOD_URLS-environment-var.patch patch.
-------------------------------------------------------------------
Mon Jan 4 12:01:02 UTC 2021 - Martin Liška <mliska@suse.cz>
- Add upstream config-do-not-define-DEBUGINFOD_URLS-environment-var.patch
in order to fix boo#1180306.
-------------------------------------------------------------------
Thu Dec 10 12:21:29 UTC 2020 - Martin Liška <mliska@suse.cz>
- Move profile files to libdebuginfod1 sub-package.
- Silent 2 rpmlint issues.
-------------------------------------------------------------------
Thu Nov 5 09:15:00 UTC 2020 - Martin Liška <mliska@suse.cz>
- Add new /etc/profile.d/debuginfod.{,c}sh files.
- Update to version 0.182:
backends: Support for tilegx has been removed.
config: New /etc/profile.d files to provide default $DEBUGINFOD_URLS.
debuginfod: More efficient package traversal, tolerate various errors
during scanning, grooming progress is more visible and
interruptible, more prometheus metrics.
debuginfod-client: Now supports compressed (kernel) ELF images.
libdwfl: Add ZSTD compression support.
-------------------------------------------------------------------
Tue Sep 22 07:59:56 UTC 2020 - Martin Liška <mliska@suse.cz>
- Add Conflicts for dummy packages.
-------------------------------------------------------------------
Tue Sep 15 11:50:27 UTC 2020 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Disable LTO again - boo#1138796
Adding -flto-partition=none and -Wno-error=stack-usage were
not enough:
[ 123s] libasm-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/libasm.a
[ 123s] libdw-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/libdw.a
[ 123s] libelf-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/libelf.a
[ 123s] This archive does not contain a non-empty .text section. The archive was not
[ 123s] created with -ffat-lto-objects option.
And adding -ffat-lto-objects breaks run-show-die-info.sh test.
-------------------------------------------------------------------
Tue Sep 8 15:18:57 UTC 2020 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Update to version 0.181:
libelf: elf_update now compensates (fixes up) a bad sh_addralign for
SHF_COMPRESSED sections.
libdebuginfod: configure now takes --enable-libdebuginfod=dummy or
--disable-libdebuginfod for bootstrapping.
DEBUGINFOD_URLS now accepts "scheme-free" urls
(guessing at what the user meant, either http:// or file://)
readelf, elflint: Handle aarch64 bti, pac bits in dynamic table and gnu
property notes.
libdw, readelf: Recognize DW_CFA_AARCH64_negate_ra_state. Allows unwinding
on arm64 for code that is compiled for PAC (Pointer
Authentication Code) as long as it isn't enabled
- Drop upstream patch:
* 0001-tests-Add-GCOV-flags-when-necessary.patch
-------------------------------------------------------------------
Mon Jun 15 07:12:57 UTC 2020 - Martin Liška <mliska@suse.cz>
- Remove remove-run-large-elf-file.sh.patch as it now checks for memory
size.
- Use autosetup.
-------------------------------------------------------------------
Thu Jun 11 18:19:10 UTC 2020 - Martin Liška <mliska@suse.cz>
- Update to version 0.180:
elflint: Allow SHF_EXCLUDE as generic section flag when --gnu is given.
libdw, readelf: Handle GCC LTO .gnu.debuglto_ prefix.
libdw: Use correct CU to resolve file names in dwarf_decl_file.
libdwfl: Handle debugaltlink in dwfl_standard_find_debuginfo.
size: Also obey radix printing for bsd format.
nm: Explicitly print weak 'V' or 'T' and common 'C' symbols.
- Add 0001-tests-Add-GCOV-flags-when-necessary.patch in order to fix
an unresolved symbol.
- Enable LTO: boo#1138796 by adding -flto-partition=none and -Wno-error=stack-usage.
-------------------------------------------------------------------
Mon Mar 30 12:07:18 UTC 2020 - Martin Liška <mliska@suse.cz>
- Update to version 0.179:
debuginfod-client: When DEBUGINFOD_PROGRESS is set and the program doesn't
install its own debuginfod_progressfn_t show download
progress on stderr.
DEBUGINFOD_TIMEOUT is now defined as seconds to get at
least 100K, defaults to 90 seconds.
Default to $XDG_CACHE_HOME/debuginfod_client.
New functions debuginfod_set_user_data,
debuginfod_get_user_data, debuginfod_get_url and
debuginfod_add_http_header.
Support for file:// URLs.
debuginfod: Uses libarchive directly for reading rpm archives.
Support for indexing .deb/.ddeb archives through dpkg-deb
or bsdtar.
Generic archive support through -Z EXT[=CMD]. Which can be
used for example for arch-linux pacman files by using
-Z '.tar.zst=zstdcat'.
Better logging using User-Agent and X-Forwarded-For headers.
More prometheus metrics.
Support for eliding dots or extraneous slashes in path names.
debuginfod-find: Accept /path/names in place of buildid hex.
libelf: Handle PN_XNUM in elf_getphdrnum before shdr 0 is cached
Ensure zlib resource cleanup on failure.
libdwfl: dwfl_linux_kernel_find_elf and dwfl_linux_kernel_report_offline
now find and handle a compressed vmlinuz image.
readelf, elflint: Handle PT_GNU_PROPERTY.
translations: Updated Ukrainian translation.
-------------------------------------------------------------------
Tue Feb 4 09:06:00 UTC 2020 - Martin Liška <mliska@suse.cz>
- Package debuginfod of elfutils for version 0.178.

225
elfutils-debuginfod.spec Normal file
View File

@ -0,0 +1,225 @@
#
# spec file for package elfutils-debuginfod
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: elfutils-debuginfod
Version: 0.189
Release: 0
Summary: Debuginfod server provided by elfutils
License: GPL-3.0-or-later
Group: Development/Tools/Building
URL: https://sourceware.org/elfutils/
#Git-Clone: git://sourceware.org/git/elfutils
Source: https://fedorahosted.org/releases/e/l/elfutils/%{version}/elfutils-%{version}.tar.bz2
Source1: https://fedorahosted.org/releases/e/l/elfutils/%{version}/elfutils-%{version}.tar.bz2.sig
Source3: elfutils.keyring
Source4: %{name}.sysusers
Patch1: harden_debuginfod.service.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
BuildRequires: bsdtar
BuildRequires: procps
BuildRequires: sysuser-tools
# For the run-debuginfod-find.sh test case in %%check for /usr/sbin/ss
BuildRequires: curl
BuildRequires: flex
BuildRequires: gcc-c++
BuildRequires: iproute
BuildRequires: libbz2-devel
BuildRequires: libzstd-devel
BuildRequires: pkgconfig
BuildRequires: xz-devel
BuildRequires: zlib-devel
BuildRequires: zstd
# For debuginfod
BuildRequires: pkgconfig(libarchive) >= 3.1.2
BuildRequires: pkgconfig(libcurl) >= 7.29.0
BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33
BuildRequires: pkgconfig(sqlite3) >= 3.7.17
BuildRequires: pkgconfig(systemd)
Requires: debuginfod-client = %{version}
Requires: elfutils = %{version}
Requires(post): %fillup_prereq
%{?systemd_ordering}
%sysusers_requires
%description
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.
%package -n libdebuginfod1
Summary: Library for build-id HTTP ELF/DWARF server
Group: System/Libraries
Conflicts: libdebuginfod1-dummy = %{version}
License: GPL-2.0-or-later OR LGPL-3.0-or-later
Recommends: debuginfod-profile
%description -n libdebuginfod1
The libdebuginfod1 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.
%package -n libdebuginfod-devel
Summary: Libraries and headers to build debuginfod client applications
Group: Development/Libraries/C and C++
Conflicts: libdebuginfod-dummy-devel = %{version}
License: GPL-2.0-or-later OR LGPL-3.0-or-later
Requires: libdebuginfod1 = %{version}
%description -n libdebuginfod-devel
The libdebuginfod-devel package contains the libraries
to create applications to use the debuginfod service.
%package -n debuginfod-client
Summary: Command line client for build-id HTTP ELF/DWARF server
Group: Development/Tools/Building
Conflicts: debuginfod-dummy-client = %{version}
%description -n debuginfod-client
The elfutils-debuginfod-client package contains a command-line frontend.
%package -n debuginfod-profile
Summary: Profile files for build-id HTTP ELF/DWARF server
Group: Development/Tools/Building
%description -n debuginfod-profile
The debuginfod-profile package contains a profile files that set default
URL for a distribution.
%lang_package
%prep
%autosetup -n elfutils-%version -p1
%build
%sysusers_generate_pre %{SOURCE4} %{name} %{name}.conf
export CFLAGS="%optflags -Werror=date-time"
CFLAGS+=" -g" # tests need debug info enabled (boo#1031556)
%ifarch %sparc
# Small PIC model not sufficient
CFLAGS+=" -fPIC"
%endif
autoreconf -fi
# some patches create new test scripts, which are created 644 by default
chmod a+x tests/run*.sh
%configure \
%if %{suse_version} > 1500
--enable-debuginfod-urls=https://debuginfod.opensuse.org/ \
%endif
--program-prefix=eu-
%make_build
%install
%make_install
# remove unneeded files
rm -f %{buildroot}/%{_libdir}/*.la
ls -lR %{buildroot}/%{_libdir}/libelf*
rm -f %{buildroot}/%{_bindir}/eu*
rm -f %{buildroot}/%{_libdir}/libasm*
rm -f %{buildroot}/%{_includedir}/elfutils/lib*.h
rm -f %{buildroot}/%{_includedir}/elfutils/elf-knowledge.h
rm -f %{buildroot}/%{_includedir}/elfutils/known-dwarf.h
rm -f %{buildroot}/%{_includedir}/elfutils/version.h
rm -f %{buildroot}/%{_libdir}/libelf*
rm -f %{buildroot}/%{_includedir}/libelf.h
rm -f %{buildroot}/%{_includedir}/gelf.h
rm -f %{buildroot}/%{_includedir}/nlist.h
rm -f %{buildroot}/%{_includedir}/dwarf.h
rm -f %{buildroot}/%{_libdir}/libdw*
rm -f %{buildroot}/%{_mandir}/man3/elf_*.3*
rm -f %{buildroot}/%{_mandir}/man1/eu-*.1*
rm -rf %{buildroot}%{_datadir}/locale/
rm -f %{buildroot}/%{_libdir}/pkgconfig/libdw.pc
rm -f %{buildroot}/%{_libdir}/pkgconfig/libelf.pc
install -Dm0644 config/debuginfod.service %{buildroot}%{_unitdir}/debuginfod.service
install -d -m 755 %{buildroot}%{_fillupdir}
cp config/debuginfod.sysconfig %{buildroot}%{_fillupdir}/sysconfig.debuginfod
install -Dm0644 %{SOURCE4} %{buildroot}%{_sysusersdir}/%{name}.conf
mkdir -p %{buildroot}%{_localstatedir}/cache/debuginfod
touch %{buildroot}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite
%post -n libdebuginfod1 -p /sbin/ldconfig
%postun -n libdebuginfod1 -p /sbin/ldconfig
%check
%if 0%{?qemu_user_space_build}
# qemu-linux-user does not support ptrace and a few other process details
export XFAIL_TESTS="dwfl-proc-attach run-backtrace-dwarf.sh run-backtrace-native.sh run-deleted.sh"
%endif
%make_build check
%files
%license COPYING
%doc AUTHORS ChangeLog NEWS NOTES README THANKS TODO
%{_bindir}/debuginfod
%{_unitdir}/debuginfod.service
%{_mandir}/man8/debuginfod.8*
%{_fillupdir}/sysconfig.debuginfod
%{_sysusersdir}/%{name}.conf
%{_mandir}/man8/debuginfod.service.8.*
%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod
%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
%files -n libdebuginfod1
%{_libdir}/libdebuginfod.so.*
%{_libdir}/libdebuginfod-%{version}.so
%files -n libdebuginfod-devel
%{_libdir}/pkgconfig/libdebuginfod.pc
%{_mandir}/man3/debuginfod_*.3*
%dir %{_includedir}/elfutils
%{_includedir}/elfutils/debuginfod.h
%{_libdir}/libdebuginfod.so
%files -n debuginfod-client
%{_bindir}/debuginfod-find
%{_mandir}/man1/debuginfod-find.1*
%{_mandir}/man7/debuginfod-client-config.7*
%files -n debuginfod-profile
%config %{_sysconfdir}/profile.d/debuginfod.sh
%config %{_sysconfdir}/profile.d/debuginfod.csh
%dir %{_sysconfdir}/debuginfod
%if %{suse_version} > 1500
%config %{_sysconfdir}/debuginfod/elfutils.urls
%endif
%pre -f %{name}.pre
%service_add_pre debuginfod.service
%post
%service_add_post debuginfod.service
%{fillup_only -n debuginfod}
%preun
%service_del_preun debuginfod.service
%postun
%service_del_postun debuginfod.service
%changelog

View File

@ -0,0 +1,2 @@
#Type Name ID GECOS Home directory Shell
u debuginfod - "elfutils debuginfo server" /var/cache/debuginfod -

1
elfutils-rpmlintrc Normal file
View File

@ -0,0 +1 @@
addFilter("libdebuginfod.* shlib-policy-name-error.*")

1341
elfutils.changes Normal file

File diff suppressed because it is too large Load Diff

183
elfutils.keyring Normal file
View File

@ -0,0 +1,183 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
9JTW29nF
=1liE
-----END PGP PUBLIC KEY BLOCK-----

272
elfutils.spec Normal file
View File

@ -0,0 +1,272 @@
#
# spec file for package elfutils
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: elfutils
Version: 0.189
Release: 0
Summary: Higher-level library to access ELF files
License: GPL-3.0-or-later
Group: Development/Tools/Building
URL: https://sourceware.org/elfutils/
#Git-Clone: git://sourceware.org/git/elfutils
Source: https://fedorahosted.org/releases/e/l/%{name}/%{version}/%{name}-%{version}.tar.bz2
Source1: README-BEFORE-ADDING-PATCHES
Source2: baselibs.conf
Source4: https://fedorahosted.org/releases/e/l/%{name}/%{version}/%{name}-%{version}.tar.bz2.sig
Source5: %{name}.keyring
Source6: elfutils-rpmlintrc
Patch1: harden_debuginfod.service.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
BuildRequires: flex
# For libstdc++ demangle support
BuildRequires: gcc-c++
BuildRequires: libbz2-devel
BuildRequires: libzstd-devel
BuildRequires: xz-devel
BuildRequires: zlib-devel
BuildRequires: zstd
%description
elfutils is a collection of utilities and libraries to read, create
and modify ELF binary files, find and handle DWARF debug data,
symbols, thread state and stacktraces for processes and core files.
%package -n libasm1
Summary: A collection of utilities and DSOs to handle compiled objects
Group: System/Libraries
License: GPL-2.0-or-later OR LGPL-3.0-or-later
%description -n libasm1
libasm contains the "asm" and "disasm" functions to assemble and
disassamble instructions. (There is only partial support for i686 and
BPF instructions.) This is part of the elfutils package.
%package -n libasm-devel
Summary: A collection of utilities and DSOs to handle compiled objects
Group: Development/Libraries/C and C++
Requires: glibc-devel
Requires: libasm1 = %{version}
License: GPL-2.0-or-later OR LGPL-3.0-or-later
%description -n libasm-devel
This package contains the headers and libraries needed to build
applications that require libasm.
%package -n libelf1
Summary: Library to read and write ELF files
Group: System/Libraries
License: GPL-2.0-or-later OR LGPL-3.0-or-later
%description -n libelf1
This package provides a high-level library to read and write ELF files.
This is part of the elfutils package.
%package -n libelf-devel
Summary: Development files for libelf
Group: Development/Libraries/C and C++
Requires: glibc-devel
Requires: libelf1 = %{version}
Conflicts: libelf0-devel
License: GPL-2.0-or-later OR LGPL-3.0-or-later
%description -n libelf-devel
This package contains the headers and libraries needed to build
applications that require libelf.
%package -n libdw1
Summary: Library to access DWARF debugging information
Group: System/Libraries
License: GPL-2.0-or-later OR LGPL-3.0-or-later
%description -n libdw1
This package provides a high-level library to access the DWARF debugging
information. This is part of the elfutils package.
%package -n libdw-devel
Summary: Development files for libdw
Group: Development/Libraries/C and C++
Requires: glibc-devel
Requires: libdw1 = %{version}
Requires: libelf-devel = %{version}
License: GPL-2.0-or-later OR LGPL-3.0-or-later
%description -n libdw-devel
This package contains the headers and libraries needed to build
applications that require libdw.
%package -n libdebuginfod1-dummy
Summary: Library for build-id HTTP ELF/DWARF server
Group: System/Libraries
Provides: libdebuginfod1 = %{version}
License: GPL-2.0-or-later OR LGPL-3.0-or-later
%description -n libdebuginfod1-dummy
The libdebuginfod1 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.
The package is dummy.
%package -n libdebuginfod-dummy-devel
Summary: Libraries and headers to build debuginfod client applications
Group: Development/Libraries/C and C++
Provides: libdebuginfod-devel = %{version}
License: GPL-2.0-or-later OR LGPL-3.0-or-later
Requires: libdebuginfod1-dummy = %{version}
%description -n libdebuginfod-dummy-devel
The libdebuginfod-devel package contains the libraries
to create applications to use the debuginfod service.
The package is dummy.
%package -n debuginfod-dummy-client
Summary: Command line client for build-id HTTP ELF/DWARF server
Group: Development/Tools/Building
Provides: debuginfod-client = %{version}
%description -n debuginfod-dummy-client
The elfutils-debuginfod-client package contains a command-line frontend.
The package is dummy.
%lang_package
%prep
%autosetup -p1
%build
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
export CFLAGS="%optflags -Werror=date-time"
CFLAGS+=" -g" # tests need debug info enabled (boo#1031556)
%ifarch %sparc
# Small PIC model not sufficient
CFLAGS+=" -fPIC"
%endif
autoreconf -fi
# some patches create new test scripts, which are created 644 by default
chmod a+x tests/run*.sh
%configure --program-prefix=eu- --disable-debuginfod --enable-libdebuginfod=dummy
%make_build
%install
%make_install
# remove unneeded files
rm -f %{buildroot}/%{_libdir}/*.la
rm -f %{buildroot}/%{_sysconfdir}/profile.d/debuginfod.*sh
rm -f %{buildroot}/%{_libdir}/pkgconfig/libdebuginfod.pc
ls -lR %{buildroot}/%{_libdir}/libelf*
%find_lang %{name}
%post -n libasm1 -p /sbin/ldconfig
%post -n libelf1 -p /sbin/ldconfig
%post -n libdw1 -p /sbin/ldconfig
%postun -n libasm1 -p /sbin/ldconfig
%postun -n libelf1 -p /sbin/ldconfig
%postun -n libdw1 -p /sbin/ldconfig
%post -n libdebuginfod1-dummy -p /sbin/ldconfig
%postun -n libdebuginfod1-dummy -p /sbin/ldconfig
%check
%if 0%{?qemu_user_space_build}
# qemu-linux-user does not support ptrace and a few other process details
export XFAIL_TESTS="dwfl-proc-attach run-backtrace-dwarf.sh run-backtrace-native.sh run-deleted.sh"
%endif
%make_build check
%files
%license COPYING
%doc AUTHORS ChangeLog NEWS NOTES README THANKS TODO
%{_bindir}/eu-addr2line
%{_bindir}/eu-ar
%{_bindir}/eu-elfclassify
%{_bindir}/eu-elfcmp
%{_bindir}/eu-elfcompress
%{_bindir}/eu-elflint
%{_bindir}/eu-findtextrel
%{_bindir}/eu-make-debug-archive
%{_bindir}/eu-nm
%{_bindir}/eu-objdump
%{_bindir}/eu-ranlib
%{_bindir}/eu-readelf
%{_bindir}/eu-size
%{_bindir}/eu-stack
%{_bindir}/eu-strings
%{_bindir}/eu-strip
%{_bindir}/eu-unstrip
%{_mandir}/man1/eu-*.1*
%files -n libasm1
%{_libdir}/libasm.so.*
%{_libdir}/libasm-%{version}.so
%files -n libasm-devel
%{_libdir}/libasm.so
%{_libdir}/libasm.a
%dir %{_includedir}/elfutils
%{_includedir}/elfutils/libasm.h
%files -n libelf1
%{_libdir}/libelf.so.*
%{_libdir}/libelf-%{version}.so
%files -n libelf-devel
%{_libdir}/libelf.so
%{_libdir}/libelf.a
%{_includedir}/libelf.h
%{_includedir}/gelf.h
%{_includedir}/nlist.h
%dir %{_includedir}/elfutils
%{_includedir}/elfutils/elf-knowledge.h
%{_includedir}/elfutils/version.h
%{_libdir}/pkgconfig/libelf.pc
%{_mandir}/man3/elf_*.3*
%files -n libdw1
%{_libdir}/libdw.so.*
%{_libdir}/libdw-%{version}.so
%files -n libdw-devel
%{_libdir}/libdw.a
%{_libdir}/libdw.so
%{_includedir}/dwarf.h
%dir %{_includedir}/elfutils
%{_includedir}/elfutils/libdw.h
%{_includedir}/elfutils/libdwelf.h
%{_includedir}/elfutils/libdwfl.h
%{_includedir}/elfutils/known-dwarf.h
%{_libdir}/pkgconfig/libdw.pc
%files -n libdebuginfod1-dummy
%{_libdir}/libdebuginfod.so.*
%{_libdir}/libdebuginfod-%{version}.so
%files -n libdebuginfod-dummy-devel
%{_mandir}/man3/debuginfod_*.3*
%dir %{_includedir}/elfutils
%{_includedir}/elfutils/debuginfod.h
%{_libdir}/libdebuginfod.so
%files -n debuginfod-dummy-client
%{_bindir}/debuginfod-find
%{_mandir}/man1/debuginfod-find.1*
%{_mandir}/man7/debuginfod-client-config.7*
%files lang -f %{name}.lang
%changelog

View File

@ -0,0 +1,24 @@
Index: elfutils-0.185/config/debuginfod.service
===================================================================
--- elfutils-0.185.orig/config/debuginfod.service
+++ elfutils-0.185/config/debuginfod.service
@@ -12,6 +12,19 @@ ExecStart=/usr/bin/debuginfod -d /var/ca
# Stopping can take a long time if scanning of large archives is in progress
TimeoutStopSec=60
PrivateTmp=yes
+# added automatically, for details please see
+# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
+ProtectSystem=full
+ProtectHome=true
+PrivateDevices=true
+ProtectHostname=true
+ProtectClock=true
+ProtectKernelTunables=true
+ProtectKernelModules=true
+ProtectKernelLogs=true
+ProtectControlGroups=true
+RestrictRealtime=true
+# end of automatic additions
[Install]
WantedBy=multi-user.target