diff options
| author | CoprDistGit <infra@openeuler.org> | 2024-10-20 13:03:38 +0000 | 
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2024-10-20 13:03:38 +0000 | 
| commit | 82475fc2de06ad5c8a65da339d9b16dcbed087c3 (patch) | |
| tree | 15dd88bd9c8c6e6aeb502fbb8f59e9809ef1af7c | |
| parent | d16b7e26fb40c33deee65a3b9a20f884d9ca520e (diff) | |
automatic import of elfutils
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | Fix-issue-of-moving-files-by-ar-or-br.patch | 28 | ||||
| -rw-r--r-- | Fix-segfault-in-eu-ar-m.patch | 33 | ||||
| -rw-r--r-- | elfutils-0.190-profile-empty-urls.patch | 96 | ||||
| -rw-r--r-- | elfutils-0.190-riscv-flatten.patch | 359 | ||||
| -rw-r--r-- | elfutils.spec | 1217 | ||||
| -rw-r--r-- | sources | 1 | 
7 files changed, 1735 insertions, 0 deletions
@@ -0,0 +1 @@ +/elfutils-0.191.tar.bz2 diff --git a/Fix-issue-of-moving-files-by-ar-or-br.patch b/Fix-issue-of-moving-files-by-ar-or-br.patch new file mode 100644 index 0000000..a73cb5b --- /dev/null +++ b/Fix-issue-of-moving-files-by-ar-or-br.patch @@ -0,0 +1,28 @@ +From 665f6beeeb98bac769e6a072b88339ecad5c23e4 Mon Sep 17 00:00:00 2001 +From: yixiangzhike <yixiangzhike007@163.com> +Date: Wed, 17 Aug 2022 16:44:03 +0800 +Subject: [PATCH] fix issue of moving files by ar or br + +When eu-ar uses the combination of br or ar parameters to move the exist files, +it forgets to add the files to the new linked list. As a result, the files are lost. +--- + src/ar.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/ar.c b/src/ar.c +index 072ca2e..e824b59 100644 +--- a/src/ar.c ++++ b/src/ar.c +@@ -1341,7 +1341,8 @@ do_oper_insert (int oper, const char *arfname, char **argv, int argc, +  +   struct armem *last_added = after_memberelem; +   for (int cnt = 0; cnt < argc; ++cnt) +-    if (oper != oper_replace || found[cnt]->old_off == -1) ++    if (((oper == oper_replace) && (ipos != ipos_none) && (found[cnt]->old_off != -1)) || \ ++	oper != oper_replace || found[cnt]->old_off == -1) +       { + 	if (last_added == NULL) + 	  { +--  +2.27.0 + diff --git a/Fix-segfault-in-eu-ar-m.patch b/Fix-segfault-in-eu-ar-m.patch new file mode 100644 index 0000000..010fdda --- /dev/null +++ b/Fix-segfault-in-eu-ar-m.patch @@ -0,0 +1,33 @@ +From 68d0321a35c4bf3ccd8c8a74747739658f02e01a Mon Sep 17 00:00:00 2001 +From: xiezhipeng <xiezhipeng1@huawei.com> +Date: Wed, 8 Dec 2021 09:47:36 +0800 +Subject: [PATCH] fix segfault in eu-ar -m + +Fix segfaultineu-ar-m. +--- + src/ar.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/ar.c b/src/ar.c +index 3bcb18f..072ca2e 100644 +--- a/src/ar.c ++++ b/src/ar.c +@@ -1155,6 +1155,7 @@ do_oper_insert (int oper, const char *arfname, char **argv, int argc, + 	goto next; +  +       struct armem *newp = alloca (sizeof (struct armem)); ++      memset (newp, '\0', sizeof(struct armem)); +       newp->old_off = elf_getaroff (subelf); +       newp->size = arhdr->ar_size; +       newp->sec = arhdr->ar_date; +@@ -1247,6 +1248,7 @@ do_oper_insert (int oper, const char *arfname, char **argv, int argc, + 	  if (found[cnt] == NULL) + 	    { + 	      found[cnt] = alloca (sizeof (struct armem)); ++              memset (found[cnt], '\0', sizeof(struct armem)); + 	      found[cnt]->old_off = -1; +  + 	      remember_long_name (found[cnt], bname, bnamelen); +--  +2.27.0 + diff --git a/elfutils-0.190-profile-empty-urls.patch b/elfutils-0.190-profile-empty-urls.patch new file mode 100644 index 0000000..dab4d9b --- /dev/null +++ b/elfutils-0.190-profile-empty-urls.patch @@ -0,0 +1,96 @@ +commit 0ba2e4aa9945019a8c6db95d27d142b660a63a79 +Author: Mark Wielaard <mark@klomp.org> +Date:   Tue Mar 26 21:42:39 2024 +0100 + +    config: Make sure profile.sh succeeds with set -e and set -o pipefail +     +    profile.sh might fail with set -o pipefail because: +     +    cat /dev/null "${prefix}/etc/debuginfod"/*.urls 2>/dev/null | tr '\n' ' ' +     +    might fail when there isn't an *.urls file the first command in the +    pipe fails (the 2>/dev/null is there to hide that failure). +     +    This can be fixed by adding || : at the end. +     +    This works because : always succeeds and  produces no outpur which is +    what the script expects when the command would fail. +     +    Also add a new testcase that runs profile.sh with bout  set -e +    and set -o pipefail. +     +            * config/profile.sh.in: Add || : at end of pipe. +            * tests/run-debuginfod-client-profile.sh: New test. +            * tests/Makefile.am (TESTS): Add run-debuginfod-client-profile.sh. +            (EXTRA_DIST): Likewise. +     +    https://sourceware.org/bugzilla/show_bug.cgi?id=31562 +     +    Signed-off-by: Mark Wielaard <mark@klomp.org> + +diff --git a/config/profile.sh.in b/config/profile.sh.in +index 3f4397dcb44d..84d3260ddcfc 100644 +--- a/config/profile.sh.in ++++ b/config/profile.sh.in +@@ -6,7 +6,7 @@ +  + if [ -z "$DEBUGINFOD_URLS" ]; then +     prefix="@prefix@" +-    DEBUGINFOD_URLS=$(cat /dev/null "@sysconfdir@/debuginfod"/*.urls 2>/dev/null | tr '\n' ' ') ++    DEBUGINFOD_URLS=$(cat /dev/null "@sysconfdir@/debuginfod"/*.urls 2>/dev/null | tr '\n' ' ' || :) +     [ -n "$DEBUGINFOD_URLS" ] && export DEBUGINFOD_URLS || unset DEBUGINFOD_URLS +     unset prefix + fi +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 9315ec3bbe4c..344d6706e16e 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -209,6 +209,7 @@ TESTS = run-arextract.sh run-arsymtest.sh run-ar.sh newfile test-nlist \ + 	run-disasm-riscv64.sh \ + 	run-pt_gnu_prop-tests.sh \ + 	run-getphdrnum.sh run-test-includes.sh \ ++	run-debuginfod-client-profile.sh \ + 	leb128 read_unaligned \ + 	msg_tst system-elf-libelf-test system-elf-gelf-test \ + 	$(asm_TESTS) run-disasm-bpf.sh run-low_high_pc-dw-form-indirect.sh \ +@@ -636,6 +637,7 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \ + 	     testfile_pt_gnu_prop.bz2 testfile_pt_gnu_prop32.bz2 \ + 	     run-getphdrnum.sh testfile-phdrs.elf.bz2 \ + 	     run-test-includes.sh run-low_high_pc-dw-form-indirect.sh \ ++	     run-debuginfod-client-profile.sh \ + 	     run-readelf-dw-form-indirect.sh testfile-dw-form-indirect.bz2 \ + 	     run-nvidia-extended-linemap-libdw.sh run-nvidia-extended-linemap-readelf.sh \ + 	     testfile_nvidia_linemap.bz2 \ +diff --git a/tests/run-debuginfod-client-profile.sh b/tests/run-debuginfod-client-profile.sh +new file mode 100755 +index 000000000000..7435ced83f15 +--- /dev/null ++++ b/tests/run-debuginfod-client-profile.sh +@@ -0,0 +1,27 @@ ++#! /bin/sh ++# Copyright (C) 2024 Mark J. Wielaard ++# This file is part of elfutils. ++# ++# This file is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 3 of the License, or ++# (at your option) any later version. ++# ++# elfutils is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program.  If not, see <http://www.gnu.org/licenses/>. ++ ++. $srcdir/test-subr.sh ++ ++# Make sure the profile.sh or profile.d/debuginfod.sh works even with ++# set -e (any command error is an error) and set -o pipefail (any error ++# in a pipe fails the whole pipe command). ++ ++set -e ++set -o pipefail ++ ++source ${abs_top_builddir}/config/profile.sh diff --git a/elfutils-0.190-riscv-flatten.patch b/elfutils-0.190-riscv-flatten.patch new file mode 100644 index 0000000..a96d339 --- /dev/null +++ b/elfutils-0.190-riscv-flatten.patch @@ -0,0 +1,359 @@ +From e39336df6588c3f9853be7d02819aee262ba2121 Mon Sep 17 00:00:00 2001 +From: Mark Wielaard <mark@klomp.org> +Date: Tue, 19 Mar 2024 22:43:10 +0000 +Subject: [PATCH] riscv: Partial implementation of flatten_aggregate + +dwfl_module_return_value_location would fail on riscv for functions +which return a (small) struct. This patch implements the simplest +cases of flatten_aggregate in backends/riscv_retval.c. It just handles +structs containing one or two members of the same base type which fit +completely or in pieces in one or two general or floating point +registers. + +It also adds a specific test case run-funcretval-struct.sh containing +small structs of ints, longs, floats and doubles. All these testscases +now work for riscv. There is already a slightly more extensive +testcase for this in tests/run-funcretval.sh but that only has a +testcase for aarch64. + +	 * backends/riscv_retval.c (flatten_aggregate_arg): Implement +         for the simple cases where we have a struct with one or two +         members of the same base type. +	 (pass_by_flattened_arg): Likewise. Call either +	 pass_in_gpr_lp64 or pass_in_fpr_lp64d. +	 (riscv_return_value_location_lp64ifd): Call +	 flatten_aggregate_arg including size. +	 * tests/Makefile.am (TESTS): Add run-funcretval-struct.sh +	 and run-funcretval-struct-native.sh. +	 (check_PROGRAMS): Add funcretval_test_struct. +	 (funcretval_test_struct_SOURCES): New. +	 (EXTRA_DIST): Add run-funcretval-struct.sh, +	 funcretval_test_struct_riscv.bz2 and +	 run-funcretval-struct-native.sh. +	 * tests/funcretval_test_struct_riscv.bz2: New test binary. +	 * tests/run-funcretval-struct-native.sh: New test. +	 * tests/run-funcretval-struct.sh: Likewise. + +https://sourceware.org/bugzilla/show_bug.cgi?id=31142 + +Signed-off-by: Mark Wielaard <mark@klomp.org> +--- + backends/riscv_retval.c                | 123 ++++++++++++++++++++++--- + tests/Makefile.am                      |   7 ++ + tests/funcretval_test_struct.c         |  86 +++++++++++++++++ + tests/funcretval_test_struct_riscv.bz2 | Bin 0 -> 3821 bytes + tests/run-funcretval-struct-native.sh  |  22 +++++ + tests/run-funcretval-struct.sh         |  35 +++++++ + 6 files changed, 262 insertions(+), 11 deletions(-) + create mode 100644 tests/funcretval_test_struct.c + create mode 100755 tests/funcretval_test_struct_riscv.bz2 + create mode 100755 tests/run-funcretval-struct-native.sh + create mode 100755 tests/run-funcretval-struct.sh + +Fedora NOTE: Both the riscv specific test files weren't included +             (funcretval_test_struct_riscv.bz2 and run-funcretval-struct.sh) +             Because it contained a binary test. The native test is included +             though. + +diff --git a/backends/riscv_retval.c b/backends/riscv_retval.c +index 0a1e02f81cd2..50c451a4ba32 100644 +--- a/backends/riscv_retval.c ++++ b/backends/riscv_retval.c +@@ -1,6 +1,7 @@ + /* Function return value location for Linux/RISC-V ABI. +    Copyright (C) 2018 Sifive, Inc. +    Copyright (C) 2013 Red Hat, Inc. ++   Copyright (C) 2024 Mark J. Wielaard <mark@klomp.org> +    This file is part of elfutils. +  +    This file is free software; you can redistribute it and/or modify +@@ -105,23 +106,123 @@ pass_in_fpr_lp64d (const Dwarf_Op **locp, Dwarf_Word size) +   return size <= 8 ? 1 : 4; + } +  ++/* Checks if we can "flatten" the given type, Only handles the simple ++   cases where we have a struct with one or two the same base type ++   elements.  */ + static int +-flatten_aggregate_arg (Dwarf_Die *typedie __attribute__ ((unused)), +-		       Dwarf_Die *arg0 __attribute__ ((unused)), +-		       Dwarf_Die *arg1 __attribute__ ((unused))) ++flatten_aggregate_arg (Dwarf_Die *typedie, ++		       Dwarf_Word size, ++		       Dwarf_Die *arg0, ++		       Dwarf_Die *arg1) + { +-  /* ??? */ ++  int tag0, tag1; ++  Dwarf_Die member; ++  Dwarf_Word encoding0, encoding1; ++  Dwarf_Attribute attr; ++  Dwarf_Word size0, size1; ++ ++  if (size < 8 || size > 16) ++    return 0; ++ ++  if (dwarf_child (typedie, arg0) != 0) ++    return 0; ++ ++  tag0 = dwarf_tag (arg0); ++  while (tag0 != -1 && tag0 != DW_TAG_member) ++    { ++      if (dwarf_siblingof (arg0, arg0) != 0) ++	return 0; ++      tag0 = dwarf_tag (arg0); ++    } ++ ++  if (tag0 != DW_TAG_member) ++    return 0; ++ ++  /* Remember where we are.  */ ++  member = *arg0; ++ ++  tag0 = dwarf_peeled_die_type (arg0, arg0); ++  if (tag0 != DW_TAG_base_type) ++    return 0; ++ ++  if (dwarf_attr_integrate (arg0, DW_AT_encoding, &attr) == NULL ++      || dwarf_formudata (&attr, &encoding0) != 0) ++    return 0; ++ ++  if (dwarf_bytesize_aux (arg0, &size0) != 0) ++    return 0; ++ ++  if (size == size0) ++    return 1; /* This one member is the whole size. */ ++ ++  if (size != 2 * size0) ++    return 0; /* We only handle two of the same.  */ ++ ++  /* Look for another member with the same encoding.  */ ++  if (dwarf_siblingof (&member, arg1) != 0) ++    return 0; ++ ++  tag1 = dwarf_tag (arg1); ++  while (tag1 != -1 && tag1 != DW_TAG_member) ++    { ++      if (dwarf_siblingof (arg1, arg1) != 0) ++	return 0; ++      tag1 = dwarf_tag (arg1); ++    } ++ ++  if (tag1 != DW_TAG_member) ++    return 0; ++ ++  tag1 = dwarf_peeled_die_type (arg1, arg1); ++  if (tag1 != DW_TAG_base_type) ++    return 0; /* We can only handle two equal base types for now. */ ++ ++  if (dwarf_attr_integrate (arg1, DW_AT_encoding, &attr) == NULL ++      || dwarf_formudata (&attr, &encoding1) != 0 ++      || encoding0 != encoding1) ++    return 0; /* We can only handle two of the same for now. */ ++ ++  if (dwarf_bytesize_aux (arg1, &size1) != 0) ++    return 0; ++ ++  if (size0 != size1) ++    return 0; /* We can only handle two of the same for now. */ ++ +   return 1; + } +  ++/* arg0 and arg1 should be the peeled die types found by ++   flatten_aggregate_arg.  */ + static int +-pass_by_flattened_arg (const Dwarf_Op **locp __attribute__ ((unused)), +-		       Dwarf_Word size __attribute__ ((unused)), +-		       Dwarf_Die *arg0 __attribute__ ((unused)), +-		       Dwarf_Die *arg1 __attribute__ ((unused))) ++pass_by_flattened_arg (const Dwarf_Op **locp, ++		       Dwarf_Word size, ++		       Dwarf_Die *arg0, ++		       Dwarf_Die *arg1 __attribute__((unused))) + { +-  /* ??? */ +-  return -2; ++  /* For now we just assume arg0 and arg1 are the same type and ++     encoding.  */ ++  Dwarf_Word encoding; ++  Dwarf_Attribute attr; ++ ++  if (dwarf_attr_integrate (arg0, DW_AT_encoding, &attr) == NULL ++      || dwarf_formudata (&attr, &encoding) != 0) ++    return -1; ++ ++  switch (encoding) ++    { ++    case DW_ATE_boolean: ++    case DW_ATE_signed: ++    case DW_ATE_unsigned: ++    case DW_ATE_unsigned_char: ++    case DW_ATE_signed_char: ++      return pass_in_gpr_lp64 (locp, size); ++ ++    case DW_ATE_float: ++      return pass_in_fpr_lp64d (locp, size); ++ ++    default: ++      return -1; ++    } + } +  + int +@@ -158,7 +259,7 @@ riscv_return_value_location_lp64ifd (int fp, Dwarf_Die *functypedie, + 	 provided the floating-point real is no more than FLEN bits wide and + 	 the integer is no more than XLEN bits wide.  */ +       if (tag == DW_TAG_structure_type +-	  && flatten_aggregate_arg (&typedie, &arg0, &arg1)) ++	  && flatten_aggregate_arg (&typedie, size, &arg0, &arg1)) + 	return pass_by_flattened_arg (locp, size, &arg0, &arg1); +       /* Aggregates larger than 2*XLEN bits are passed by reference.  */ +       else if (size > 16) +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 9141074fe44c..9315ec3bbe4c 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -284,6 +285,10 @@ funcretval_test__11_SOURCES = funcretval_test++11.cxx + TESTS += run-funcretval++11.sh + endif +  ++check_PROGRAMS += funcretval_test_struct ++funcretval_test_struct_SOURCES = funcretval_test_struct.c ++TESTS += run-funcretval-struct-native.sh ++ + EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \ + 	     run-ar-N.sh \ + 	     run-show-die-info.sh run-get-files.sh run-get-lines.sh \ +@@ -635,6 +641,7 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \ + 	     testfile_nvidia_linemap.bz2 \ + 	     testfile-largealign.o.bz2 run-strip-largealign.sh \ + 	     run-funcretval++11.sh \ ++	     run-funcretval-struct-native.sh \ + 	     test-ar-duplicates.a.bz2 \ + 	     run-dwfl-core-noncontig.sh testcore-noncontig.bz2 \ + 	     testfile-dwarf5-line-clang.bz2 \ +diff --git a/tests/funcretval_test_struct.c b/tests/funcretval_test_struct.c +new file mode 100644 +index 000000000000..df94bde0a42d +--- /dev/null ++++ b/tests/funcretval_test_struct.c +@@ -0,0 +1,86 @@ ++/* Copyright (C) 2024 Mark J. Wielaard <mark@klomp.org> ++   This file is part of elfutils. ++ ++   This file is free software; you can redistribute it and/or modify ++   it under the terms of the GNU General Public License as published by ++   the Free Software Foundation; either version 3 of the License, or ++   (at your option) any later version. ++ ++   elfutils is distributed in the hope that it will be useful, but ++   WITHOUT ANY WARRANTY; without even the implied warranty of ++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the ++   GNU General Public License for more details. ++ ++   You should have received a copy of the GNU General Public License ++   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ ++ ++typedef struct ++  { ++    int q; ++    int r; ++  } div_t; ++ ++typedef struct ++  { ++    long q; ++    long r; ++  } ldiv_t; ++ ++typedef struct ++  { ++    float x; ++    float y; ++  } point_t; ++ ++typedef struct ++  { ++    double x; ++    double y; ++  } dpoint_t; ++ ++div_t __attribute__((__noinline__)) ++div (int n, int d) ++{ ++  div_t r; ++  r.q = n / d; ++  r.r = n % d; ++  return r; ++} ++ ++ldiv_t __attribute__((__noinline__)) ++ldiv (long n, long d) ++{ ++  ldiv_t r; ++  r.q = n / d; ++  r.r = n % d; ++  return r; ++} ++ ++point_t __attribute__((__noinline__)) ++mkpt (float x, float y) ++{ ++  point_t r; ++  r.x = x; ++  r.y = y; ++  return r; ++} ++ ++dpoint_t __attribute__((__noinline__)) ++dmkpt (double x, double y) ++{ ++  dpoint_t r; ++  r.x = x; ++  r.y = y; ++  return r; ++} ++ ++int ++main (void) ++{ ++  div_t d = div (3, 2); ++  ldiv_t ld = ldiv (3, 2); ++  point_t p = mkpt (3.0f, 1.0f); ++  dpoint_t dp = dmkpt (3.0d, 1.0d); ++ ++  return d.q - (int) p.y + ld.q - (int) dp.y; ++} + +diff --git a/tests/run-funcretval-struct-native.sh b/tests/run-funcretval-struct-native.sh +new file mode 100755 +index 000000000000..798edb3b61b3 +--- /dev/null ++++ b/tests/run-funcretval-struct-native.sh +@@ -0,0 +1,22 @@ ++#! /bin/sh ++# Copyright (C) 2024 Mark J. Wielaard <mark@klomp.org> ++# This file is part of elfutils. ++# ++# This file is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 3 of the License, or ++# (at your option) any later version. ++# ++# elfutils is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program.  If not, see <http://www.gnu.org/licenses/>. ++ ++. $srcdir/test-subr.sh ++ ++# Just run it, we don't know what the native representation is. ++# But it should at least work and not error out. ++testrun $abs_builddir/funcretval -e $abs_builddir/funcretval_test_struct +--  +2.44.0 + diff --git a/elfutils.spec b/elfutils.spec new file mode 100644 index 0000000..f2c2a0c --- /dev/null +++ b/elfutils.spec @@ -0,0 +1,1217 @@ +Name: elfutils +Version: 0.191 +Release: 2 +Summary: A collection of utilities and DSOs to handle ELF files and DWARF data +URL: https://elfutils.org/ +License: GPL-3.0-or-later AND (GPL-2.0-or-later OR LGPL-3.0-or-later) +Source: https://sourceware.org/elfutils/ftp/%{version}/elfutils-%{version}.tar.bz2 + +Patch0: Fix-segfault-in-eu-ar-m.patch +Patch1: Fix-issue-of-moving-files-by-ar-or-br.patch +# https://sourceware.org/bugzilla/show_bug.cgi?id=31562 +Patch2: elfutils-0.190-profile-empty-urls.patch +# https://sourceware.org/bugzilla/show_bug.cgi?id=31142 +Patch3: elfutils-0.190-riscv-flatten.patch + +Requires: elfutils-libelf = %{version}-%{release} +Requires: elfutils-libs = %{version}-%{release} +Requires: glibc >= 2.7 libstdc++ +Recommends: elfutils-extra + +BuildRequires: gcc >= 4.1.2-33 m4 zlib-devel gdb-headless gcc-c++ +BuildRequires: bzip2-devel xz-devel xz-libs zstd-devel + +#for debuginfod +BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33 +BuildRequires: pkgconfig(libcurl) >= 7.29.0 +BuildRequires: pkgconfig(sqlite3) >= 3.7.17 +BuildRequires: pkgconfig(libarchive) >= 3.1.2 + +%define _gnu %{nil} +%define _programprefix eu- + +%description +Elfutils is a collection of utilities, including stack (to show +backtraces), nm (for listing symbols from object files), size +(for listing the section sizes of an object or archive file), +strip (for discarding symbols), elflint (to check for well-formed ELF files) and +elfcompress (to compress or decompress ELF sections). +Also included are helper libraries which implement DWARF, ELF, +and machine-specific ELF handling and process introspection. +It also provides a DSO which allows reading and +writing ELF files on a high level. Third party programs depend on +this package to read internals of ELF files.  +Yama sysctl setting to enable default attach scope settings +enabling programs to use ptrace attach, access to +/proc/PID/{mem,personality,stack,syscall}, and the syscalls +process_vm_readv and process_vm_writev which are used for +interprocess services, communication and introspection +(like synchronisation, signaling, debugging, tracing and +profiling) of processes. + +%package extra +Summary: extra package including debug tools +Provides: elfutils-extra +Requires: elfutils = %{version}-%{release} + +%description extra +The extra package contains debug tools. +readelf - to see the raw ELF file structures + +%package libs +Summary: Libraries to handle compiled objects +License: GPL-2.0-or-later OR LGPL-3.0-or-later +Requires: elfutils-libelf = %{version}-%{release} +Requires: default-yama-scope + +%description libs +The elfutils-libs package contains libraries which implement DWARF, ELF, +and machine-specific ELF handling and process introspection.  These +libraries are used by the programs in the elfutils package.  The +elfutils-devel package enables building other programs using these +libraries. + +%package devel +Summary: Development libraries to handle compiled objects. +License: GPL-2.0-or-later OR LGPL-3.0-or-later +Provides:  elfutils-libelf-devel-static elfutils-devel-static +Obsoletes: elfutils-libelf-devel-static < %{version}-%{release} elfutils-devel-static < %{version}-%{release} +Requires: elfutils-libs = %{version}-%{release} +Requires: elfutils-libelf-devel = %{version}-%{release} + +%description devel +The elfutils-devel package contains the libraries to create +applications for handling compiled objects.  libebl provides some +higher-level ELF access functionality.  libdw provides access to +the DWARF debugging information.  libasm provides a programmable +assembler interface. libelf allows you to +access the internals of the ELF object file format, so you can see the +different sections of an ELF file. + +%package libelf +Summary: Library to read and write ELF files +License: GPL-2.0-or-later OR LGPL-3.0-or-later + +%description libelf +The elfutils-libelf package provides a DSO which allows reading and +writing ELF files on a high level.  Third party programs depend on +this package to read internals of ELF files.  The programs of the +elfutils package use it also to generate new ELF files. + +%package libelf-devel +Summary: Development support for libelf +License: GPL-2.0-or-later OR LGPL-3.0-or-later +Requires: elfutils-libelf = %{version}-%{release} +Conflicts: libelf-devel + +%description libelf-devel +The elfutils-libelf-devel package contains the libraries to create +applications for handling compiled objects.  libelf allows you to +access the internals of the ELF object file format, so you can see the +different sections of an ELF file. + +%package default-yama-scope +Summary: Default yama attach scope sysctl setting +License: GPL-2.0-or-later OR LGPL-3.0-or-later +Provides: default-yama-scope +BuildArch: noarch + +%description default-yama-scope +Yama sysctl setting to enable default attach scope settings +enabling programs to use ptrace attach, access to +/proc/PID/{mem,personality,stack,syscall}, and the syscalls +process_vm_readv and process_vm_writev which are used for +interprocess services, communication and introspection +(like synchronisation, signaling, debugging, tracing and +profiling) of processes. + +%package_help + +%package debuginfod-client +Summary: Library and command line client for build-id HTTP ELF/DWARF server +License: GPL-3.0-or-later AND (GPL-2.0-or-later OR LGPL-3.0-or-later) + +%package debuginfod-client-devel +Summary: Libraries and headers to build debuginfod client applications +License: GPL-2.0-or-later OR LGPL-3.0-or-later + +%package debuginfod +Summary: HTTP ELF/DWARF file server addressed by build-id +License: GPL-3.0-or-later +BuildRequires: systemd +Requires(post):   systemd +Requires(preun):  systemd +Requires(postun): systemd +Requires(pre): shadow-utils +# To extract .deb files with a bsdtar (=libarchive) subshell +Requires: bsdtar + +%description debuginfod-client +The elfutils-debuginfod-client package contains shared libraries +dynamically loaded from -ldw, which use a debuginfod service +to look up debuginfo and associated data. Also includes a +command-line frontend. + +%description debuginfod-client-devel +The elfutils-debuginfod-client-devel package contains the libraries +to create applications to use the debuginfod service. + +%description debuginfod +The elfutils-debuginfod package contains the debuginfod binary +and control files for a service that can provide ELF/DWARF +files to remote clients, based on build-id identification. +The ELF/DWARF file searching functions in libdwfl can query +such servers to download those files on demand. + +%prep +%autosetup -n %{name}-%{version} -p1 + +%build +%if "%toolchain" == "clang" +  CFLAGS="$CFLAGS -Wno-error=gnu-variable-sized-type-not-at-end -Wno-error=unused-but-set-variable -Wno-error=unused-but-set-parameter" +  CXXFLAGS="$CXXFLAGS -Wno-error=unused-const-variable" +%endif + +%configure --program-prefix=%{_programprefix} +%make_build + +%install +%make_install +chmod +x ${RPM_BUILD_ROOT}%{_libdir}/lib*.so* + +rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.sh +rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.csh + +install -Dm0644 config/10-default-yama-scope.conf ${RPM_BUILD_ROOT}%{_sysctldir}/10-default-yama-scope.conf +install -Dm0644 config/debuginfod.service ${RPM_BUILD_ROOT}%{_unitdir}/debuginfod.service +install -Dm0644 config/debuginfod.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/debuginfod +mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod +touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite + +%find_lang %{name} + +%check +# run-debuginfod-find.sh is a bad test +%make_build check || (cat tests/test-suite.log; true) + +%post default-yama-scope +if [ -x /usr/lib/systemd/systemd-sysctl ] ; then +%sysctl_apply 10-default-yama-scope.conf +fi + +%files +%license COPYING COPYING-GPLV2 COPYING-LGPLV3 +%doc README TODO CONTRIBUTING +%{_bindir}/eu-elfcompress +%{_bindir}/eu-strip +%{_bindir}/eu-addr2line +%{_bindir}/eu-ar +%{_bindir}/eu-elfclassify +%{_bindir}/eu-elfcmp +%{_bindir}/eu-elflint +%{_bindir}/eu-findtextrel +%{_bindir}/eu-make-debug-archive +%{_bindir}/eu-ranlib +%{_bindir}/eu-size +%{_bindir}/eu-stack +%{_bindir}/eu-strings +%{_bindir}/eu-unstrip +%{_bindir}/eu-srcfiles + +%files libs +%license COPYING-GPLV2 COPYING-LGPLV3 +%{_libdir}/libasm-%{version}.so +%{_libdir}/libdw-%{version}.so +%{_libdir}/libasm.so.* +%{_libdir}/libdw.so.* + +%files extra +%{_bindir}/eu-objdump +%{_bindir}/eu-readelf +%{_bindir}/eu-nm + +%files devel +%{_includedir}/dwarf.h +%dir %{_includedir}/elfutils +%{_includedir}/elfutils/elf-knowledge.h +%{_includedir}/elfutils/known-dwarf.h +%{_includedir}/elfutils/libasm.h +%{_includedir}/elfutils/libdw.h +%{_includedir}/elfutils/libdwelf.h +%{_includedir}/elfutils/libdwfl.h +%{_includedir}/elfutils/version.h +%{_libdir}/libasm.a +%{_libdir}/libasm.so +%{_libdir}/libdw.a +%{_libdir}/libdw.so +%{_libdir}/libelf.a +%{_libdir}/pkgconfig/libdw.pc + +%files libelf -f %{name}.lang +%license COPYING-GPLV2 COPYING-LGPLV3 +%{_libdir}/libelf-%{version}.so +%{_libdir}/libelf.so.* + +%files libelf-devel +%{_includedir}/libelf.h +%{_includedir}/gelf.h +%{_includedir}/nlist.h +%{_libdir}/libelf.so +%{_libdir}/pkgconfig/libelf.pc + +%files default-yama-scope +%{_sysctldir}/10-default-yama-scope.conf + +%files help +%license doc/COPYING-GFDL COPYING-GPLV2 COPYING-LGPLV3 +%{_mandir}/man1/eu-*.1* +%{_mandir}/man1/debuginfod-find.1* +%{_mandir}/man3/debuginfod_*.3* +%{_mandir}/man3/elf_*.3* +%{_mandir}/man7/debuginfod*.7.* +%{_mandir}/man8/debuginfod*.8* + +%files debuginfod-client +%{_libdir}/libdebuginfod-%{version}.so +%{_bindir}/debuginfod-find +%{_libdir}/libdebuginfod.so.* + +%files debuginfod-client-devel +%{_libdir}/pkgconfig/libdebuginfod.pc +%{_includedir}/elfutils/debuginfod.h +%{_libdir}/libdebuginfod.so +  +%files debuginfod +%{_bindir}/debuginfod +%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sysconfig/debuginfod +%{_unitdir}/debuginfod.service + +%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod +%verify(not md5 size mtime) %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite + +%pre debuginfod +getent group debuginfod >/dev/null || groupadd -r debuginfod +getent passwd debuginfod >/dev/null || \ +  useradd -r -g debuginfod -d /var/cache/debuginfod -s /sbin/nologin \ +          -c "elfutils debuginfo server" debuginfod +exit 0 + +%post debuginfod +%systemd_post debuginfod.service + +%postun debuginfod +%systemd_postun_with_restart debuginfod.service + +%changelog +* Fri Sep 06 2024 Funda Wang <fundawang@yeah.net> - 0.191-2 +- cleanup spec + +* Tue Jul 16 2024 dillon chen <dillon.chen@gmail.com> - 0.191-1 +- Type:bugfix +- CVE:NA +- SUG:NA +- DESC:upgrade version to 0.191 + +* Thu Feb 22 2024 liweigang <venland30@gmail.com> - 0.190-2 +- Type: CVE +- CVE: CVE-2024-25260 +- SUG: NA +- DESC: fix CVE-2024-25260 + +* Thu Jan 25 2024 shixuantong <shixuantong1@huawei.com> - 0.190-1 +- Type:bugfix +- CVE:NA +- SUG:NA +- DESC:upgrade version to 0.190 + +* Fri Sep 01 2023 fuanan <fuanan3@h-partners.com> - 0.189-3 +- Type:bugfix +- CVE:NA +- SUG:NA +- DESC:Remove unnecessary patch because this patch is contained in elfutils-0.189.tar + +* Tue Aug 29 2023 zhangruifang <zhangruifang1@h-partners.com> - 0.189-2 +- Type:bugfix +- CVE:NA +- SUG:NA +- DESC:Don not compress if section already compressed unless forced + +* Thu Jul 13 2023 fuanan <fuanan3@h-partners.com> - 0.189-1 +- Type:enhancement +- CVE:NA +- SUG:NA +- DESC:update version to 0.189 + +* Tue Apr 25 2023 jammyjellyfish <jammyjellyfish255@outlook.com> - 0.187-12 +- Type:bugfix +- CVE:NA +- SUG:NA +- DESC:Fix clang build error + +* Fri Mar 10 2023 yixiangzhike<yixiangzhike007@163.com> - 0.187-11 +- Type:bugfix +- CVE:NA +- SUG:NA +- DESC:Fix failure of compiling with curl-7.88.1 + +* Mon Nov 14 2022 wuzx<wuzx1226@qq.com> - 0.187-10 +- Type:feature +- CVE:NA +- SUG:NA +- DESC:Add sw64 architecture + +* Tue Nov 1 2022 zhangruifang <zhangruifang1@h-partners.com> - 0.187-9 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:Delete the permission(750) setting for eu-* + +* Tue Sep 20 2022 hubin <hubin73@huawei.com> - 0.187-8 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:change readelf permission + +* Tue Sep 20 2022 hubin <hubin73@huawei.com> - 0.187-7 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:change permission to 750 and move debug tools into extra package + +* Fri Sep 9 2022 fuanan <fuanan3@h-partners.com> - 0.187-6 +- Fix "/usr/lib64/libdebuginfod.so.1" not found when uninstall elfutils-debuginfod-client-devel +- Fix Obsoletes in spec + +* Fri Aug 26 2022 panxiaohe <panxh.life@foxmail.com> - 0.187-5 +- Get instance correctly for eu-ar -N option +- Use make macros + +* Wed Aug 24 2022 yixiangzhike <yixiangzhike007@163.com> - 0.187-4 +- Fix issue of moving files by ar or br + +* Tue Aug 16 2022 yixiangzhike <yixiangzhike007@163.com> - 0.187-3 +- Fix error of parsing object file perms + +* Tue Jul 19 2022 Hugel <gengqihu1@h-partners.com> - 0.187-2 +- Add some compression support + +* Fri Jul 1 2022 panxiaohe <panxh.life@foxmail.com> - 0.187-1 +- update version to 0.187 + +* Mon Jun 27 2022 zhangruifang <zhangruifang1@h-partners.com> - 0.185-5 +- fix segfault in eu-ar -m + +* Thu Feb 17 2022 panxiaohe <panxh.life@foxmail.com> - 0.185-4 +- fix wrong use of stdin for eu-elfclassify --no-stdin option + +* Wed Sep 15 2021 panxiaohe <panxiaohe@huawei.com> - 0.185-3 +- detach subpackages elfutils-libs, elfutils-libelf, +  elfutils-libelf-devel, elfutils-default-yama-scope + +* Tue Jul 27 2021 panxiaohe <panxiaohe@huawei.com> - 0.185-2 +- fix make check about bad test + +* Mon Jul 19 2021 panxiaohe <panxiaohe@huawei.com> - 0.185-1 +- update version to 0.185 + +* Sat Jun 5 2021 wangchen <wangchen137@huawei.com> - 0.182-2 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:add gcc-c++ to BuildRequires + +* Tue Jan 26 2021 yang_zhuang_zhuang <yangzhuangzhuang1@huawei.com> - 0.182-1 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:update version to 0.182 + +* Wed Jul 29 2020 yang_zhuang_zhuang <yangzhuangzhuang1@huawei.com> - 0.180-1 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:update version to 0.180 + +* Thu Oct 10 2019 Yalong Guan <guanyalong@huawei.com> - 0.177-3 +- Type: Reorganization +- ID:NA +- SUG:NA +- DESC: move license files to license folder. + +* Mon Sep 9 2019 Yalong Guan <guanyalong@huawei.com> - 0.177-2 +- Type: Reorganization +- ID:NA +- SUG:restart +- DESC: Repartition files to different packages. + +* Tue Aug 13 2019 Mark Wielaard <mark@klomp.org> 0.177-1 +- elfclassify: New tool to analyze ELF objects. +- readelf: Print DW_AT_data_member_location as decimal offset. +           Decode DW_AT_discr_list block attributes. +- libdw: Add DW_AT_GNU_numerator, DW_AT_GNU_denominator and DW_AT_GNU_bias. +- libdwelf: Add dwelf_elf_e_machine_string. +            dwelf_elf_begin now only returns NULL when there is an error +            reading or decompressing a file. If the file is not an ELF file +            an ELF handle of type ELF_K_NONE is returned. +- backends: Add support for C-SKY. + +* Thu Feb 14 2019 Mark Wielaard <mark@klomp.org> 0.176-1 +- build: Add new --enable-install-elfh option. +  Do NOT use this for system installs (it overrides glibc elf.h). +- backends: riscv improved core file and return value location support. +- Fixes CVE-2019-7146, CVE-2019-7148, CVE-2019-7149, CVE-2019-7150, +        CVE-2019-7664, CVE-2019-7665. + +* Wed Nov 14 2018 Mark Wielaard <mark@klomp.org> 0.175-1 +- readelf: Handle mutliple .debug_macro sections. +  Recognize and parse GNU Property notes, NT_VERSION notes and +  GNU Build Attribute ELF Notes. +- strip: Handle SHT_GROUP correctly. +  Add strip --reloc-debug-sections-only option. +  Handle relocations against GNU compressed sections. +- libdwelf: New function dwelf_elf_begin. +- libcpu: Recognize bpf jump variants BPF_JLT, BPF_JLE, BPF_JSLT +  and BPF_JSLE. +- backends: RISCV handles ADD/SUB relocations. +  Handle SHT_X86_64_UNWIND. +- Fixes CVE-2018-18310, CVE-2018-18520 and CVE-2018-18521. + +* Fri Sep 14 2018 Mark Wielaard <mark@klomp> 0.174-1 +- libelf, libdw and all tools now handle extended shnum and shstrndx +  correctly. +- elfcompress: Don't rewrite input file if no section data needs +  updating.  Try harder to keep same file mode bits (suid) on rewrite. +- strip: Handle mixed (out of order) allocated/non-allocated sections. +- unstrip: Handle SHT_GROUP sections. +- backends: RISCV and M68K now have backend implementations to +  generate CFI based backtraces. +- Fixes CVE-2018-16062, CVE-2018-16402 and CVE-2018-16403. + +* Fri Jun 29 2018 Mark Wielaard,,, <mark@klomp.org> 0.173-1 +- More fixes for crashes and hangs found by afl-fuzz. In particular +  various functions now detect and break infinite loops caused by bad +  DIE tree cycles. +- readelf: Will now lookup the size and signedness of constant value +  types to display them correctly (and not just how they were encoded). +- libdw: New function dwarf_next_lines to read CU-less .debug_line data. +  dwarf_begin_elf now accepts ELF files containing just .debug_line +  or .debug_frame sections (which can be read without needing a DIE +  tree from the .debug_info section). +  Removed dwarf_getscn_info, which was never implemented. +- backends: Handle BPF simple relocations. +  The RISCV backends now handles ABI specific CFI and knows about +  RISCV register types and names. + +* Mon Jun 11 2018 Mark Wielaard <mark@klomp.org> 0.172-1 +- No functional changes compared to 0.171. +- Various bug fixes in libdw and eu-readelf dealing with bad DWARF5 +  data. Thanks to running the afl fuzzer on eu-readelf and various +  testcases. +- eu-readelf -N is ~15% faster. + +* Fri Jun 01 2018 Mark Wielaard <mark@klomp.org> 0.171-1 +- DWARF5 and split dwarf, including GNU DebugFission, support. +- readelf: Handle all new DWARF5 sections. +  --debug-dump=info+ will show split unit DIEs when found. +  --dwarf-skeleton can be used when inspecting a .dwo file. +  Recognizes GNU locviews with --debug-dump=loc. +- libdw: New functions dwarf_die_addr_die, dwarf_get_units, +  dwarf_getabbrevattr_data and dwarf_cu_info. +  libdw will now try to resolve the alt file on first use +  when not set yet with dwarf_set_alt. +  dwarf_aggregate_size() now works with multi-dimensional arrays. +- libdwfl: Use process_vm_readv when available instead of ptrace. +- backends: Add a RISC-V backend. + +* Wed Aug  2 2017 Mark Wielaard <mark@klomp.org> 0.170-1 +- libdw: Added new DWARF5 attribute, tag, character encoding, +  language code, calling convention, defaulted member function +  and macro constants to dwarf.h. +  New functions dwarf_default_lower_bound and dwarf_line_file. +  dwarf_peel_type now handles DWARF5 immutable, packed and shared tags. +  dwarf_getmacros now handles DWARF5 .debug_macro sections. +- strip: Add -R, --remove-section=SECTION and --keep-section=SECTION. +- backends: The bpf disassembler is now always build on all platforms. + +* Fri May  5 2017 Mark Wielaard <mark@klomp.org> 0.169-1 +- backends: Add support for EM_PPC64 GNU_ATTRIBUTES. +  Frame pointer unwinding fallback support for i386, x86_64, aarch64. +- translations: Update Polish translation. + +* Tue Dec 27 2016 Mark Wielaard <mark@klomp.org> 0.168-1 +- http://elfutils.org/ is now hosted at http://sourceware.org/elfutils/ +- libelf: gelf_newehdr and gelf_newehdr now return void *. +- libdw: dwarf.h corrected the DW_LANG_PLI constant name (was DW_LANG_PL1). +- readelf: Add optional --symbols[=SECTION] argument to select section name. + +* Thu Aug  4 2016 Mark Wielaard <mjw@redhat.com> 0.167-1 +- libasm: Add eBPF disassembler for EM_BPF files. +- backends: Add m68k and BPF backends. +- ld: Removed. +- dwelf: Add ELF/DWARF string table creation functions. +  dwelf_strtab_init, dwelf_strtab_add, dwelf_strtab_add_len, +  dwelf_strtab_finalize, dwelf_strent_off, dwelf_strent_str and +  dwelf_strtab_free. + +* Thu Mar 31 2016 Mark Wielaard <mjw@redhat.com> 0.166-1 +- config: The default program prefix for the installed tools is now +  eu-. Use configure --program-prefix="" to not use a program prefix. + +* Fri Jan  8 2016 Mark Wielaard <mjw@redhat.com> 0.165-1 +- elfcompress: New utility to compress or decompress ELF sections. +- readelf: Add -z,--decompress option. +- libelf: Add elf_compress, elf_compress_gnu, elf32_getchdr, +  elf64_getchdr and gelf_getchdr. +- libdwelf: New function dwelf_scn_gnu_compressed_size. +- config: Add libelf and libdw pkg-config files. +- backends: sparc support for core and live backtraces. +- translations: Updated Polish translation. + +* Thu Oct 15 2015 Mark Wielaard <mjw@redhat.com> 0.164-1 +- strip, unstrip: Handle ELF files with merged strtab/shstrtab +  tables. Handle missing SHF_INFO_LINK section flags. +- libelf: Use int64_t for offsets in libelf.h instead of loff_t. +- libdw: dwarf.h Add preliminary DWARF5 DW_LANG_Haskell. +- libdwfl: dwfl_standard_find_debuginfo now searches any subdir of +  the binary path under the debuginfo root when the separate +  debug file couldn't be found by build-id. +  dwfl_linux_proc_attach can now be called before any Dwfl_Modules +  have been reported. +- backends: Better sparc and sparc64 support. +- translations: Updated Ukrainian translation. +- Provide default-yama-scope subpackage. + +* Fri Jun 19 2015 Mark Wielaard <mjw@redhat.com> 0.163-1 +- Bug fixes only, no new features. + +* Wed Jun 10 2015 Mark Wielaard <mjw@redhat.com> 0.162-1 +- libdw: Install new header elfutils/known-dwarf.h. +  dwarf.h Add preliminary DWARF5 constants DW_TAG_atomic_type, +  DW_LANG_Fortran03, DW_LANG_Fortran08. dwarf_peel_type now also +  handles DW_TAG_atomic_type. +- addr2line: Input addresses are now always interpreted as +  hexadecimal numbers, never as octal or decimal numbers. +  New option -a, --addresses to print address before each entry. +  New option -C, --demangle to show demangled symbols. +  New option --pretty-print to print all information on one line. +- ar: CVE-2014-9447 Directory traversal vulnerability in ar +  extraction. +- backends: x32 support. + +* Thu Dec 18 2014 Mark Wielaard <mjw@redhat.com> 0.161-1 +- libdw: New function dwarf_peel_type. dwarf_aggregate_size now uses +  dwarf_peel_type to also provide the sizes of qualified types. +  dwarf_getmacros will now serve either of .debug_macro and +  .debug_macinfo transparently.  New interfaces dwarf_getmacros_off, +  dwarf_macro_getsrcfiles, dwarf_macro_getparamcnt, and +  dwarf_macro_param are available for more generalized inspection of +  macros and their parameters. +  dwarf.h: Add DW_AT_GNU_deleted, DW_AT_noreturn, DW_LANG_C11, +  DW_LANG_C_plus_plus_11 and DW_LANG_C_plus_plus_14. + +* Mon Aug 25 2014 Mark Wielaard <mjw@redhat.com> 0.160-1 +- libdw: New functions dwarf_cu_getdwarf, dwarf_cu_die. +  dwarf.h remove non-existing DW_TAG_mutable_type. +- libdwfl: Handle LZMA .ko.xz compressed kernel modules. +- unstrip: New option -F, --force to combining files even if some ELF +  headers don't seem to match. +- backends: Handle ARM THUMB functions. Add support for ppc64le ELFv2 abi. + +* Sat May 17 2014 Mark Wielaard <mjw@redhat.com> 0.159-1 +- stack: New option -d, --debugname to lookup DWARF debuginfo name  +  for frame.  New option -i, --inlines to show inlined frames  +  using DWARF debuginfo. +- libdwelf: New libdwelf.h header for libdw.so DWARF ELF Low-level  +  Functions.  New function dwelf_elf_gnu_debuglink,  +  dwelf_dwarf_gnu_debugaltlink, and dwelf_elf_gnu_build_id. +- libdw: Support for DWZ multifile forms DW_FORM_GNU_ref_alt and       +  DW_FORM_GNU_strp_alt is now enabled by default and no longer         +  experimental. Added new functions dwarf_getalt and dwarf_setalt        +  to get or set the alternative debug file used for the alt FORMs.      +  The dwfl_linux_proc_find_elf callback will now find ELF from        +  process memory for (deleted) files if the Dwfl has process state      +  attached. +- libdwfl: The dwfl_build_id_find_debuginfo and  +  dwfl_standard_find_debuginfo functions will now try to  +  resolve and set the alternative debug file. +- backends: Add CFI unwinding for arm. Relies on .debug_frame.         +  Add arm process initial register state compatible mode to AARCH64.  +  Add aarch64 native and core unwind support. +- other: All separate elfutils-robustify patches have been merged.     +  CVE-2014-0172 Check overflow before calling malloc to uncompress  +  data. + +* Fri Jan  3 2014 Mark Wielaard <mjw@redhat.com> 0.158-1 +- libdwfl: dwfl_core_file_report has new parameter executable. +  New functions dwfl_module_getsymtab_first_global, +  dwfl_module_getsym_info and dwfl_module_addrinfo. +  Added unwinder with type Dwfl_Thread_Callbacks, opaque types +  Dwfl_Thread and Dwfl_Frame and functions dwfl_attach_state, +  dwfl_pid, dwfl_thread_dwfl, dwfl_thread_tid, dwfl_frame_thread, +  dwfl_thread_state_registers, dwfl_thread_state_register_pc, +  dwfl_getthread_frames, dwfl_getthreads, dwfl_thread_getframes +  and dwfl_frame_pc. +- addr2line: New option -x to show the section an address was found in. +- stack: New utility that uses the new unwinder for processes and cores. +- backends: Unwinder support for i386, x86_64, s390, s390x, ppc and ppc64. +  aarch64 support. + +* Mon Sep 30 2013 Mark Wielaard <mjw@redhat.com> 0.157-1 +- libdw: Add new functions dwarf_getlocations, dwarf_getlocation_attr  +         and dwarf_getlocation_die. +- readelf: Show contents of NT_SIGINFO and NT_FILE core notes. +- addr2line: Support -i, --inlines output option. +- backends: abi_cfi hook for arm, ppc and s390. + +* Thu Jul 25 2013 Jan Kratochvil <jan.kratochvil@redhat.com> 0.156-1 +- lib: New macro COMPAT_VERSION_NEWPROTO. +- libdw: Handle GNU extension opcodes in dwarf_getlocation. +- libdwfl: Fix STB_GLOBAL over STB_WEAK preference in  +  dwfl_module_addrsym.          Add minisymtab support.          Add  +  parameter add_p_vaddr to dwfl_report_elf.          Use DT_DEBUG  +  library search first. +- libebl: Handle new core note types in EBL. +- backends: Interpret NT_ARM_VFP.           Implement core file  +  registers parsing for s390/s390x. +- readelf: Add --elf-section input option to inspect an embedded ELF  +  file.          Add -U, --unresolved-address-offsets output control.    +         Add --debug-dump=decodedline support.          Accept version  +  8 .gdb_index section format.          Adjust output formatting width.  +           When highpc is in constant form print it also as address.     +        Display raw .debug_aranges. Use libdw only for decodedaranges. +- elflint: Add __bss_start__ to the list of allowed symbols. +- tests: Add configure --enable-valgrind option to run all tests  +  under valgrind.        Enable automake parallel-tests for make check. +- translations: Updated Polish translation. +- Updates for Automake 1.13. + +* Fri Aug 24 2012 Mark Wielaard <mjw@redhat.com> 0.155-1 +- libelf: elf*_xlatetomd now works for cross-endian ELF note data.     +       elf_getshdr now works consistently on non-mmaped ELF files after  +          calling elf_cntl(ELF_C_FDREAD).         Implement support for  +  ar archives with 64-bit symbol table. +- libdw: dwarf.h corrected the DW_LANG_ObjC constant name (was  +  DW_LANG_Objc).        Any existing sources using the old name will  +  have to be updated.        Add DW_MACRO_GNU .debug_macro type  +  encodings constants, DW_ATE_UTF        and DW_OP_GNU_parameter_ref to  +  dwarf.h.        Experimental support for DWZ multifile forms  +  DW_FORM_GNU_ref_alt        and DW_FORM_GNU_strp_alt.  Disabled by  +  default.  Use configure        --enable-dwz to test it. +- readelf: Add .debug_macro parsing support.          Add .gdb_index  +  version 7 parsing support.          Recognize DW_OP_GNU_parameter_ref. +- backends: Add support for Tilera TILE-Gx processor. +- translations: Updated Ukrainian translation. + +* Fri Jun 22 2012 Mark Wielaard <mjw@redhat.com> 0.154-1 +- libelf: [g]elf[32|64]_offscn() do not match SHT_NOBITS sections at  +  OFFSET. +- libdw: dwarf_highpc function now handles DWARF 4 DW_AT_high_pc  +  constant form.        Fix bug using dwarf_next_unit to iterate over  +  .debug_types. +- elflint: Now accepts gold linker produced executables. +- The license is now GPLv2/LGPLv3+ for the libraries and GPLv3+ for  +  stand-alone programs. There is now also a formal CONTRIBUTING  +  document describing how to submit patches. + +* Thu Feb 23 2012 Mark Wielaard <mjw@redhat.com> 0.153-1 +- libdw: Support reading .zdebug_* DWARF sections compressed via zlib. +- libdwfl: Speed up dwfl_module_addrsym. +- nm: Support C++ demangling. +- ar: Support D modifier for "deterministic output" with no  +  uid/gid/mtime info.     The U modifier is the inverse.     elfutils  +  can be configured with the --enable-deterministic-archives     option  +  to make the D behavior the default when U is not specified. +- ranlib: Support -D and -U flags with same meaning. +- readelf: Improve output of -wline. Add support for printing SDT elf  +  notes.          Add printing of .gdb_index section. 	 Support for  +  typed DWARF stack, call_site and entry_value. +- strip: Add --reloc-debug-sections option.        Improved SHT_GROUP  +  sections handling. + +* Tue Feb 15 2011  <drepper@gmail.com> 0.152-1 +- Various build and warning nits fixed for newest GCC and Autoconf. +- libdwfl: Yet another prelink-related fix for another regression. +  	 Look for Linux kernel images in files named with compression +  suffixes. +- elfcmp: New flag --ignore-build-id to ignore differing build ID +  bits. 	New flag -l/--verbose to print all differences. + +* Wed Jan 12 2011  <drepper@gmail.com> 0.151-1 +- libdwfl: Fix for more prelink cases with separate debug file. +- strip: New flag --strip-sections to remove section headers entirely. + +* Mon Nov 22 2010  <drepper@gmail.com> 0.150-1 +- libdw: Fix for handling huge .debug_aranges section. +- libdwfl: Fix for handling prelinked DSO with separate debug file. +- findtextrel: Fix diagnostics to work with usual section ordering. +- libebl: i386 backend fix for multi-register integer return value +  location. + +* Mon Sep 13 2010  <drepper@redhat.com> 0.149-1 +- libdw: Decode new DW_OP_GNU_implicit_pointer operation;        new +  function dwarf_getlocation_implicit_pointer. +- libdwfl: New function dwfl_dwarf_line. +- addr2line: New flag -F/--flags to print more DWARF line information +  details. +- strip: -g recognizes .gdb_index as a debugging section. + +* Mon Jun 28 2010  <drepper@redhat.com> 0.148-1 +- libdw: Accept DWARF 4 format: new functions dwarf_next_unit, +  dwarf_offdie_types.        New functions dwarf_lineisa, +  dwarf_linediscriminator, dwarf_lineop_index. +- libdwfl: Fixes in core-file handling, support cores from PIEs. +  	 When working from build IDs, don't open a named file that +  mismatches. +- readelf: Handle DWARF 4 formats. + +* Mon May  3 2010 Ulrich Drepper <drepper@redhat.com> 0.147-1 +- libdw: Fixes in CFI handling, best possible handling of bogus CFA +  ops. +- libdwfl: Ignore R_*_NONE relocs, works around old (binutils) ld -r +  bugs. + +* Wed Apr 21 2010  <drepper@redhat.com> 0.146-1 +- libdwfl: New function dwfl_core_file_report. + +* Tue Feb 23 2010 Ulrich Drepper <drepper@redhat.com> 0.145-1 +- Fix build with --disable-dependency-tracking. +- Fix build with most recent glibc headers. +- libelf: More robust to bogus section headers. +- libdw: Fix CFI decoding. +- libdwfl: Fix address bias returned by CFI accessors. 	 Fix core +  file module layout identification. +- readelf: Fix CFI decoding. + +* Thu Jan 14 2010  <drepper@redhat.com> 0.144-1 +- libelf: New function elf_getphdrnum. 	Now support using more than +  65536 program headers in a file. +- libdw: New function dwarf_aggregate_size for computing (constant) +  type        sizes, including array_type cases with nontrivial +  calculation. +- readelf: Don't give errors for missing info under -a. +  Handle Linux "VMCOREINFO" notes under -n. + +* Mon Sep 21 2009  <drepper@redhat.com> 0.143-1 +- libdw: Various convenience functions for individual attributes now +  use dwarf_attr_integrate to look up indirect inherited +  attributes.  Location expression handling now supports +  DW_OP_implicit_value. +- libdwfl: Support automatic decompression of files in XZ format, +  and of Linux kernel images made with bzip2 or LZMA (as well +  as gzip). + +* Mon Jun 29 2009  <drepper@redhat.com> 0.142-1 +- libelf: Add elf_getshdrnum alias for elf_getshnum and elf_getshdrstrndx alias +  for elf_getshstrndx and deprecate original names.  Sun screwed up +  their implementation and asked for a solution. +- libebl: Add support for STB_GNU_UNIQUE. +- elflint: Add support for STB_GNU_UNIQUE. +- readelf: Add -N option, speeds up DWARF printing without address->name lookups. +- libdw: Add support for decoding DWARF CFI into location description form. +  Handle some new DWARF 3 expression operations previously omitted. +  Basic handling of some new encodings slated for DWARF + +* Thu Apr 23 2009 Ulrich Drepper <drepper@redhat.com> 0.141-1 +- libebl: sparc backend fixes; 	some more arm backend support +- libdwfl: fix dwfl_module_build_id for prelinked DSO case; +  fixes in core file support; 	 dwfl_module_getsym interface +  improved for non-address symbols +- strip: fix infinite loop on strange inputs with -f +- addr2line: take -j/--section=NAME option for binutils compatibility +  	   (same effect as '(NAME)0x123' syntax already supported) + +* Mon Feb 16 2009 Ulrich Drepper <drepper@redhat.com> 0.140-1 +- libelf: Fix regression in creation of section header +- libdwfl: Less strict behavior if DWARF reader ist just used to +  display data + +* Thu Jan 22 2009 Ulrich Drepper <drepper@redhat.com> 0.139-1 +- libcpu: Add Intel SSE4 disassembler support +- readelf: Implement call frame information and exception handling +  dumping.          Add -e option.  Enable it implicitly for -a. +- elflint: Check PT_GNU_EH_FRAME program header entry. +- libdwfl: Support automatic gzip/bzip2 decompression of ELF files. + +* Wed Dec 31 2008 Roland McGrath <roland@redhat.com> 0.138-1 +- Install <elfutils/version.h> header file for applications to use in +  source version compatibility checks. +- libebl: backend fixes for i386 TLS relocs; backend support for +  NT_386_IOPERM +- libcpu: disassembler fixes +- libdwfl: bug fixes +- libelf: bug fixes +- nm: bug fixes for handling corrupt input files + +* Tue Aug 26 2008 Ulrich Drepper <drepper@redhat.com> 0.137-1 +- Minor fixes for unreleased 0.136 release. + +* Mon Aug 25 2008 Ulrich Drepper <drepper@redhat.com> 0.136-1 +- libdwfl: bug fixes; new segment interfaces;	 all the libdwfl-based + tools now support --core=COREFILE option + +* Mon May 12 2008 Ulrich Drepper <drepper@redhat.com> 0.135-1 +- libdwfl: bug fixes +- strip: changed handling of ET_REL files wrt symbol tables and relocs + +* Tue Apr  8 2008 Ulrich Drepper <drepper@redhat.com> 0.134-1 +- elflint: backend improvements for sparc, alpha +- libdwfl, libelf: bug fixes + +* Sat Mar  1 2008 Ulrich Drepper <drepper@redhat.com> 0.133-1 +- readelf, elflint, libebl: SHT_GNU_ATTRIBUTE section handling (readelf -A) +- readelf: core note handling for NT_386_TLS, NT_PPC_SPE, Alpha NT_AUXV +- libdwfl: bug fixes and optimization in relocation handling +- elfcmp: bug fix for non-allocated section handling +- ld: implement newer features of binutils linker. + +* Mon Jan 21 2008 Ulrich Drepper <drepper@redhat.com> 0.132-1 +- libcpu: Implement x86 and x86-64 disassembler. +- libasm: Add interface for disassembler. +- all programs: add debugging of branch prediction. +- libelf: new function elf_scnshndx. + +* Sun Nov 11 2007 Ulrich Drepper <drepper@redhat.com> 0.131-1 +- libdw: DW_FORM_ref_addr support; dwarf_formref entry point now depreca +ted;       bug fixes for oddly-formatted DWARF +- libdwfl: bug fixes in offline archive support, symbol table handling; +	 apply partial relocations for dwfl_module_address_section on +ET_REL +- libebl: powerpc backend support for Altivec registers + +* Mon Oct 15 2007 Ulrich Drepper <drepper@redhat.com> 0.130-1 +- readelf: -p option can take an argument like -x for one section, +	 or no argument (as before) for all SHF_STRINGS sections; +	 new option --archive-index (or -c);	 improved -n output fo +r core files, on many machines +- libelf: new function elf_getdata_rawchunk, replaces gelf_rawchunk; +	new functions gelf_getnote, gelf_getauxv, gelf_update_auxv +- readelf, elflint: handle SHT_NOTE sections without requiring phdrs +- elflint: stricter checks on debug sections +- libdwfl: new functions dwfl_build_id_find_elf, dwfl_build_id_find_debu +ginfo,	 dwfl_module_build_id, dwfl_module_report_build_id;	 suppo +rt dynamic symbol tables found via phdrs;	 dwfl_standard_find_de +buginfo now uses build IDs when available +- unstrip: new option --list (or -n) +- libebl: backend improvements for sparc, alpha, powerpc + +* Tue Aug 14 2007 Ulrich Drepper <drepper@redhat.com> 0.129-1 +- readelf: new options --hex-dump (or -x), --strings (or -p) +- addr2line: new option --symbols (or -S) + +* Wed Apr 18 2007 Ulrich Drepper <drepper@redhat.com> 0.127-1 +- libdw: new function dwarf_getsrcdirs +- libdwfl: new functions dwfl_module_addrsym, dwfl_report_begin_add, +	 dwfl_module_address_section + +* Mon Feb  5 2007 Ulrich Drepper <drepper@redhat.com> 0.126-1 +- new program: ar + +* Mon Dec 18 2006 Ulrich Drepper <drepper@redhat.com> 0.125-1 +- elflint: Compare DT_GNU_HASH tests. +- move archives into -static RPMs +- libelf, elflint: better support for core file handling + +* Tue Oct 10 2006 Ulrich Drepper <drepper@redhat.com> 0.124-1 +- libebl: sparc backend support for return value location +- libebl, libdwfl: backend register name support extended with more info +- libelf, libdw: bug fixes for unaligned accesses on machines that care +- readelf, elflint: trivial bugs fixed + +* Mon Aug 14 2006 Roland McGrath <roland@redhat.com> 0.123-1 +- libebl: Backend build fixes, thanks to Stepan Kasal. +- libebl: ia64 backend support for register names, return value location +- libdwfl: Handle truncated linux kernel module section names. +- libdwfl: Look for linux kernel vmlinux files with .debug suffix. +- elflint: Fix checks to permit --hash-style=gnu format. + +* Wed Jul 12 2006 Ulrich Drepper <drepper@redhat.com> 0.122-1 +- libebl: add function to test for relative relocation +- elflint: fix and extend DT_RELCOUNT/DT_RELACOUNT checks +- elflint, readelf: add support for DT_GNU_HASHlibelf: add elf_gnu_hash +- elflint, readelf: add support for 64-bit SysV-style hash tables +- libdwfl: new functions dwfl_module_getsymtab, dwfl_module_getsym. + +* Wed Jun 14 2006  <drepper@redhat.com> 0.121-1 +- libelf: bug fixes for rewriting existing files when using mmap. +- make all installed headers usable in C++ code. +- readelf: better output format. +- elflint: fix tests of dynamic section content. +- ld: Implement --as-needed, --execstack, PT_GNU_STACK.  Many small patc +hes. +- libdw, libdwfl: handle files without aranges info. + +* Tue Apr  4 2006 Ulrich Drepper <drepper@redhat.com> 0.120-1 +- Bug fixes. +- dwarf.h updated for DWARF 3.0 final specification. +- libdwfl: New function dwfl_version. +- The license is now GPL for most files.  The libelf, libebl, libdw,and +libdwfl libraries have additional exceptions.  Add reference toOIN. + +* Thu Jan 12 2006 Roland McGrath <roland@redhat.com> 0.119-1 +- elflint: more tests. +- libdwfl: New function dwfl_module_register_names. +- libebl: New backend hook for register names. + +* Tue Dec  6 2005 Ulrich Drepper <drepper@redhat.com> 0.118-1 +- elflint: more tests. +- libdwfl: New function dwfl_module_register_names. +- libebl: New backend hook for register names. + +* Thu Nov 17 2005 Ulrich Drepper <drepper@redhat.com> 0.117-1 +- libdwfl: New function dwfl_module_return_value_location. +- libebl: Backend improvements for several CPUs. + +* Mon Oct 31 2005 Ulrich Drepper <drepper@redhat.com> 0.116-1 +- libdw: New functions dwarf_ranges, dwarf_entrypc, dwarf_diecu,       d +warf_entry_breakpoints.  Removed Dwarf_Func type and functions       d +warf_func_name, dwarf_func_lowpc, dwarf_func_highpc,       dwarf_func_ +entrypc, dwarf_func_die; dwarf_getfuncs callback now uses       Dwarf_ +Die, and dwarf_func_file, dwarf_func_line, dwarf_func_col       replac +ed by dwarf_decl_file, dwarf_decl_line, dwarf_decl_column;       dwarf +_func_inline, dwarf_func_inline_instances now take Dwarf_Die.       Ty +pe Dwarf_Loc renamed to Dwarf_Op; dwarf_getloclist,       dwarf_addrlo +clists renamed dwarf_getlocation, dwarf_getlocation_addr. + +* Fri Sep  2 2005 Ulrich Drepper <drepper@redhat.com> 0.115-1 +- libelf: speed-ups of non-mmap reading. +- strings: New program. +- Implement --enable-gcov option for configure. +- libdw: New function dwarf_getscopes_die. + +* Wed Aug 24 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1 +- libelf: new function elf_getaroff +- libdw: Added dwarf_func_die, dwarf_func_inline, dwarf_func_inline_inst +ances. +- libdwfl: New functions dwfl_report_offline, dwfl_offline_section_addre +ss,	 dwfl_linux_kernel_report_offline. +- ranlib: new program + +* Mon Aug 15 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1 +- libelf: new function elf_getaroff +- ranlib: new program + +* Wed Aug 10 2005 Ulrich Drepper <@redhat.com> 0.113-1 +- elflint: relax a bit. Allow version definitions for defined symbols ag +ainstDSO versions also for symbols in nobits sections.  Allow .rodata +sectionto have STRINGS and MERGE flag set. +- strip: add some more compatibility with binutils. + +* Sat Aug  6 2005 Ulrich Drepper <@redhat.com> 0.113-1 +- elflint: relax a bit. Allow version definitions for defined symbols ag +ainstDSO versions also for symbols in nobits sections.  Allow .rodata +sectionto have STRINGS and MERGE flag set. + +* Sat Aug  6 2005 Ulrich Drepper <@redhat.com> 0.113-1 +- elflint: relax a bit. Allow version definitions for defined symbols ag +ainstDSO versions also for symbols in nobits sections. + +* Fri Aug  5 2005 Ulrich Drepper <@redhat.com> 0.112-1 +- elfcmp: some more relaxation. +- elflint: many more tests, especially regarding to symbol versioning. +- libelf: Add elfXX_offscn and gelf_offscn. +- libasm: asm_begin interface changes. +- libebl: Add three new interfaces to directly access machine, class, an +ddata encoding information. +- objdump: New program.  Just the beginning. + +* Thu Jul 28 2005 Ulrich Drepper <@redhat.com> 0.111-1 +- libdw: now contains all of libdwfl.  The latter is not installed anymore. +- elfcmp: little usability tweak, name and index of differing section is + printed. + +* Sun Jul 24 2005 Ulrich Drepper <@redhat.com> 0.110-1 +- libelf: fix a numbe rof problems with elf_update +- elfcmp: fix a few bugs.  Compare gaps. +- Fix a few PLT problems and mudflap build issues. +- libebl: Don't expose Ebl structure definition in libebl.h.  It's now p +rivate. + +* Thu Jul 21 2005 Ulrich Drepper <@redhat.com> 0.109-1 +- libebl: Check for matching modules. +- elflint: Check that copy relocations only happen for OBJECT or NOTYPE +symbols. +- elfcmp: New program. +- libdwfl: New library. + +* Mon May  9 2005 Ulrich Drepper <@redhat.com> 0.108-1 +- strip: fix bug introduced in last change +- libdw: records returned by dwarf_getsrclines are now sorted by address + +* Sun May  8 2005 Ulrich Drepper <@redhat.com> 0.108-1 +- strip: fix bug introduced in last change + +* Sun May  8 2005 Ulrich Drepper <@redhat.com> 0.107-1 +- readelf: improve DWARF output format +- strip: support Linux kernel modules + +* Fri Apr 29 2005 Ulrich Drepper <drepper@redhat.com> 0.107-1 +- readelf: improve DWARF output format + +* Mon Apr  4 2005 Ulrich Drepper <drepper@redhat.com> 0.106-1 +- libdw: Updated dwarf.h from DWARF3 speclibdw: add new funtions dwarf_f +unc_entrypc, dwarf_func_file, dwarf_func_line,dwarf_func_col, dwarf_ge +tsrc_file + +* Fri Apr  1 2005 Ulrich Drepper <drepper@redhat.com> 0.105-1 +- addr2line: New program +- libdw: add new functions: dwarf_addrdie, dwarf_macro_*, dwarf_getfuncs +,dwarf_func_*. +- findtextrel: use dwarf_addrdie + +* Mon Mar 28 2005 Ulrich Drepper <drepper@redhat.com> 0.104-1 +- findtextrel: New program. + +* Mon Mar 21 2005 Ulrich Drepper <drepper@redhat.com> 0.103-1 +- libdw: Fix using libdw.h with gcc < 4 and C++ code.  Compiler bug. + +* Tue Feb 22 2005 Ulrich Drepper <drepper@redhat.com> 0.102-1 +- More Makefile and spec file cleanups. + +* Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.94-1 +- upgrade to 0.94 + +* Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.93-1 +- upgrade to 0.93 + +* Thu Jan  8 2004 Jakub Jelinek <jakub@redhat.com> 0.92-1 +- full version +- macroized spec file for GPL or OSL builds +- include only libelf under GPL plus wrapper scripts + +* Wed Jan  7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-2 +- macroized spec file for GPL or OSL builds + +* Wed Jan  7 2004 Ulrich Drepper <drepper@redhat.com> +- split elfutils-devel into two packages. + +* Wed Jan  7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-1 +- include only libelf under GPL plus wrapper scripts + +* Tue Dec 23 2003 Jeff Johnson <jbj@redhat.com> 0.89-3 +- readelf, not readline, in %%description (#111214). + +* Fri Sep 26 2003 Bill Nottingham <notting@redhat.com> 0.89-1 +- update to 0.89 (fix eu-strip) + +* Tue Sep 23 2003 Jakub Jelinek <jakub@redhat.com> 0.86-3 +- update to 0.86 (fix eu-strip on s390x/alpha) +- libebl is an archive now; remove references to DSO + +* Mon Jul 14 2003 Jeff Johnson <jbj@redhat.com> 0.84-3 +- upgrade to 0.84 (readelf/elflint improvements, rawhide bugs fixed). + +* Fri Jul 11 2003 Jeff Johnson <jbj@redhat.com> 0.83-3 +- upgrade to 0.83 (fix invalid ELf handle on *.so strip, more). + +* Wed Jul  9 2003 Jeff Johnson <jbj@redhat.com> 0.82-3 +- upgrade to 0.82 (strip tests fixed on big-endian). + +* Tue Jul  8 2003 Jeff Johnson <jbj@redhat.com> 0.81-3 +- upgrade to 0.81 (strip excludes unused symtable entries, test borked). + +* Thu Jun 26 2003 Jeff Johnson <jbj@redhat.com> 0.80-3 +- upgrade to 0.80 (debugedit changes for kernel in progress). + +* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com> +- rebuilt + +* Wed May 21 2003 Jeff Johnson <jbj@redhat.com> 0.79-2 +- upgrade to 0.79 (correct formats for size_t, more of libdw "works"). + +* Mon May 19 2003 Jeff Johnson <jbj@redhat.com> 0.78-2 +- upgrade to 0.78 (libdwarf bugfix, libdw additions). + +* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com> +- debuginfo rebuild + +* Thu Feb 20 2003 Jeff Johnson <jbj@redhat.com> 0.76-2 +- use the correct way of identifying the section via the sh_info link. + +* Sat Feb 15 2003 Jakub Jelinek <jakub@redhat.com> 0.75-2 +- update to 0.75 (eu-strip -g fix) + +* Tue Feb 11 2003 Jakub Jelinek <jakub@redhat.com> 0.74-2 +- update to 0.74 (fix for writing with some non-dirty sections) + +* Thu Feb  6 2003 Jeff Johnson <jbj@redhat.com> 0.73-3 +- another -0.73 update (with sparc fixes). +- do "make check" in %%check, not %%install, section. + +* Mon Jan 27 2003 Jeff Johnson <jbj@redhat.com> 0.73-2 +- update to 0.73 (with s390 fixes). + +* Wed Jan 22 2003 Tim Powers <timp@redhat.com> +- rebuilt + +* Wed Jan 22 2003 Jakub Jelinek <jakub@redhat.com> 0.72-4 +- fix arguments to gelf_getsymshndx and elf_getshstrndx +- fix other warnings +- reenable checks on s390x + +* Sat Jan 11 2003 Karsten Hopp <karsten@redhat.de> 0.72-3 +- temporarily disable checks on s390x, until someone has +  time to look at it + +* Thu Dec 12 2002 Jakub Jelinek <jakub@redhat.com> 0.72-2 +- update to 0.72 + +* Wed Dec 11 2002 Jakub Jelinek <jakub@redhat.com> 0.71-2 +- update to 0.71 + +* Wed Dec 11 2002 Jeff Johnson <jbj@redhat.com> 0.69-4 +- update to 0.69. +- add "make check" and segfault avoidance patch. +- elfutils-libelf needs to run ldconfig. + +* Tue Dec 10 2002 Jeff Johnson <jbj@redhat.com> 0.68-2 +- update to 0.68. + +* Fri Dec  6 2002 Jeff Johnson <jbj@redhat.com> 0.67-2 +- update to 0.67. + +* Tue Dec  3 2002 Jeff Johnson <jbj@redhat.com> 0.65-2 +- update to 0.65. + +* Mon Dec  2 2002 Jeff Johnson <jbj@redhat.com> 0.64-2 +- update to 0.64. + +* Sun Dec 1 2002 Ulrich Drepper <drepper@redhat.com> 0.64 +- split packages further into elfutils-libelf + +* Sat Nov 30 2002 Jeff Johnson <jbj@redhat.com> 0.63-2 +- update to 0.63. + +* Fri Nov 29 2002 Ulrich Drepper <drepper@redhat.com> 0.62 +- Adjust for dropping libtool + +* Sun Nov 24 2002 Jeff Johnson <jbj@redhat.com> 0.59-2 +- update to 0.59 + +* Thu Nov 14 2002 Jeff Johnson <jbj@redhat.com> 0.56-2 +- update to 0.56 + +* Thu Nov  7 2002 Jeff Johnson <jbj@redhat.com> 0.54-2 +- update to 0.54 + +* Sun Oct 27 2002 Jeff Johnson <jbj@redhat.com> 0.53-2 +- update to 0.53 +- drop x86_64 hack, ICE fixed in gcc-3.2-11. + +* Sat Oct 26 2002 Jeff Johnson <jbj@redhat.com> 0.52-3 +- get beehive to punch a rhpkg generated package. + +* Wed Oct 23 2002 Jeff Johnson <jbj@redhat.com> 0.52-2 +- build in 8.0.1. +- x86_64: avoid gcc-3.2 ICE on x86_64 for now. + +* Tue Oct 22 2002 Ulrich Drepper <drepper@redhat.com> 0.52 +- Add libelf-devel to conflicts for elfutils-devel + +* Mon Oct 21 2002 Ulrich Drepper <drepper@redhat.com> 0.50 +- Split into runtime and devel package + +* Fri Oct 18 2002 Ulrich Drepper <drepper@redhat.com> 0.49 +- integrate into official sources + +* Wed Oct 16 2002 Jeff Johnson <jbj@redhat.com> 0.46-1 +- Swaddle. @@ -0,0 +1 @@ +636547248fb3fae58ec48030298d3ef7  elfutils-0.191.tar.bz2  | 
