1# -*- rpm-spec-*- 2Name: elfutils 3Version: @PACKAGE_VERSION@ 4Release: 1 5URL: http://elfutils.org/ 6License: GPLv3+ and (GPLv2+ or LGPLv3+) and GFDL 7Source: ftp://sourceware.org/pub/elfutils/%{version}/elfutils-%{version}.tar.bz2 8Summary: A collection of utilities and DSOs to handle ELF files and DWARF data 9 10Requires: elfutils-libelf = %{version}-%{release} 11Requires: elfutils-libs = %{version}-%{release} 12# Can be a Recommends if rpm supports that 13Requires: elfutils-debuginfod-client = %{version}-%{release} 14 15BuildRequires: gcc 16# For libstdc++ demangle support 17BuildRequires: gcc-c++ 18 19BuildRequires: gettext 20BuildRequires: bison 21BuildRequires: flex 22 23# Compression support 24BuildRequires: zlib-devel 25BuildRequires: bzip2-devel 26BuildRequires: xz-devel 27BuildRequires: libzstd-devel 28 29# For debuginfod 30BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33 31BuildRequires: pkgconfig(libcurl) >= 7.29.0 32BuildRequires: pkgconfig(sqlite3) >= 3.7.17 33BuildRequires: pkgconfig(libarchive) >= 3.1.2 34 35# For tests need to bunzip2 test files. 36BuildRequires: bzip2 37BuildRequires: zstd 38# For the run-debuginfod-find.sh test case in %%check for /usr/sbin/ss etc. 39BuildRequires: iproute 40BuildRequires: procps 41BuildRequires: bsdtar 42BuildRequires: curl 43# For run-debuginfod-response-headers.sh test case 44BuildRequires: socat 45 46%define _gnu %{nil} 47%define _programprefix eu- 48 49%description 50Elfutils is a collection of utilities, including stack (to show 51backtraces), nm (for listing symbols from object files), size 52(for listing the section sizes of an object or archive file), 53strip (for discarding symbols), readelf (to see the raw ELF file 54structures), elflint (to check for well-formed ELF files) and 55elfcompress (to compress or decompress ELF sections). 56 57%package libs 58Summary: Libraries to handle compiled objects 59License: GPLv2+ or LGPLv3+ 60Requires: elfutils-libelf = %{version}-%{release} 61Requires: default-yama-scope 62# Can be a Recommends if rpm supports that 63Requires: elfutils-debuginfod-client = %{version}-%{release} 64 65%description libs 66The elfutils-libs package contains libraries which implement DWARF, ELF, 67and machine-specific ELF handling and process introspection. These 68libraries are used by the programs in the elfutils package. The 69elfutils-devel package enables building other programs using these 70libraries. 71 72%package devel 73Summary: Development libraries to handle compiled objects 74License: GPLv2+ or LGPLv3+ 75Requires: elfutils-libs = %{version}-%{release} 76Requires: elfutils-libelf-devel = %{version}-%{release} 77# Can be a Recommends if rpm supports that 78Requires: elfutils-debuginfod-client-devel = %{version}-%{release} 79 80%description devel 81The elfutils-devel package contains the libraries to create 82applications for handling compiled objects. libdw provides access 83to the DWARF debugging information. libasm provides a programmable 84assembler interface. 85 86%package devel-static 87Summary: Static archives to handle compiled objects 88License: GPLv2+ or LGPLv3+ 89Requires: elfutils-devel = %{version}-%{release} 90Requires: elfutils-libelf-devel-static = %{version}-%{release} 91 92%description devel-static 93The elfutils-devel-static package contains the static archives 94with the code to handle compiled objects. 95 96%package libelf 97Summary: Library to read and write ELF files 98License: GPLv2+ or LGPLv3+ 99 100%description libelf 101The elfutils-libelf package provides a DSO which allows reading and 102writing ELF files on a high level. Third party programs depend on 103this package to read internals of ELF files. The programs of the 104elfutils package use it also to generate new ELF files. 105 106%package libelf-devel 107Summary: Development support for libelf 108License: GPLv2+ or LGPLv3+ 109Requires: elfutils-libelf = %{version}-%{release} 110Conflicts: libelf-devel 111 112%description libelf-devel 113The elfutils-libelf-devel package contains the libraries to create 114applications for handling compiled objects. libelf allows you to 115access the internals of the ELF object file format, so you can see the 116different sections of an ELF file. 117 118%package libelf-devel-static 119Summary: Static archive of libelf 120License: GPLv2+ or LGPLv3+ 121Requires: elfutils-libelf-devel = %{version}-%{release} 122Conflicts: libelf-devel 123 124%description libelf-devel-static 125The elfutils-libelf-static package contains the static archive 126for libelf. 127 128%package default-yama-scope 129Summary: Default yama attach scope sysctl setting 130License: GPLv2+ or LGPLv3+ 131Provides: default-yama-scope 132BuildArch: noarch 133 134%description default-yama-scope 135Yama sysctl setting to enable default attach scope settings 136enabling programs to use ptrace attach, access to 137/proc/PID/{mem,personality,stack,syscall}, and the syscalls 138process_vm_readv and process_vm_writev which are used for 139interprocess services, communication and introspection 140(like synchronisation, signaling, debugging, tracing and 141profiling) of processes. 142 143%package debuginfod-client 144Summary: Library and command line client for build-id HTTP ELF/DWARF server 145License: GPLv3+ and (GPLv2+ or LGPLv3+) 146# For debuginfod-find binary 147Requires: elfutils-libs = %{version}-%{release} 148Requires: elfutils-libelf = %{version}-%{release} 149 150%package debuginfod-client-devel 151Summary: Libraries and headers to build debuginfod client applications 152License: GPLv2+ or LGPLv3+ 153Requires: elfutils-debuginfod-client = %{version}-%{release} 154 155%package debuginfod 156Summary: HTTP ELF/DWARF file server addressed by build-id 157License: GPLv3+ 158Requires: elfutils-libs = %{version}-%{release} 159Requires: elfutils-libelf = %{version}-%{release} 160Requires: elfutils-debuginfod-client = %{version}-%{release} 161BuildRequires: systemd 162Requires(post): systemd 163Requires(preun): systemd 164Requires(postun): systemd 165Requires(pre): shadow-utils 166# To extract .deb files with a bsdtar (= libarchive) subshell 167Requires: bsdtar 168 169%description debuginfod-client 170The elfutils-debuginfod-client package contains shared libraries 171dynamically loaded from -ldw, which use a debuginfod service 172to look up debuginfo and associated data. Also includes a 173command-line frontend. 174 175%description debuginfod-client-devel 176The elfutils-debuginfod-client-devel package contains the libraries 177to create applications to use the debuginfod service. 178 179%description debuginfod 180The elfutils-debuginfod package contains the debuginfod binary 181and control files for a service that can provide ELF/DWARF 182files to remote clients, based on build-id identification. 183The ELF/DWARF file searching functions in libdwfl can query 184such servers to download those files on demand. 185 186%prep 187%setup -q 188 189%build 190%configure --program-prefix=%{_programprefix} --enable-debuginfod --enable-debuginfod-urls 191make -s %{?_smp_mflags} 192 193%install 194rm -rf ${RPM_BUILD_ROOT} 195mkdir -p ${RPM_BUILD_ROOT}%{_prefix} 196 197%make_install 198 199chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so* 200mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod 201touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite 202 203# XXX Nuke unpackaged files 204( cd ${RPM_BUILD_ROOT} 205 rm -f .%{_includedir}/elfutils/libasm.h 206 rm -f .%{_libdir}/libasm.so 207 rm -f .%{_libdir}/libasm.a 208) 209 210install -Dm0644 config/10-default-yama-scope.conf ${RPM_BUILD_ROOT}%{_sysctldir}/10-default-yama-scope.conf 211 212install -Dm0644 config/debuginfod.service ${RPM_BUILD_ROOT}%{_unitdir}/debuginfod.service 213install -Dm0644 config/debuginfod.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/debuginfod 214mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod 215touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite 216 217%check 218make -s %{?_smp_mflags} check 219 220%post libs -p /sbin/ldconfig 221%postun libs -p /sbin/ldconfig 222%post libelf -p /sbin/ldconfig 223%postun libelf -p /sbin/ldconfig 224%post debuginfod-client -p /sbin/ldconfig 225%postun debuginfod-client -p /sbin/ldconfig 226 227%post default-yama-scope 228# Due to circular dependencies might not be installed yet, so double check. 229# (systemd -> elfutils-libs -> default-yama-scope -> systemd) 230if [ -x /usr/lib/systemd/systemd-sysctl ] ; then 231%sysctl_apply 10-default-yama-scope.conf 232fi 233 234%files 235%license COPYING COPYING-GPLV2 COPYING-LGPLV3 doc/COPYING-GFDL 236%doc README TODO CONTRIBUTING SECURITY 237%{_bindir}/eu-addr2line 238%{_bindir}/eu-ar 239%{_bindir}/eu-elfclassify 240%{_bindir}/eu-elfcmp 241%{_bindir}/eu-elfcompress 242%{_bindir}/eu-elflint 243%{_bindir}/eu-findtextrel 244%{_bindir}/eu-make-debug-archive 245%{_bindir}/eu-nm 246%{_bindir}/eu-objdump 247%{_bindir}/eu-ranlib 248%{_bindir}/eu-readelf 249%{_bindir}/eu-size 250%{_bindir}/eu-srcfiles 251%{_bindir}/eu-stack 252%{_bindir}/eu-strings 253%{_bindir}/eu-strip 254%{_bindir}/eu-unstrip 255%{_mandir}/man1/eu-*.1* 256 257%files libs 258%license COPYING-GPLV2 COPYING-LGPLV3 259%{_libdir}/libasm-%{version}.so 260%{_libdir}/libdw-%{version}.so 261%{_libdir}/libasm.so.* 262%{_libdir}/libdw.so.* 263 264%files devel 265%{_includedir}/dwarf.h 266%dir %{_includedir}/elfutils 267%{_includedir}/elfutils/elf-knowledge.h 268%{_includedir}/elfutils/known-dwarf.h 269#%%{_includedir}/elfutils/libasm.h 270%{_includedir}/elfutils/libdw.h 271%{_includedir}/elfutils/libdwfl.h 272%{_includedir}/elfutils/libdwelf.h 273%{_includedir}/elfutils/version.h 274#%%{_libdir}/libasm.so 275%{_libdir}/libdw.so 276%{_libdir}/pkgconfig/libdw.pc 277 278%files devel-static 279%{_libdir}/libdw.a 280#%%{_libdir}/libasm.a 281 282%files libelf 283%license COPYING-GPLV2 COPYING-LGPLV3 284%{_libdir}/libelf-%{version}.so 285%{_libdir}/libelf.so.* 286%{_datadir}/locale/*/LC_MESSAGES/elfutils.mo 287 288%files libelf-devel 289%{_includedir}/libelf.h 290%{_includedir}/gelf.h 291%{_includedir}/nlist.h 292%{_libdir}/libelf.so 293%{_libdir}/pkgconfig/libelf.pc 294%{_mandir}/man3/elf_*.3* 295 296%files libelf-devel-static 297%{_libdir}/libelf.a 298 299%files default-yama-scope 300%{_sysctldir}/10-default-yama-scope.conf 301 302%files debuginfod-client 303%defattr(-,root,root) 304%{_libdir}/libdebuginfod-%{version}.so 305%{_libdir}/libdebuginfod.so.* 306%{_bindir}/debuginfod-find 307%{_mandir}/man1/debuginfod-find.1* 308%{_mandir}/man7/debuginfod*.7* 309%config(noreplace) %{_sysconfdir}/profile.d/* 310%config(noreplace) %{_sysconfdir}/debuginfod/* 311 312%files debuginfod-client-devel 313%defattr(-,root,root) 314%{_libdir}/pkgconfig/libdebuginfod.pc 315%{_mandir}/man3/debuginfod_*.3* 316%{_mandir}/man7/debuginfod*.7* 317%{_includedir}/elfutils/debuginfod.h 318%{_libdir}/libdebuginfod.so 319 320%files debuginfod 321%defattr(-,root,root) 322%{_bindir}/debuginfod 323%config(noreplace) %{_sysconfdir}/sysconfig/debuginfod 324%{_unitdir}/debuginfod.service 325%{_mandir}/man8/debuginfod*.8* 326%{_mandir}/man7/debuginfod*.7* 327 328%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod 329%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite 330 331%pre debuginfod 332getent group debuginfod >/dev/null || groupadd -r debuginfod 333getent passwd debuginfod >/dev/null || \ 334 useradd -r -g debuginfod -d /var/cache/debuginfod -s /sbin/nologin \ 335 -c "elfutils debuginfo server" debuginfod 336exit 0 337 338%post debuginfod 339%systemd_post debuginfod.service 340 341%postun debuginfod 342%systemd_postun_with_restart debuginfod.service 343 344%changelog 345* Fri Mar 1 2024 Aaron Merey <[email protected]> 0.191-1 346- dwarf_addrdie now supports binaries lacking a .debug_aranges 347 section. 348- Improved support for DWARF package files. Add new function 349 dwarf_cu_dwp_section_info. 350- debuginfod: Caching eviction logic improvements to improve retention 351 of small/frequent/slow files such as Fedora's vdso.debug. 352- srcfiles: Can now fetch the source files of a DWARF/ELF file and 353 place them into a zip. 354 355* Fri Nov 3 2023 Mark Wielaard <[email protected]> 0.190-1 356- CONTRIBUTING: Switch from real name policy to known identity policy. 357 Updated ChangeLog policy (no more separate ChangeLog files). 358 There is a SECURITY bug policy now. The default branch is now 'main'. 359- libelf: Add RELR support. 360- libdw: Recognize .debug_[ct]u_index sections. 361- readelf: Support readelf -Ds, --use-dynamic --symbol. 362 Support .gdb_index version 9 363- scrlines: New tool that compiles a list of source files associated 364 with a specified dwarf/elf file. 365- debuginfod: Schema change (reindexing required, sorry!) for a 60% 366 compression in filename representation, which was a large 367 part of the sqlite index; also, more deliberate sqlite 368 -wal management during scanning using the --scan-checkpoint option. 369- backends: Various LoongArch updates. 370 371* Fri Mar 3 2023 Mark Wielaard <[email protected]> 0.189-1 372- configure: eu-nm, eu-addr2line and eu-stack can provide demangled 373 symbols when linked with libstdc++. Use --disable-demangler to disable. 374 A new option --enable-sanitize-memory has been added for msan sanitizer 375 support. 376- libelf: elf_compress now supports ELFCOMPRESS_ZSTD when build 377 against libzstd 378- libdwfl: dwfl_module_return_value_location now returns 0 (no return 379 type) for DIEs that point to a DW_TAG_unspecified_type. 380- elfcompress: -t, --type= now support zstd if libelf has been build 381 with ELFCOMPRESS_ZSTD support. 382- backends: Add support for LoongArch and Synopsys ARCv2 processors. 383 384* Wed Nov 2 2022 Mark Wielaard <[email protected]> 0.188-1 385- readelf: Add -D, --use-dynamic option. 386- debuginfod-client: Add $DEBUGINFOD_HEADERS_FILE setting to supply 387 outgoing HTTP headers. 388 Add new function debuginfod_find_section. 389- debuginfod: Add --disable-source-scan option. 390- libdwfl: Add new function dwfl_get_debuginfod_client. 391 Add new function dwfl_frame_reg. 392 Add new function dwfl_report_offline_memory. 393 394* Mon Apr 25 2022 Mark Wielaard <[email protected]> 0.187-1 395- debuginfod: Support -C option for connection thread pooling. 396- debuginfod-client: Negative cache file are now zero sized instead 397 of no-permission files. 398- addr2line: The -A, --absolute option, which shows file names 399 includingthe full compilation directory is now the 400 default. To get theold behavior use the new option --relative. 401- readelf, elflint: Recognize FDO Packaging Metadata ELF notes 402- libdw, debuginfo-client: Load libcurl lazily only when files need 403 to be fetched remotely. libcurl is now never loaded when 404 DEBUGINFOD_URLS is unset. And whenDEBUGINFOD_URLS is set, 405 libcurl is only loaded when the debuginfod_begin function is 406 called. 407 408* Wed Nov 10 2021 Mark Wielaard <[email protected]> 0.186-1 409- debuginfod-client: Default $DEBUGINFOD_URLS is computed from 410 drop-in files /etc/debuginfod/*.urls rather than 411 hardcoded into the /etc/profile.d/debuginfod* 412 scripts. 413 Add $DEBUGINFOD_MAXSIZE and $DEBUGINFOD_MAXTIME settings 414 for skipping large/slow transfers. 415 Add $DEBUGINFOD_RETRY for retrying aborted lookups. 416- debuginfod: Supply extra HTTP response headers, describing 417 archive/file names that satisfy the requested buildid content. 418 Support -d :memory: option for in-memory databases. 419 Protect against loops in federated server configurations. 420 Add -r option to use -I/-X regexes for grooming stale files. 421 Protect against wasted CPU from duplicate concurrent requests. 422 Limit the duration of groom ops roughly to rescan (-t) times. 423 Add --passive mode for serving from read-only database. 424 Several other performance improvements & prometheus metrics. 425- libdw: Support for the NVIDIA Cuda line map extensions. 426 DW_LNE_NVIDIA_inlined_call and DW_LNE_NVIDIA_set_function_name 427 are defined in dwarf.h. New functions dwarf_linecontext and 428 dwarf_linefunctionname. 429- translations: Update Japanese translation. 430 431* Sat May 22 2021 Mark Wielaard <[email protected]> 0.185-1 432- debuginfod-client: Simplify curl handle reuse so downloads which 433 return an error are retried. 434- elfcompress: Always exit with code 0 when the operation succeeds 435 (even when nothing was done). On error the exit code is 436 now always 1. 437 438* Mon May 10 2021 Mark Wielaard <[email protected]> 0.184-1 439- debuginfod: Use libarchive's bsdtar as the .deb-family file unpacker. 440- debuginfod-client: Client caches negative results. If a query for a 441 file failed with 404, an empty 000 permission 442 file is created in the cache. This will prevent 443 requesting the same file for the next 10 minutes. 444- Client objects now carry long-lived curl handles 445 for outgoing connections. This makes it more 446 efficient for multiple sequential queries, because 447 the TCP connections and/or TLS state info are kept 448 around awhile, avoiding O(100ms) setup latencies. 449- libdw: handle DW_FORM_indirect when reading attributes 450- translations: Update Polish translation. 451 452* Fri Feb 5 2021 Mark Wielaard <[email protected]> 0.183-1 453- debuginfod: New thread-busy metric and more detailed error metrics. 454 New --fdcache-mintmp and tracking of filesystem freespace. 455- debigonfod-client: DEBUGINFOD_SONAME macro added to debuginfod.h can 456 be used to dlopen the libdebuginfod.so library. 457 New function debuginfod_set_verbose_fd and DEBUGINFOD_VERBOSE 458 environment variable. 459- config: profile.sh and profile.csh won't export DEBUGINFOD_URLS 460 unless configured --enable-debuginfod-urls[=URLS] 461- elflint, readelf: Recognize SHF_GNU_RETAIN. 462 Handle SHT_X86_64_UNWIND as valid relocation target type. 463 464* Sat Oct 31 2020 Mark Wielaard <[email protected]> 0.182-1 465- backends: Support for tilegx has been removed. 466- config: New /etc/profile.d files to provide default $DEBUGINFOD_URLS. 467- debuginfod: More efficient package traversal, tolerate various 468 errors during scanning, grooming progress is more visible and 469 interruptible, more prometheus metrics. 470- debuginfod-client: Now supports compressed (kernel) ELF images. 471- libdwfl: Add ZSTD compression support. 472 473* Tue Sep 8 2020 Mark Wielaard <[email protected]> 0.181-1 474- libelf: elf_update now compensates (fixes up) a bad sh_addralign 475 for SHF_COMPRESSED sections. 476- libdebuginfod: configure now takes --enable-libdebuginfod=dummy or 477 --disable-libdebuginfod for bootstrapping. 478 DEBUGINFOD_URLS now accepts "scheme-free" urls 479 (guessing at what the user meant, either http:// or file://) 480- readelf, elflint: Handle aarch64 bti, pac bits in dynamic table and 481 gnu property notes. 482- libdw, readelf: Recognize DW_CFA_AARCH64_negate_ra_state. Allows 483 unwinding on arm64 for code that is compiled for PAC 484 (Pointer Authentication Code) as long as it isn't enabled. 485 486* Thu Jun 11 2020 Mark Wielaard <[email protected]> 0.180-1 487- elflint: Allow SHF_EXCLUDE as generic section flag when --gnu is given. 488- libdw, readelf: Handle GCC LTO .gnu.debuglto_ prefix. 489- libdw: Use correct CU to resolve file names in dwarf_decl_file. 490- libdwfl: Handle debugaltlink in dwfl_standard_find_debuginfo. 491- size: Also obey radix printing for bsd format. 492- nm: Explicitly print weak 'V' or 'T' and common 'C' symbols. 493 494* Mon Mar 30 2020 Mark Wielaard <[email protected]> 0.179-1 495- debuginfod-client: When DEBUGINFOD_PROGRESS is set and the program 496 doesn't install its own debuginfod_progressfn_t show download 497 progress on stderr. 498 DEBUGINFOD_TIMEOUT is now defined as seconds to get at least 100K, 499 defaults to 90 seconds. 500 Default to $XDG_CACHE_HOME/debuginfod_client. 501 New functions debuginfod_set_user_data, debuginfod_get_user_data, 502 debuginfod_get_url and debuginfod_add_http_header. 503 Support for file:// URLs. 504- debuginfod: Uses libarchive directly for reading rpm archives. 505 Support for indexing .deb/.ddeb archives through dpkg-deb or bsdtar. 506 Generic archive support through -Z EXT[=CMD]. Which can be used for 507 example for arch-linux pacman files by using -Z '.tar.zst=zstdcat'. 508 Better logging using User-Agent and X-Forwarded-For headers. 509 More prometheus metrics. 510 Support for eliding dots or extraneous slashes in path names. 511- debuginfod-find: Accept /path/names in place of buildid hex. 512- libelf: Handle PN_XNUM in elf_getphdrnum before shdr 0 is cached. 513 Ensure zlib resource cleanup on failure. 514- libdwfl: dwfl_linux_kernel_find_elf and dwfl_linux_kernel_report_offline 515 now find and handle a compressed vmlinuz image. 516- readelf, elflint: Handle PT_GNU_PROPERTY. 517- translations: Updated Ukrainian translation. 518 519* Tue Nov 26 2019 Mark Wielaard <[email protected]> 0.178-1 520- debuginfod: New server, client tool and library to index and fetch 521 ELF/DWARF files addressed by build-id through HTTP. 522- doc: There are now some manual pages for functions and tools. 523- backends: The libebl libraries are no longer dynamically loaded 524 through dlopen, but are now compiled into libdw.so directly. 525- readelf: -n, --notes now takes an optional "SECTION" argument. 526 -p and -x now also handle section numbers. 527 New option --dyn-sym to show just the dynamic symbol table. 528- libcpu: Add RISC-V disassembler. 529- libdw: Abbrevs and DIEs can now be read concurrently by multiple 530 threads through the same Dwarf handle. 531- libdwfl: Will try to use debuginfod when installed as fallback to 532 retrieve ELF and DWARF debug data files by build-id. 533 534* Tue Aug 13 2019 Mark Wielaard <[email protected]> 0.177-1 535- elfclassify: New tool to analyze ELF objects. 536- readelf: Print DW_AT_data_member_location as decimal offset. 537 Decode DW_AT_discr_list block attributes. 538- libdw: Add DW_AT_GNU_numerator, DW_AT_GNU_denominator and DW_AT_GNU_bias. 539- libdwelf: Add dwelf_elf_e_machine_string. 540 dwelf_elf_begin now only returns NULL when there is an error 541 reading or decompressing a file. If the file is not an ELF file 542 an ELF handle of type ELF_K_NONE is returned. 543- backends: Add support for C-SKY. 544 545* Thu Feb 14 2019 Mark Wielaard <[email protected]> 0.176-1 546- build: Add new --enable-install-elfh option. 547 Do NOT use this for system installs (it overrides glibc elf.h). 548- backends: riscv improved core file and return value location support. 549- Fixes CVE-2019-7146, CVE-2019-7148, CVE-2019-7149, CVE-2019-7150, 550 CVE-2019-7664, CVE-2019-7665. 551 552* Wed Nov 14 2018 Mark Wielaard <[email protected]> 0.175-1 553- readelf: Handle multiple .debug_macro sections. 554 Recognize and parse GNU Property notes, NT_VERSION notes and 555 GNU Build Attribute ELF Notes. 556- strip: Handle SHT_GROUP correctly. 557 Add strip --reloc-debug-sections-only option. 558 Handle relocations against GNU compressed sections. 559- libdwelf: New function dwelf_elf_begin. 560- libcpu: Recognize bpf jump variants BPF_JLT, BPF_JLE, BPF_JSLT 561 and BPF_JSLE. 562- backends: RISCV handles ADD/SUB relocations. 563 Handle SHT_X86_64_UNWIND. 564- Fixes CVE-2018-18310, CVE-2018-18520 and CVE-2018-18521. 565 566* Fri Sep 14 2018 Mark Wielaard <mark@klomp> 0.174-1 567- libelf, libdw and all tools now handle extended shnum and shstrndx 568 correctly. 569- elfcompress: Don't rewrite input file if no section data needs 570 updating. Try harder to keep same file mode bits (suid) on rewrite. 571- strip: Handle mixed (out of order) allocated/non-allocated sections. 572- unstrip: Handle SHT_GROUP sections. 573- backends: RISCV and M68K now have backend implementations to 574 generate CFI based backtraces. 575- Fixes CVE-2018-16062, CVE-2018-16402 and CVE-2018-16403. 576 577* Fri Jun 29 2018 Mark Wielaard,,, <[email protected]> 0.173-1 578- More fixes for crashes and hangs found by afl-fuzz. In particular 579 various functions now detect and break infinite loops caused by bad 580 DIE tree cycles. 581- readelf: Will now lookup the size and signedness of constant value 582 types to display them correctly (and not just how they were encoded). 583- libdw: New function dwarf_next_lines to read CU-less .debug_line data. 584 dwarf_begin_elf now accepts ELF files containing just .debug_line 585 or .debug_frame sections (which can be read without needing a DIE 586 tree from the .debug_info section). 587 Removed dwarf_getscn_info, which was never implemented. 588- backends: Handle BPF simple relocations. 589 The RISCV backends now handles ABI specific CFI and knows about 590 RISCV register types and names. 591 592* Mon Jun 11 2018 Mark Wielaard <[email protected]> 0.172-1 593- No functional changes compared to 0.171. 594- Various bug fixes in libdw and eu-readelf dealing with bad DWARF5 595 data. Thanks to running the afl fuzzer on eu-readelf and various 596 testcases. 597- eu-readelf -N is ~15% faster. 598 599* Fri Jun 01 2018 Mark Wielaard <[email protected]> 0.171-1 600- DWARF5 and split dwarf, including GNU DebugFission, support. 601- readelf: Handle all new DWARF5 sections. 602 --debug-dump=info+ will show split unit DIEs when found. 603 --dwarf-skeleton can be used when inspecting a .dwo file. 604 Recognizes GNU locviews with --debug-dump=loc. 605- libdw: New functions dwarf_die_addr_die, dwarf_get_units, 606 dwarf_getabbrevattr_data and dwarf_cu_info. 607 libdw will now try to resolve the alt file on first use 608 when not set yet with dwarf_set_alt. 609 dwarf_aggregate_size() now works with multi-dimensional arrays. 610- libdwfl: Use process_vm_readv when available instead of ptrace. 611- backends: Add a RISC-V backend. 612 613* Wed Aug 2 2017 Mark Wielaard <[email protected]> 0.170-1 614- libdw: Added new DWARF5 attribute, tag, character encoding, 615 language code, calling convention, defaulted member function 616 and macro constants to dwarf.h. 617 New functions dwarf_default_lower_bound and dwarf_line_file. 618 dwarf_peel_type now handles DWARF5 immutable, packed and shared tags. 619 dwarf_getmacros now handles DWARF5 .debug_macro sections. 620- strip: Add -R, --remove-section=SECTION and --keep-section=SECTION. 621- backends: The bpf disassembler is now always build on all platforms. 622 623* Fri May 5 2017 Mark Wielaard <[email protected]> 0.169-1 624- backends: Add support for EM_PPC64 GNU_ATTRIBUTES. 625 Frame pointer unwinding fallback support for i386, x86_64, aarch64. 626- translations: Update Polish translation. 627 628* Tue Dec 27 2016 Mark Wielaard <[email protected]> 0.168-1 629- http://elfutils.org/ is now hosted at http://sourceware.org/elfutils/ 630- libelf: gelf_newehdr and gelf_newehdr now return void *. 631- libdw: dwarf.h corrected the DW_LANG_PLI constant name (was DW_LANG_PL1). 632- readelf: Add optional --symbols[=SECTION] argument to select section name. 633 634* Thu Aug 4 2016 Mark Wielaard <[email protected]> 0.167-1 635- libasm: Add eBPF disassembler for EM_BPF files. 636- backends: Add m68k and BPF backends. 637- ld: Removed. 638- dwelf: Add ELF/DWARF string table creation functions. 639 dwelf_strtab_init, dwelf_strtab_add, dwelf_strtab_add_len, 640 dwelf_strtab_finalize, dwelf_strent_off, dwelf_strent_str and 641 dwelf_strtab_free. 642 643* Thu Mar 31 2016 Mark Wielaard <[email protected]> 0.166-1 644- config: The default program prefix for the installed tools is now 645 eu-. Use configure --program-prefix="" to not use a program prefix. 646 647* Fri Jan 8 2016 Mark Wielaard <[email protected]> 0.165-1 648- elfcompress: New utility to compress or decompress ELF sections. 649- readelf: Add -z,--decompress option. 650- libelf: Add elf_compress, elf_compress_gnu, elf32_getchdr, 651 elf64_getchdr and gelf_getchdr. 652- libdwelf: New function dwelf_scn_gnu_compressed_size. 653- config: Add libelf and libdw pkg-config files. 654- backends: sparc support for core and live backtraces. 655- translations: Updated Polish translation. 656 657* Thu Oct 15 2015 Mark Wielaard <[email protected]> 0.164-1 658- strip, unstrip: Handle ELF files with merged strtab/shstrtab 659 tables. Handle missing SHF_INFO_LINK section flags. 660- libelf: Use int64_t for offsets in libelf.h instead of loff_t. 661- libdw: dwarf.h Add preliminary DWARF5 DW_LANG_Haskell. 662- libdwfl: dwfl_standard_find_debuginfo now searches any subdir of 663 the binary path under the debuginfo root when the separate 664 debug file couldn't be found by build-id. 665 dwfl_linux_proc_attach can now be called before any Dwfl_Modules 666 have been reported. 667- backends: Better sparc and sparc64 support. 668- translations: Updated Ukrainian translation. 669- Provide default-yama-scope subpackage. 670 671* Fri Jun 19 2015 Mark Wielaard <[email protected]> 0.163-1 672- Bug fixes only, no new features. 673 674* Wed Jun 10 2015 Mark Wielaard <[email protected]> 0.162-1 675- libdw: Install new header elfutils/known-dwarf.h. 676 dwarf.h Add preliminary DWARF5 constants DW_TAG_atomic_type, 677 DW_LANG_Fortran03, DW_LANG_Fortran08. dwarf_peel_type now also 678 handles DW_TAG_atomic_type. 679- addr2line: Input addresses are now always interpreted as 680 hexadecimal numbers, never as octal or decimal numbers. 681 New option -a, --addresses to print address before each entry. 682 New option -C, --demangle to show demangled symbols. 683 New option --pretty-print to print all information on one line. 684- ar: CVE-2014-9447 Directory traversal vulnerability in ar 685 extraction. 686- backends: x32 support. 687 688* Thu Dec 18 2014 Mark Wielaard <[email protected]> 0.161-1 689- libdw: New function dwarf_peel_type. dwarf_aggregate_size now uses 690 dwarf_peel_type to also provide the sizes of qualified types. 691 dwarf_getmacros will now serve either of .debug_macro and 692 .debug_macinfo transparently. New interfaces dwarf_getmacros_off, 693 dwarf_macro_getsrcfiles, dwarf_macro_getparamcnt, and 694 dwarf_macro_param are available for more generalized inspection of 695 macros and their parameters. 696 dwarf.h: Add DW_AT_GNU_deleted, DW_AT_noreturn, DW_LANG_C11, 697 DW_LANG_C_plus_plus_11 and DW_LANG_C_plus_plus_14. 698 699* Mon Aug 25 2014 Mark Wielaard <[email protected]> 0.160-1 700- libdw: New functions dwarf_cu_getdwarf, dwarf_cu_die. 701 dwarf.h remove non-existing DW_TAG_mutable_type. 702- libdwfl: Handle LZMA .ko.xz compressed kernel modules. 703- unstrip: New option -F, --force to combining files even if some ELF 704 headers don't seem to match. 705- backends: Handle ARM THUMB functions. Add support for ppc64le ELFv2 abi. 706 707* Sat May 17 2014 Mark Wielaard <[email protected]> 0.159-1 708- stack: New option -d, --debugname to lookup DWARF debuginfo name 709 for frame. New option -i, --inlines to show inlined frames 710 using DWARF debuginfo. 711- libdwelf: New libdwelf.h header for libdw.so DWARF ELF Low-level 712 Functions. New function dwelf_elf_gnu_debuglink, 713 dwelf_dwarf_gnu_debugaltlink, and dwelf_elf_gnu_build_id. 714- libdw: Support for DWZ multifile forms DW_FORM_GNU_ref_alt and 715 DW_FORM_GNU_strp_alt is now enabled by default and no longer 716 experimental. Added new functions dwarf_getalt and dwarf_setalt 717 to get or set the alternative debug file used for the alt FORMs. 718 The dwfl_linux_proc_find_elf callback will now find ELF from 719 process memory for (deleted) files if the Dwfl has process state 720 attached. 721- libdwfl: The dwfl_build_id_find_debuginfo and 722 dwfl_standard_find_debuginfo functions will now try to 723 resolve and set the alternative debug file. 724- backends: Add CFI unwinding for arm. Relies on .debug_frame. 725 Add arm process initial register state compatible mode to AARCH64. 726 Add aarch64 native and core unwind support. 727- other: All separate elfutils-robustify patches have been merged. 728 CVE-2014-0172 Check overflow before calling malloc to uncompress 729 data. 730 731* Fri Jan 3 2014 Mark Wielaard <[email protected]> 0.158-1 732- libdwfl: dwfl_core_file_report has new parameter executable. 733 New functions dwfl_module_getsymtab_first_global, 734 dwfl_module_getsym_info and dwfl_module_addrinfo. 735 Added unwinder with type Dwfl_Thread_Callbacks, opaque types 736 Dwfl_Thread and Dwfl_Frame and functions dwfl_attach_state, 737 dwfl_pid, dwfl_thread_dwfl, dwfl_thread_tid, dwfl_frame_thread, 738 dwfl_thread_state_registers, dwfl_thread_state_register_pc, 739 dwfl_getthread_frames, dwfl_getthreads, dwfl_thread_getframes 740 and dwfl_frame_pc. 741- addr2line: New option -x to show the section an address was found in. 742- stack: New utility that uses the new unwinder for processes and cores. 743- backends: Unwinder support for i386, x86_64, s390, s390x, ppc and ppc64. 744 aarch64 support. 745 746* Mon Sep 30 2013 Mark Wielaard <[email protected]> 0.157-1 747- libdw: Add new functions dwarf_getlocations, dwarf_getlocation_attr 748 and dwarf_getlocation_die. 749- readelf: Show contents of NT_SIGINFO and NT_FILE core notes. 750- addr2line: Support -i, --inlines output option. 751- backends: abi_cfi hook for arm, ppc and s390. 752 753* Thu Jul 25 2013 Jan Kratochvil <[email protected]> 0.156-1 754- lib: New macro COMPAT_VERSION_NEWPROTO. 755- libdw: Handle GNU extension opcodes in dwarf_getlocation. 756- libdwfl: Fix STB_GLOBAL over STB_WEAK preference in 757 dwfl_module_addrsym. Add minisymtab support. Add 758 parameter add_p_vaddr to dwfl_report_elf. Use DT_DEBUG 759 library search first. 760- libebl: Handle new core note types in EBL. 761- backends: Interpret NT_ARM_VFP. Implement core file 762 registers parsing for s390/s390x. 763- readelf: Add --elf-section input option to inspect an embedded ELF 764 file. Add -U, --unresolved-address-offsets output control. 765 Add --debug-dump=decodedline support. Accept version 766 8 .gdb_index section format. Adjust output formatting width. 767 When highpc is in constant form print it also as address. 768 Display raw .debug_aranges. Use libdw only for decodedaranges. 769- elflint: Add __bss_start__ to the list of allowed symbols. 770- tests: Add configure --enable-valgrind option to run all tests 771 under valgrind. Enable automake parallel-tests for make check. 772- translations: Updated Polish translation. 773- Updates for Automake 1.13. 774 775* Fri Aug 24 2012 Mark Wielaard <[email protected]> 0.155-1 776- libelf: elf*_xlatetomd now works for cross-endian ELF note data. 777 elf_getshdr now works consistently on non-mmaped ELF files after 778 calling elf_cntl(ELF_C_FDREAD). Implement support for 779 ar archives with 64-bit symbol table. 780- libdw: dwarf.h corrected the DW_LANG_ObjC constant name (was 781 DW_LANG_Objc). Any existing sources using the old name will 782 have to be updated. Add DW_MACRO_GNU .debug_macro type 783 encodings constants, DW_ATE_UTF and DW_OP_GNU_parameter_ref to 784 dwarf.h. Experimental support for DWZ multifile forms 785 DW_FORM_GNU_ref_alt and DW_FORM_GNU_strp_alt. Disabled by 786 default. Use configure --enable-dwz to test it. 787- readelf: Add .debug_macro parsing support. Add .gdb_index 788 version 7 parsing support. Recognize DW_OP_GNU_parameter_ref. 789- backends: Add support for Tilera TILE-Gx processor. 790- translations: Updated Ukrainian translation. 791 792* Fri Jun 22 2012 Mark Wielaard <[email protected]> 0.154-1 793- libelf: [g]elf[32|64]_offscn() do not match SHT_NOBITS sections at 794 OFFSET. 795- libdw: dwarf_highpc function now handles DWARF 4 DW_AT_high_pc 796 constant form. Fix bug using dwarf_next_unit to iterate over 797 .debug_types. 798- elflint: Now accepts gold linker produced executables. 799- The license is now GPLv2/LGPLv3+ for the libraries and GPLv3+ for 800 stand-alone programs. There is now also a formal CONTRIBUTING 801 document describing how to submit patches. 802 803* Thu Feb 23 2012 Mark Wielaard <[email protected]> 0.153-1 804- libdw: Support reading .zdebug_* DWARF sections compressed via zlib. 805- libdwfl: Speed up dwfl_module_addrsym. 806- nm: Support C++ demangling. 807- ar: Support D modifier for "deterministic output" with no 808 uid/gid/mtime info. The U modifier is the inverse. elfutils 809 can be configured with the --enable-deterministic-archives option 810 to make the D behavior the default when U is not specified. 811- ranlib: Support -D and -U flags with same meaning. 812- readelf: Improve output of -wline. Add support for printing SDT elf 813 notes. Add printing of .gdb_index section. Support for 814 typed DWARF stack, call_site and entry_value. 815- strip: Add --reloc-debug-sections option. Improved SHT_GROUP 816 sections handling. 817 818* Tue Feb 15 2011 <[email protected]> 0.152-1 819- Various build and warning nits fixed for newest GCC and Autoconf. 820- libdwfl: Yet another prelink-related fix for another regression. 821 Look for Linux kernel images in files named with compression 822 suffixes. 823- elfcmp: New flag --ignore-build-id to ignore differing build ID 824 bits. New flag -l/--verbose to print all differences. 825 826* Wed Jan 12 2011 <[email protected]> 0.151-1 827- libdwfl: Fix for more prelink cases with separate debug file. 828- strip: New flag --strip-sections to remove section headers entirely. 829 830* Mon Nov 22 2010 <[email protected]> 0.150-1 831- libdw: Fix for handling huge .debug_aranges section. 832- libdwfl: Fix for handling prelinked DSO with separate debug file. 833- findtextrel: Fix diagnostics to work with usual section ordering. 834- libebl: i386 backend fix for multi-register integer return value 835 location. 836 837* Mon Sep 13 2010 <[email protected]> 0.149-1 838- libdw: Decode new DW_OP_GNU_implicit_pointer operation; new 839 function dwarf_getlocation_implicit_pointer. 840- libdwfl: New function dwfl_dwarf_line. 841- addr2line: New flag -F/--flags to print more DWARF line information 842 details. 843- strip: -g recognizes .gdb_index as a debugging section. 844 845* Mon Jun 28 2010 <[email protected]> 0.148-1 846- libdw: Accept DWARF 4 format: new functions dwarf_next_unit, 847 dwarf_offdie_types. New functions dwarf_lineisa, 848 dwarf_linediscriminator, dwarf_lineop_index. 849- libdwfl: Fixes in core-file handling, support cores from PIEs. 850 When working from build IDs, don't open a named file that 851 mismatches. 852- readelf: Handle DWARF 4 formats. 853 854* Mon May 3 2010 Ulrich Drepper <[email protected]> 0.147-1 855- libdw: Fixes in CFI handling, best possible handling of bogus CFA 856 ops. 857- libdwfl: Ignore R_*_NONE relocs, works around old (binutils) ld -r 858 bugs. 859 860* Wed Apr 21 2010 <[email protected]> 0.146-1 861- libdwfl: New function dwfl_core_file_report. 862 863* Tue Feb 23 2010 Ulrich Drepper <[email protected]> 0.145-1 864- Fix build with --disable-dependency-tracking. 865- Fix build with most recent glibc headers. 866- libelf: More robust to bogus section headers. 867- libdw: Fix CFI decoding. 868- libdwfl: Fix address bias returned by CFI accessors. Fix core 869 file module layout identification. 870- readelf: Fix CFI decoding. 871 872* Thu Jan 14 2010 <[email protected]> 0.144-1 873- libelf: New function elf_getphdrnum. Now support using more than 874 65536 program headers in a file. 875- libdw: New function dwarf_aggregate_size for computing (constant) 876 type sizes, including array_type cases with nontrivial 877 calculation. 878- readelf: Don't give errors for missing info under -a. 879 Handle Linux "VMCOREINFO" notes under -n. 880 881* Mon Sep 21 2009 <[email protected]> 0.143-1 882- libdw: Various convenience functions for individual attributes now 883 use dwarf_attr_integrate to look up indirect inherited 884 attributes. Location expression handling now supports 885 DW_OP_implicit_value. 886- libdwfl: Support automatic decompression of files in XZ format, 887 and of Linux kernel images made with bzip2 or LZMA (as well 888 as gzip). 889 890* Mon Jun 29 2009 <[email protected]> 0.142-1 891- libelf: Add elf_getshdrnum alias for elf_getshnum and elf_getshdrstrndx alias 892 for elf_getshstrndx and deprecate original names. Sun screwed up 893 their implementation and asked for a solution. 894- libebl: Add support for STB_GNU_UNIQUE. 895- elflint: Add support for STB_GNU_UNIQUE. 896- readelf: Add -N option, speeds up DWARF printing without address->name lookups. 897- libdw: Add support for decoding DWARF CFI into location description form. 898 Handle some new DWARF 3 expression operations previously omitted. 899 Basic handling of some new encodings slated for DWARF 900 901* Thu Apr 23 2009 Ulrich Drepper <[email protected]> 0.141-1 902- libebl: sparc backend fixes; some more arm backend support 903- libdwfl: fix dwfl_module_build_id for prelinked DSO case; 904 fixes in core file support; dwfl_module_getsym interface 905 improved for non-address symbols 906- strip: fix infinite loop on strange inputs with -f 907- addr2line: take -j/--section=NAME option for binutils compatibility 908 (same effect as '(NAME)0x123' syntax already supported) 909 910* Mon Feb 16 2009 Ulrich Drepper <[email protected]> 0.140-1 911- libelf: Fix regression in creation of section header 912- libdwfl: Less strict behavior if DWARF reader is just used to 913 display data 914 915* Thu Jan 22 2009 Ulrich Drepper <[email protected]> 0.139-1 916- libcpu: Add Intel SSE4 disassembler support 917- readelf: Implement call frame information and exception handling 918 dumping. Add -e option. Enable it implicitly for -a. 919- elflint: Check PT_GNU_EH_FRAME program header entry. 920- libdwfl: Support automatic gzip/bzip2 decompression of ELF files. 921 922* Wed Dec 31 2008 Roland McGrath <[email protected]> 0.138-1 923- Install <elfutils/version.h> header file for applications to use in 924 source version compatibility checks. 925- libebl: backend fixes for i386 TLS relocs; backend support for 926 NT_386_IOPERM 927- libcpu: disassembler fixes 928- libdwfl: bug fixes 929- libelf: bug fixes 930- nm: bug fixes for handling corrupt input files 931 932* Tue Aug 26 2008 Ulrich Drepper <[email protected]> 0.137-1 933- Minor fixes for unreleased 0.136 release. 934 935* Mon Aug 25 2008 Ulrich Drepper <[email protected]> 0.136-1 936- libdwfl: bug fixes; new segment interfaces; all the libdwfl-based 937 tools now support --core=COREFILE option 938 939* Mon May 12 2008 Ulrich Drepper <[email protected]> 0.135-1 940- libdwfl: bug fixes 941- strip: changed handling of ET_REL files wrt symbol tables and relocs 942 943* Tue Apr 8 2008 Ulrich Drepper <[email protected]> 0.134-1 944- elflint: backend improvements for sparc, alpha 945- libdwfl, libelf: bug fixes 946 947* Sat Mar 1 2008 Ulrich Drepper <[email protected]> 0.133-1 948- readelf, elflint, libebl: SHT_GNU_ATTRIBUTE section handling (readelf -A) 949- readelf: core note handling for NT_386_TLS, NT_PPC_SPE, Alpha NT_AUXV 950- libdwfl: bug fixes and optimization in relocation handling 951- elfcmp: bug fix for non-allocated section handling 952- ld: implement newer features of binutils linker. 953 954* Mon Jan 21 2008 Ulrich Drepper <[email protected]> 0.132-1 955- libcpu: Implement x86 and x86-64 disassembler. 956- libasm: Add interface for disassembler. 957- all programs: add debugging of branch prediction. 958- libelf: new function elf_scnshndx. 959 960* Sun Nov 11 2007 Ulrich Drepper <[email protected]> 0.131-1 961- libdw: DW_FORM_ref_addr support; dwarf_formref entry point now depreca 962ted; bug fixes for oddly-formatted DWARF 963- libdwfl: bug fixes in offline archive support, symbol table handling; 964 apply partial relocations for dwfl_module_address_section on 965ET_REL 966- libebl: powerpc backend support for Altivec registers 967 968* Mon Oct 15 2007 Ulrich Drepper <[email protected]> 0.130-1 969- readelf: -p option can take an argument like -x for one section, 970 or no argument (as before) for all SHF_STRINGS sections; 971 new option --archive-index (or -c); improved -n output for 972core files, on many machines 973- libelf: new function elf_getdata_rawchunk, replaces gelf_rawchunk; 974 new functions gelf_getnote, gelf_getauxv, gelf_update_auxv 975- readelf, elflint: handle SHT_NOTE sections without requiring phdrs 976- elflint: stricter checks on debug sections 977- libdwfl: new functions dwfl_build_id_find_elf, dwfl_build_id_find_debu 978ginfo, dwfl_module_build_id, dwfl_module_report_build_id; suppo 979rt dynamic symbol tables found via phdrs; dwfl_standard_find_de 980buginfo now uses build IDs when available 981- unstrip: new option --list (or -n) 982- libebl: backend improvements for sparc, alpha, powerpc 983 984* Tue Aug 14 2007 Ulrich Drepper <[email protected]> 0.129-1 985- readelf: new options --hex-dump (or -x), --strings (or -p) 986- addr2line: new option --symbols (or -S) 987 988* Wed Apr 18 2007 Ulrich Drepper <[email protected]> 0.127-1 989- libdw: new function dwarf_getsrcdirs 990- libdwfl: new functions dwfl_module_addrsym, dwfl_report_begin_add, 991 dwfl_module_address_section 992 993* Mon Feb 5 2007 Ulrich Drepper <[email protected]> 0.126-1 994- new program: ar 995 996* Mon Dec 18 2006 Ulrich Drepper <[email protected]> 0.125-1 997- elflint: Compare DT_GNU_HASH tests. 998- move archives into -static RPMs 999- libelf, elflint: better support for core file handling 1000 1001* Tue Oct 10 2006 Ulrich Drepper <[email protected]> 0.124-1 1002- libebl: sparc backend support for return value location 1003- libebl, libdwfl: backend register name support extended with more info 1004- libelf, libdw: bug fixes for unaligned accesses on machines that care 1005- readelf, elflint: trivial bugs fixed 1006 1007* Mon Aug 14 2006 Roland McGrath <[email protected]> 0.123-1 1008- libebl: Backend build fixes, thanks to Stepan Kasal. 1009- libebl: ia64 backend support for register names, return value location 1010- libdwfl: Handle truncated linux kernel module section names. 1011- libdwfl: Look for linux kernel vmlinux files with .debug suffix. 1012- elflint: Fix checks to permit --hash-style=gnu format. 1013 1014* Wed Jul 12 2006 Ulrich Drepper <[email protected]> 0.122-1 1015- libebl: add function to test for relative relocation 1016- elflint: fix and extend DT_RELCOUNT/DT_RELACOUNT checks 1017- elflint, readelf: add support for DT_GNU_HASHlibelf: add elf_gnu_hash 1018- elflint, readelf: add support for 64-bit SysV-style hash tables 1019- libdwfl: new functions dwfl_module_getsymtab, dwfl_module_getsym. 1020 1021* Wed Jun 14 2006 <[email protected]> 0.121-1 1022- libelf: bug fixes for rewriting existing files when using mmap. 1023- make all installed headers usable in C++ code. 1024- readelf: better output format. 1025- elflint: fix tests of dynamic section content. 1026- ld: Implement --as-needed, --execstack, PT_GNU_STACK. Many small patc 1027hes. 1028- libdw, libdwfl: handle files without aranges info. 1029 1030* Tue Apr 4 2006 Ulrich Drepper <[email protected]> 0.120-1 1031- Bug fixes. 1032- dwarf.h updated for DWARF 3.0 final specification. 1033- libdwfl: New function dwfl_version. 1034- The license is now GPL for most files. The libelf, libebl, libdw,and 1035libdwfl libraries have additional exceptions. Add reference toOIN. 1036 1037* Thu Jan 12 2006 Roland McGrath <[email protected]> 0.119-1 1038- elflint: more tests. 1039- libdwfl: New function dwfl_module_register_names. 1040- libebl: New backend hook for register names. 1041 1042* Tue Dec 6 2005 Ulrich Drepper <[email protected]> 0.118-1 1043- elflint: more tests. 1044- libdwfl: New function dwfl_module_register_names. 1045- libebl: New backend hook for register names. 1046 1047* Thu Nov 17 2005 Ulrich Drepper <[email protected]> 0.117-1 1048- libdwfl: New function dwfl_module_return_value_location. 1049- libebl: Backend improvements for several CPUs. 1050 1051* Mon Oct 31 2005 Ulrich Drepper <[email protected]> 0.116-1 1052- libdw: New functions dwarf_ranges, dwarf_entrypc, dwarf_diecu, d 1053warf_entry_breakpoints. Removed Dwarf_Func type and functions d 1054warf_func_name, dwarf_func_lowpc, dwarf_func_highpc, dwarf_func_ 1055entrypc, dwarf_func_die; dwarf_getfuncs callback now uses Dwarf_ 1056Die, and dwarf_func_file, dwarf_func_line, dwarf_func_col replac 1057ed by dwarf_decl_file, dwarf_decl_line, dwarf_decl_column; dwarf 1058_func_inline, dwarf_func_inline_instances now take Dwarf_Die. Ty 1059pe Dwarf_Loc renamed to Dwarf_Op; dwarf_getloclist, dwarf_addrlo 1060clists renamed dwarf_getlocation, dwarf_getlocation_addr. 1061 1062* Fri Sep 2 2005 Ulrich Drepper <[email protected]> 0.115-1 1063- libelf: speed-ups of non-mmap reading. 1064- strings: New program. 1065- Implement --enable-gcov option for configure. 1066- libdw: New function dwarf_getscopes_die. 1067 1068* Wed Aug 24 2005 Ulrich Drepper <[email protected]> 0.114-1 1069- libelf: new function elf_getaroff 1070- libdw: Added dwarf_func_die, dwarf_func_inline, dwarf_func_inline_inst 1071ances. 1072- libdwfl: New functions dwfl_report_offline, dwfl_offline_section_addre 1073ss, dwfl_linux_kernel_report_offline. 1074- ranlib: new program 1075 1076* Mon Aug 15 2005 Ulrich Drepper <[email protected]> 0.114-1 1077- libelf: new function elf_getaroff 1078- ranlib: new program 1079 1080* Wed Aug 10 2005 Ulrich Drepper <@redhat.com> 0.113-1 1081- elflint: relax a bit. Allow version definitions for defined symbols ag 1082ainstDSO versions also for symbols in nobits sections. Allow .rodata 1083sectionto have STRINGS and MERGE flag set. 1084- strip: add some more compatibility with binutils. 1085 1086* Sat Aug 6 2005 Ulrich Drepper <@redhat.com> 0.113-1 1087- elflint: relax a bit. Allow version definitions for defined symbols ag 1088ainstDSO versions also for symbols in nobits sections. Allow .rodata 1089sectionto have STRINGS and MERGE flag set. 1090 1091* Sat Aug 6 2005 Ulrich Drepper <@redhat.com> 0.113-1 1092- elflint: relax a bit. Allow version definitions for defined symbols ag 1093ainstDSO versions also for symbols in nobits sections. 1094 1095* Fri Aug 5 2005 Ulrich Drepper <@redhat.com> 0.112-1 1096- elfcmp: some more relaxation. 1097- elflint: many more tests, especially regarding to symbol versioning. 1098- libelf: Add elfXX_offscn and gelf_offscn. 1099- libasm: asm_begin interface changes. 1100- libebl: Add three new interfaces to directly access machine, class, an 1101ddata encoding information. 1102- objdump: New program. Just the beginning. 1103 1104* Thu Jul 28 2005 Ulrich Drepper <@redhat.com> 0.111-1 1105- libdw: now contains all of libdwfl. The latter is not installed anymore. 1106- elfcmp: little usability tweak, name and index of differing section is 1107 printed. 1108 1109* Sun Jul 24 2005 Ulrich Drepper <@redhat.com> 0.110-1 1110- libelf: fix a numbe rof problems with elf_update 1111- elfcmp: fix a few bugs. Compare gaps. 1112- Fix a few PLT problems and mudflap build issues. 1113- libebl: Don't expose Ebl structure definition in libebl.h. It's now p 1114rivate. 1115 1116* Thu Jul 21 2005 Ulrich Drepper <@redhat.com> 0.109-1 1117- libebl: Check for matching modules. 1118- elflint: Check that copy relocations only happen for OBJECT or NOTYPE 1119symbols. 1120- elfcmp: New program. 1121- libdwfl: New library. 1122 1123* Mon May 9 2005 Ulrich Drepper <@redhat.com> 0.108-1 1124- strip: fix bug introduced in last change 1125- libdw: records returned by dwarf_getsrclines are now sorted by address 1126 1127* Sun May 8 2005 Ulrich Drepper <@redhat.com> 0.108-1 1128- strip: fix bug introduced in last change 1129 1130* Sun May 8 2005 Ulrich Drepper <@redhat.com> 0.107-1 1131- readelf: improve DWARF output format 1132- strip: support Linux kernel modules 1133 1134* Fri Apr 29 2005 Ulrich Drepper <[email protected]> 0.107-1 1135- readelf: improve DWARF output format 1136 1137* Mon Apr 4 2005 Ulrich Drepper <[email protected]> 0.106-1 1138- libdw: Updated dwarf.h from DWARF3 speclibdw: add new functions dwarf_f 1139unc_entrypc, dwarf_func_file, dwarf_func_line,dwarf_func_col, dwarf_ge 1140tsrc_file 1141 1142* Fri Apr 1 2005 Ulrich Drepper <[email protected]> 0.105-1 1143- addr2line: New program 1144- libdw: add new functions: dwarf_addrdie, dwarf_macro_*, dwarf_getfuncs 1145,dwarf_func_*. 1146- findtextrel: use dwarf_addrdie 1147 1148* Mon Mar 28 2005 Ulrich Drepper <[email protected]> 0.104-1 1149- findtextrel: New program. 1150 1151* Mon Mar 21 2005 Ulrich Drepper <[email protected]> 0.103-1 1152- libdw: Fix using libdw.h with gcc < 4 and C++ code. Compiler bug. 1153 1154* Tue Feb 22 2005 Ulrich Drepper <[email protected]> 0.102-1 1155- More Makefile and spec file cleanups. 1156 1157* Fri Jan 16 2004 Jakub Jelinek <[email protected]> 0.94-1 1158- upgrade to 0.94 1159 1160* Fri Jan 16 2004 Jakub Jelinek <[email protected]> 0.93-1 1161- upgrade to 0.93 1162 1163* Thu Jan 8 2004 Jakub Jelinek <[email protected]> 0.92-1 1164- full version 1165- macroized spec file for GPL or OSL builds 1166- include only libelf under GPL plus wrapper scripts 1167 1168* Wed Jan 7 2004 Jakub Jelinek <[email protected]> 0.91-2 1169- macroized spec file for GPL or OSL builds 1170 1171* Wed Jan 7 2004 Ulrich Drepper <[email protected]> 1172- split elfutils-devel into two packages. 1173 1174* Wed Jan 7 2004 Jakub Jelinek <[email protected]> 0.91-1 1175- include only libelf under GPL plus wrapper scripts 1176 1177* Tue Dec 23 2003 Jeff Johnson <[email protected]> 0.89-3 1178- readelf, not readline, in %%description (#111214). 1179 1180* Fri Sep 26 2003 Bill Nottingham <[email protected]> 0.89-1 1181- update to 0.89 (fix eu-strip) 1182 1183* Tue Sep 23 2003 Jakub Jelinek <[email protected]> 0.86-3 1184- update to 0.86 (fix eu-strip on s390x/alpha) 1185- libebl is an archive now; remove references to DSO 1186 1187* Mon Jul 14 2003 Jeff Johnson <[email protected]> 0.84-3 1188- upgrade to 0.84 (readelf/elflint improvements, rawhide bugs fixed). 1189 1190* Fri Jul 11 2003 Jeff Johnson <[email protected]> 0.83-3 1191- upgrade to 0.83 (fix invalid ELf handle on *.so strip, more). 1192 1193* Wed Jul 9 2003 Jeff Johnson <[email protected]> 0.82-3 1194- upgrade to 0.82 (strip tests fixed on big-endian). 1195 1196* Tue Jul 8 2003 Jeff Johnson <[email protected]> 0.81-3 1197- upgrade to 0.81 (strip excludes unused symtable entries, test borked). 1198 1199* Thu Jun 26 2003 Jeff Johnson <[email protected]> 0.80-3 1200- upgrade to 0.80 (debugedit changes for kernel in progress). 1201 1202* Wed Jun 04 2003 Elliot Lee <[email protected]> 1203- rebuilt 1204 1205* Wed May 21 2003 Jeff Johnson <[email protected]> 0.79-2 1206- upgrade to 0.79 (correct formats for size_t, more of libdw "works"). 1207 1208* Mon May 19 2003 Jeff Johnson <[email protected]> 0.78-2 1209- upgrade to 0.78 (libdwarf bugfix, libdw additions). 1210 1211* Mon Feb 24 2003 Elliot Lee <[email protected]> 1212- debuginfo rebuild 1213 1214* Thu Feb 20 2003 Jeff Johnson <[email protected]> 0.76-2 1215- use the correct way of identifying the section via the sh_info link. 1216 1217* Sat Feb 15 2003 Jakub Jelinek <[email protected]> 0.75-2 1218- update to 0.75 (eu-strip -g fix) 1219 1220* Tue Feb 11 2003 Jakub Jelinek <[email protected]> 0.74-2 1221- update to 0.74 (fix for writing with some non-dirty sections) 1222 1223* Thu Feb 6 2003 Jeff Johnson <[email protected]> 0.73-3 1224- another -0.73 update (with sparc fixes). 1225- do "make check" in %%check, not %%install, section. 1226 1227* Mon Jan 27 2003 Jeff Johnson <[email protected]> 0.73-2 1228- update to 0.73 (with s390 fixes). 1229 1230* Wed Jan 22 2003 Tim Powers <[email protected]> 1231- rebuilt 1232 1233* Wed Jan 22 2003 Jakub Jelinek <[email protected]> 0.72-4 1234- fix arguments to gelf_getsymshndx and elf_getshstrndx 1235- fix other warnings 1236- re-enable checks on s390x 1237 1238* Sat Jan 11 2003 Karsten Hopp <[email protected]> 0.72-3 1239- temporarily disable checks on s390x, until someone has 1240 time to look at it 1241 1242* Thu Dec 12 2002 Jakub Jelinek <[email protected]> 0.72-2 1243- update to 0.72 1244 1245* Wed Dec 11 2002 Jakub Jelinek <[email protected]> 0.71-2 1246- update to 0.71 1247 1248* Wed Dec 11 2002 Jeff Johnson <[email protected]> 0.69-4 1249- update to 0.69. 1250- add "make check" and segfault avoidance patch. 1251- elfutils-libelf needs to run ldconfig. 1252 1253* Tue Dec 10 2002 Jeff Johnson <[email protected]> 0.68-2 1254- update to 0.68. 1255 1256* Fri Dec 6 2002 Jeff Johnson <[email protected]> 0.67-2 1257- update to 0.67. 1258 1259* Tue Dec 3 2002 Jeff Johnson <[email protected]> 0.65-2 1260- update to 0.65. 1261 1262* Mon Dec 2 2002 Jeff Johnson <[email protected]> 0.64-2 1263- update to 0.64. 1264 1265* Sun Dec 1 2002 Ulrich Drepper <[email protected]> 0.64 1266- split packages further into elfutils-libelf 1267 1268* Sat Nov 30 2002 Jeff Johnson <[email protected]> 0.63-2 1269- update to 0.63. 1270 1271* Fri Nov 29 2002 Ulrich Drepper <[email protected]> 0.62 1272- Adjust for dropping libtool 1273 1274* Sun Nov 24 2002 Jeff Johnson <[email protected]> 0.59-2 1275- update to 0.59 1276 1277* Thu Nov 14 2002 Jeff Johnson <[email protected]> 0.56-2 1278- update to 0.56 1279 1280* Thu Nov 7 2002 Jeff Johnson <[email protected]> 0.54-2 1281- update to 0.54 1282 1283* Sun Oct 27 2002 Jeff Johnson <[email protected]> 0.53-2 1284- update to 0.53 1285- drop x86_64 hack, ICE fixed in gcc-3.2-11. 1286 1287* Sat Oct 26 2002 Jeff Johnson <[email protected]> 0.52-3 1288- get beehive to punch a rhpkg generated package. 1289 1290* Wed Oct 23 2002 Jeff Johnson <[email protected]> 0.52-2 1291- build in 8.0.1. 1292- x86_64: avoid gcc-3.2 ICE on x86_64 for now. 1293 1294* Tue Oct 22 2002 Ulrich Drepper <[email protected]> 0.52 1295- Add libelf-devel to conflicts for elfutils-devel 1296 1297* Mon Oct 21 2002 Ulrich Drepper <[email protected]> 0.50 1298- Split into runtime and devel package 1299 1300* Fri Oct 18 2002 Ulrich Drepper <[email protected]> 0.49 1301- integrate into official sources 1302 1303* Wed Oct 16 2002 Jeff Johnson <[email protected]> 0.46-1 1304- Swaddle. 1305