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