diff --git a/.fmf/version b/.fmf/version deleted file mode 100644 index d00491f..0000000 --- a/.fmf/version +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/.gitignore b/.gitignore index 6aac4df..94469a7 100644 --- a/.gitignore +++ b/.gitignore @@ -2,36 +2,3 @@ /elfutils-0.159.tar.bz2 /elfutils-0.160.tar.bz2 /elfutils-0.161.tar.bz2 -/elfutils-0.162.tar.bz2 -/elfutils-0.163.tar.bz2 -/elfutils-0.164.tar.bz2 -/elfutils-0.165.tar.bz2 -/elfutils-0.166.tar.bz2 -/elfutils-0.167.tar.bz2 -/elfutils-0.168.tar.bz2 -/elfutils-0.169.tar.bz2 -/elfutils-0.170.tar.bz2 -/elfutils-0.171.tar.bz2 -/elfutils-0.172.tar.bz2 -/elfutils-0.173.tar.bz2 -/elfutils-0.174.tar.bz2 -/elfutils-0.175.tar.bz2 -/elfutils-0.176.tar.bz2 -/elfutils-0.177.tar.bz2 -/elfutils-0.178.tar.bz2 -/elfutils-0.179.tar.bz2 -/elfutils-0.180.tar.bz2 -/elfutils-0.181.tar.bz2 -/elfutils-0.182.tar.bz2 -/elfutils-0.183.tar.bz2 -/elfutils-0.184.tar.bz2 -/elfutils-0.185.tar.bz2 -/elfutils-0.186.tar.bz2 -/elfutils-0.187.tar.bz2 -/elfutils-0.188.tar.bz2 -/elfutils-0.189.tar.bz2 -/elfutils-0.190.tar.bz2 -/elfutils-0.191.tar.bz2 -/elfutils-0.192.tar.bz2 -/elfutils-0.193.tar.bz2 -/elfutils-0.194.tar.bz2 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..b5ce206 --- /dev/null +++ b/Makefile @@ -0,0 +1,44 @@ +patches := $(patsubst %,elfutils-%.patch,portability) + +.PHONY: patches +patches: $(patches) + +branch-portability = portable + +FORCE:; + +elfutils.git ?= ${HOME}/src/elfutils/.git +git-heads := $(wildcard $(elfutils.git)/refs/heads/*) +ifneq (,$(git-heads)) +git-dir = git --git-dir=$(elfutils.git) +git-archive = $(git-dir) archive +get-master = master=`$(git-dir) merge-base master $$branch` && \ + master=`$(git-dir) describe --tags --always $$master` +else +git-heads = FORCE +git-archive = git archive --remote=git://git.fedorahosted.org/git/elfutils.git +get-master = master=master +endif + +git-%/configure: Makefile $(git-heads) + @rm -rf $(@D) + $(git-archive) --prefix=$(@D)/ $(firstword $(branch-$*) $*) | tar xf - + cd $(@D) && autoreconf -i && rm -rf autom4te.cache + +elfutils-%.patch: git-%/configure + branch=$(firstword $(branch-$*) $*); \ + $(get-master) && \ + (set -x; $(MAKE) git-$$master/configure) && \ + (set -x; diff --exclude='.gitignore' -Nrpu git-$$master $( $@.new + mv $@.new $@ + +elfutils-portable.spec: elfutils.spec + (echo '%define _with_compat 1'; sed 's/ check$$/& || :/' $<) > $@.new + mv -f $@.new $@ + +rpmbuild-dirs = $(foreach what,source spec srcrpm,--define '_$(what)dir .') + +.PHONY: portable-srpm +portable-srpm: elfutils-portable.spec $(patches) sources + rpmbuild-md5 $(rpmbuild-dirs) -bs $< diff --git a/elfutils-0.161-addralign.patch b/elfutils-0.161-addralign.patch new file mode 100644 index 0000000..bbe1332 --- /dev/null +++ b/elfutils-0.161-addralign.patch @@ -0,0 +1,53 @@ +commit 6f5934c1afa8f34bfb8f86b191ded9af854e757f +Author: Jan Kratochvil +Date: Sat Feb 7 15:08:20 2015 +0100 + + libelf: Consider sh_addralign 0 as 1 + + Currently the Koji build for arm32 fails with: + extracting debug info from /builddir/build/BUILDROOT/etcd-2.0.0-0.3.rc1.fc22.arm/usr/bin/etcd + Failed to write file: invalid section alignment + + This is because the binary etcd + http://people.redhat.com/jkratoch/etcdctl.xz + contains: + Section Headers: + [Nr] Name Type Addr Off Size ES Flg Lk Inf Al + [11] .rel.plt REL 00459ee0 449ee0 000088 08 A 13 0 0 + ^ + which corresponds to golang's code: + go/src/cmd/ld/elf.c + case EM_X86_64: + sh = elfshname(".rela.plt"); + sh->addralign = RegSize; + default: + sh = elfshname(".rel.plt"); + + + ELF spec says: + Values 0 and 1 mean the section has no alignment constraints. + and libelf/elf32_updatenull.c really parses it that way at line 204 + ElfW2(LIBELFBITS,Word) sh_align = shdr->sh_addralign ?: 1; + but unfortunately the later line being patched no longer does. + + libelf/ + 2015-02-07 Jan Kratochvil + + * elf32_updatenull.c (__elfw2(LIBELFBITS,updatenull_wrlock)): Consider + sh_addralign 0 as 1. + + Signed-off-by: Jan Kratochvil + +diff --git a/libelf/elf32_updatenull.c b/libelf/elf32_updatenull.c +index be4cea0..5e809b7 100644 +--- a/libelf/elf32_updatenull.c ++++ b/libelf/elf32_updatenull.c +@@ -328,7 +328,7 @@ __elfw2(LIBELFBITS,updatenull_wrlock) (Elf *elf, int *change_bop, size_t shnum) + enough for the largest alignment required by a data + block. */ + if (unlikely (! powerof2 (shdr->sh_addralign)) +- || unlikely (shdr->sh_addralign < sh_align)) ++ || unlikely ((shdr->sh_addralign ?: 1) < sh_align)) + { + __libelf_seterrno (ELF_E_INVALID_ALIGN); + return -1; diff --git a/elfutils-0.161-ar-long-name.patch b/elfutils-0.161-ar-long-name.patch new file mode 100644 index 0000000..030efd9 --- /dev/null +++ b/elfutils-0.161-ar-long-name.patch @@ -0,0 +1,51 @@ +commit 147018e729e7c22eeabf15b82d26e4bf68a0d18e +Author: Alexander Cherepanov +Date: Sun Dec 28 19:57:19 2014 +0300 + + libelf: Fix dir traversal vuln in ar extraction. + + read_long_names terminates names at the first '/' found but then skips + one character without checking (it's supposed to be '\n'). Hence the + next name could start with any character including '/'. This leads to + a directory traversal vulnerability at the time the contents of the + archive is extracted. + + The danger is mitigated by the fact that only one '/' is possible in a + resulting filename and only in the leading position. Hence only files + in the root directory can be written via this vuln and only when ar is + executed as root. + + The fix for the vuln is to not skip any characters while looking + for '/'. + + Signed-off-by: Alexander Cherepanov + +diff --git a/libelf/ChangeLog b/libelf/ChangeLog +index 3b88d03..447c354 100644 +--- a/libelf/ChangeLog ++++ b/libelf/ChangeLog +@@ -1,3 +1,8 @@ ++2014-12-28 Alexander Cherepanov ++ ++ * elf_begin.c (read_long_names): Don't miss '/' right after ++ another '/'. Fixes a dir traversal vuln in ar extraction. ++ + 2014-12-18 Ulrich Drepper + + * Makefile.am: Suppress output of textrel_check command. +diff --git a/libelf/elf_begin.c b/libelf/elf_begin.c +index 30abe0b..cd3756c 100644 +--- a/libelf/elf_begin.c ++++ b/libelf/elf_begin.c +@@ -749,10 +749,7 @@ read_long_names (Elf *elf) + } + + /* NUL-terminate the string. */ +- *runp = '\0'; +- +- /* Skip the NUL byte and the \012. */ +- runp += 2; ++ *runp++ = '\0'; + + /* A sanity check. Somebody might have generated invalid + archive. */ diff --git a/elfutils-0.161-copyreloc.patch b/elfutils-0.161-copyreloc.patch new file mode 100644 index 0000000..551d35f --- /dev/null +++ b/elfutils-0.161-copyreloc.patch @@ -0,0 +1,233 @@ +commit cc4e10fb398d40fb90e15056d808a596ef893cc3 +Author: Mark Wielaard +Date: Mon Mar 9 22:43:08 2015 +0100 + + backends: COPY relocations can also happen in ET_DYN. + + In particular COPY relocations might happen in PIE executables, + which are ET_DYN. + + Found on Fedora Rawhide with run-elflint-self.sh. + + Signed-off-by: Mark Wielaard + +diff --git a/backends/aarch64_reloc.def b/backends/aarch64_reloc.def +index 36d29e6..2e16e98 100644 +--- a/backends/aarch64_reloc.def ++++ b/backends/aarch64_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for AArch64. -*- C -*- +- Copyright (C) 2013, 2014 Red Hat, Inc. ++ Copyright (C) 2013, 2014, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -30,7 +30,7 @@ + + RELOC_TYPE (ABS64, REL|EXEC|DYN) + RELOC_TYPE (ABS32, REL|EXEC|DYN) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JUMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) +diff --git a/backends/arm_reloc.def b/backends/arm_reloc.def +index 4b7894b..113648e 100644 +--- a/backends/arm_reloc.def ++++ b/backends/arm_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for arm. -*- C -*- +- Copyright (C) 2005-2010, 2014 Red Hat, Inc. ++ Copyright (C) 2005-2010, 2014, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -48,7 +48,7 @@ RELOC_TYPE (THM_XPC22, REL) + RELOC_TYPE (TLS_DTPMOD32, EXEC|DYN) + RELOC_TYPE (TLS_DTPOFF32, EXEC|DYN) + RELOC_TYPE (TLS_TPOFF32, EXEC|DYN) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JUMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) +diff --git a/backends/i386_reloc.def b/backends/i386_reloc.def +index bd273b3..de3575d 100644 +--- a/backends/i386_reloc.def ++++ b/backends/i386_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for i386. -*- C -*- +- Copyright (C) 2000, 2001, 2002, 2003, 2005, 2009 Red Hat, Inc. ++ Copyright (C) 2000, 2001, 2002, 2003, 2005, 2009, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -29,7 +29,7 @@ + /* NAME, REL|EXEC|DYN */ + + RELOC_TYPE (NONE, 0) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (32, REL|EXEC|DYN) + RELOC_TYPE (PC32, REL|EXEC|DYN) + RELOC_TYPE (GOT32, REL) +diff --git a/backends/ia64_reloc.def b/backends/ia64_reloc.def +index 9e058c8..2428925 100644 +--- a/backends/ia64_reloc.def ++++ b/backends/ia64_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for ia64. -*- C -*- +- Copyright (C) 2005, 2006 Red Hat, Inc. ++ Copyright (C) 2005, 2006, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -88,7 +88,7 @@ RELOC_TYPE (PCREL22, REL) + RELOC_TYPE (PCREL64I, REL) + RELOC_TYPE (IPLTMSB, REL|EXEC|DYN) + RELOC_TYPE (IPLTLSB, REL|EXEC|DYN) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (SUB, 0) + RELOC_TYPE (LTOFF22X, REL) + RELOC_TYPE (LDXMOV, REL) +diff --git a/backends/ppc64_reloc.def b/backends/ppc64_reloc.def +index 3a693cf..15a73ba 100644 +--- a/backends/ppc64_reloc.def ++++ b/backends/ppc64_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for ppc64. -*- C -*- +- Copyright (C) 2005 Red Hat, Inc. ++ Copyright (C) 2005, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -46,7 +46,7 @@ RELOC_TYPE (GOT16, REL) + RELOC_TYPE (GOT16_LO, REL) + RELOC_TYPE (GOT16_HI, REL) + RELOC_TYPE (GOT16_HA, REL) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) +diff --git a/backends/ppc_reloc.def b/backends/ppc_reloc.def +index dc963a0..3723a9c 100644 +--- a/backends/ppc_reloc.def ++++ b/backends/ppc_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for ppc. -*- C -*- +- Copyright (C) 2005 Red Hat, Inc. ++ Copyright (C) 2005, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -47,7 +47,7 @@ RELOC_TYPE (GOT16_LO, REL) + RELOC_TYPE (GOT16_HI, REL) + RELOC_TYPE (GOT16_HA, REL) + RELOC_TYPE (PLTREL24, REL) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) +diff --git a/backends/s390_reloc.def b/backends/s390_reloc.def +index b4686a3..cdef9eb 100644 +--- a/backends/s390_reloc.def ++++ b/backends/s390_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for s390. -*- C -*- +- Copyright (C) 2005, 2006 Red Hat, Inc. ++ Copyright (C) 2005, 2006, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -37,7 +37,7 @@ RELOC_TYPE (PC32, REL|EXEC|DYN) + RELOC_TYPE (GOT12, REL) + RELOC_TYPE (GOT32, REL) + RELOC_TYPE (PLT32, REL) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) +diff --git a/backends/sh_reloc.def b/backends/sh_reloc.def +index 66a5a9d..aded361 100644 +--- a/backends/sh_reloc.def ++++ b/backends/sh_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for SH. -*- C -*- +- Copyright (C) 2005 Red Hat, Inc. ++ Copyright (C) 2005, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -59,7 +59,7 @@ RELOC_TYPE (TLS_DTPOFF32, DYN) + RELOC_TYPE (TLS_TPOFF32, DYN) + RELOC_TYPE (GOT32, REL) + RELOC_TYPE (PLT32, REL) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) +diff --git a/backends/sparc_reloc.def b/backends/sparc_reloc.def +index c39b0fa..2aeb129 100644 +--- a/backends/sparc_reloc.def ++++ b/backends/sparc_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for sparc. -*- C -*- +- Copyright (C) 2009 Red Hat, Inc. ++ Copyright (C) 2009, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -47,7 +47,7 @@ RELOC_TYPE (GOT22, REL) + RELOC_TYPE (PC10, REL) + RELOC_TYPE (PC22, REL) + RELOC_TYPE (WPLT30, REL) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) +diff --git a/backends/tilegx_reloc.def b/backends/tilegx_reloc.def +index 9736286..1018110 100644 +--- a/backends/tilegx_reloc.def ++++ b/backends/tilegx_reloc.def +@@ -1,5 +1,6 @@ + /* List the relocation types for tilegx. -*- C -*- + Copyright (C) 2012 Tilera Corporation ++ Copyright (C) 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -44,7 +45,7 @@ RELOC_TYPE (HW3, REL) + RELOC_TYPE (HW0_LAST, REL) + RELOC_TYPE (HW1_LAST, REL) + RELOC_TYPE (HW2_LAST, REL) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) +diff --git a/backends/x86_64_reloc.def b/backends/x86_64_reloc.def +index 8ed98f6..ad84efa 100644 +--- a/backends/x86_64_reloc.def ++++ b/backends/x86_64_reloc.def +@@ -1,5 +1,5 @@ + /* List the relocation types for x86-64. -*- C -*- +- Copyright (C) 2000, 2001, 2002, 2003, 2005, 2009 Red Hat, Inc. ++ Copyright (C) 2000, 2001, 2002, 2003, 2005, 2009, 2015 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -33,7 +33,7 @@ RELOC_TYPE (64, REL|EXEC|DYN) + RELOC_TYPE (PC32, REL|EXEC|DYN) + RELOC_TYPE (GOT32, REL) + RELOC_TYPE (PLT32, REL) +-RELOC_TYPE (COPY, EXEC) ++RELOC_TYPE (COPY, EXEC|DYN) + RELOC_TYPE (GLOB_DAT, EXEC|DYN) + RELOC_TYPE (JUMP_SLOT, EXEC|DYN) + RELOC_TYPE (RELATIVE, EXEC|DYN) diff --git a/elfutils-0.161-formref-type.patch b/elfutils-0.161-formref-type.patch new file mode 100644 index 0000000..6f11e17 --- /dev/null +++ b/elfutils-0.161-formref-type.patch @@ -0,0 +1,24 @@ +commit 7c71382294af69f075c891a3418906c842491e4c +Author: Jason P. Leasure +Date: Wed Jan 14 09:26:55 2015 -0500 + + libdw: fix offset for sig8 lookup in dwarf_formref_die + + The type_offset of a type unit header is relative to the beginning + of the type unit header. + + Signed-off-by: Jason P. Leasure + +diff --git a/libdw/dwarf_formref_die.c b/libdw/dwarf_formref_die.c +index 63f6697..8b92e22 100644 +--- a/libdw/dwarf_formref_die.c ++++ b/libdw/dwarf_formref_die.c +@@ -95,7 +95,7 @@ dwarf_formref_die (attr, result) + + datap = cu->dbg->sectiondata[IDX_debug_types]->d_buf; + size = cu->dbg->sectiondata[IDX_debug_types]->d_size; +- offset = cu->type_offset; ++ offset = cu->start + cu->type_offset; + } + else + { diff --git a/elfutils-0.186-fdo-swap.patch b/elfutils-0.186-fdo-swap.patch deleted file mode 100644 index 34b114f..0000000 --- a/elfutils-0.186-fdo-swap.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff --git a/libelf/gelf_getnote.c b/libelf/gelf_getnote.c -index 0f7b9d68..6ef970c5 100644 ---- a/libelf/gelf_getnote.c -+++ b/libelf/gelf_getnote.c -@@ -31,6 +31,7 @@ - #endif - - #include -+#include - #include - #include - -@@ -73,6 +74,22 @@ gelf_getnote (Elf_Data *data, size_t offset, GElf_Nhdr *result, - offset = 0; - else - { -+ /* Workaround FDO package notes on big-endian systems, -+ getting namesz and descsz wrong. Detect it by getting -+ a bad namesz, descsz and byte swapped n_type for -+ NT_FDO_PACKAGING_METADATA. */ -+ if (unlikely (n->n_type == bswap_32 (NT_FDO_PACKAGING_METADATA) -+ && n->n_namesz > data->d_size -+ && n->n_descsz > data->d_size)) -+ { -+ /* n might not be writable, use result and redirect n. */ -+ *result = *n; -+ result->n_type = bswap_32 (n->n_type); -+ result->n_namesz = bswap_32 (n->n_namesz); -+ result->n_descsz = bswap_32 (n->n_descsz); -+ n = result; -+ } -+ - /* This is slightly tricky, offset is guaranteed to be 4 - byte aligned, which is what we need for the name_offset. - And normally desc_offset is also 4 byte aligned, but not diff --git a/elfutils-0.194-alloc-jobs.patch b/elfutils-0.194-alloc-jobs.patch deleted file mode 100644 index cabf590..0000000 --- a/elfutils-0.194-alloc-jobs.patch +++ /dev/null @@ -1,135 +0,0 @@ -From f66135f16fe44182a3fc5b651d7e5071c936217d Mon Sep 17 00:00:00 2001 -From: Aaron Merey -Date: Mon, 27 Oct 2025 22:00:12 -0400 -Subject: [PATCH] readelf: Allocate job_data one-by-one as needed - -Currently, job_data is stored in an array whose size is equal to the -number of debug sections (.debug_*, .eh_frame, .gdb_index, etc.). - -This size may be too small if a binary contains multiple debug sections -with the same name. For example an ET_REL binary compiled with -ggdb3 -can contain multiple .debug_macro sections. - -Fix this by allocating job_data on the fly when preparing to read a -debug section. This supports an arbitrary number of debug sections -while also avoiding unnecessary memory allocation. - -https://sourceware.org/bugzilla/show_bug.cgi?id=33580 - -Signed-off-by: Aaron Merey ---- - src/readelf.c | 49 +++++++++++++++++++++++++------------------------ - 1 file changed, 25 insertions(+), 24 deletions(-) - -diff --git a/src/readelf.c b/src/readelf.c -index ee6c203d..a2d17358 100644 ---- a/src/readelf.c -+++ b/src/readelf.c -@@ -12200,7 +12200,8 @@ getone_dwflmod (Dwfl_Module *dwflmod, - return DWARF_CB_OK; - } - --typedef struct { -+typedef struct Job_Data { -+ struct Job_Data *next; - Dwfl_Module *dwflmod; - Ebl *ebl; - GElf_Ehdr *ehdr; -@@ -12230,7 +12231,7 @@ do_job (void *data, FILE *out) - If thread safety is not supported or the maximum number of threads is set - to 1, then immediately call START_ROUTINE with the given arguments. */ - static void --schedule_job (job_data jdata[], size_t idx, -+schedule_job (job_data **jdatalist, - void (*start_routine) (Dwfl_Module *, Ebl *, GElf_Ehdr *, - Elf_Scn *, GElf_Shdr *, Dwarf *, FILE *), - Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, -@@ -12239,21 +12240,24 @@ schedule_job (job_data jdata[], size_t idx, - #ifdef USE_LOCKS - if (max_threads > 1) - { -- /* Add to the job queue. */ -- jdata[idx].dwflmod = dwflmod; -- jdata[idx].ebl = ebl; -- jdata[idx].ehdr = ehdr; -- jdata[idx].scn = *scn; -- jdata[idx].shdr = *shdr; -- jdata[idx].dbg = dbg; -- jdata[idx].fp = start_routine; -+ job_data *jdata = xmalloc (sizeof (job_data)); -+ -+ jdata->dwflmod = dwflmod; -+ jdata->ebl = ebl; -+ jdata->ehdr = ehdr; -+ jdata->scn = *scn; -+ jdata->shdr = *shdr; -+ jdata->dbg = dbg; -+ jdata->fp = start_routine; -+ jdata->next = *jdatalist; -+ *jdatalist = jdata; - -- add_job (do_job, (void *) &jdata[idx]); -+ add_job (do_job, (void *) jdata); - } - else - start_routine (dwflmod, ebl, ehdr, scn, shdr, dbg, stdout); - #else -- (void) jdata; (void) idx; -+ (void) jdatalist; - - start_routine (dwflmod, ebl, ehdr, scn, shdr, dbg, stdout); - #endif -@@ -12431,8 +12435,7 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr) - if (unlikely (elf_getshdrstrndx (ebl->elf, &shstrndx) < 0)) - error_exit (0, _("cannot get section header string table index")); - -- ssize_t num_jobs = 0; -- job_data *jdata = NULL; -+ job_data *jdatalist = NULL; - - /* If the .debug_info section is listed as implicitly required then - we must make sure to handle it before handling any other debug -@@ -12531,13 +12534,6 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr) - if (name == NULL) - continue; - -- if (jdata == NULL) -- { -- jdata = calloc (ndebug_sections, sizeof (*jdata)); -- if (jdata == NULL) -- error_exit (0, _("failed to allocate job data")); -- } -- - int n; - for (n = 0; n < ndebug_sections; ++n) - { -@@ -12561,10 +12557,9 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr) - { - if (((print_debug_sections | implicit_debug_sections) - & debug_sections[n].bitmask)) -- schedule_job (jdata, num_jobs++, debug_sections[n].fp, -+ schedule_job (&jdatalist, debug_sections[n].fp, - dwflmod, ebl, ehdr, scn, shdr, dbg); - -- assert (num_jobs <= ndebug_sections); - break; - } - } -@@ -12579,7 +12574,13 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr) - - dwfl_end (skel_dwfl); - free (skel_name); -- free (jdata); -+ -+ while (jdatalist != NULL) -+ { -+ job_data *jdata = jdatalist; -+ jdatalist = jdatalist->next; -+ free (jdata); -+ } - - /* Turn implicit and/or explicit back on in case we go over another file. */ - if (implicit_info) --- -2.51.0 - diff --git a/elfutils-0.194-fix-const.patch b/elfutils-0.194-fix-const.patch deleted file mode 100644 index 085f899..0000000 --- a/elfutils-0.194-fix-const.patch +++ /dev/null @@ -1,301 +0,0 @@ -From 4a5cf8be906d5991e7527e69e3f2ceaa74811301 Mon Sep 17 00:00:00 2001 -From: Andreas Schwab -Date: Mon, 24 Nov 2025 13:46:16 +0100 -Subject: [PATCH] Fix const-correctness issues - -These were uncovered by the C23 const-preserving library macros. ---- - debuginfod/debuginfod-client.c | 2 +- - libcpu/riscv_disasm.c | 52 +++++++++++++++++----------------- - libdw/dwarf_getsrclines.c | 6 ++-- - src/readelf.c | 8 +++--- - 4 files changed, 34 insertions(+), 34 deletions(-) - -diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c -index c0ff5967..c5bc8a4f 100644 ---- a/debuginfod/debuginfod-client.c -+++ b/debuginfod/debuginfod-client.c -@@ -3104,7 +3104,7 @@ int debuginfod_add_http_header (debuginfod_client *client, const char* header) - /* Sanity check header value is of the form Header: Value. - It should contain at least one colon that isn't the first or - last character. */ -- char *colon = strchr (header, ':'); /* first colon */ -+ const char *colon = strchr (header, ':'); /* first colon */ - if (colon == NULL /* present */ - || colon == header /* not at beginning - i.e., have a header name */ - || *(colon + 1) == '\0') /* not at end - i.e., have a value */ -diff --git a/libcpu/riscv_disasm.c b/libcpu/riscv_disasm.c -index 0dee842a..749d4567 100644 ---- a/libcpu/riscv_disasm.c -+++ b/libcpu/riscv_disasm.c -@@ -77,7 +77,7 @@ static const char *regnames[32] = - "a6", "a7", "s2", "s3", "s4", "s5", "s6", "s7", - "s8", "s9", "s10", "s11", "t3", "t4", "t5", "t6" - }; --#define REG(nr) ((char *) regnames[nr]) -+#define REG(nr) regnames[nr] - #define REGP(nr) REG (8 + (nr)) - - -@@ -88,7 +88,7 @@ static const char *fregnames[32] = - "fa6", "fa7", "fs2", "fs3", "fs4", "fs5", "fs6", "fs7", - "fs8", "fs9", "fs10", "fs11", "ft8", "ft9", "ft10", "ft11" - }; --#define FREG(nr) ((char *) fregnames[nr]) -+#define FREG(nr) fregnames[nr] - #define FREGP(nr) FREG (8 + (nr)) - - -@@ -163,12 +163,12 @@ riscv_disasm (Ebl *ebl, - break; - } - -- char *mne = NULL; -+ const char *mne = NULL; - /* Max length is 24, which is "illegal", so we print it as - "0x<48 hex chars>" - See: No instruction encodings defined for these sizes yet, below */ - char mnebuf[50]; -- char *op[5] = { NULL, NULL, NULL, NULL, NULL }; -+ const char *op[5] = { NULL, NULL, NULL, NULL, NULL }; - char immbuf[32]; - size_t len; - char *strp = NULL; -@@ -400,7 +400,7 @@ riscv_disasm (Ebl *ebl, - { - "sub", "xor", "or", "and", "subw", "addw", NULL, NULL - }; -- mne = (char *) arithmne[((first >> 10) & 0x4) | ((first >> 5) & 0x3)]; -+ mne = arithmne[((first >> 10) & 0x4) | ((first >> 5) & 0x3)]; - } - op[0] = op[1] = REGP ((first >> 7) & 0x7); - break; -@@ -572,7 +572,7 @@ riscv_disasm (Ebl *ebl, - { - NULL, NULL, "flw", "fld", "flq", NULL, NULL, NULL - }; -- mne = (char *) (idx == 0x00 ? loadmne[func] : floadmne[func]); -+ mne = idx == 0x00 ? loadmne[func] : floadmne[func]; - break; - case 0x03: - // MISC-MEM -@@ -595,8 +595,8 @@ riscv_disasm (Ebl *ebl, - uint32_t succ = (word >> 24) & 0xf; - if (pred != 0xf || succ != 0xf) - { -- op[0] = (char *) order[succ]; -- op[1] = (char *) order[pred]; -+ op[0] = order[succ]; -+ op[1] = order[pred]; - } - mne = "fence"; - } -@@ -614,7 +614,7 @@ riscv_disasm (Ebl *ebl, - "addi", NULL, "slti", "sltiu", "xori", NULL, "ori", "andi" - }; - func = (word >> 12) & 0x7; -- mne = (char *) opimmmne[func]; -+ mne = opimmmne[func]; - if (mne == NULL) - { - const uint64_t shiftmask = ebl->class == ELFCLASS32 ? 0x1f : 0x3f; -@@ -697,7 +697,7 @@ riscv_disasm (Ebl *ebl, - { - NULL, NULL, "fsw", "fsd", "fsq", NULL, NULL, NULL - }; -- mne = (char *) (idx == 0x08 ? storemne[func] : fstoremne[func]); -+ mne = idx == 0x08 ? storemne[func] : fstoremne[func]; - break; - case 0x0b: - // AMO -@@ -778,7 +778,7 @@ riscv_disasm (Ebl *ebl, - } - else - { -- mne = (char *) (idx == 0x0c ? arithmne2[func] : arithmne3[func]); -+ mne = idx == 0x0c ? arithmne2[func] : arithmne3[func]; - op[1] = REG (rs1); - op[2] = REG (rs2); - } -@@ -811,7 +811,7 @@ riscv_disasm (Ebl *ebl, - op[2] = FREG (rs2); - op[3] = FREG (rs3); - if (rm != 0x7) -- op[4] = (char *) rndmode[rm]; -+ op[4] = rndmode[rm]; - } - break; - case 0x14: -@@ -839,7 +839,7 @@ riscv_disasm (Ebl *ebl, - op[1] = FREG (rs1); - op[2] = FREG (rs2); - if (rm != 0x7) -- op[3] = (char *) rndmode[rm]; -+ op[3] = rndmode[rm]; - } - else if (func == 0x1c && width != 2 && rs2 == 0 && rm <= 1) - { -@@ -950,7 +950,7 @@ riscv_disasm (Ebl *ebl, - } - mne = mnebuf; - if (rm != 0x7 && (func == 0x18 || width == 0 || rs2 >= 2)) -- op[2] = (char *) rndmode[rm]; -+ op[2] = rndmode[rm]; - } - else if (func == 0x0b && rs2 == 0) - { -@@ -961,7 +961,7 @@ riscv_disasm (Ebl *ebl, - *cp = '\0'; - mne = mnebuf; - if (rm != 0x7) -- op[2] = (char *) rndmode[rm]; -+ op[2] = rndmode[rm]; - } - else if (func == 0x05 && rm < 2) - { -@@ -1007,7 +1007,7 @@ riscv_disasm (Ebl *ebl, - "beq", "bne", NULL, NULL, "blt", "bge", "bltu", "bgeu" - }; - func = (word >> 12) & 0x7; -- mne = (char *) branchmne[func]; -+ mne = branchmne[func]; - if (rs1 == 0 && func == 5) - { - op[0] = op[1]; -@@ -1035,7 +1035,7 @@ riscv_disasm (Ebl *ebl, - else if (func == 5 || func == 7) - { - // binutils use these opcodes and the reverse parameter order -- char *tmp = op[0]; -+ const char *tmp = op[0]; - op[0] = op[1]; - op[1] = tmp; - mne = func == 5 ? "ble" : "bleu"; -@@ -1103,7 +1103,7 @@ riscv_disasm (Ebl *ebl, - { - NULL, "frflags", "frrm", "frsr", - }; -- mne = (char *) unprivrw[csr - 0x000]; -+ mne = unprivrw[csr - 0x000]; - } - else if (csr >= 0xc00 && csr <= 0xc03) - { -@@ -1111,7 +1111,7 @@ riscv_disasm (Ebl *ebl, - { - "rdcycle", "rdtime", "rdinstret" - }; -- mne = (char *) unprivrolow[csr - 0xc00]; -+ mne = unprivrolow[csr - 0xc00]; - } - op[0] = REG ((word >> 7) & 0x1f); - } -@@ -1128,7 +1128,7 @@ riscv_disasm (Ebl *ebl, - { - NULL, "fsflagsi", "fsrmi", NULL - }; -- mne = (char *) ((word & 0x4000) == 0 ? unprivrs : unprivrsi)[csr - 0x000]; -+ mne = ((word & 0x4000) == 0 ? unprivrs : unprivrsi)[csr - 0x000]; - - if ((word & 0x4000) == 0) - op[0] = REG ((word >> 15) & 0x1f); -@@ -1259,12 +1259,12 @@ riscv_disasm (Ebl *ebl, - if (rd != 0) - op[last++] = REG (rd); - struct known_csrs key = { csr, NULL }; -- struct known_csrs *found = bsearch (&key, known, -- sizeof (known) / sizeof (known[0]), -- sizeof (known[0]), -- compare_csr); -+ const struct known_csrs *found = bsearch (&key, known, -+ sizeof (known) / sizeof (known[0]), -+ sizeof (known[0]), -+ compare_csr); - if (found) -- op[last] = (char *) found->name; -+ op[last] = found->name; - else - { - snprintf (addrbuf, sizeof (addrbuf), "0x%" PRIx32, csr); -@@ -1289,7 +1289,7 @@ riscv_disasm (Ebl *ebl, - else if (instr == 3 && rd == 0) - mne = "csrc"; - else -- mne = (char *) mnecsr[instr]; -+ mne = mnecsr[instr]; - } - break; - default: -diff --git a/libdw/dwarf_getsrclines.c b/libdw/dwarf_getsrclines.c -index be10cdee..76db2929 100644 ---- a/libdw/dwarf_getsrclines.c -+++ b/libdw/dwarf_getsrclines.c -@@ -364,7 +364,7 @@ read_srcfiles (Dwarf *dbg, - const unsigned char *dirp = linep; - while (dirp < lineendp && *dirp != 0) - { -- uint8_t *endp = memchr (dirp, '\0', lineendp - dirp); -+ const uint8_t *endp = memchr (dirp, '\0', lineendp - dirp); - if (endp == NULL) - goto invalid_data; - ++ndirs; -@@ -440,7 +440,7 @@ read_srcfiles (Dwarf *dbg, - for (unsigned int n = 1; n < ndirlist; n++) - { - dirarray[n].dir = (char *) linep; -- uint8_t *endp = memchr (linep, '\0', lineendp - linep); -+ const uint8_t *endp = memchr (linep, '\0', lineendp - linep); - assert (endp != NULL); // Checked above when calculating ndirlist. - dirarray[n].len = endp - linep; - linep = endp + 1; -@@ -927,7 +927,7 @@ read_srclines (Dwarf *dbg, - case DW_LNE_define_file: - { - char *fname = (char *) linep; -- uint8_t *endp = memchr (linep, '\0', lineendp - linep); -+ const uint8_t *endp = memchr (linep, '\0', lineendp - linep); - if (endp == NULL) - goto invalid_data; - size_t fnamelen = endp - linep; -diff --git a/src/readelf.c b/src/readelf.c -index a2d17358..fbdf8c71 100644 ---- a/src/readelf.c -+++ b/src/readelf.c -@@ -8269,7 +8269,7 @@ attr_callback (Dwarf_Attribute *attrp, void *arg) - valuestr = dwarf_filesrc (files, num, NULL, NULL); - if (valuestr != NULL) - { -- char *filename = strrchr (valuestr, '/'); -+ const char *filename = strrchr (valuestr, '/'); - if (filename != NULL) - valuestr = filename + 1; - } -@@ -9033,7 +9033,7 @@ print_form_data (Dwarf *dbg, int form, const unsigned char *readp, - Dwarf_Off str_offsets_base, FILE *out) - { - Dwarf_Word val; -- unsigned char *endp; -+ const unsigned char *endp; - Elf_Data *data; - char *str; - switch (form) -@@ -9530,7 +9530,7 @@ print_debug_line_section (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr, - { - while (linep < lineendp && *linep != 0) - { -- unsigned char *endp = memchr (linep, '\0', lineendp - linep); -+ const unsigned char *endp = memchr (linep, '\0', lineendp - linep); - if (unlikely (endp == NULL)) - goto invalid_unit; - -@@ -9764,7 +9764,7 @@ print_debug_line_section (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr, - case DW_LNE_define_file: - { - char *fname = (char *) linep; -- unsigned char *endp = memchr (linep, '\0', -+ const unsigned char *endp = memchr (linep, '\0', - lineendp - linep); - if (unlikely (endp == NULL)) - goto invalid_unit; --- -2.52.0 - diff --git a/elfutils-debuginfod.sysusers b/elfutils-debuginfod.sysusers deleted file mode 100644 index 18c2561..0000000 --- a/elfutils-debuginfod.sysusers +++ /dev/null @@ -1 +0,0 @@ -u debuginfod - "elfutils debuginfo server" /var/cache/debuginfod - diff --git a/elfutils-portability-0.161.patch b/elfutils-portability-0.161.patch new file mode 100644 index 0000000..7539f8b --- /dev/null +++ b/elfutils-portability-0.161.patch @@ -0,0 +1,1871 @@ +--- elfutils/backends/ChangeLog ++++ elfutils/backends/ChangeLog +@@ -433,6 +433,10 @@ + * ppc_attrs.c (ppc_check_object_attribute): Handle tag + GNU_Power_ABI_Struct_Return. + ++2009-01-23 Roland McGrath ++ ++ * Makefile.am (libebl_%.so): Use $(LD_AS_NEEDED). ++ + 2008-10-04 Ulrich Drepper + + * i386_reloc.def: Fix entries for TLS_GOTDESC, TLS_DESC_CALL, and +@@ -760,6 +764,11 @@ + * sparc_init.c: Likewise. + * x86_64_init.c: Likewise. + ++2005-11-22 Roland McGrath ++ ++ * Makefile.am (LD_AS_NEEDED): New variable, substituted by configure. ++ (libebl_%.so rule): Use it in place of -Wl,--as-needed. ++ + 2005-11-19 Roland McGrath + + * ppc64_reloc.def: REL30 -> ADDR30. +@@ -782,6 +791,9 @@ + * Makefile.am (uninstall): Don't try to remove $(pkgincludedir). + (CLEANFILES): Add libebl_$(m).so. + ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ + * ppc_reloc.def: Update bits per Alan Modra . + * ppc64_reloc.def: Likewise. + +--- elfutils/backends/Makefile.am ++++ elfutils/backends/Makefile.am +@@ -119,7 +119,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a + $(LINK) -shared -o $(@:.map=.so) \ + -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \ + -Wl,--version-script,$(@:.so=.map) \ +- -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw) ++ -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw) + @$(textrel_check) + + libebl_i386.so: $(cpu_i386) +--- elfutils/backends/Makefile.in ++++ elfutils/backends/Makefile.in +@@ -83,6 +83,7 @@ host_triplet = @host@ + DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(noinst_HEADERS) ChangeLog ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) + subdir = backends + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ +@@ -285,6 +286,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -316,6 +318,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -378,11 +381,11 @@ zip_LIBS = @zip_LIBS@ + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ + -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \ + -I$(top_srcdir)/libelf -I$(top_srcdir)/libdw +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ +- $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ +- $($(*F)_CFLAGS) +- ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ ++ $($(*F)_no_Werror),,-Werror) $(if \ ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda $(foreach m,$(modules), libebl_$(m).map \ + libebl_$(m).so $(am_libebl_$(m)_pic_a_OBJECTS)) +@@ -888,7 +891,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a + $(LINK) -shared -o $(@:.map=.so) \ + -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \ + -Wl,--version-script,$(@:.so=.map) \ +- -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw) ++ -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw) + @$(textrel_check) + + libebl_i386.so: $(cpu_i386) +--- elfutils/ChangeLog ++++ elfutils/ChangeLog +@@ -187,6 +187,8 @@ + + 2012-01-24 Mark Wielaard + ++ * configure.ac: Wrap AC_COMPILE_IFELSE sources in AC_LANG_SOURCE. ++ + * COPYING: Fix address. Updated version from gnulib. + + 2012-01-23 Mark Wielaard +@@ -205,6 +207,9 @@ + + 2011-10-08 Mike Frysinger + ++ * configure.ac (--disable-werror): Handle it, controlling BUILD_WERROR ++ automake option. ++ + * configure.ac: Fix use of AC_ARG_ENABLE to handle $enableval correctly. + + 2011-10-02 Ulrich Drepper +@@ -226,6 +231,10 @@ + + * configure.ac (LOCALEDIR, DATADIRNAME): Removed. + ++2009-11-22 Roland McGrath ++ ++ * configure.ac: Use sed and expr instead of modern bash extensions. ++ + 2009-09-21 Ulrich Drepper + + * configure.ac: Update for more modern autoconf. +@@ -234,6 +243,10 @@ + + * configure.ac (zip_LIBS): Check for liblzma too. + ++2009-08-17 Roland McGrath ++ ++ * configure.ac: Check for -fgnu89-inline; add it to WEXTRA if it works. ++ + 2009-04-19 Roland McGrath + + * configure.ac (eu_version): Round down here, not in version.h macros. +@@ -245,6 +258,8 @@ + + 2009-01-23 Roland McGrath + ++ * configure.ac: Check for __builtin_popcount. ++ + * configure.ac (zlib check): Check for gzdirect, need zlib >= 1.2.2.3. + + * configure.ac (__thread check): Use AC_LINK_IFELSE, in case of +@@ -325,6 +340,10 @@ + * configure.ac: Add dummy automake conditional to get dependencies + for non-generic linker right. See src/Makefile.am. + ++2005-11-22 Roland McGrath ++ ++ * configure.ac: Check for --as-needed linker option. ++ + 2005-11-18 Roland McGrath + + * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New variable. +@@ -372,6 +391,17 @@ + * Makefile.am (all_SUBDIRS): Add libdwfl. + * configure.ac: Write libdwfl/Makefile. + ++2005-05-31 Roland McGrath ++ ++ * configure.ac (WEXTRA): Check for -Wextra and set this substitution. ++ ++ * configure.ac: Check for struct stat st_?tim members. ++ * src/strip.c (process_file): Use st_?time if st_?tim are not there. ++ ++ * configure.ac: Check for futimes function. ++ * src/strip.c (handle_elf) [! HAVE_FUTIMES]: Use utimes instead. ++ (handle_ar) [! HAVE_FUTIMES]: Likewise. ++ + 2005-05-19 Roland McGrath + + * configure.ac [AH_BOTTOM] (INTDECL, _INTDECL): New macros. +--- elfutils/config/ChangeLog ++++ elfutils/config/ChangeLog +@@ -71,6 +71,10 @@ + + * known-dwarf.awk: Use gawk. + ++2011-10-08 Mike Frysinger ++ ++ * eu.am [BUILD_WERROR]: Conditionalize -Werror use on this. ++ + 2010-07-02 Ulrich Drepper + + * elfutils.spec.in: Add more BuildRequires. +--- elfutils/config/eu.am ++++ elfutils/config/eu.am +@@ -1,6 +1,6 @@ + ## Common automake fragments for elfutils subdirectory makefiles. + ## +-## Copyright (C) 2010, 2014 Red Hat, Inc. ++## Copyright (C) 2010-2011, 2014 Red Hat, Inc. + ## + ## This file is part of elfutils. + ## +@@ -29,13 +29,21 @@ + ## not, see . + ## + ++WEXTRA = @WEXTRA@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ ++ + DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"' + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow \ + $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ ++ $(if $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) \ ++ $(if $($(*F)_no_Wformat),-Wno-format,-Wformat=2) \ + $($(*F)_CFLAGS) + ++if BUILD_WERROR ++AM_CFLAGS += $(if $($(*F)_no_Werror),,-Werror) ++endif ++ + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + + %.os: %.c %.o +--- elfutils/config/Makefile.in ++++ elfutils/config/Makefile.in +@@ -147,6 +147,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -178,6 +179,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +--- elfutils/config.h.in ++++ elfutils/config.h.in +@@ -3,6 +3,9 @@ + /* Should ar and ranlib use -D behavior by default? */ + #undef DEFAULT_AR_DETERMINISTIC + ++/* Have __builtin_popcount. */ ++#undef HAVE_BUILTIN_POPCOUNT ++ + /* Define to 1 if you have the header file. */ + #undef HAVE_INTTYPES_H + +@@ -102,4 +105,7 @@ + /* Define for large files, on AIX-style hosts. */ + #undef _LARGE_FILES + ++/* Stubbed out if missing compiler support. */ ++#undef __thread ++ + #include +--- elfutils/configure ++++ elfutils/configure +@@ -663,6 +663,8 @@ ZLIB_TRUE + LIBEBL_SUBDIR + TESTS_RPATH_FALSE + TESTS_RPATH_TRUE ++BUILD_WERROR_FALSE ++BUILD_WERROR_TRUE + BUILD_STATIC_FALSE + BUILD_STATIC_TRUE + USE_VALGRIND_FALSE +@@ -678,6 +680,8 @@ NEVER_TRUE + base_cpu + NATIVE_LD_FALSE + NATIVE_LD_TRUE ++LD_AS_NEEDED ++WEXTRA + NM + READELF + ac_ct_AR +@@ -798,6 +802,7 @@ enable_debugpred + enable_gprof + enable_gcov + enable_valgrind ++enable_werror + enable_tests_rpath + enable_libebl_subdir + with_zlib +@@ -1455,6 +1460,7 @@ Optional Features: + --enable-gprof build binaries with gprof support + --enable-gcov build binaries with gcov support + --enable-valgrind run all tests under valgrind ++ --disable-werror do not build with -Werror + --enable-tests-rpath build $ORIGIN-using rpath into tests + --enable-libebl-subdir=DIR + install libebl_CPU modules in $(libdir)/DIR +@@ -4843,6 +4849,130 @@ if test "x$ac_cv_c99" != xyes; then : + as_fn_error $? "gcc with C99 support required" "$LINENO" 5 + fi + ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -Wextra option to $CC" >&5 ++$as_echo_n "checking for -Wextra option to $CC... " >&6; } ++if ${ac_cv_cc_wextra+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ old_CFLAGS="$CFLAGS" ++CFLAGS="$CFLAGS -Wextra" ++cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++void foo (void) { } ++_ACEOF ++if ac_fn_c_try_compile "$LINENO"; then : ++ ac_cv_cc_wextra=yes ++else ++ ac_cv_cc_wextra=no ++fi ++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ++CFLAGS="$old_CFLAGS" ++fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_wextra" >&5 ++$as_echo "$ac_cv_cc_wextra" >&6; } ++ ++if test "x$ac_cv_cc_wextra" = xyes; then : ++ WEXTRA=-Wextra ++else ++ WEXTRA=-W ++fi ++ ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fgnu89-inline option to $CC" >&5 ++$as_echo_n "checking for -fgnu89-inline option to $CC... " >&6; } ++if ${ac_cv_cc_gnu89_inline+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ old_CFLAGS="$CFLAGS" ++CFLAGS="$CFLAGS -fgnu89-inline -Werror" ++cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++ ++void foo (void) ++{ ++ inline void bar (void) {} ++ bar (); ++} ++extern inline void baz (void) {} ++ ++_ACEOF ++if ac_fn_c_try_compile "$LINENO"; then : ++ ac_cv_cc_gnu89_inline=yes ++else ++ ac_cv_cc_gnu89_inline=no ++fi ++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ++CFLAGS="$old_CFLAGS" ++fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_gnu89_inline" >&5 ++$as_echo "$ac_cv_cc_gnu89_inline" >&6; } ++if test "x$ac_cv_cc_gnu89_inline" = xyes; then : ++ WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline" ++fi ++ ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --as-needed linker option" >&5 ++$as_echo_n "checking for --as-needed linker option... " >&6; } ++if ${ac_cv_as_needed+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ cat > conftest.c <&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; } ++then ++ ac_cv_as_needed=yes ++else ++ ac_cv_as_needed=no ++fi ++rm -f conftest* ++fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_as_needed" >&5 ++$as_echo "$ac_cv_as_needed" >&6; } ++if test "x$ac_cv_as_needed" = xyes; then : ++ LD_AS_NEEDED=-Wl,--as-needed ++else ++ LD_AS_NEEDED= ++fi ++ ++ ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_popcount" >&5 ++$as_echo_n "checking for __builtin_popcount... " >&6; } ++if ${ac_cv_popcount+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++ ++int ++main () ++{ ++exit (__builtin_popcount (127)); ++ ; ++ return 0; ++} ++_ACEOF ++if ac_fn_c_try_link "$LINENO"; then : ++ ac_cv_popcount=yes ++else ++ ac_cv_popcount=no ++fi ++rm -f core conftest.err conftest.$ac_objext \ ++ conftest$ac_exeext conftest.$ac_ext ++fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_popcount" >&5 ++$as_echo "$ac_cv_popcount" >&6; } ++if test "x$ac_cv_popcount" = xyes; then : ++ ++$as_echo "#define HAVE_BUILTIN_POPCOUNT 1" >>confdefs.h ++ ++fi ++ + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __thread support" >&5 + $as_echo_n "checking for __thread support... " >&6; } + if ${ac_cv_tls+:} false; then : +@@ -4879,7 +5009,13 @@ fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_tls" >&5 + $as_echo "$ac_cv_tls" >&6; } + if test "x$ac_cv_tls" != xyes; then : +- as_fn_error $? "__thread support required" "$LINENO" 5 ++ if test "$use_locks" = yes; then : ++ as_fn_error $? "--enable-thread-safety requires __thread support" "$LINENO" 5 ++else ++ ++$as_echo "#define __thread /* empty: no multi-thread support */" >>confdefs.h ++ ++fi + fi + + # Check whether --enable-largefile was given. +@@ -5246,6 +5382,22 @@ else + fi + + ++# Check whether --enable-werror was given. ++if test "${enable_werror+set}" = set; then : ++ enableval=$enable_werror; enable_werror=$enableval ++else ++ enable_werror=yes ++fi ++ ++ if test "$enable_werror" = yes; then ++ BUILD_WERROR_TRUE= ++ BUILD_WERROR_FALSE='#' ++else ++ BUILD_WERROR_TRUE='#' ++ BUILD_WERROR_FALSE= ++fi ++ ++ + # Check whether --enable-tests-rpath was given. + if test "${enable_tests_rpath+set}" = set; then : + enableval=$enable_tests_rpath; tests_use_rpath=$enableval +@@ -5983,7 +6135,7 @@ case "$eu_version" in + esac + + # Round up to the next release API (x.y) version. +-eu_version=$(( (eu_version + 999) / 1000 )) ++eu_version=`expr \( $eu_version + 999 \) / 1000` + + ac_ext=c + ac_cpp='$CPP $CPPFLAGS' +@@ -6729,6 +6881,10 @@ if test -z "${BUILD_STATIC_TRUE}" && tes + as_fn_error $? "conditional \"BUILD_STATIC\" was never defined. + Usually this means the macro was only invoked conditionally." "$LINENO" 5 + fi ++if test -z "${BUILD_WERROR_TRUE}" && test -z "${BUILD_WERROR_FALSE}"; then ++ as_fn_error $? "conditional \"BUILD_WERROR\" was never defined. ++Usually this means the macro was only invoked conditionally." "$LINENO" 5 ++fi + if test -z "${TESTS_RPATH_TRUE}" && test -z "${TESTS_RPATH_FALSE}"; then + as_fn_error $? "conditional \"TESTS_RPATH\" was never defined. + Usually this means the macro was only invoked conditionally." "$LINENO" 5 +--- elfutils/configure.ac ++++ elfutils/configure.ac +@@ -89,6 +89,54 @@ CFLAGS="$old_CFLAGS"]) + AS_IF([test "x$ac_cv_c99" != xyes], + AC_MSG_ERROR([gcc with C99 support required])) + ++AC_CACHE_CHECK([for -Wextra option to $CC], ac_cv_cc_wextra, [dnl ++old_CFLAGS="$CFLAGS" ++CFLAGS="$CFLAGS -Wextra" ++AC_COMPILE_IFELSE([AC_LANG_SOURCE([void foo (void) { }])], ++ ac_cv_cc_wextra=yes, ac_cv_cc_wextra=no) ++CFLAGS="$old_CFLAGS"]) ++AC_SUBST(WEXTRA) ++AS_IF([test "x$ac_cv_cc_wextra" = xyes], [WEXTRA=-Wextra], [WEXTRA=-W]) ++ ++AC_CACHE_CHECK([for -fgnu89-inline option to $CC], ac_cv_cc_gnu89_inline, [dnl ++old_CFLAGS="$CFLAGS" ++CFLAGS="$CFLAGS -fgnu89-inline -Werror" ++AC_COMPILE_IFELSE([AC_LANG_SOURCE([ ++void foo (void) ++{ ++ inline void bar (void) {} ++ bar (); ++} ++extern inline void baz (void) {} ++])], ac_cv_cc_gnu89_inline=yes, ac_cv_cc_gnu89_inline=no) ++CFLAGS="$old_CFLAGS"]) ++AS_IF([test "x$ac_cv_cc_gnu89_inline" = xyes], ++ [WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline"]) ++ ++AC_CACHE_CHECK([for --as-needed linker option], ++ ac_cv_as_needed, [dnl ++cat > conftest.c <&AS_MESSAGE_LOG_FD]) ++then ++ ac_cv_as_needed=yes ++else ++ ac_cv_as_needed=no ++fi ++rm -f conftest*]) ++AS_IF([test "x$ac_cv_as_needed" = xyes], ++ [LD_AS_NEEDED=-Wl,--as-needed], [LD_AS_NEEDED=]) ++AC_SUBST(LD_AS_NEEDED) ++ ++AC_CACHE_CHECK([for __builtin_popcount], ac_cv_popcount, [dnl ++AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[exit (__builtin_popcount (127));]])], ++ ac_cv_popcount=yes, ac_cv_popcount=no)]) ++AS_IF([test "x$ac_cv_popcount" = xyes], ++ [AC_DEFINE([HAVE_BUILTIN_POPCOUNT], [1], [Have __builtin_popcount.])]) ++ + AC_CACHE_CHECK([for __thread support], ac_cv_tls, [dnl + # Use the same flags that we use for our DSOs, so the test is representative. + # Some old compiler/linker/libc combinations fail some ways and not others. +@@ -104,7 +152,10 @@ static __thread int a; int foo (int b) { + CFLAGS="$save_CFLAGS" + LDFLAGS="$save_LDFLAGS"]) + AS_IF([test "x$ac_cv_tls" != xyes], +- AC_MSG_ERROR([__thread support required])) ++ [AS_IF([test "$use_locks" = yes], ++ [AC_MSG_ERROR([--enable-thread-safety requires __thread support])], ++ [AC_DEFINE([__thread], [/* empty: no multi-thread support */], ++ [Stubbed out if missing compiler support.])])]) + + dnl This test must come as early as possible after the compiler configuration + dnl tests, because the choice of the file model can (in principle) affect +@@ -183,6 +234,11 @@ AM_CONDITIONAL(USE_VALGRIND, test "$use_ + AM_CONDITIONAL(BUILD_STATIC, [dnl + test "$use_gprof" = yes -o "$use_gcov" = yes]) + ++AC_ARG_ENABLE([werror], ++AS_HELP_STRING([--disable-werror],[do not build with -Werror]), ++ [enable_werror=$enableval], [enable_werror=yes]) ++AM_CONDITIONAL(BUILD_WERROR, test "$enable_werror" = yes) ++ + AC_ARG_ENABLE([tests-rpath], + AS_HELP_STRING([--enable-tests-rpath],[build $ORIGIN-using rpath into tests]), + [tests_use_rpath=$enableval], [tests_use_rpath=no]) +@@ -302,7 +358,7 @@ case "$eu_version" in + esac + + # Round up to the next release API (x.y) version. +-eu_version=$(( (eu_version + 999) / 1000 )) ++eu_version=`expr \( $eu_version + 999 \) / 1000` + + AC_CHECK_SIZEOF(long) + +--- elfutils/lib/ChangeLog ++++ elfutils/lib/ChangeLog +@@ -65,6 +65,9 @@ + + 2009-01-23 Roland McGrath + ++ * eu-config.h [! HAVE_BUILTIN_POPCOUNT] ++ (__builtin_popcount): New inline function. ++ + * eu-config.h: Add multiple inclusion protection. + + 2009-01-17 Ulrich Drepper +@@ -121,6 +124,11 @@ + * Makefile.am (libeu_a_SOURCES): Add it. + * system.h: Declare crc32_file. + ++2005-02-07 Roland McGrath ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ + 2005-04-30 Ulrich Drepper + + * Makefile.am: Use -ffunction-sections for xmalloc.c. +--- elfutils/lib/eu-config.h ++++ elfutils/lib/eu-config.h +@@ -162,6 +162,17 @@ asm (".section predict_data, \"aw\"; .pr + /* This macro is used by the tests conditionalize for standalone building. */ + #define ELFUTILS_HEADER(name) + ++#ifndef HAVE_BUILTIN_POPCOUNT ++# define __builtin_popcount hakmem_popcount ++static inline unsigned int __attribute__ ((unused)) ++hakmem_popcount (unsigned int x) ++{ ++ /* HAKMEM 169 */ ++ unsigned int n = x - ((x >> 1) & 033333333333) - ((x >> 2) & 011111111111); ++ return ((n + (n >> 3)) & 030707070707) % 63; ++} ++#endif /* HAVE_BUILTIN_POPCOUNT */ ++ + + #ifdef SHARED + # define OLD_VERSION(name, version) \ +--- elfutils/lib/Makefile.in ++++ elfutils/lib/Makefile.in +@@ -82,6 +82,7 @@ host_triplet = @host@ + DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(noinst_HEADERS) ChangeLog ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) + subdir = lib + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ +@@ -197,6 +198,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -228,6 +230,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -289,9 +292,11 @@ top_srcdir = @top_srcdir@ + zip_LIBS = @zip_LIBS@ + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ + -I$(srcdir)/../libelf +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ + $($(*F)_no_Werror),,-Werror) $(if \ +- $($(*F)_no_Wunused),,-Wunused -Wextra) $($(*F)_CFLAGS) -fpic ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) -fpic + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda + textrel_msg = echo "WARNING: TEXTREL found in '$@'" +--- elfutils/libasm/ChangeLog ++++ elfutils/libasm/ChangeLog +@@ -87,6 +87,11 @@ + * asm_error.c: Add new error ASM_E_IOERROR. + * libasmP.h: Add ASM_E_IOERROR definition. + ++2005-05-31 Roland McGrath ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ + 2005-02-15 Ulrich Drepper + + * Makefile.am (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. +--- elfutils/libasm/Makefile.in ++++ elfutils/libasm/Makefile.in +@@ -83,8 +83,9 @@ host_triplet = @host@ + DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) + noinst_PROGRAMS = $(am__EXEEXT_1) +-@USE_LOCKS_TRUE@am__append_1 = -lpthread ++@USE_LOCKS_TRUE@am__append_2 = -lpthread + subdir = libasm + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ +@@ -248,6 +249,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -279,6 +281,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -341,11 +344,11 @@ zip_LIBS = @zip_LIBS@ + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ + -I$(top_srcdir)/libelf -I$(top_srcdir)/libebl \ + -I$(top_srcdir)/libdw +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ +- $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ +- $($(*F)_CFLAGS) +- ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ ++ $($(*F)_no_Werror),,-Werror) $(if \ ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda $(am_libasm_pic_a_OBJECTS) \ + libasm.so.$(VERSION) +@@ -373,7 +376,7 @@ libasm_a_SOURCES = asm_begin.c asm_abort + + libasm_pic_a_SOURCES = + am_libasm_pic_a_OBJECTS = $(libasm_a_SOURCES:.c=.os) +-libasm_so_LDLIBS = $(am__append_1) ++libasm_so_LDLIBS = $(am__append_2) + libasm_so_SOURCES = + noinst_HEADERS = libasmP.h symbolhash.h + EXTRA_DIST = libasm.map +--- elfutils/libcpu/ChangeLog ++++ elfutils/libcpu/ChangeLog +@@ -51,6 +51,9 @@ + + 2009-01-23 Roland McGrath + ++ * i386_disasm.c (i386_disasm): Add abort after assert-constant for old ++ compilers that don't realize it's noreturn. ++ + * Makefile.am (i386_parse_CFLAGS): Use quotes around command + substitution that can produce leading whitespace. + +@@ -380,6 +383,11 @@ + * defs/i386.doc: New file. + * defs/x86_64: New file. + ++2005-04-04 Roland McGrath ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it instead of -Wextra. ++ + 2005-02-15 Ulrich Drepper + + * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. +--- elfutils/libcpu/i386_disasm.c ++++ elfutils/libcpu/i386_disasm.c +@@ -822,6 +822,7 @@ i386_disasm (const uint8_t **startp, con + + default: + assert (! "INVALID not handled"); ++ abort (); + } + } + else +--- elfutils/libcpu/Makefile.in ++++ elfutils/libcpu/Makefile.in +@@ -84,6 +84,7 @@ DIST_COMMON = $(top_srcdir)/config/eu.am + $(srcdir)/Makefile.am i386_lex.c i386_parse.c \ + $(top_srcdir)/config/depcomp $(top_srcdir)/config/ylwrap \ + $(am__noinst_HEADERS_DIST) ChangeLog ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) + @MAINTAINER_MODE_TRUE@noinst_PROGRAMS = i386_gendis$(EXEEXT) + subdir = libcpu + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +@@ -223,6 +224,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = lex.$( ++ ++ * dwarf_begin_elf.c: Add fallback for be64toh if not defined. ++ + 2011-07-14 Mark Wielaard + + * libdw.h (dwarf_offdie): Fix documentation to mention .debug_info. +@@ -1076,6 +1080,10 @@ + + * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too. + ++2009-08-17 Roland McGrath ++ ++ * libdw.h: Disable extern inlines for GCC 4.2. ++ + 2009-08-10 Roland McGrath + + * dwarf_getscopevar.c: Use dwarf_diename. +@@ -1844,6 +1852,11 @@ + + 2005-05-31 Roland McGrath + ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ ++2005-05-31 Roland McGrath ++ + * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to + formref offset. + +--- elfutils/libdw/dwarf_begin_elf.c ++++ elfutils/libdw/dwarf_begin_elf.c +@@ -47,6 +47,14 @@ + #if USE_ZLIB + # include + # define crc32 loser_crc32 ++# ifndef be64toh ++# include ++# if __BYTE_ORDER == __LITTLE_ENDIAN ++# define be64toh(x) bswap_64 (x) ++# else ++# define be64toh(x) (x) ++# endif ++# endif + # include + # undef crc32 + #endif +--- elfutils/libdw/libdw.h ++++ elfutils/libdw/libdw.h +@@ -1003,7 +1003,7 @@ extern Dwarf_OOM dwarf_new_oom_handler ( + + + /* Inline optimizations. */ +-#ifdef __OPTIMIZE__ ++#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2) + /* Return attribute code of given attribute. */ + __libdw_extern_inline unsigned int + dwarf_whatattr (Dwarf_Attribute *attr) +--- elfutils/libdw/Makefile.in ++++ elfutils/libdw/Makefile.in +@@ -84,7 +84,8 @@ DIST_COMMON = $(top_srcdir)/config/eu.am + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(include_HEADERS) $(noinst_HEADERS) $(pkginclude_HEADERS) \ + ChangeLog +-@BUILD_STATIC_TRUE@am__append_1 = -fpic ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) ++@BUILD_STATIC_TRUE@am__append_2 = -fpic + noinst_PROGRAMS = $(am__EXEEXT_1) + subdir = libdw + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +@@ -298,6 +299,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -329,6 +331,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -390,10 +393,11 @@ top_srcdir = @top_srcdir@ + zip_LIBS = @zip_LIBS@ + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ + -I$(srcdir)/../libelf +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ + $($(*F)_no_Werror),,-Werror) $(if \ +- $($(*F)_no_Wunused),,-Wunused -Wextra) $($(*F)_CFLAGS) \ +- $(am__append_1) ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) $(am__append_2) + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda + textrel_msg = echo "WARNING: TEXTREL found in '$@'" +--- elfutils/libdwelf/Makefile.in ++++ elfutils/libdwelf/Makefile.in +@@ -82,6 +82,7 @@ host_triplet = @host@ + DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) + subdir = libdwelf + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ +@@ -227,6 +228,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -258,6 +260,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -320,11 +323,11 @@ zip_LIBS = @zip_LIBS@ + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ + -I$(srcdir)/../libelf -I$(srcdir)/../libdw \ + -I$(srcdir)/../libdwfl -I$(srcdir)/../libebl +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ +- $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ +- $($(*F)_CFLAGS) +- ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ ++ $($(*F)_no_Werror),,-Werror) $(if \ ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda $(am_libdwelf_pic_a_OBJECTS) + textrel_msg = echo "WARNING: TEXTREL found in '$@'" +--- elfutils/libdwfl/ChangeLog ++++ elfutils/libdwfl/ChangeLog +@@ -571,6 +571,21 @@ + (dwfl_module_addrsym) (i_to_symfile): New function. + (dwfl_module_addrsym) (search_table): Use it. + ++2013-11-09 Jan Kratochvil ++ ++ Older OS compatibility bits. ++ * linux-core-attach.c (be64toh, le64toh, be32toh, le32toh): Provide ++ fallbacks if not defined by system. ++ ++2013-11-09 Jan Kratochvil ++ ++ Handle T-stopped detach for old kernels. ++ * linux-pid-attach.c (struct pid_arg): New field stopped. ++ (ptrace_attach): New parameter stoppedp. Set it appropriately. ++ (pid_set_initial_registers): Pass the new field. ++ (pid_thread_detach): Handle the case of STOPPED for old kernels. ++ (__libdwfl_attach_state_for_pid): Initialize STOPPED. ++ + 2013-11-07 Jan Kratochvil + Mark Wielaard + +@@ -2336,6 +2351,11 @@ + + 2005-07-21 Roland McGrath + ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ ++2005-07-21 Roland McGrath ++ + * Makefile.am (noinst_HEADERS): Add loc2c.c. + + * test2.c (main): Check sscanf result to quiet warning. +--- elfutils/libdwfl/linux-core-attach.c ++++ elfutils/libdwfl/linux-core-attach.c +@@ -29,6 +29,35 @@ + #include "libdwflP.h" + #include + #include "system.h" ++#include ++#include ++#if __BYTE_ORDER == __LITTLE_ENDIAN ++# ifndef be64toh ++# define be64toh(x) bswap_64 (x) ++# endif ++# ifndef le64toh ++# define le64toh(x) (x) ++# endif ++# ifndef be32toh ++# define be32toh(x) bswap_32 (x) ++# endif ++# ifndef le32toh ++# define le32toh(x) (x) ++# endif ++#else ++# ifndef be64toh ++# define be64toh(x) (x) ++# endif ++# ifndef le64toh ++# define le64toh(x) bswap_64 (x) ++# endif ++# ifndef be32toh ++# define be32toh(x) (x) ++# endif ++# ifndef le32toh ++# define le32toh(x) bswap_32 (x) ++# endif ++#endif + + #include "../libdw/memory-access.h" + +--- elfutils/libdwfl/linux-pid-attach.c ++++ elfutils/libdwfl/linux-pid-attach.c +@@ -255,6 +255,11 @@ void + internal_function + __libdwfl_ptrace_detach (pid_t tid, bool tid_was_stopped) + { ++ // Older kernels (tested kernel-2.6.18-348.12.1.el5.x86_64) need special ++ // handling of the detachment to keep the process State: T (stopped). ++ if (tid_was_stopped) ++ syscall (__NR_tkill, tid, SIGSTOP); ++ + /* This handling is needed only on older Linux kernels such as + 2.6.32-358.23.2.el6.ppc64. Later kernels such as + 3.11.7-200.fc19.x86_64 remember the T (stopped) state +@@ -262,6 +267,15 @@ __libdwfl_ptrace_detach (pid_t tid, bool + PTRACE_DETACH. */ + ptrace (PTRACE_DETACH, tid, NULL, + (void *) (intptr_t) (tid_was_stopped ? SIGSTOP : 0)); ++ ++ if (tid_was_stopped) ++ { ++ // Wait till the SIGSTOP settles down. ++ int i; ++ for (i = 0; i < 100000; i++) ++ if (linux_proc_pid_is_stopped (tid)) ++ break; ++ } + } + + static void +--- elfutils/libdwfl/Makefile.in ++++ elfutils/libdwfl/Makefile.in +@@ -82,9 +82,10 @@ host_triplet = @host@ + DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog +-@ZLIB_TRUE@am__append_1 = gzip.c +-@BZLIB_TRUE@am__append_2 = bzip2.c +-@LZMA_TRUE@am__append_3 = lzma.c ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) ++@ZLIB_TRUE@am__append_2 = gzip.c ++@BZLIB_TRUE@am__append_3 = bzip2.c ++@LZMA_TRUE@am__append_4 = lzma.c + subdir = libdwfl + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ +@@ -286,6 +287,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -317,6 +319,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -379,11 +382,11 @@ zip_LIBS = @zip_LIBS@ + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. -I$(srcdir) \ + -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ + -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ +- $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ +- $($(*F)_CFLAGS) +- ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ ++ $($(*F)_no_Werror),,-Werror) $(if \ ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda $(am_libdwfl_pic_a_OBJECTS) + textrel_msg = echo "WARNING: TEXTREL found in '$@'" +@@ -413,8 +416,8 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en + dwfl_module_register_names.c dwfl_segment_report_module.c \ + link_map.c core-file.c open.c image-header.c dwfl_frame.c \ + frame_unwind.c dwfl_frame_pc.c linux-pid-attach.c \ +- linux-core-attach.c dwfl_frame_regs.c $(am__append_1) \ +- $(am__append_2) $(am__append_3) ++ linux-core-attach.c dwfl_frame_regs.c $(am__append_2) \ ++ $(am__append_3) $(am__append_4) + libdwfl = $(libdw) + libdw = ../libdw/libdw.so + libelf = ../libelf/libelf.so +--- elfutils/libebl/ChangeLog ++++ elfutils/libebl/ChangeLog +@@ -765,6 +765,11 @@ + * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency + tracking works right. + ++2005-05-31 Roland McGrath ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ + 2005-05-21 Ulrich Drepper + + * libebl_x86_64.map: Add x86_64_core_note. +--- elfutils/libebl/Makefile.in ++++ elfutils/libebl/Makefile.in +@@ -82,6 +82,7 @@ host_triplet = @host@ + DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) + subdir = libebl + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ +@@ -249,6 +250,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -280,6 +282,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -342,9 +345,11 @@ zip_LIBS = @zip_LIBS@ + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ + -I$(srcdir)/../libelf -I$(srcdir)/../libdw \ + -I$(srcdir)/../libasm +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ + $($(*F)_no_Werror),,-Werror) $(if \ +- $($(*F)_no_Wunused),,-Wunused -Wextra) $($(*F)_CFLAGS) -fpic ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) -fpic + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda $(am_libebl_pic_a_OBJECTS) + textrel_msg = echo "WARNING: TEXTREL found in '$@'" +--- elfutils/libelf/ChangeLog ++++ elfutils/libelf/ChangeLog +@@ -244,6 +244,11 @@ + + * elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check. + ++2011-03-10 Roland McGrath ++ ++ * gnuhash_xlate.h (elf_cvt_gnuhash): Avoid post-increment in bswap_32 ++ argument, since some implementations are buggy macros. ++ + 2011-02-26 Mark Wielaard + + * elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini. +@@ -921,6 +926,11 @@ + + * elf.h: Update from glibc. + ++2005-05-31 Roland McGrath ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ + 2005-05-08 Roland McGrath + + * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now. +--- elfutils/libelf/common.h ++++ elfutils/libelf/common.h +@@ -139,7 +139,7 @@ libelf_release_all (Elf *elf) + (Var) = (sizeof (Var) == 1 \ + ? (unsigned char) (Var) \ + : (sizeof (Var) == 2 \ +- ? bswap_16 (Var) \ ++ ? (unsigned short int) bswap_16 (Var) \ + : (sizeof (Var) == 4 \ + ? bswap_32 (Var) \ + : bswap_64 (Var)))) +@@ -148,7 +148,7 @@ libelf_release_all (Elf *elf) + (Dst) = (sizeof (Var) == 1 \ + ? (unsigned char) (Var) \ + : (sizeof (Var) == 2 \ +- ? bswap_16 (Var) \ ++ ? (unsigned short int) bswap_16 (Var) \ + : (sizeof (Var) == 4 \ + ? bswap_32 (Var) \ + : bswap_64 (Var)))) +--- elfutils/libelf/gnuhash_xlate.h ++++ elfutils/libelf/gnuhash_xlate.h +@@ -1,5 +1,5 @@ + /* Conversion functions for versioning information. +- Copyright (C) 2006, 2007 Red Hat, Inc. ++ Copyright (C) 2006-2011 Red Hat, Inc. + This file is part of elfutils. + Written by Ulrich Drepper , 2006. + +@@ -68,7 +68,9 @@ elf_cvt_gnuhash (void *dest, const void + dest32 = (Elf32_Word *) &dest64[bitmask_words]; + while (len >= 4) + { +- *dest32++ = bswap_32 (*src32++); ++ *dest32 = bswap_32 (*src32); ++ ++dest32; ++ ++src32; + len -= 4; + } + } +--- elfutils/libelf/Makefile.in ++++ elfutils/libelf/Makefile.in +@@ -84,9 +84,10 @@ DIST_COMMON = $(top_srcdir)/config/eu.am + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(include_HEADERS) $(noinst_HEADERS) $(pkginclude_HEADERS) \ + ChangeLog +-@BUILD_STATIC_TRUE@am__append_1 = -fpic ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) ++@BUILD_STATIC_TRUE@am__append_2 = -fpic + noinst_PROGRAMS = $(am__EXEEXT_1) +-@USE_LOCKS_TRUE@am__append_2 = -lpthread ++@USE_LOCKS_TRUE@am__append_3 = -lpthread + subdir = libelf + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ +@@ -291,6 +292,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -322,6 +324,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -382,10 +385,11 @@ top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + zip_LIBS = @zip_LIBS@ + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ + $($(*F)_no_Werror),,-Werror) $(if \ +- $($(*F)_no_Wunused),,-Wunused -Wextra) $($(*F)_CFLAGS) \ +- $(am__append_1) ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) $(am__append_2) + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda $(am_libelf_pic_a_OBJECTS) \ + libelf.so.$(VERSION) +@@ -449,7 +453,7 @@ libelf_a_SOURCES = elf_version.c elf_has + + libelf_pic_a_SOURCES = + am_libelf_pic_a_OBJECTS = $(libelf_a_SOURCES:.c=.os) +-libelf_so_LDLIBS = $(am__append_2) ++libelf_so_LDLIBS = $(am__append_3) + libelf_so_SOURCES = + noinst_HEADERS = elf.h abstract.h common.h exttypes.h gelf_xlate.h libelfP.h \ + version_xlate.h gnuhash_xlate.h note_xlate.h dl-hash.h +--- elfutils/m4/Makefile.in ++++ elfutils/m4/Makefile.in +@@ -145,6 +145,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -176,6 +177,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +--- elfutils/Makefile.in ++++ elfutils/Makefile.in +@@ -263,6 +263,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -294,6 +295,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +--- elfutils/src/addr2line.c ++++ elfutils/src/addr2line.c +@@ -540,10 +540,10 @@ handle_address (const char *string, Dwfl + bool parsed = false; + int i, j; + char *name = NULL; +- if (sscanf (string, "(%m[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2 ++ if (sscanf (string, "(%a[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2 + && string[i] == '\0') + parsed = adjust_to_section (name, &addr, dwfl); +- switch (sscanf (string, "%m[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j)) ++ switch (sscanf (string, "%a[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j)) + { + default: + break; +--- elfutils/src/ChangeLog ++++ elfutils/src/ChangeLog +@@ -1371,8 +1371,16 @@ + * readelf.c (attr_callback): Use print_block only when we don't use + print_ops. + ++2009-08-17 Roland McGrath ++ ++ * ld.h: Disable extern inlines for GCC 4.2. ++ + 2009-08-14 Roland McGrath + ++ * strings.c (read_block): Conditionalize posix_fadvise use ++ on [POSIX_FADV_SEQUENTIAL]. ++ From Petr Salinger . ++ + * ar.c (do_oper_extract): Use pathconf instead of statfs. + + 2009-08-01 Ulrich Drepper +@@ -1536,6 +1544,8 @@ + * readelf.c (print_debug_frame_section): Use t instead of j formats + for ptrdiff_t OFFSET. + ++ * addr2line.c (handle_address): Use %a instead of %m for compatibility. ++ + 2009-01-21 Ulrich Drepper + + * elflint.c (check_program_header): Fix typo in .eh_frame_hdr section +@@ -1719,6 +1729,11 @@ + that matches its PT_LOAD's p_flags &~ PF_W. On sparc, PF_X really + is valid in RELRO. + ++2008-03-01 Roland McGrath ++ ++ * readelf.c (dump_archive_index): Tweak portability hack ++ to match [__GNUC__ < 4] too. ++ + 2008-02-29 Roland McGrath + + * readelf.c (print_attributes): Add a cast. +@@ -1970,6 +1985,8 @@ + + * readelf.c (hex_dump): Fix rounding error in whitespace calculation. + ++ * Makefile.am (readelf_no_Werror): New variable. ++ + 2007-10-15 Roland McGrath + + * make-debug-archive.in: New file. +@@ -2409,6 +2426,10 @@ + * elflint.c (valid_e_machine): Add EM_ALPHA. + Reported by Christian Aichinger . + ++ * strings.c (map_file): Define POSIX_MADV_SEQUENTIAL to ++ MADV_SEQUENTIAL if undefined. Don't call posix_madvise ++ if neither is defined. ++ + 2006-08-08 Ulrich Drepper + + * elflint.c (check_dynamic): Don't require DT_HASH for DT_SYMTAB. +@@ -2485,6 +2506,10 @@ + * Makefile.am: Add hacks to create dependency files for non-generic + linker. + ++2006-04-05 Roland McGrath ++ ++ * strings.c (MAP_POPULATE): Define to 0 if undefined. ++ + 2006-06-12 Ulrich Drepper + + * ldgeneric.c (ld_generic_generate_sections): Don't create .interp +@@ -2833,6 +2858,11 @@ + * readelf.c (print_debug_loc_section): Fix indentation for larger + address size. + ++2005-05-31 Roland McGrath ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ + 2005-05-30 Roland McGrath + + * readelf.c (print_debug_line_section): Print section offset of each +--- elfutils/src/findtextrel.c ++++ elfutils/src/findtextrel.c +@@ -502,7 +502,11 @@ ptrcompare (const void *p1, const void * + + + static void +-check_rel (size_t nsegments, struct segments segments[nsegments], ++check_rel (size_t nsegments, struct segments segments[ ++#if __GNUC__ >= 4 ++ nsegments ++#endif ++ ], + GElf_Addr addr, Elf *elf, Elf_Scn *symscn, Dwarf *dw, + const char *fname, bool more_than_one, void **knownsrcs) + { +--- elfutils/src/ld.h ++++ elfutils/src/ld.h +@@ -1114,6 +1114,7 @@ extern bool dynamically_linked_p (void); + + /* Checked whether the symbol is undefined and referenced from a DSO. */ + extern bool linked_from_dso_p (struct scninfo *scninfo, size_t symidx); ++#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2) + #ifdef __GNUC_STDC_INLINE__ + __attribute__ ((__gnu_inline__)) + #endif +@@ -1131,5 +1132,6 @@ linked_from_dso_p (struct scninfo *scnin + + return sym->defined && sym->in_dso; + } ++#endif /* Optimizing and not GCC 4.2. */ + + #endif /* ld.h */ +--- elfutils/src/Makefile.am ++++ elfutils/src/Makefile.am +@@ -89,6 +89,11 @@ endif + # XXX While the file is not finished, don't warn about this + ldgeneric_no_Wunused = yes + ++# Buggy old compilers or libc headers. ++readelf_no_Werror = yes ++strings_no_Werror = yes ++addr2line_no_Wformat = yes ++ + readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl + nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl \ + $(demanglelib) +--- elfutils/src/Makefile.in ++++ elfutils/src/Makefile.in +@@ -85,6 +85,7 @@ DIST_COMMON = $(top_srcdir)/config/eu.am + $(srcdir)/Makefile.am ldlex.c ldscript.c \ + $(top_srcdir)/config/depcomp $(top_srcdir)/config/ylwrap \ + $(noinst_HEADERS) ChangeLog ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) + bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEEXT) size$(EXEEXT) \ + strip$(EXEEXT) ld$(EXEEXT) elflint$(EXEEXT) \ + findtextrel$(EXEEXT) addr2line$(EXEEXT) elfcmp$(EXEEXT) \ +@@ -93,9 +94,9 @@ bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEE + @NATIVE_LD_FALSE@noinst_PROGRAMS = $(am__EXEEXT_1) + # We never build this library but we need to get the dependency files + # of all the linker backends that might be used in a non-generic linker. +-@NEVER_TRUE@am__append_1 = libdummy.a ++@NEVER_TRUE@am__append_2 = libdummy.a + # -ldl is always needed for libebl. +-@NATIVE_LD_TRUE@am__append_2 = libld_elf.a ++@NATIVE_LD_TRUE@am__append_3 = libld_elf.a + @NATIVE_LD_TRUE@am_libld_elf_i386_pic_a_OBJECTS = + subdir = src + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +@@ -159,7 +160,7 @@ am_ld_OBJECTS = ld.$(OBJEXT) ldgeneric.$ + ldscript.$(OBJEXT) symbolhash.$(OBJEXT) sectionhash.$(OBJEXT) \ + versionhash.$(OBJEXT) + ld_OBJECTS = $(am_ld_OBJECTS) +-ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__append_2) ++ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__append_3) + ld_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(ld_LDFLAGS) $(LDFLAGS) -o \ + $@ + am_libld_elf_i386_so_OBJECTS = +@@ -340,6 +341,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -371,6 +373,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -434,11 +437,11 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr + -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ + -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf \ + -I$(srcdir)/../libdwfl -I$(srcdir)/../libasm +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ +- $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ +- $($(*F)_CFLAGS) +- ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ ++ $($(*F)_no_Werror),,-Werror) $(if \ ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda make-debug-archive none_ld.os \ + $(ld_modules:.c=.os) *.gconv +@@ -452,8 +455,8 @@ AM_LFLAGS = -Pld -olex.yy.c + native_ld = @native_ld@ + ld_dsos = libld_elf_i386_pic.a + @NATIVE_LD_FALSE@noinst_LIBRARIES = libld_elf.a libar.a $(ld_dsos) \ +-@NATIVE_LD_FALSE@ $(am__append_1) +-@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_1) ++@NATIVE_LD_FALSE@ $(am__append_2) ++@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_2) + @NATIVE_LD_TRUE@native_ld_cflags = -DBASE_ELF_NAME=elf_$(base_cpu) + @NEVER_TRUE@libdummy_a_SOURCES = i386_ld.c + ld_SOURCES = ld.c ldgeneric.c ldlex.l ldscript.y symbolhash.c sectionhash.c \ +@@ -479,13 +482,18 @@ libeu = ../lib/libeu.a + + # XXX While the file is not finished, don't warn about this + ldgeneric_no_Wunused = yes ++ ++# Buggy old compilers or libc headers. ++readelf_no_Werror = yes ++strings_no_Werror = yes ++addr2line_no_Wformat = yes + readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl + nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl \ + $(demanglelib) + + size_LDADD = $(libelf) $(libeu) + strip_LDADD = $(libebl) $(libelf) $(libeu) -ldl +-ld_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(am__append_2) ++ld_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(am__append_3) + ld_LDFLAGS = -rdynamic + elflint_LDADD = $(libebl) $(libelf) $(libeu) -ldl + findtextrel_LDADD = $(libdw) $(libelf) +--- elfutils/src/readelf.c ++++ elfutils/src/readelf.c +@@ -4368,10 +4368,12 @@ listptr_base (struct listptr *p) + return base; + } + ++static const char *listptr_name; ++ + static int +-compare_listptr (const void *a, const void *b, void *arg) ++compare_listptr (const void *a, const void *b) + { +- const char *name = arg; ++ const char *const name = listptr_name; + struct listptr *p1 = (void *) a; + struct listptr *p2 = (void *) b; + +@@ -4467,8 +4469,11 @@ static void + sort_listptr (struct listptr_table *table, const char *name) + { + if (table->n > 0) +- qsort_r (table->table, table->n, sizeof table->table[0], +- &compare_listptr, (void *) name); ++ { ++ listptr_name = name; ++ qsort (table->table, table->n, sizeof table->table[0], ++ &compare_listptr); ++ } + } + + static bool +@@ -9539,7 +9544,7 @@ dump_archive_index (Elf *elf, const char + if (unlikely (elf_rand (elf, as_off) == 0) + || unlikely ((subelf = elf_begin (-1, ELF_C_READ_MMAP, elf)) + == NULL)) +-#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) ++#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) || __GNUC__ < 4 + while (1) + #endif + error (EXIT_FAILURE, 0, +--- elfutils/src/strings.c ++++ elfutils/src/strings.c +@@ -43,6 +43,10 @@ + + #include + ++#ifndef MAP_POPULATE ++# define MAP_POPULATE 0 ++#endif ++ + + /* Prototypes of local functions. */ + static int read_fd (int fd, const char *fname, off64_t fdlen); +@@ -489,8 +493,13 @@ map_file (int fd, off64_t start_off, off + fd, start_off); + if (mem != MAP_FAILED) + { ++#if !defined POSIX_MADV_SEQUENTIAL && defined MADV_SEQUENTIAL ++# define POSIX_MADV_SEQUENTIAL MADV_SEQUENTIAL ++#endif ++#ifdef POSIX_MADV_SEQUENTIAL + /* We will go through the mapping sequentially. */ + (void) posix_madvise (mem, map_size, POSIX_MADV_SEQUENTIAL); ++#endif + break; + } + if (errno != EINVAL && errno != ENOMEM) +@@ -581,9 +590,11 @@ read_block (int fd, const char *fname, o + elfmap_off = from & ~(ps - 1); + elfmap_base = elfmap = map_file (fd, elfmap_off, fdlen, &elfmap_size); + ++#ifdef POSIX_FADV_SEQUENTIAL + if (unlikely (elfmap == MAP_FAILED)) + /* Let the kernel know we are going to read everything in sequence. */ + (void) posix_fadvise (fd, 0, 0, POSIX_FADV_SEQUENTIAL); ++#endif + } + + if (unlikely (elfmap == MAP_FAILED)) +--- elfutils/src/strip.c ++++ elfutils/src/strip.c +@@ -45,6 +45,12 @@ + #include + #include + ++#ifdef HAVE_FUTIMES ++# define FUTIMES(fd, fname, tvp) futimes (fd, tvp) ++#else ++# define FUTIMES(fd, fname, tvp) utimes (fname, tvp) ++#endif ++ + typedef uint8_t GElf_Byte; + + /* Name and version of program. */ +@@ -318,8 +324,18 @@ process_file (const char *fname) + + /* If we have to preserve the timestamp, we need it in the + format utimes() understands. */ ++#ifdef HAVE_STRUCT_STAT_ST_ATIM + TIMESPEC_TO_TIMEVAL (&tv[0], &pre_st.st_atim); ++#else ++ tv[0].tv_sec = pre_st.st_atime; ++ tv[0].tv_usec = 0; ++#endif ++#ifdef HAVE_STRUCT_STAT_ST_MTIM + TIMESPEC_TO_TIMEVAL (&tv[1], &pre_st.st_mtim); ++#else ++ tv[1].tv_sec = pre_st.st_atime; ++ tv[1].tv_usec = 0; ++#endif + } + + /* Open the file. */ +@@ -2091,7 +2107,7 @@ while computing checksum for debug infor + /* If requested, preserve the timestamp. */ + if (tvp != NULL) + { +- if (futimes (fd, tvp) != 0) ++ if (FUTIMES (fd, output_fname, tvp) != 0) + { + error (0, errno, gettext ("\ + cannot set access and modification date of '%s'"), +@@ -2148,7 +2164,7 @@ handle_ar (int fd, Elf *elf, const char + + if (tvp != NULL) + { +- if (unlikely (futimes (fd, tvp) != 0)) ++ if (unlikely (FUTIMES (fd, fname, tvp) != 0)) + { + error (0, errno, gettext ("\ + cannot set access and modification date of '%s'"), fname); +--- elfutils/tests/backtrace.c ++++ elfutils/tests/backtrace.c +@@ -36,6 +36,7 @@ + #include + #include + #include ++#include + #include ELFUTILS_HEADER(dwfl) + + #ifndef __linux__ +--- elfutils/tests/ChangeLog ++++ elfutils/tests/ChangeLog +@@ -421,6 +421,13 @@ + + 2013-12-02 Jan Kratochvil + ++ Handle T-stopped detach for old kernels. ++ * backtrace.c: Include sys/syscall.h. ++ (linux_proc_pid_is_stopped): New function. ++ (ptrace_detach_stopped): Handle old kernels. ++ ++2013-12-02 Jan Kratochvil ++ + * Makefile.am (check_PROGRAMS): Add backtrace, backtrace-child, + backtrace-data and backtrace-dwarf. + (BUILT_SOURCES, clean-local, backtrace-child-biarch): New. +@@ -1285,6 +1292,8 @@ + + 2008-01-21 Roland McGrath + ++ * line2addr.c (main): Revert last change. ++ + * testfile45.S.bz2: Add tests for cltq, cqto. + * testfile45.expect.bz2: Adjust. + +@@ -1993,6 +2002,11 @@ + * Makefile.am (TESTS): Add run-elflint-test.sh. + (EXTRA_DIST): Add run-elflint-test.sh and testfile18.bz2. + ++2005-05-31 Roland McGrath ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ + 2005-05-24 Ulrich Drepper + + * get-files.c (main): Use correct format specifier. +--- elfutils/tests/line2addr.c ++++ elfutils/tests/line2addr.c +@@ -124,7 +124,7 @@ main (int argc, char *argv[]) + { + struct args a = { .arg = argv[cnt] }; + +- switch (sscanf (a.arg, "%m[^:]:%d", &a.file, &a.line)) ++ switch (sscanf (a.arg, "%a[^:]:%d", &a.file, &a.line)) + { + default: + case 0: +--- elfutils/tests/Makefile.am ++++ elfutils/tests/Makefile.am +@@ -365,6 +365,7 @@ get_lines_LDADD = $(libdw) $(libelf) + get_files_LDADD = $(libdw) $(libelf) + get_aranges_LDADD = $(libdw) $(libelf) + allfcts_LDADD = $(libdw) $(libelf) ++line2addr_no_Wformat = yes + line2addr_LDADD = $(libdw) + addrscopes_LDADD = $(libdw) + funcscopes_LDADD = $(libdw) +--- elfutils/tests/Makefile.in ++++ elfutils/tests/Makefile.in +@@ -80,13 +80,14 @@ host_triplet = @host@ + DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ + $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ + $(top_srcdir)/config/test-driver ChangeLog +-@STANDALONE_FALSE@am__append_1 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ ++@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) ++@STANDALONE_FALSE@am__append_2 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ + @STANDALONE_FALSE@ -I$(top_srcdir)/libdwfl -I$(top_srcdir)/libdwelf \ + @STANDALONE_FALSE@ -I$(top_srcdir)/libebl -I$(top_srcdir)/libelf \ + @STANDALONE_FALSE@ -I$(top_srcdir)/lib -I.. + +-@STANDALONE_FALSE@am__append_2 = -Wl,-rpath-link,../libasm:../libdw:../libelf +-@TESTS_RPATH_TRUE@am__append_3 = -Wl,-rpath,$(BUILD_RPATH) ++@STANDALONE_FALSE@am__append_3 = -Wl,-rpath-link,../libasm:../libdw:../libelf ++@TESTS_RPATH_TRUE@am__append_4 = -Wl,-rpath,$(BUILD_RPATH) + check_PROGRAMS = arextract$(EXEEXT) arsymtest$(EXEEXT) \ + newfile$(EXEEXT) saridx$(EXEEXT) scnnames$(EXEEXT) \ + sectiondump$(EXEEXT) showptable$(EXEEXT) update1$(EXEEXT) \ +@@ -113,7 +114,7 @@ check_PROGRAMS = arextract$(EXEEXT) arsy + deleted$(EXEEXT) deleted-lib.so$(EXEEXT) \ + aggregate_size$(EXEEXT) vdsosyms$(EXEEXT) $(am__EXEEXT_1) \ + $(am__EXEEXT_2) $(am__EXEEXT_4) +-@BIARCH_TRUE@am__append_4 = backtrace-child-biarch ++@BIARCH_TRUE@am__append_5 = backtrace-child-biarch + TESTS = run-arextract.sh run-arsymtest.sh newfile$(EXEEXT) \ + test-nlist$(EXEEXT) update1$(EXEEXT) update2$(EXEEXT) \ + update3$(EXEEXT) update4$(EXEEXT) run-show-die-info.sh \ +@@ -159,14 +160,14 @@ TESTS = run-arextract.sh run-arsymtest.s + run-stack-i-test.sh run-readelf-dwz-multi.sh \ + run-allfcts-multi.sh run-deleted.sh run-linkmap-cut.sh \ + run-aggregate-size.sh vdsosyms$(EXEEXT) run-readelf-A.sh \ +- $(am__EXEEXT_2) $(am__append_7) $(am__append_8) \ ++ $(am__EXEEXT_2) $(am__append_8) $(am__append_9) \ + $(am__EXEEXT_4) +-@STANDALONE_FALSE@am__append_5 = msg_tst md5-sha1-test + @STANDALONE_FALSE@am__append_6 = msg_tst md5-sha1-test +-@LZMA_TRUE@am__append_7 = run-readelf-s.sh run-dwflsyms.sh +-@ZLIB_TRUE@am__append_8 = run-readelf-zdebug.sh +-@HAVE_LIBASM_TRUE@am__append_9 = $(asm_TESTS) ++@STANDALONE_FALSE@am__append_7 = msg_tst md5-sha1-test ++@LZMA_TRUE@am__append_8 = run-readelf-s.sh run-dwflsyms.sh ++@ZLIB_TRUE@am__append_9 = run-readelf-zdebug.sh + @HAVE_LIBASM_TRUE@am__append_10 = $(asm_TESTS) ++@HAVE_LIBASM_TRUE@am__append_11 = $(asm_TESTS) + subdir = tests + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ +@@ -787,6 +788,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ + LDFLAGS = @LDFLAGS@ ++LD_AS_NEEDED = @LD_AS_NEEDED@ + LEX = @LEX@ + LEXLIB = @LEXLIB@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +@@ -818,6 +820,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + XGETTEXT_015 = @XGETTEXT_015@ + XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +@@ -877,12 +880,12 @@ top_build_prefix = @top_build_prefix@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + zip_LIBS = @zip_LIBS@ +-AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_1) +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ +- $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ +- $($(*F)_CFLAGS) +- ++AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_2) ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ ++ $($(*F)_no_Werror),,-Werror) $(if \ ++ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ ++ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ ++ $(am__append_1) + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) + CLEANFILES = *.gcno *.gcda + textrel_msg = echo "WARNING: TEXTREL found in '$@'" +@@ -890,7 +893,7 @@ textrel_msg = echo "WARNING: TEXTREL fou + @FATAL_TEXTREL_TRUE@textrel_found = $(textrel_msg); exit 1 + textrel_check = if $(READELF) -d $@ | fgrep -q TEXTREL; then $(textrel_found); fi + BUILD_RPATH = \$$ORIGIN/../libasm:\$$ORIGIN/../libdw:\$$ORIGIN/../backends:\$$ORIGIN/../libelf +-AM_LDFLAGS = $(am__append_2) $(am__append_3) ++AM_LDFLAGS = $(am__append_3) $(am__append_4) + @TESTS_RPATH_FALSE@tests_rpath = no + @TESTS_RPATH_TRUE@tests_rpath = yes + asm_TESTS = asm-tst1 asm-tst2 asm-tst3 asm-tst4 asm-tst5 \ +@@ -1106,6 +1109,7 @@ get_lines_LDADD = $(libdw) $(libelf) + get_files_LDADD = $(libdw) $(libelf) + get_aranges_LDADD = $(libdw) $(libelf) + allfcts_LDADD = $(libdw) $(libelf) ++line2addr_no_Wformat = yes + line2addr_LDADD = $(libdw) + addrscopes_LDADD = $(libdw) + funcscopes_LDADD = $(libdw) diff --git a/elfutils.spec b/elfutils.spec index 803a824..dc65d51 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,163 +1,142 @@ -# Rebuild --with static to enable static subpackages -# This is *not* supported by elfutils maintainers -%bcond_with static - Name: elfutils -Version: 0.194 -%global baserelease 2 -Release: %{baserelease}%{?dist} -URL: http://elfutils.org/ -%global source_url ftp://sourceware.org/pub/elfutils/%{version}/ -License: GPL-3.0-or-later AND (GPL-2.0-or-later OR LGPL-3.0-or-later) AND GFDL-1.3-no-invariants-or-later -Source: %{?source_url}%{name}-%{version}.tar.bz2 -Source1: elfutils-debuginfod.sysusers -Summary: A collection of utilities and DSOs to handle ELF files and DWARF data +Summary: A collection of utilities and DSOs to handle compiled objects +Version: 0.161 +%global baserelease 6 +URL: https://fedorahosted.org/elfutils/ +%global source_url http://fedorahosted.org/releases/e/l/elfutils/%{version}/ +License: GPLv3+ and (GPLv2+ or LGPLv3+) +Group: Development/Tools + +%if %{?_with_compat:1}%{!?_with_compat:0} +%global compat 1 +%else +%global compat 0 +%endif + +%global portability %{compat} +%global scanf_has_m !%{compat} +%global separate_devel_static 1 +%global use_zlib 0 +%global use_xz 0 + +%if 0%{?rhel} +%global portability (%rhel < 6) +%global scanf_has_m (%rhel >= 6) +%global separate_devel_static (%rhel >= 6) +%global use_zlib (%rhel >= 5) +%global use_xz (%rhel >= 5) +%endif +%if 0%{?fedora} +%global portability (%fedora < 9) +%global scanf_has_m (%fedora >= 8) +%global separate_devel_static (%fedora >= 7) +%global use_zlib (%fedora >= 5) +%global use_xz (%fedora >= 10) +%endif + +%if %{compat} || %{!?rhel:6}%{?rhel} < 6 +%global nocheck true +%else +%global nocheck false +%endif -# Needed for isa specific Provides and Requires. %global depsuffix %{?_isa}%{!?_isa:-%{_arch}} -# eu-stacktrace currently only supports x86_64 -%ifarch x86_64 -%global enable_stacktrace 1 +Source: %{?source_url}%{name}-%{version}.tar.bz2 + +Patch1: %{?source_url}elfutils-portability-%{version}.patch + +Patch2: elfutils-0.161-ar-long-name.patch +# libdw: fix offset for sig8 lookup in dwarf_formref_die +Patch3: elfutils-0.161-formref-type.patch +# rhbz#1189928 - Consider sh_addralign 0 as 1 +Patch4: elfutils-0.161-addralign.patch +Patch5: elfutils-0.161-copyreloc.patch + +%if !%{compat} +Release: %{baserelease}%{?dist} %else -%global enable_stacktrace 0 +Release: 0.%{baserelease} %endif Requires: elfutils-libelf%{depsuffix} = %{version}-%{release} Requires: elfutils-libs%{depsuffix} = %{version}-%{release} -Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release} -BuildRequires: gcc -# For libstdc++ demangle support -BuildRequires: gcc-c++ - -BuildRequires: gettext -BuildRequires: bison -BuildRequires: flex - -# Compression support -BuildRequires: zlib-devel -BuildRequires: bzip2-devel -BuildRequires: xz-devel -BuildRequires: libzstd-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 -# For debugindod metadata query -BuildRequires: pkgconfig(json-c) >= 0.11 - -# For tests need to bunzip2 test files. -BuildRequires: bzip2 -BuildRequires: zstd -# For the run-debuginfod-find.sh test case in %%check for /usr/sbin/ss etc. -BuildRequires: iproute -BuildRequires: procps -BuildRequires: bsdtar -BuildRequires: curl -# For run-debuginfod-response-headers.sh test case -BuildRequires: socat -# For run-debuginfod-find-metadata.sh -BuildRequires: jq - -# For debuginfod rpm IMA verification -BuildRequires: rpm-devel -BuildRequires: ima-evm-utils-devel -BuildRequires: openssl-devel -BuildRequires: rpm-sign - -# For eu-stacktrace -%if %{enable_stacktrace} -BuildRequires: sysprof-capture-devel +%if %{!?rhel:6}%{?rhel} < 6 || %{!?fedora:9}%{?fedora} < 10 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif -BuildRequires: automake -BuildRequires: autoconf -BuildRequires: gettext-devel +BuildRequires: gettext +BuildRequires: bison >= 1.875 +BuildRequires: flex >= 2.5.4a +BuildRequires: bzip2 +%if !%{compat} +BuildRequires: gcc >= 3.4 +# Need that gives unsigned bswap_16 etc. +BuildRequires: glibc-headers >= 2.3.4-11 +%else +BuildRequires: gcc >= 3.2 +%endif + +%if %{use_zlib} +BuildRequires: zlib-devel >= 1.2.2.3 +BuildRequires: bzip2-devel +%endif + +%if %{use_xz} +BuildRequires: xz-devel +%endif %global _gnu %{nil} %global _program_prefix eu- -%global provide_yama_scope 0 - -%if 0%{?fedora} >= 22 || 0%{?rhel} >= 7 -%global provide_yama_scope 1 -%endif - -%global with_sysusers 0 - -%if 0%{?fedora} >= 32 || 0%{?rhel} >= 9 -%global with_sysusers 1 -%endif - -# Patches - -# For s390x... FDO package notes are bogus. -Patch1: elfutils-0.186-fdo-swap.patch - -# Prevent assert failure in readelf for some -ggdb3 binaries. -Patch2: elfutils-0.194-alloc-jobs.patch - -# Fix const warning from newer GCC. -Patch3: elfutils-0.194-fix-const.patch - %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), readelf (to see the raw ELF file -structures), elflint (to check for well-formed ELF files) and -elfcompress (to compress or decompress ELF sections). +structures), and elflint (to check for well-formed ELF files). + %package libs Summary: Libraries to handle compiled objects -License: GPL-2.0-or-later OR LGPL-3.0-or-later +Group: Development/Tools +License: GPLv2+ or LGPLv3+ %if 0%{!?_isa:1} Provides: elfutils-libs%{depsuffix} = %{version}-%{release} %endif Requires: elfutils-libelf%{depsuffix} = %{version}-%{release} -%if %{provide_yama_scope} -Requires: default-yama-scope -%endif -%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20 -Recommends: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release} -%else -Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release} -%endif %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. +and machine-specific ELF handling. 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 +Group: Development/Tools +License: GPLv2+ or LGPLv3+ %if 0%{!?_isa:1} Provides: elfutils-devel%{depsuffix} = %{version}-%{release} %endif Requires: elfutils-libs%{depsuffix} = %{version}-%{release} Requires: elfutils-libelf-devel%{depsuffix} = %{version}-%{release} -%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20 -Recommends: elfutils-debuginfod-client-devel%{depsuffix} = %{version}-%{release} -%else -Requires: elfutils-debuginfod-client-devel%{depsuffix} = %{version}-%{release} +%if !%{separate_devel_static} +Requires: elfutils-devel-static%{depsuffix} = %{version}-%{release} %endif %description devel The elfutils-devel package contains the libraries to create -applications for handling compiled objects. libdw provides access -to the DWARF debugging information. libasm provides a programmable +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. -%if %{with static} %package devel-static Summary: Static archives to handle compiled objects -License: GPL-2.0-or-later OR LGPL-3.0-or-later +Group: Development/Tools +License: GPLv2+ or LGPLv3+ %if 0%{!?_isa:1} Provides: elfutils-devel-static%{depsuffix} = %{version}-%{release} %endif @@ -167,11 +146,11 @@ Requires: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release} %description devel-static The elfutils-devel-static package contains the static archives with the code to handle compiled objects. -%endif %package libelf Summary: Library to read and write ELF files -License: GPL-2.0-or-later OR LGPL-3.0-or-later +Group: Development/Tools +License: GPLv2+ or LGPLv3+ %if 0%{!?_isa:1} Provides: elfutils-libelf%{depsuffix} = %{version}-%{release} %endif @@ -185,11 +164,15 @@ 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 +Group: Development/Tools +License: GPLv2+ or LGPLv3+ %if 0%{!?_isa:1} Provides: elfutils-libelf-devel%{depsuffix} = %{version}-%{release} %endif Requires: elfutils-libelf%{depsuffix} = %{version}-%{release} +%if !%{separate_devel_static} +Requires: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release} +%endif Obsoletes: libelf-devel <= 0.8.2-2 %description libelf-devel @@ -198,120 +181,44 @@ 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. -%if %{with static} %package libelf-devel-static Summary: Static archive of libelf -License: GPL-2.0-or-later OR LGPL-3.0-or-later +Group: Development/Tools +License: GPLv2+ or LGPLv3+ %if 0%{!?_isa:1} Provides: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release} %endif Requires: elfutils-libelf-devel%{depsuffix} = %{version}-%{release} -Requires: libzstd-static%{depsuffix} %description libelf-devel-static The elfutils-libelf-static package contains the static archive for libelf. -%endif - -%if %{provide_yama_scope} -%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 -# For the sysctl_apply macro we need systemd as build requires. -# We also need systemd-sysctl in post to apply the default kernel config. -# But this creates a circular requirement (see below). And it would always -# pull in systemd even in build containers that don't really need it. -# Luckily systemd is normally always installed already. The only times it -# might not is when we do an initial install (and the cyclic dependency -# chain might be broken) or when installing into a container. In the first -# case we'll reboot soon to apply the default kernel config. In the second -# case we really require that the host has the correct kernel config so it -# also is available inside the container. So if we have weak dependencies -# use Recommends (sadly Recommends(post) doesn't exist). This works because -# in all cases that really matter systemd will already be installed. #1599083 -BuildRequires: systemd >= 215 -%if 0%{?fedora} > 24 || 0%{?rhel} > 7 -Recommends: systemd -%else -Requires(post): systemd -%endif - -%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. -%endif - -%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) -%if 0%{!?_isa:1} -Provides: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release} -%endif -# For debuginfod-find binary -Requires: elfutils-libs%{depsuffix} = %{version}-%{release} -Requires: elfutils-libelf%{depsuffix} = %{version}-%{release} - -%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 -%if 0%{!?_isa:1} -Provides: elfutils-debuginfod-client-devel%{depsuffix} = %{version}-%{release} -%endif -Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release} - -%package debuginfod -Summary: HTTP ELF/DWARF file server addressed by build-id -License: GPL-3.0-or-later -Requires: elfutils-libs%{depsuffix} = %{version}-%{release} -Requires: elfutils-libelf%{depsuffix} = %{version}-%{release} -Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release} -BuildRequires: systemd -%if %{with_sysusers} -BuildRequires: systemd-rpm-macros -%endif -BuildRequires: make -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd -%if %{with_sysusers} -%{?sysusers_requires_compat} -%else -Requires(pre): shadow-utils -%endif -# 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 -p1 +%setup -q -autoreconf -f -v -i +: 'compat=%compat' +: 'portability=%portability' +: 'separate_devel_static=%separate_devel_static' +: 'scanf_has_m=%scanf_has_m' + +%if %{portability} +%patch1 -p1 -b .portability +sleep 1 +find . \( -name Makefile.in -o -name aclocal.m4 \) -print | xargs touch +sleep 1 +find . \( -name configure -o -name config.h.in \) -print | xargs touch +%else +%if !%{scanf_has_m} +sed -i.scanf-m -e 's/%m/%a/g' src/addr2line.c tests/line2addr.c +%endif +%endif + +%patch2 -p1 -b .ar_long_name +%patch3 -p1 -b .formref_type +%patch4 -p1 -b .addralign +%patch5 -p1 -b .copyreloc -# In case the above patches added any new test scripts, make sure they -# are executable. find . -name \*.sh ! -perm -0100 -print | xargs chmod +x %build @@ -321,976 +228,124 @@ find . -name \*.sh ! -perm -0100 -print | xargs chmod +x # But add -Wformat explicitly for use with -Werror=format-security which # doesn't work without -Wformat (enabled by -Wall). RPM_OPT_FLAGS="${RPM_OPT_FLAGS/-Wall/}" +%if !%{compat} RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -Wformat" +%endif +%if %{compat} +# Some older glibc headers can run afoul of -Werror all by themselves. +# Disabling the fancy inlines avoids those problems. +RPM_OPT_FLAGS="$RPM_OPT_FLAGS -D__NO_INLINE__" +COMPAT_CONFIG_FLAGS="--disable-werror" +%else +COMPAT_CONFIG_FLAGS="" +%endif trap 'cat config.log' EXIT -# dist_debuginfod_url is defined in macros.dist. Fedora and CentOS have -# URLs pointing to their respective servers. RHEL and Amazon Linux do -# not configure a default server. -%configure CFLAGS="$RPM_OPT_FLAGS" \ -%if "%{?dist_debuginfod_url}" - --enable-debuginfod \ - --enable-debuginfod-urls="%{dist_debuginfod_url}" \ -%endif -%if %{enable_stacktrace} - --enable-stacktrace \ -%endif - --enable-debuginfod-ima-verification \ - --enable-debuginfod-ima-cert-path=%{_sysconfdir}/keys/ima +%configure $COMPAT_CONFIG_FLAGS CFLAGS="$RPM_OPT_FLAGS -fexceptions" trap '' EXIT -%make_build +make -s %{?_smp_mflags} %install -%make_install +rm -rf ${RPM_BUILD_ROOT} +make -s install DESTDIR=${RPM_BUILD_ROOT} chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so* -%if %{without static} -# We don't want the static libraries -rm ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib{elf,dw,asm}.a -%endif +chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/elfutils/lib*.so* + +# XXX Nuke unpackaged files +(cd ${RPM_BUILD_ROOT} + rm -f .%{_bindir}/eu-ld +) %find_lang %{name} -%if %{provide_yama_scope} -install -Dm0644 config/10-default-yama-scope.conf ${RPM_BUILD_ROOT}%{_sysctldir}/10-default-yama-scope.conf -%endif - -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 - -%if %{with_sysusers} -install -Dm0644 %{SOURCE1} %{buildroot}%{_sysusersdir}/elfutils-debuginfod.conf -%endif - %check -# Record some build root versions in build.log -uname -r; rpm -q binutils gcc glibc || true +make -s %{?_smp_mflags} check || (cat tests/test-suite.log; %{nocheck}) -%make_build check || (cat tests/test-suite.log; false) +%clean +rm -rf ${RPM_BUILD_ROOT} -# Only the latest Fedora and EPEL have these scriptlets, -# older Fedora and plain RHEL don't. -%if 0%{?ldconfig_scriptlets:1} -%ldconfig_scriptlets libs -%ldconfig_scriptlets libelf -%ldconfig_scriptlets debuginfod-client -%else %post libs -p /sbin/ldconfig -%postun libs -p /sbin/ldconfig -%post libelf -p /sbin/ldconfig -%postun libelf -p /sbin/ldconfig -%post debuginfod-client -p /sbin/ldconfig -%postun debuginfod-client -p /sbin/ldconfig -%endif -%if %{provide_yama_scope} -%post default-yama-scope -# Due to circular dependencies might not be installed yet, so double check. -# (systemd -> elfutils-libs -> default-yama-scope -> systemd) -if [ -x /usr/lib/systemd/systemd-sysctl ] ; then -%sysctl_apply 10-default-yama-scope.conf -fi -%endif +%postun libs -p /sbin/ldconfig + +%post libelf -p /sbin/ldconfig + +%postun libelf -p /sbin/ldconfig %files -%license COPYING COPYING-GPLV2 COPYING-LGPLV3 doc/COPYING-GFDL +%defattr(-,root,root) +%{!?_licensedir:%global license %%doc} +%license COPYING COPYING-GPLV2 COPYING-LGPLV3 %doc README TODO CONTRIBUTING %{_bindir}/eu-addr2line %{_bindir}/eu-ar -%{_bindir}/eu-elfclassify %{_bindir}/eu-elfcmp -%{_bindir}/eu-elfcompress %{_bindir}/eu-elflint %{_bindir}/eu-findtextrel -%{_bindir}/eu-make-debug-archive %{_bindir}/eu-nm %{_bindir}/eu-objdump %{_bindir}/eu-ranlib %{_bindir}/eu-readelf %{_bindir}/eu-size -%{_bindir}/eu-srcfiles %{_bindir}/eu-stack -%if %{enable_stacktrace} -%{_bindir}/eu-stacktrace -%endif %{_bindir}/eu-strings %{_bindir}/eu-strip +#%%{_bindir}/eu-ld %{_bindir}/eu-unstrip -%{_mandir}/man1/eu-*.1* +%{_bindir}/eu-make-debug-archive %files libs +%defattr(-,root,root) +%{!?_licensedir:%global license %%doc} %license COPYING-GPLV2 COPYING-LGPLV3 %{_libdir}/libasm-%{version}.so -%{_libdir}/libdw-%{version}.so %{_libdir}/libasm.so.* +%{_libdir}/libdw-%{version}.so %{_libdir}/libdw.so.* +%dir %{_libdir}/elfutils +%{_libdir}/elfutils/lib*.so %files devel +%defattr(-,root,root) %{_includedir}/dwarf.h %dir %{_includedir}/elfutils %{_includedir}/elfutils/elf-knowledge.h -%{_includedir}/elfutils/known-dwarf.h %{_includedir}/elfutils/libasm.h +%{_includedir}/elfutils/libebl.h %{_includedir}/elfutils/libdw.h %{_includedir}/elfutils/libdwfl.h %{_includedir}/elfutils/libdwelf.h %{_includedir}/elfutils/version.h -%{_includedir}/elfutils/libdwfl_stacktrace.h +%{_libdir}/libebl.a %{_libdir}/libasm.so %{_libdir}/libdw.so -%{_libdir}/pkgconfig/libdw.pc -%if %{with static} %files devel-static -%{_libdir}/libdw.a +%defattr(-,root,root) %{_libdir}/libasm.a -%endif +%{_libdir}/libdw.a %files -f %{name}.lang libelf +%defattr(-,root,root) +%{!?_licensedir:%global license %%doc} %license COPYING-GPLV2 COPYING-LGPLV3 %{_libdir}/libelf-%{version}.so %{_libdir}/libelf.so.* %files libelf-devel +%defattr(-,root,root) %{_includedir}/libelf.h %{_includedir}/gelf.h %{_includedir}/nlist.h %{_libdir}/libelf.so -%{_libdir}/pkgconfig/libelf.pc -%{_mandir}/man3/elf_*.3* -%{_mandir}/man3/elf32_*.3* -%{_mandir}/man3/elf64_*.3* -%{_mandir}/man3/gelf_*.3* -%{_mandir}/man3/libelf.3* -%if %{with static} %files libelf-devel-static +%defattr(-,root,root) %{_libdir}/libelf.a -%endif - -%if %{provide_yama_scope} -%files default-yama-scope -%{_sysctldir}/10-default-yama-scope.conf -%endif - -%files debuginfod-client -%{_libdir}/libdebuginfod-%{version}.so -%{_libdir}/libdebuginfod.so.* -%{_bindir}/debuginfod-find -%{_mandir}/man1/debuginfod-find.1* -%{_mandir}/man7/debuginfod*.7* -%config(noreplace) %{_sysconfdir}/profile.d/* -%if "%{?dist_debuginfod_url}" -%config(noreplace) %{_sysconfdir}/debuginfod/* -%config(noreplace) %{_datadir}/fish/vendor_conf.d/* -%endif - -%files debuginfod-client-devel -%{_libdir}/pkgconfig/libdebuginfod.pc -%{_mandir}/man3/debuginfod_*.3* -%{_includedir}/elfutils/debuginfod.h -%{_libdir}/libdebuginfod.so - -%files debuginfod -%{_bindir}/debuginfod -%config(noreplace) %{_sysconfdir}/sysconfig/debuginfod -%{_unitdir}/debuginfod.service -%if %{with_sysusers} -%{_sysusersdir}/elfutils-debuginfod.conf -%endif -%{_mandir}/man8/debuginfod*.8* - - -%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod -%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite - -%pre debuginfod -%if %{with_sysusers} -%sysusers_create_compat %{SOURCE1} -%else -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 -%endif - -%post debuginfod -%systemd_post debuginfod.service - -%postun debuginfod -%systemd_postun_with_restart debuginfod.service %changelog -* Tue Dec 09 2025 Aaron Merey - 0.194-2 -- Add elfutils-0.194-fix-const.patch - -* Tue Oct 28 2025 Aaron Merey - 0.194-1 -- Upgrade to upstream elfutils 0.194 -- Add elfutils-0.194-alloc-jobs.patch - -* Wed Jul 23 2025 Fedora Release Engineering - 0.193-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Mon Apr 28 2025 Aaron Merey - 0.193-1 -- Upgrade to upstream elfutils 0.193 -- Drop upstreamed patches - elfutils-0.192-ATOMIC_VAR_INIT.patch - elfutils-0.192-libelf-static.patch - elfutils-0.192-fix-configure-conditional.patch - elfutils-0.192-more-dwarf5-lang.patch - elfutils-0.192-fix-zsh-profile.patch - elfutils-0.192-stacktrace-lto.patch - elfutils-0.192-imasig-fail-free.patch - elfutils-0.192-strip-ignore-non-ET_REL.patch - -* Sun Feb 23 2025 Mark Wielaard - 0.192-9 -- Add elfutils-0.192-imasig-fail-free.patch - -* Thu Jan 16 2025 Fedora Release Engineering - 0.192-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Mon Dec 2 2024 Mark Wielaard - 0.192-7 -- Add elfutils-0.192-ATOMIC_VAR_INIT.patch -- Add elfutils-0.192-more-dwarf5-lang.patch - -* Tue Nov 12 2024 Aaron Merey - 0.192-6 -- Add elfutils-0.192-strip-ignore-non-ET_REL.patch -- Set debuginfod IMA cert path - -* Tue Oct 29 2024 Aaron Merey - 0.192-5 -- Enable debuginfod IMA verification -- Add elfutils-0.192-fix-configure-conditional.patch -- Add elfutils-0.192-fix-zsh-profile.patch - -* Thu Oct 24 2024 Mark Wielaard - 0.192-4 -- Add elfutils-0.192-stacktrace-lto.patch -- Enable eu-stacktrace on x86_64 - -* Tue Oct 22 2024 Aaron Merey - 0.192-3 -- Add elfutils-0.192-libelf-static.patch - -* Mon Oct 21 2024 Aaron Merey - 0.192-2 -- Add BuildRequires for json-c - -* Mon Oct 21 2024 Aaron Merey - 0.192-1 -- Upgrade to upstream elfutils 0.192 -- Drop upstreamed patches - Add elfutils-0.190-profile-empty-urls.patch - Add elfutils-0.190-riscv-flatten.patch - -* Wed Jul 17 2024 Fedora Release Engineering - 0.191-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Mon Apr 22 2024 Aaron Merey - 0.191-7 -- Capitalize SPDX booleans. - -* Fri Apr 19 2024 Mark Wielaard - 0.191-6 -- eu-srcfiles directly links to libdebuginfod.so so explicitly - Require elfutils-debuginfod-client not just Recommends. - -* Wed Mar 27 2024 Mark Wielaard - 0.191-5 -- Add elfutils-0.190-profile-empty-urls.patch - -* Wed Mar 20 2024 Mark Wielaard - 0.191-4 -- Add elfutils-0.190-riscv-flatten.patch - -* Fri Mar 15 2024 Michel Lind - 0.191-3 -- Add feature flag for reenabling elfutils-libelf-devel-static and elfutils-devel-static -- Add dependency on libzstd-static for elfutils-libelf-devel-static - -* Mon Mar 4 2024 Aaron Merey - 0.191-2 -- Update SPDX license. - -* Mon Mar 4 2024 Aaron Merey - 0.191-1 -- Upgrade to upstream elfutils 0.191 -- Drop upstreamed patches - elfutils-0.190-fix-core-noncontig.patch - elfutils-0.190-gcc-14.patch - elfutils-0.190-remove-ET_REL-unstrip-test.patch -- Drop testcore-noncontig.bz2 - -* Wed Jan 24 2024 Fedora Release Engineering - 0.190-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 0.190-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Tue Nov 28 2023 Aaron Merey - 0.190-4 -- Add elfutils-0.190-remove-ET_REL-unstrip-test.patch - -* Fri Nov 24 2023 Aaron Merey - 0.190-3 -- Add elfutils-0.190-fix-core-noncontig.patch - -* Fri Nov 3 2023 Mark Wielaard - 0.190-2 -- Update Fedora license tags to spdx license tags - -* Fri Nov 3 2023 Mark Wielaard - 0.190-1 -- Upgrade to upstream elfutils 0.190 -- Add eu-srcfiles -- Drop upstreamed patches - elfutils-0.189-relr.patch - elfutils-0.189-debuginfod_config_cache-double-close.patch - elfutils-0.189-elf_getdata_rawchunk.patch - elfutils-0.189-elfcompress.patch - elfutils-0.189-c99-compat.patch -- Only package debuginfod-client-config.7 manpage for debuginfod-client - -* Thu Aug 24 2023 Mark Wielaard - 0.189-6 -- Update elfutils-0.189-relr.patch - -* Wed Aug 23 2023 Mark Wielaard - 0.189-5 -- Add elfutils-0.189-relr.patch - -* Wed Jul 19 2023 Fedora Release Engineering - 0.189-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jun 22 2023 Mark Wielaard - 0.189-3 -- Add elfutils-0.189-elf_getdata_rawchunk.patch -- Add elfutils-0.189-debuginfod_config_cache-double-close.patch - -* Sat Apr 22 2023 Mark Wielaard - 0.189-2 -- Add elfutils-0.189-c99-compat.patch -- Add elfutils-0.189-elfcompress.patch - -* Fri Mar 3 2023 Mark Wielaard - 0.189-1 -- Upgrade to upsteam elfutils 0.189. - -* Fri Jan 27 2023 Mark Wielaard - 0.188-5 -- Add elfutils-0.188-deprecated-CURLINFO.patch, - elfutils-0.188-CURL_AT_LEAST_VERSION.patch and - elfutils-0.188-CURLOPT_PROTOCOLS_STR.patch - -* Thu Jan 19 2023 Fedora Release Engineering - 0.188-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Mon Nov 7 2022 Mark Wielaard - 0.188-3 -- Add elfutils-0.188-compile-warnings.patch -- Add elfutils-0.188-debuginfod-client-lifetime.patch - -* Wed Nov 2 2022 Mark Wielaard - 0.188-2 -- Add elfutils-0.188-static-extract_section.patch. - -* Wed Nov 2 2022 Mark Wielaard - 0.188-1 -- Upgrade to upsteam elfutils 0.188. - -* Wed Oct 5 2022 Amit Shah - 0.187-9 -- Auto-configure debuginfod_url based on macros.dist - -* Wed Aug 24 2022 Debarshi Ray - 0.187-8 -- Use %%sysusers_requires_compat to match %%sysusers_create_compat - -* Wed Jul 27 2022 Amit Shah - 0.187-7 -- Allow building without default debuginfod URL - -* Thu Jul 21 2022 Fedora Release Engineering - 0.187-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Tue Jun 14 2022 Mark Wielaard - 0.187-5 -- Add sysuser support for creating the debuginfod user - -* Fri May 6 2022 Mark Wielaard - 0.187-4 -- Add elfutils-0.187-mhd_no_dual_stack.patch -- Add elfutils-0.187-mhd_epoll.patch - -* Thu May 5 2022 Mark Wielaard - 0.187-3 -- Add elfutils-0.187-debuginfod-client-fd-leak.patch - -* Tue May 3 2022 Mark Wielaard - 0.187-2 -- Add elfutils-0.187-csh-profile.patch - -* Tue Apr 26 2022 Mark Wielaard - 0.187-1 -- Upgrade to elfutils 0.187 - - debuginfod: Support -C option for connection thread pooling. - - debuginfod-client: Negative cache file are now zero sized instead - of no-permission files. - - addr2line: The -A, --absolute option, which shows file names - includingthe full compilation directory is now the - default. To get theold behavior use the new option --relative. - - readelf, elflint: Recognize FDO Packaging Metadata ELF notes - - libdw, debuginfo-client: Load libcurl lazily only when files need - to be fetched remotely. libcurl is now never loaded when - DEBUGINFOD_URLS is unset. And whenDEBUGINFOD_URLS is set, - libcurl is only loaded when the debuginfod_begin function is - called. - -* Tue Apr 12 2022 Mark Wielaard - 0.186-5 -- Add an explicit versioned requires from elfutils-debuginfod-client - on elfutils-libelf. - -* Thu Apr 7 2022 Mark Wielaard - 0.186-4 -- Add an explicit versioned requires from elfutils-debuginfod-client - on elfutils-libs. - -* Fri Mar 25 2022 Mark Wielaard - 0.186-3 -- Add elfutils-0.186-elf-glibc.patch -- Add elfutils-0.186-fdo-ebl.patch -- Add elfutils-0.186-fdo-efllint.patch -- Add elfutils-0.186-fdo-swap.patch -- Add elfutils-0.186-ppc64le-error-return-workaround.patch - -* Thu Jan 20 2022 Fedora Release Engineering - 0.186-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Nov 10 2021 Mark Wielaard - 0.186-1 -- Upgrade to upstream 0.186 - - debuginfod-client: Default $DEBUGINFOD_URLS is computed from - drop-in files /etc/debuginfod/*.urls rather than - hardcoded into the /etc/profile.d/debuginfod* - scripts. - Add $DEBUGINFOD_MAXSIZE and $DEBUGINFOD_MAXTIME settings - for skipping large/slow transfers. - Add $DEBUGINFOD_RETRY for retrying aborted lookups. - - debuginfod: Supply extra HTTP response headers, describing - archive/file names that satisfy the requested buildid content. - Support -d :memory: option for in-memory databases. - Protect against loops in federated server configurations. - Add -r option to use -I/-X regexes for grooming stale files. - Protect against wasted CPU from duplicate concurrent requests. - Limit the duration of groom ops roughly to rescan (-t) times. - Add --passive mode for serving from read-only database. - Several other performance improvements & prometheus metrics. - - libdw: Support for the NVIDIA Cuda line map extensions. - DW_LNE_NVIDIA_inlined_call and DW_LNE_NVIDIA_set_function_name - are defined in dwarf.h. New functions dwarf_linecontext and - dwarf_linefunctionname. - - translations: Update Japanese translation. - -* Thu Aug 5 2021 Mark Wielaard - 0.185-5 -- Use autosetup -- Add elfutils-0.185-raise-pthread_kill-backtrace.patch - -* Wed Jul 21 2021 Fedora Release Engineering - 0.185-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Thu Jul 15 2021 Mark Wielaard - 0.185-3 -- Update version to 0.185-3 for rawhide/f35 upgrade from f34 - This build enables debuginfod client by default -- Workaround bad test in make check - -* Wed May 26 2021 Mark Wielaard - 0.185-1 -- Upgrade to upstream 0.185 - - debuginfod-client: Simplify curl handle reuse so downloads which - return an error are retried. - - elfcompress: Always exit with code 0 when the operation succeeds - (even when nothing was done). On error the exit code - is now always 1. - -* Sun May 16 2021 Frank Ch. Eigler - 0.184-5 -- Fix 404-latch problem on reused debuginfod_client. (PR27859) - -* Wed May 12 2021 Frank Ch. Eigler - 0.184-4 -- Ship new profile.d files. (1956952) - -* Wed May 12 2021 Frank Ch. Eigler - 0.184-3 -- Don't nuke the new profile.d files. (1956952) - -* Tue May 11 2021 Frank Ch. Eigler - 0.184-2 -- Activate debuginfod client by default (1956952) to the fedora server. - -* Mon May 10 2021 Mark Wielaard - 0.184-1 -- Upgrade to upstream 0.184 - - debuginfod: Use libarchive's bsdtar as the .deb-family file unpacker. - - debuginfod-client: Client caches negative results. If a query for a - file failed with 404, an empty 000 permission - file is created in the cache. This will prevent - requesting the same file for the next 10 minutes. - Client objects now carry long-lived curl handles - for outgoing connections. This makes it more - efficient for multiple sequential queries, because - the TCP connections and/or TLS state info are kept - around awhile, avoiding O(100ms) setup latencies. - - libdw: handle DW_FORM_indirect when reading attributes - - translations: Update Polish translation. - -* Mon Apr 19 2021 Mark Wielaard - 0.183-3 -- Introduce CI gating setup - -* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 0.183-2 -- Rebuilt for updated systemd-rpm-macros - See https://pagure.io/fesco/issue/2583. - -* Mon Feb 8 2021 Mark Wielaard - 0.183-1 -- Upgrade to upstream 0.183 - - debuginfod: New thread-busy metric and more detailed error metrics. - New --fdcache-mintmp and tracking of filesystem freespace. - - debuginfod-client: DEBUGINFOD_SONAME macro added to debuginfod.h can - be used to dlopen the libdebuginfod.so library. - New function debuginfod_set_verbose_fd and DEBUGINFOD_VERBOSE - environment variable. - - config: profile.sh and profile.csh won't export DEBUGINFOD_URLS - unless configured --enable-debuginfod-urls[=URLS] - - elflint, readelf: Recognize SHF_GNU_RETAIN. - Handle SHT_X86_64_UNWIND as valid relocation target type. - -* Tue Jan 26 2021 Fedora Release Engineering - 0.182-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Thu Dec 17 2020 Mark Wielaard - 0.182-2 -- Add elfutils-0.182-s390-pid_memory_read.patch - -* Sat Oct 31 2020 Mark Wielaard - 0.182-1 -- Upgrade to upstream 0.182 - - backends: Support for tilegx has been removed. - - config: New /etc/profile.d files to provide default $DEBUGINFOD_URLS. - - debuginfod: More efficient package traversal, tolerate various - errors during scanning, grooming progress is more visible and - interruptible, more prometheus metrics. - - debuginfod-client: Now supports compressed (kernel) ELF images. - - libdwfl: Add ZSTD compression support. - -* Mon Oct 19 2020 Mark Wielaard - 0.181-3 -- Add elfutils-0.181-array-param.patch. - -* Fri Sep 18 2020 Mark Wielaard - 0.181-2 -- Add ZSTD support elfutils-0.181-zstd.patch. - -* Tue Sep 8 2020 Mark Wielaard - 0.181-1 -- Upgrade to upstream 0.181 - - libelf: elf_update now compensates (fixes up) a bad sh_addralign - for SHF_COMPRESSED sections. - - libdebuginfod: configure now takes --enable-libdebuginfod=dummy or - --disable-libdebuginfod for bootstrapping. - DEBUGINFOD_URLS now accepts "scheme-free" urls - (guessing at what the user meant, either http:// or file://) - - readelf, elflint: Handle aarch64 bti, pac bits in dynamic table and - gnu property notes. - - libdw, readelf: Recognize DW_CFA_AARCH64_negate_ra_state. Allows - unwinding on arm64 for code that is compiled for PAC - (Pointer Authentication Code) as long as it isn't enabled. - -* Tue Aug 25 2020 Mark Wielaard - 0.180-7 -- Add elfutils-0.180-shf-compressed.patch - -* Mon Jul 27 2020 Fedora Release Engineering - 0.180-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 22 2020 Mark Wielaard - 0.180-5 -- Remove elfutils-libelf-devel-static and elfutils-devel-static subpackages. -- Remove duplicate listing of sysconfig/debuginfod (config) file. - -* Mon Jul 13 2020 Tom Stellard - 0.180-4 -- Use make macros -- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro - -* Fri Jul 3 2020 Mark Wielaard - 0.180-3 -- Add elfutils-0.180-mhd-result.patch - -* Wed Jul 1 2020 Jeff Law - 0.180-2 -- Disable LTO - -* Thu Jun 11 2020 Mark Wielaard - 0.180-1 -- New upstream release. - elflint: Allow SHF_EXCLUDE as generic section flag when --gnu is given. - libdw, readelf: Handle GCC LTO .gnu.debuglto_ prefix. - libdw: Use correct CU to resolve file names in dwarf_decl_file. - libdwfl: Handle debugaltlink in dwfl_standard_find_debuginfo. - size: Also obey radix printing for bsd format. - nm: Explicitly print weak 'V' or 'T' and common 'C' symbols. - -* Thu Apr 30 2020 Mark Wielaard - 0.179-2 -- Add elfutils-0.179-debug-client-alt-link.patch - -* Mon Mar 30 2020 Mark Wielaard - 0.179-1 -- New upstream release. - debuginfod-client: - - When DEBUGINFOD_PROGRESS is set and the program doesn't - install its own debuginfod_progressfn_t show download - progress on stderr. - - DEBUGINFOD_TIMEOUT is now defined as seconds to get at - least 100K, defaults to 90 seconds. - - Default to $XDG_CACHE_HOME/debuginfod_client. - - New functions debuginfod_set_user_data, - debuginfod_get_user_data, debuginfod_get_url and - debuginfod_add_http_header. - - Support for file:// URLs. - - debuginfod: - - Performance improvements through highly parallelized scanning - and archive content caching. - - Uses libarchive directly for reading rpm archives. - - Support for indexing .deb/.ddeb archives through dpkg-deb - or bsdtar. - - Generic archive support through -Z EXT[=CMD]. Which can be - used for example for arch-linux pacman files by using - -Z '.tar.zst=zstdcat'. - - Better logging using User-Agent and X-Forwarded-For headers. - - More prometheus metrics. - - Support for eliding dots or extraneous slashes in path names. - - debuginfod-find: - - Accept /path/names in place of buildid hex. - - libelf: - - Handle PN_XNUM in elf_getphdrnum before shdr 0 is cached - - Ensure zlib resource cleanup on failure. - - libdwfl: - - dwfl_linux_kernel_find_elf and dwfl_linux_kernel_report_offline - now find and handle a compressed vmlinuz image. - - readelf, elflint: - - Handle PT_GNU_PROPERTY. - - translations: - - Updated Ukrainian translation. - -* Tue Jan 28 2020 Fedora Release Engineering - 0.178-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Jan 24 2020 Mark Wielaard - 0.178-8 -- Add elfutils-0.178-gcc10-null-dereference.patch - -* Fri Jan 10 2020 Mark Wielaard - 0.178-7 -- Add elfutils-0.178-debuginfod-timeoutprogress.patch -- Add elfutils-0.178-libasm-ebl.patch - -* Wed Dec 11 2019 Mark Wielaard - 0.178-6 -- Add elfutils-0.178-curl-code-gcc-10.patch -- Add elfutils-0.178-compressed-vmlinuz.patch - -* Mon Dec 9 2019 Mark Wielaard - 0.178-5 -- Add elfutils-0.178-debuginfod-no-cache.patch. - -* Thu Nov 28 2019 Mark Wielaard - 0.178-4 -- Define %%{depsuffix} before use. - -* Thu Nov 28 2019 Mark Wielaard - 0.178-3 -- Add elfutils-debuginfod-client Provides and Requires with depsuffix - to get multilib dependencies correct. Add %%{version}-%%{release} to - keep subpackages in sync. - -* Wed Nov 27 2019 Mark Wielaard - 0.178-2 -- Fix libdebuginfod file list for debuginfo-client[-devel]. - -* Tue Nov 26 2019 Mark Wielaard - 0.178-1 -- New upstream release. - - debuginfod: New server, client tool and library to index and fetch - ELF/DWARF files addressed by build-id through HTTP. - - doc: There are now some manual pages for functions and tools. - - backends: The libebl libraries are no longer dynamically loaded - through dlopen, but are now compiled into libdw.so directly. - - readelf: -n, --notes now takes an optional "SECTION" argument. - -p and -x now also handle section numbers. - New option --dyn-sym to show just the dynamic symbol table. - - libcpu: Add RISC-V disassembler. - - libdw: Abbrevs and DIEs can now be read concurrently by multiple - threads through the same Dwarf handle. - - libdwfl: Will try to use debuginfod when installed as fallback to - retrieve ELF and DWARF debug data files by build-id. - -* Wed Aug 14 2019 Mark Wielaard - 0.177-1 -- New upstream release. - - 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. - -* Wed Jul 24 2019 Fedora Release Engineering - 0.176-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Fri Jul 5 2019 Mark Wielaard - 0.176-4 -- Add elfutils-0.176-strip-symbols-illformed.patch - -* Mon Jun 3 2019 Mark Wielaard - 0.176-3 -- Add elfutils-0.176-elf-update.patch - -* Tue Apr 30 2019 Mark Wielaard - 0.176-2 -- Update elfutils-0.176-gcc-pr88835.patch. -- Add elfutils-0.176-pt-gnu-prop.patch -- Add elfutils-0.176-xlate-note.patch - -* Fri Feb 15 2019 Mark Wielaard - 0.176-1 -- New upstream release. - - 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. - -* Thu Jan 31 2019 Fedora Release Engineering - 0.175-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Mon Dec 3 2018 Mark Wielaard - 0.175-2 -- Add elfutils-0.175-gnu-props-32.patch. - -* Fri Nov 16 2018 Mark Wielaard - 0.175-1 -- New upstream release. - - readelf: Handle multiple .debug_macro sections. - - strip: 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. -- Remove all patches. - -* Wed Nov 14 2018 Mark Wielaard - 0.174-5 -- Add elfutils-0.174-x86_64_unwind.patch. -- Add elfutils-0.174-gnu-property-note.patch. -- Add elfutils-0.174-version-note.patch. -- Add elfutils-0.174-gnu-attribute-note.patch - -* Tue Nov 6 2018 Mark Wielaard - 0.174-4 -- Add elfutils-0.174-size-rec-ar.patch - CVE-2018-18520 (#1646478) -- Add elfutils-0.174-ar-sh_entsize-zero.patch - CVE-2018-18521 (#1646483) - -* Fri Nov 2 2018 Mark Wielaard - 0.174-3 -- Add elfutils-0.174-libdwfl-sanity-check-core-reads.patch - CVE-2018-18310 (#1642605) - -* Wed Oct 17 2018 Mark Wielaard - 0.174-2 -- Add elfutils-0.174-strip-unstrip-group.patch. - -* Fri Sep 14 2018 Mark Wielaard - 0.174-1 -- New upstream release - - libelf, libdw and all tools now handle extended shnum and shstrndx - correctly (#1608390). - - 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 - (#1623753, #1625051, #1625056). - -* Tue Jul 31 2018 Florian Weimer - 0.173-8 -- Rebuild with fixed binutils - -* Sun Jul 29 2018 Mark Wielaard - 0.173-7 -- Add elfutils-0.173-strip-alloc-nonalloc.patch (#1609577) - -* Tue Jul 24 2018 Mark Wielaard -- Drop libstdc++-devel BuildRequires. gcc-c++ will pull it in. - -* Tue Jul 24 2018 Mark Wielaard - 0.173-6 -- Update elfutils-0.173-annobingroup.patch. - -* Sat Jul 21 2018 Mark Wielaard - 0.173-5 -- Add BuildRequires gcc-c++ for demangle support. -- Add elfutils-0.173-annobingroup.patch. - -* Sat Jul 21 2018 Mark Wielaard - 0.173-4 -- Add elfutils-0.173-elfcompress.patch (#1607044) - -* Thu Jul 12 2018 Fedora Release Engineering - 0.173-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Mon Jul 9 2018 Mark Wielaard - 0.173-2 -- Update elfutils-0.173-new-notes-hack.patch for new annobin note. -- Unbreak cyclic systemd dependency for buildroot container (#1599083) - -* Fri Jun 29 2018 Mark Wielaard - 0.173-1 -- New upstream release - - 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. - -* Wed Jun 20 2018 Mark Wielaard - 0.172-2 -- Add elfutils-0.172-robustify.patch. - -* Mon Jun 11 2018 Mark Wielaard - 0.172-1 -- New upstream release. - - 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 - 0.171-1 -- New upstream release. - - 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 Apr 11 2018 Mark Wielaard - 0.170-11 -- Add explict libstdc++-devel BuildRequires for demangle support. -- Add elfutils-0.170-unwind.patch. (#1555726) - -* Thu Mar 01 2018 Mark Wielaard - 0.170-10 -- Add elfutils-0.170-GNU_variable_value.patch -- Add elfutils-0.170-locviews.patch - -* Fri Feb 16 2018 Mark Wielaard - 0.170-9 -- Add elfutils-0.170-core-pid.patch -- Add elfutils-0.170-elf_sync.patch -- Add elfutils-0.170-new-notes-hack.patch - -* Thu Feb 15 2018 Mark Wielaard - 0.170-8 -- Add elfutils-0.170-sys-ptrace.patch -- Make sure spec can be build even when ldconfig_scriplets aren't defined. -- Add elfutils-0.170-m68k-packed-not-aligned.patch - -* Fri Feb 09 2018 Igor Gnatenko - 0.170-7 -- Escape macros in %%changelog - -* Wed Feb 07 2018 Fedora Release Engineering - 0.170-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sat Feb 03 2018 Igor Gnatenko - 0.170-5 -- Switch to %%ldconfig_scriptlets - -* Wed Dec 20 2017 Mark Wielaard - 0.170-4 -- Add elfutils-0.170-dwarf_aggregate_size.patch. - -* Wed Nov 8 2017 Mark Wielaard - 0.170-3 -- Rely on (and check) systemd_requires for sysctl_apply default-yama-scope. - -* Thu Nov 2 2017 Mark Wielaard - 0.170-2 -- Config files under /usr/lib/sysctl.d (_sysctldir) aren't %%config (#1506660) - Admin can place the real config file under /etc/sysctl.d as override. - -* Thu Aug 3 2017 Mark Wielaard - 0.170-1 -- New upstream release. Remove upstreamed patches. -- provide_yama_scope for either fedora >= 22 and rhel >= 7. - -* Wed Aug 02 2017 Fedora Release Engineering - 0.169-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 0.169-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Jul 21 2017 Mark Wielaard - 0.169-6 -- Add elfutils-0.169-strip-data-marker-symbols.patch. - -* Mon Jul 17 2017 Mark Wielaard - 0.169-5 -- Fix build on s390 (ptrace.h). Add elfutils-0.169-s390x-ptrace.patch. - -* Mon Jul 17 2017 Mark Wielaard - 0.169-4 -- Add elfutils-0.169-strip-keep-remove-section.patch (#1465997) - -* Wed Jun 7 2017 Mark Wielaard - 0.169-3 -- Add elfutils-0.169-dup-shstrtab.patch -- Add elfutils-0.169-strip-empty.patch - -* Tue May 30 2017 Mark Wielaard - 0.169-2 -- Add ppc64 fallback unwinder. - -* Fri May 5 2017 Mark Wielaard - 0.169-1 -- New upstream release. Removed upstreamed patches. - -* Wed Feb 15 2017 Mark Wielaard - 0.168-5 -- Add patches for new gcc warnings and new binutils ppc64 attributes. - - elfutils-0.168-libasm-truncation.patch - - elfutils-0.168-ppc64-attrs.patch - -* Fri Feb 10 2017 Fedora Release Engineering - 0.168-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Mon Jan 16 2017 Mark Wielaard - 0.168-3 -- Never use old, deprecated, filter_provides_in, it really is too broken. - -* Fri Jan 13 2017 Mark Wielaard - 0.168-2 -- Filter out private libebl backends from provides. - -* Wed Dec 28 2016 Mark Wielaard - 0.168-1 -- New upstream release from new home https://sourceware.org/elfutils/ -- Resolves: - - #1396092 Please implement eu-readelf --symbols[=SECTION] - - #1388057 memory allocation failure in allocate_elf - - #1387584 memory allocation failure in __libelf_set_rawdata_wrlock - -* Fri Oct 7 2016 Mark Wielaard - 0.167-2 -- Add elfutils-0.167-strip-alloc-symbol.patch (#1380961) - -* Fri Aug 26 2016 Mark Wielaard - 0.167-1 -- Upgrade to elfutils-0.167 - Drop upstream elfutils-0.166-elfcmp-comp-gcc6.patch - Fixes: #1365812, #1352232. - -* Thu Apr 14 2016 Mark Wielaard - 0.166-2 -- Add elfutils-0.166-elfcmp-comp-gcc6.patch - -* Thu Mar 31 2016 Mark Wielaard - 0.166-1 -- Upgrade to elfutils-0.166 - Drop upstreamed patches: - - elfutils-0.165-nobitsalign-strip.patch. - - elfutils-0.165-reloc.patch. - - elfutils-0.165-elf-libelf.patch. - -* Thu Feb 04 2016 Mark Wielaard - 0.165-5 -- Add elfutils-0.165-nobitsalign-strip.patch. - -* Wed Feb 03 2016 Fedora Release Engineering - 0.165-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Thu Jan 28 2016 Mark Wielaard - 0.165-3 -- Add elfutils-0.165-reloc.patch. - -* Thu Jan 14 2016 Mark Wielaard - 0.165-2 -- Add elfutils-0.165-elf-libelf.patch. - -* Mon Jan 11 2016 Mark Wielaard - 0.165-1 -- Update to elfutils-0.165 (#1294079, #1236699, #807053) - - Add eu-elfcompress - - Add pkg-config files for libelf and libdw. - -* Fri Oct 16 2015 Mark Wielaard - 0.164-1 -- Update to elfutils-0.164 -- Drop old compat stuff - -* Mon Sep 07 2015 Mark Wielaard - 0.163-4 -- Add elfutils-0.163-readelf-n-undefined-shift.patch (#1259259) - -* Tue Aug 04 2015 Mark Wielaard - 0.163-3 -- Add elfutils-0.163-default-yama-conf.patch (#1250079) - Provides: default-yama-scope - -* Mon Aug 03 2015 Mark Wielaard - 0.163-2 -- Add elfutils-0.163-unstrip-shf_info_link.patch - -* Fri Jun 19 2015 Mark Wielaard - 0.163-1 -- Update to 0.163 - - Drop elfutils-0.162-ftruncate-allocate.patch - -* Tue Jun 16 2015 Mark Wielaard - 0.162-2 -- Add elfutils-0.162-ftruncate-allocate.patch (#1232206) - -* Thu Jun 11 2015 Mark Wielaard - 0.162-1 -- Update to 0.162 (#1170810, #1139815, #1129756, #1020842) -- Include elfutils/known-dwarf.h -- Drop BuildRequires glibc-headers (#1230468) -- Removed integrated upstream patches: - - elfutils-0.161-aarch64relro.patch - - elfutils-0.161-copyreloc.patch - - elfutils-0.161-addralign.patch - - elfutils-0.161-ar-long-name.patch - - elfutils-0.161-formref-type.patch - -* Sat May 02 2015 Kalev Lember - 0.161-8 -- Rebuilt for GCC 5 C++11 ABI change - -* Mon Mar 23 2015 Mark Wielaard - 0.161-7 -- Add elfutils-0.161-aarch64relro.patch (#1201778) - * Mon Mar 09 2015 Mark Wielaard - 0.161-6 - Add elfutils-0.161-copyreloc.patch. @@ -1425,7 +480,7 @@ exit 0 * Mon Aug 27 2012 Mark Wielaard - 0.155-1 - Update to 0.155. - - #844270 - eu-nm invalid %%N$ use detected. + - #844270 - eu-nm invalid %N$ use detected. - #847454 - Ukrainian translation update. - Removed local ar 64-bit symbol patch, dwz support patch and xlatetom fix. diff --git a/gating.yaml b/gating.yaml deleted file mode 100644 index f2f9f20..0000000 --- a/gating.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- !Policy -product_versions: - - fedora-* -decision_context: bodhi_update_push_stable -subject_type: koji_build -rules: - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} ---- !Policy -product_versions: - - rhel-9 -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} diff --git a/plans/ci.fmf b/plans/ci.fmf deleted file mode 100644 index 85710d6..0000000 --- a/plans/ci.fmf +++ /dev/null @@ -1,6 +0,0 @@ -summary: CI Gating Plan -discover: - how: fmf - directory: tests -execute: - how: tmt diff --git a/sources b/sources index bd25645..d5e1096 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (elfutils-0.194.tar.bz2) = 5d00502f61b92643bf61dc61da4ddded36c423466388d992bcd388c5208761b8ed9db1a01492c085cd0984eef30c08f895a8e307e78e0df8df40b56ae35b78a5 +e1b9847c9a6a1ad340de8d47a863ec52 elfutils-0.161.tar.bz2 diff --git a/tests/Regression/GNU-Attribute-notes-not-recognized/Makefile b/tests/Regression/GNU-Attribute-notes-not-recognized/Makefile deleted file mode 100644 index 332e11f..0000000 --- a/tests/Regression/GNU-Attribute-notes-not-recognized/Makefile +++ /dev/null @@ -1,65 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized -# Description: GNU-Attribute-notes-not-recognized -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/GNU-Attribute-notes-not-recognized -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: GNU-Attribute-notes-not-recognized" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Requires: bash bash-debuginfo" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1650125" >> $(METADATA) - @echo "Releases: -RHEL4 -RHEL6 -RHEL7 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/GNU-Attribute-notes-not-recognized/PURPOSE b/tests/Regression/GNU-Attribute-notes-not-recognized/PURPOSE deleted file mode 100644 index 8f81c9c..0000000 --- a/tests/Regression/GNU-Attribute-notes-not-recognized/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized -Description: GNU-Attribute-notes-not-recognized -Author: Martin Cermak -Bug summary: elfutils doesn't recognize GNU Attribute notes -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1650125 diff --git a/tests/Regression/GNU-Attribute-notes-not-recognized/main.fmf b/tests/Regression/GNU-Attribute-notes-not-recognized/main.fmf deleted file mode 100644 index eb1809c..0000000 --- a/tests/Regression/GNU-Attribute-notes-not-recognized/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: GNU-Attribute-notes-not-recognized -description: | - Bug summary: elfutils doesn't recognize GNU Attribute notes - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1650125 -contact: Martin Cermak -component: - - elfutils -test: ./runtest.sh -framework: beakerlib -recommend: - - elfutils - - bash - - bash-debuginfo -duration: 48h -extra-summary: /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized -extra-task: /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized diff --git a/tests/Regression/GNU-Attribute-notes-not-recognized/runtest.sh b/tests/Regression/GNU-Attribute-notes-not-recognized/runtest.sh deleted file mode 100755 index aaa6c89..0000000 --- a/tests/Regression/GNU-Attribute-notes-not-recognized/runtest.sh +++ /dev/null @@ -1,66 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized -# Description: GNU-Attribute-notes-not-recognized -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # Rely on that /bin/bash is annobin-annotated per - # - https://fedoraproject.org/wiki/Toolchain/Watermark - # - https://fedoraproject.org/wiki/Changes/Annobin - # Seems to work fine with bash-4.4.19-6.el8 and elfutils-0.174-5.el8. - f="/bin/bash" - - # Annobin notes originally used to reside in the binary itself. - # Later on they moved to debuginfo. - # Let's see if we can chase down needed debuginfo somewhere... - - # Attempt getting the needed file using debuginfod - export DEBUGINFOD_URLS=https://debuginfod.fedoraproject.org/ - rlRun "f=\"$f $(debuginfod-find debuginfo /bin/bash)\"" - - # Attempt getting the needed file by traditional means - rlRun "debuginfo-install -y bash" - rlRun "buildid=$(eu-readelf -n /bin/bash | awk '/Build ID:/ {print $NF}')" - for i in $(rpm -ql bash-debuginfo); do - test -f $i || continue - if eu-readelf -n $i | fgrep $buildid; then - rlRun "f=\"$f $i\"" - fi - done - - set -o pipefail - export f - # Check if eu-readelf can read the notes from at least one of files - # that can possibly contain it... - rlRun "(for i in $f; do eu-readelf -n $i; done ) | grep -2 '^ GA' | fgrep 'GNU Build Attribute' | tail -50" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/RFE-support-reading-compressed-ELF-objects/Makefile b/tests/Regression/RFE-support-reading-compressed-ELF-objects/Makefile deleted file mode 100644 index 13ee890..0000000 --- a/tests/Regression/RFE-support-reading-compressed-ELF-objects/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects -# Description: Test for BZ#1674430 (RFE support reading compressed ELF objects) -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#1674430 (RFE support reading compressed ELF objects)" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1674430" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/RFE-support-reading-compressed-ELF-objects/PURPOSE b/tests/Regression/RFE-support-reading-compressed-ELF-objects/PURPOSE deleted file mode 100644 index 5d1cbba..0000000 --- a/tests/Regression/RFE-support-reading-compressed-ELF-objects/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects -Description: Test for BZ#1674430 (RFE support reading compressed ELF objects) -Author: Martin Cermak -Bug summary: RFE: support reading compressed ELF objects -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1674430 diff --git a/tests/Regression/RFE-support-reading-compressed-ELF-objects/main.fmf b/tests/Regression/RFE-support-reading-compressed-ELF-objects/main.fmf deleted file mode 100644 index 3053404..0000000 --- a/tests/Regression/RFE-support-reading-compressed-ELF-objects/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: Test for BZ#1674430 (RFE support reading compressed ELF objects) -description: | - Bug summary: RFE: support reading compressed ELF objects - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1674430 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects -extra-task: /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects diff --git a/tests/Regression/RFE-support-reading-compressed-ELF-objects/runtest.sh b/tests/Regression/RFE-support-reading-compressed-ELF-objects/runtest.sh deleted file mode 100755 index c39793d..0000000 --- a/tests/Regression/RFE-support-reading-compressed-ELF-objects/runtest.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects -# Description: Test for BZ#1674430 (RFE support reading compressed ELF objects) -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" -KOXZS_TO_TEST=20 - -rlJournalStart - rlPhaseStartTest - # Look to see that dwelf_elf_begin is now in libdw.so - rlRun "eu-nm -D $(ldd $(which eu-readelf) | awk '/libdw.so/ {print $3}') | fgrep 'dwelf_elf_begin'" - # Also eu-readelf now takes advantage of dwelf_elf_begin() to directly read compressed ELF files. - for koxz in $(find /usr/lib/modules/ | fgrep '.ko.xz' | shuf -n $KOXZS_TO_TEST); do - rlRun "eu-readelf -n $koxz" - done - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/Makefile b/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/Makefile deleted file mode 100644 index 3923e29..0000000 --- a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized -# Description: SHT_X86_64_UNWIND-section-not-recognized -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE m.o - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: SHT_X86_64_UNWIND-section-not-recognized" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1650114" >> $(METADATA) - @echo "Releases: -RHEL4 -RHEL6 -RHEL7 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/PURPOSE b/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/PURPOSE deleted file mode 100644 index a725362..0000000 --- a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized -Description: SHT_X86_64_UNWIND-section-not-recognized -Author: Martin Cermak -Bug summary: elfutils doesn't recognize gold linker SHT_X86_64_UNWIND section -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1650114 diff --git a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/m.o b/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/m.o deleted file mode 100644 index cd5b639..0000000 Binary files a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/m.o and /dev/null differ diff --git a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/main.fmf b/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/main.fmf deleted file mode 100644 index 669db9f..0000000 --- a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: SHT_X86_64_UNWIND-section-not-recognized -description: | - Bug summary: elfutils doesn't recognize gold linker SHT_X86_64_UNWIND section - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1650114 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized -extra-task: /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized diff --git a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/runtest.sh b/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/runtest.sh deleted file mode 100755 index cd5a8d6..0000000 --- a/tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/runtest.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized -# Description: SHT_X86_64_UNWIND-section-not-recognized -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - set -o pipefail - rlRun "eu-readelf -S m.o | fgrep .eh_frame | fgrep X86_64_UNWIND" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/Makefile b/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/Makefile deleted file mode 100644 index d8c5c79..0000000 --- a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/Makefile +++ /dev/null @@ -1,63 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn -# Description: abrt-faf-elfutils-IO-default-xsputn -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2015 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE eu-readelf-n-crash.core.xz - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: abrt-faf-elfutils-IO-default-xsputn" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 5m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils xz" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1262839" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/PURPOSE b/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/PURPOSE deleted file mode 100644 index 33a3c69..0000000 --- a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn -Description: abrt-faf-elfutils-IO-default-xsputn -Author: Martin Cermak -Bug summary: [abrt] [faf] elfutils: _IO_default_xsputn(): /usr/bin/eu-readelf killed by 11 -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1262839 diff --git a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/eu-readelf-n-crash.core.xz b/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/eu-readelf-n-crash.core.xz deleted file mode 100644 index 9326d2e..0000000 Binary files a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/eu-readelf-n-crash.core.xz and /dev/null differ diff --git a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/main.fmf b/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/main.fmf deleted file mode 100644 index 48f5fc9..0000000 --- a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: abrt-faf-elfutils-IO-default-xsputn -description: | - Bug summary: [abrt] [faf] elfutils: _IO_default_xsputn(): /usr/bin/eu-readelf killed by 11 - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1262839 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- xz -duration: 5m -extra-summary: /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn -extra-task: /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn diff --git a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/runtest.sh b/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/runtest.sh deleted file mode 100755 index 685d143..0000000 --- a/tests/Regression/abrt-faf-elfutils-IO-default-xsputn/runtest.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash -# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn -# Description: abrt-faf-elfutils-IO-default-xsputn -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2015 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -rlJournalStart - rlPhaseStartSetup - rlRun "TMPD=$(mktemp -d)" - rlRun "cp eu-readelf-n-crash.core.xz $TMPD/" - rlRun "pushd $TMPD" - rlRun "unxz eu-readelf-n-crash.core.xz" - rlPhaseEnd - - rlPhaseStartTest - rlRun "eu-readelf -n ./eu-readelf-n-crash.core" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TMPD" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/add-ppc64-fallback-unwinder/Makefile b/tests/Regression/add-ppc64-fallback-unwinder/Makefile deleted file mode 100644 index c6ab7c3..0000000 --- a/tests/Regression/add-ppc64-fallback-unwinder/Makefile +++ /dev/null @@ -1,65 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/add-ppc64-fallback-unwinder -# Description: add-ppc64-fallback-unwinder -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/add-ppc64-fallback-unwinder -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE backtrace.ppc64le.fp.core.bz2 backtrace.ppc64le.fp.exec.bz2 output.ref - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: add-ppc64-fallback-unwinder" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 10m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Requires: bzip2" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1454754" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/add-ppc64-fallback-unwinder/PURPOSE b/tests/Regression/add-ppc64-fallback-unwinder/PURPOSE deleted file mode 100644 index 198b5c0..0000000 --- a/tests/Regression/add-ppc64-fallback-unwinder/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/add-ppc64-fallback-unwinder -Description: add-ppc64-fallback-unwinder -Author: Martin Cermak -Bug summary: Add ppc64 fallback unwinder to elfutils libdw -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1454754 diff --git a/tests/Regression/add-ppc64-fallback-unwinder/backtrace.ppc64le.fp.core.bz2 b/tests/Regression/add-ppc64-fallback-unwinder/backtrace.ppc64le.fp.core.bz2 deleted file mode 100644 index e63babf..0000000 Binary files a/tests/Regression/add-ppc64-fallback-unwinder/backtrace.ppc64le.fp.core.bz2 and /dev/null differ diff --git a/tests/Regression/add-ppc64-fallback-unwinder/backtrace.ppc64le.fp.exec.bz2 b/tests/Regression/add-ppc64-fallback-unwinder/backtrace.ppc64le.fp.exec.bz2 deleted file mode 100644 index ed1352a..0000000 Binary files a/tests/Regression/add-ppc64-fallback-unwinder/backtrace.ppc64le.fp.exec.bz2 and /dev/null differ diff --git a/tests/Regression/add-ppc64-fallback-unwinder/main.fmf b/tests/Regression/add-ppc64-fallback-unwinder/main.fmf deleted file mode 100644 index 844bc0f..0000000 --- a/tests/Regression/add-ppc64-fallback-unwinder/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: add-ppc64-fallback-unwinder -description: | - Bug summary: Add ppc64 fallback unwinder to elfutils libdw - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1454754 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- bzip2 -duration: 10m -extra-summary: /tools/elfutils/Regression/add-ppc64-fallback-unwinder -extra-task: /tools/elfutils/Regression/add-ppc64-fallback-unwinder diff --git a/tests/Regression/add-ppc64-fallback-unwinder/output.ref b/tests/Regression/add-ppc64-fallback-unwinder/output.ref deleted file mode 100644 index 5f21abd..0000000 --- a/tests/Regression/add-ppc64-fallback-unwinder/output.ref +++ /dev/null @@ -1,17 +0,0 @@ -PID 23727 - core -TID 23728: -#0 0x00000000100104bc raise -#1 0x0000000010002a1c sigusr2 -#2 0x0000000010002a1c sigusr2 -#3 0x0000000010002b38 stdarg -#4 0x0000000010002bc4 backtracegen -#5 0x0000000010002bf0 start -#6 0x0000000010004c28 start_thread -eu-stack: dwfl_thread_getframes tid 23728 at 0x10004c27 in /root/mjw/elfutils/tests/backtrace.ppc64le.fp.exec: (null) -TID 23727: -#0 0x0000000010006034 pthread_join -#1 0x00000000100025bc main -#2 0x00000000100025bc main -#3 0x00000000100123c4 generic_start_main -#4 0x0000000010012570 __libc_start_main -eu-stack: dwfl_thread_getframes tid 23727 at 0x1001256f in /root/mjw/elfutils/tests/backtrace.ppc64le.fp.exec: No DWARF information found diff --git a/tests/Regression/add-ppc64-fallback-unwinder/runtest.sh b/tests/Regression/add-ppc64-fallback-unwinder/runtest.sh deleted file mode 100755 index dcc6717..0000000 --- a/tests/Regression/add-ppc64-fallback-unwinder/runtest.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/add-ppc64-fallback-unwinder -# Description: add-ppc64-fallback-unwinder -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TEMPD=\$(mktemp -d)" - rlRun "cp backtrace.ppc64le.fp.core.bz2 backtrace.ppc64le.fp.exec.bz2 output.ref $TEMPD" - rlRun "pushd $TEMPD" - rlRun "bunzip2 backtrace.ppc64le.fp.core.bz2" - rlRun "bunzip2 backtrace.ppc64le.fp.exec.bz2" - rlPhaseEnd - - rlPhaseStartTest - rlRun "eu-stack --exec backtrace.ppc64le.fp.exec --core backtrace.ppc64le.fp.core |& tee output.txt" - rlRun "grep '^#' output.ref > output.ref.filtered" - rlRun "grep '^#' output.txt > output.txt.filtered" - rlRun "diff output.txt.filtered output.ref.filtered" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TEMPD" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/api-break-in-libasm-h/Makefile b/tests/Regression/api-break-in-libasm-h/Makefile deleted file mode 100644 index ea40a57..0000000 --- a/tests/Regression/api-break-in-libasm-h/Makefile +++ /dev/null @@ -1,65 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/api-break-in-libasm-h -# Description: api-break-in-libasm-h -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2020 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/api-break-in-libasm-h -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE test.c - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: api-break-in-libasm-h" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils-devel" >> $(METADATA) - @echo "Requires: gcc" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1789885" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/api-break-in-libasm-h/PURPOSE b/tests/Regression/api-break-in-libasm-h/PURPOSE deleted file mode 100644 index 00cfe40..0000000 --- a/tests/Regression/api-break-in-libasm-h/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/api-break-in-libasm-h -Description: api-break-in-libasm-h -Author: Martin Cermak diff --git a/tests/Regression/api-break-in-libasm-h/main.fmf b/tests/Regression/api-break-in-libasm-h/main.fmf deleted file mode 100644 index 057a742..0000000 --- a/tests/Regression/api-break-in-libasm-h/main.fmf +++ /dev/null @@ -1,14 +0,0 @@ -summary: api-break-in-libasm-h -description: '' -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils-devel -- gcc -duration: 48h -extra-summary: /tools/elfutils/Regression/api-break-in-libasm-h -extra-task: /tools/elfutils/Regression/api-break-in-libasm-h diff --git a/tests/Regression/api-break-in-libasm-h/runtest.sh b/tests/Regression/api-break-in-libasm-h/runtest.sh deleted file mode 100755 index 25e19cd..0000000 --- a/tests/Regression/api-break-in-libasm-h/runtest.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/api-break-in-libasm-h -# Description: api-break-in-libasm-h -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2020 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - rlRun "test -f /usr/include/elfutils/libasm.h" - rlRun "gcc -I/usr/include/elfutils -c test.c" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/api-break-in-libasm-h/test.c b/tests/Regression/api-break-in-libasm-h/test.c deleted file mode 100644 index 83a8af0..0000000 --- a/tests/Regression/api-break-in-libasm-h/test.c +++ /dev/null @@ -1,6 +0,0 @@ -#include -#include -#include - - - diff --git a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/Makefile b/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/Makefile deleted file mode 100644 index 165d96b..0000000 --- a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table -# Description: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table) -# Author: Vaclav Kadlcik -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2014 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE libantlr.a.bz2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Vaclav Kadlcik " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table)" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 5m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Requires: bzip2" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1059897" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/PURPOSE b/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/PURPOSE deleted file mode 100644 index 736226e..0000000 --- a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/PURPOSE +++ /dev/null @@ -1,12 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table -Description: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table) -Author: Vaclav Kadlcik -Bug summary: Support 64-bit /SYM64/ symbol table -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1059897 - -Verify that a 64-bit symbol table produced on s390x is readable by elfutils -tools. The test is based on Ed Santiago's examples in Bugzilla; a test file -(libantlr.a) is taken from antlr-C++-2.7.7-30.el7.s390x.rpm. Mark Wielaard -mentioned another test included in the upstream; it gets processed within -../../testsuite (which runs the complete upstream testsuite) so its omission -here is intentional. diff --git a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/libantlr.a.bz2 b/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/libantlr.a.bz2 deleted file mode 100644 index b839b74..0000000 Binary files a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/libantlr.a.bz2 and /dev/null differ diff --git a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/main.fmf b/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/main.fmf deleted file mode 100644 index 1f1766e..0000000 --- a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/main.fmf +++ /dev/null @@ -1,23 +0,0 @@ -summary: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table) -description: | - Bug summary: Support 64-bit /SYM64/ symbol table - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1059897 - - Verify that a 64-bit symbol table produced on s390x is readable by elfutils - tools. The test is based on Ed Santiago's examples in Bugzilla; a test file - (libantlr.a) is taken from antlr-C++-2.7.7-30.el7.s390x.rpm. Mark Wielaard - mentioned another test included in the upstream; it gets processed within - ../../testsuite (which runs the complete upstream testsuite) so its omission - here is intentional. -contact: -- Vaclav Kadlcik -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- bzip2 -duration: 5m -extra-summary: /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table -extra-task: /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table diff --git a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/runtest.sh b/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/runtest.sh deleted file mode 100755 index 2b35c4c..0000000 --- a/tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/runtest.sh +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table -# Description: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table) -# Author: Vaclav Kadlcik -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2014 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -TEST_ARCHIVE_1='libantlr.a' # see PURPOSE & Bugzilla - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" - rlRun "cp ${TEST_ARCHIVE_1}.bz2 $TmpDir" 0 "Copying test files" - rlRun "pushd $TmpDir" - rlPhaseEnd - - rlPhaseStartTest - - rlRun "bunzip2 ${TEST_ARCHIVE_1}.bz2" - rlAssertExists "$TEST_ARCHIVE_1" - - rlRun -s "eu-ar t $TEST_ARCHIVE_1" 0 "Checking eu-ar runs" - rlAssertExists "$rlRun_LOG" - rlAssertGrep '^/SYM64/$' "$rlRun_LOG" - rlAssertGrep '^ANTLRUtil\.o$' "$rlRun_LOG" - - rlRun -s "eu-readelf -a $TEST_ARCHIVE_1" 0 "Checking eu-readelf runs" - rlAssertExists "$rlRun_LOG" - rlAssertGrep '^ELF Header:$' "$rlRun_LOG" - - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/Makefile b/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/Makefile deleted file mode 100644 index 1a21968..0000000 --- a/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/Makefile +++ /dev/null @@ -1,65 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore -# Description: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore) -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore)" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Requires: gdb" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1371517" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/PURPOSE b/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/PURPOSE deleted file mode 100644 index d82ebd0..0000000 --- a/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore -Description: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore) -Author: Martin Cermak -Bug summary: eu-stack killed by SIGABRT processing gcore created core file -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1371517 diff --git a/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/main.fmf b/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/main.fmf deleted file mode 100644 index 639d979..0000000 --- a/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore) -description: | - Bug summary: eu-stack killed by SIGABRT processing gcore created core file - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1371517 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- gdb -duration: 48h -extra-summary: /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore -extra-task: /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore diff --git a/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/runtest.sh b/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/runtest.sh deleted file mode 100755 index 34fbabd..0000000 --- a/tests/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore/runtest.sh +++ /dev/null @@ -1,72 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore -# Description: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore) -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -rlJournalStart - rlPhaseStartSetup - rlRun "rpm -q elfutils" - rlRun "rpm -q gdb" - rlRun "TMPD=\$(mktemp -d)" - rlRun "pushd $TMPD" - rlPhaseEnd - - rlPhaseStart FAIL "Build an unstripped binary" - # ... so that we don't need to rely on the infra providing us with - # a (coreutils-) debuginfo package. - echo -e "#include \nint main () { sleep(100); return 0; }" | gcc -g -xc -o sleep100 - - rlRun "file sleep100 | fgrep 'not stripped'" - rlPhaseEnd - - rlPhaseStartTest - ./sleep100 & - SLEEP_PID=$! - rlRun "gcore $SLEEP_PID" - # On some arches, such as aarch64, or s390x, eu-stack doesn't end at some - # reasonable point, when printing the trace, and goes across main, to - # __libc_start_main and even higher and then finally complains about - # "no matching address range". But we don't want to be so strict to check - # for this right now. Mark Wielaard says it is okay, so I trust him ... - # Following assert fails when we get SEGV, which would be bz1371517, which - # reproduces e.g. on f25 using elfutils-0.166-2.fc25, or on rhel-7.3 - # using elfutils-0.166-2.el7. - rlRun "eu-stack --executable=./sleep100 --core=core.$SLEEP_PID > output.txt" 0,1 - # Print the output. Yeah, this could be done using tee or something in - # the above line and play games with exitcodes within a pipe chain, but - # this actually is https://en.wikipedia.org/wiki/KISS_principle :) - rlRun "cat output.txt" - # ... we do want to check at least that "main" was listed in the trace. - rlRun "awk {'print \$3'} output.txt | grep ^main$" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TMPD" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/bz1717349-vaguely-related-SEGV/Makefile b/tests/Regression/bz1717349-vaguely-related-SEGV/Makefile deleted file mode 100644 index 1246ea1..0000000 --- a/tests/Regression/bz1717349-vaguely-related-SEGV/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV -# Description: bz1717349-vaguely-related-SEGV -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/bz1717349-vaguely-related-SEGV -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE qat_c3xxx.ko - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: bz1717349-vaguely-related-SEGV" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1717349" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/bz1717349-vaguely-related-SEGV/PURPOSE b/tests/Regression/bz1717349-vaguely-related-SEGV/PURPOSE deleted file mode 100644 index b1fac9a..0000000 --- a/tests/Regression/bz1717349-vaguely-related-SEGV/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV -Description: bz1717349-vaguely-related-SEGV -Author: Martin Cermak diff --git a/tests/Regression/bz1717349-vaguely-related-SEGV/main.fmf b/tests/Regression/bz1717349-vaguely-related-SEGV/main.fmf deleted file mode 100644 index 52eae32..0000000 --- a/tests/Regression/bz1717349-vaguely-related-SEGV/main.fmf +++ /dev/null @@ -1,13 +0,0 @@ -summary: bz1717349-vaguely-related-SEGV -description: '' -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV -extra-task: /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV diff --git a/tests/Regression/bz1717349-vaguely-related-SEGV/qat_c3xxx.ko b/tests/Regression/bz1717349-vaguely-related-SEGV/qat_c3xxx.ko deleted file mode 100644 index c50cd17..0000000 Binary files a/tests/Regression/bz1717349-vaguely-related-SEGV/qat_c3xxx.ko and /dev/null differ diff --git a/tests/Regression/bz1717349-vaguely-related-SEGV/runtest.sh b/tests/Regression/bz1717349-vaguely-related-SEGV/runtest.sh deleted file mode 100755 index a0ba81d..0000000 --- a/tests/Regression/bz1717349-vaguely-related-SEGV/runtest.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV -# Description: bz1717349-vaguely-related-SEGV -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # This works with base rhel eu-strip, as well as with various SCL versions of it. Convenience :) - rlRun "which eu-strip" - rlRun "rpm -qf `which eu-strip`" - # Test: SEGV is considered a FAIL (reproduces with elfutils-0.176-4.el8), whereas fixed version exists with 0) - rlRun "eu-strip --remove-comment --reloc-debug-sections -f qat_c3xxx.ko.debug qat_c3xxx.ko" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/Makefile b/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/Makefile deleted file mode 100644 index 9d3b9ba..0000000 --- a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/Makefile +++ /dev/null @@ -1,63 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted -# Description: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted) -# Author: Vaclav Kadlcik -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2014 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE ld.bz2 ld.debug.bz2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Vaclav Kadlcik " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted)" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 5m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils bzip2" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 806474" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/PURPOSE b/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/PURPOSE deleted file mode 100644 index 163e2ce..0000000 --- a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/PURPOSE +++ /dev/null @@ -1,9 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted -Description: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted) -Author: Vaclav Kadlcik -Bug summary: eu-unstrip unwilling to reassembled corrupted separate debuginfo -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=806474 - -Make sure eu-unstrip can merge (when forced) a stripped binary and a separate -debuginfo in spite of the debuginfo was produced by a buggy version of binutils -(see BZ#698005). The test is based on Mark Wielaard's suggestion in Bugzilla. diff --git a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/ld.bz2 b/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/ld.bz2 deleted file mode 100755 index 0a30dfe..0000000 Binary files a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/ld.bz2 and /dev/null differ diff --git a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/ld.debug.bz2 b/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/ld.debug.bz2 deleted file mode 100644 index f18e233..0000000 Binary files a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/ld.debug.bz2 and /dev/null differ diff --git a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/main.fmf b/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/main.fmf deleted file mode 100644 index d4f8b8d..0000000 --- a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/main.fmf +++ /dev/null @@ -1,20 +0,0 @@ -summary: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted) -description: | - Bug summary: eu-unstrip unwilling to reassembled corrupted separate debuginfo - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=806474 - - Make sure eu-unstrip can merge (when forced) a stripped binary and a separate - debuginfo in spite of the debuginfo was produced by a buggy version of binutils - (see BZ#698005). The test is based on Mark Wielaard's suggestion in Bugzilla. -contact: -- Vaclav Kadlcik -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- bzip2 -duration: 5m -extra-summary: /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted -extra-task: /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted diff --git a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/runtest.sh b/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/runtest.sh deleted file mode 100755 index af46602..0000000 --- a/tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/runtest.sh +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted -# Description: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted) -# Author: Vaclav Kadlcik -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2014 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -TEST_STRIPPED='ld' # see PURPOSE, BZ#806474, and 698005 -TEST_DEBUGIFO='ld.debug' # ditto -TEST_MERGED='ld-debug' - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" - rlRun "cp ${TEST_STRIPPED}.bz2 ${TEST_DEBUGIFO}.bz2 $TmpDir" 0 "Copying test files" - rlRun "pushd $TmpDir" - rlPhaseEnd - - rlPhaseStartTest - - rlRun "bunzip2 ${TEST_STRIPPED}.bz2" 0 - rlRun "bunzip2 ${TEST_DEBUGIFO}.bz2" 0 - rlAssertExists "$TEST_STRIPPED" - rlAssertExists "$TEST_DEBUGIFO" - - rlRun -t -s "eu-unstrip -o $TEST_MERGED $TEST_STRIPPED $TEST_DEBUGIFO" 1 'unstrip with corrupted debuginfo' - rlAssertNotExists "$TEST_MERGED" - rlAssertGrep '^STDERR:.*ELF header identification.*different, use --force' "$rlRun_LOG" - - rlRun -t -s "eu-unstrip --force -o $TEST_MERGED $TEST_STRIPPED $TEST_DEBUGIFO" 0 'Forced unstrip with corrupted debuginfo' - rlAssertExists "$TEST_MERGED" - rlAssertGrep '^STDERR:.*WARNING:.*ELF header identification.*different' "$rlRun_LOG" - - rlRun -t -s "file $TEST_MERGED" 0 'Detecting type of merged file' - rlAssertGrep '^STDOUT:.*not stripped$' "$rlRun_LOG" - - rlRun -s "eu-objdump -s $TEST_MERGED" 0 'Running objdump on merged file' - rlAssertGrep '^Contents of section .debug_info:' "$rlRun_LOG" - rlAssertGrep '^Contents of section .debug_line:' "$rlRun_LOG" - - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/Makefile b/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/Makefile deleted file mode 100644 index 7bd3800..0000000 --- a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line -# Description: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line) -# Author: Dagmar Prokopova -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2013 Red Hat, Inc. All rights reserved. -# -# This copyrighted material is made available to anyone wishing -# to use, modify, copy, or redistribute it subject to the terms -# and conditions of the GNU General Public License version 2. -# -# This program 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, write to the Free -# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE a.out - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Dagmar Prokopova " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line)" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 5m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 917874" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/PURPOSE b/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/PURPOSE deleted file mode 100644 index 1e44cf8..0000000 --- a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line -Description: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line) -Author: Dagmar Prokopova -Bug summary: [RHDT] Assertion failure in eu-addr2line -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=917874 diff --git a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/a.out b/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/a.out deleted file mode 100644 index ffdbfc0..0000000 Binary files a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/a.out and /dev/null differ diff --git a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/main.fmf b/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/main.fmf deleted file mode 100644 index ca0bd46..0000000 --- a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line) -description: | - Bug summary: [RHDT] Assertion failure in eu-addr2line - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=917874 -contact: -- Dagmar Prokopova -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 5m -extra-summary: /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line -extra-task: /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line diff --git a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/runtest.sh b/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/runtest.sh deleted file mode 100755 index 6b2f0ef..0000000 --- a/tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/runtest.sh +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash -# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line -# Description: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line) -# Author: Dagmar Prokopova -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2013 Red Hat, Inc. All rights reserved. -# -# This copyrighted material is made available to anyone wishing -# to use, modify, copy, or redistribute it subject to the terms -# and conditions of the GNU General Public License version 2. -# -# This program 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, write to the Free -# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -# This was fixed in devtoolset-2-elfutils-0.155-6. - -PACKAGES=(elfutils) - -rlJournalStart - rlPhaseStartSetup - for p in "${PACKAGES[@]}"; do - rlAssertRpm "$p" || yum -y install "$p" - done; unset p - - rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" - - # We need the reproducer. - cp -v a.out $TmpDir - - rlRun "pushd $TmpDir" - rlPhaseEnd - - rlPhaseStartTest - # This should succeed without assertion fail. - rlRun "eu-addr2line -e a.out 0x400589" 0 - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/Makefile b/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/Makefile deleted file mode 100644 index 84db65f..0000000 --- a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines -# Description: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines) -# Author: Dagmar Prokopova -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2013 Red Hat, Inc. All rights reserved. -# -# This copyrighted material is made available to anyone wishing -# to use, modify, copy, or redistribute it subject to the terms -# and conditions of the GNU General Public License version 2. -# -# This program 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, write to the Free -# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE vpoolengineUS.bz2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Dagmar Prokopova " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines)" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 30m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils bzip2 gcc" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 927626" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/PURPOSE b/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/PURPOSE deleted file mode 100644 index 4d5f49a..0000000 --- a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines -Description: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines) -Author: Dagmar Prokopova -Bug summary: [RHDT] Stack overflow in dwarf_getsrclines -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=927626 diff --git a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/main.fmf b/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/main.fmf deleted file mode 100644 index 0246e42..0000000 --- a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/main.fmf +++ /dev/null @@ -1,17 +0,0 @@ -summary: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines) -description: | - Bug summary: [RHDT] Stack overflow in dwarf_getsrclines - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=927626 -contact: -- Dagmar Prokopova -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- bzip2 -- gcc -duration: 30m -extra-summary: /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines -extra-task: /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines diff --git a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/runtest.sh b/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/runtest.sh deleted file mode 100755 index aa7df40..0000000 --- a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/runtest.sh +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/bash -# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines -# Description: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines) -# Author: Dagmar Prokopova -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2013 Red Hat, Inc. All rights reserved. -# -# This copyrighted material is made available to anyone wishing -# to use, modify, copy, or redistribute it subject to the terms -# and conditions of the GNU General Public License version 2. -# -# This program 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, write to the Free -# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -# This was fixed in elfutils-0.155-7. - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" - # We need the reproducer. - cp -v vpoolengineUS.bz2 $TmpDir - rlRun "pushd $TmpDir" - rlRun "bunzip2 vpoolengineUS.bz2" - rlPhaseEnd - - rlPhaseStartTest - # No segfault should appear. - rlRun "eu-addr2line -e vpoolengineUS 0x6682f7" 0 - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/vpoolengineUS.bz2 b/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/vpoolengineUS.bz2 deleted file mode 100644 index 40d8d79..0000000 Binary files a/tests/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines/vpoolengineUS.bz2 and /dev/null differ diff --git a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/Makefile b/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/Makefile deleted file mode 100644 index 1df9bb0..0000000 --- a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line -# Description: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line) -# Author: Dagmar Prokopova -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2013 Red Hat, Inc. All rights reserved. -# -# This copyrighted material is made available to anyone wishing -# to use, modify, copy, or redistribute it subject to the terms -# and conditions of the GNU General Public License version 2. -# -# This program 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, write to the Free -# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE proc_maps.txt - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Dagmar Prokopova " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line)" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 5m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 967130" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/PURPOSE b/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/PURPOSE deleted file mode 100644 index bc7a857..0000000 --- a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line -Description: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line) -Author: Dagmar Prokopova -Bug summary: [RHDT] eu-unstrip -M abort on socket: line -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=967130 diff --git a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/main.fmf b/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/main.fmf deleted file mode 100644 index 2f28d7d..0000000 --- a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line) -description: | - Bug summary: [RHDT] eu-unstrip -M abort on socket: line - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=967130 -contact: -- Dagmar Prokopova -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 5m -extra-summary: /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line -extra-task: /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line diff --git a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/proc_maps.txt b/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/proc_maps.txt deleted file mode 100644 index 673a4d6..0000000 --- a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/proc_maps.txt +++ /dev/null @@ -1,82 +0,0 @@ -00400000-024aa000 r-xp 00000000 08:02 159659 /opt/MessageRouter/bin/msgrouter_dbg -026aa000-026b2000 rwxp 020aa000 08:02 159659 /opt/MessageRouter/bin/msgrouter_dbg -026b2000-026bf000 rwxp 00000000 00:00 0 -0335a000-03e6f000 rwxp 00000000 00:00 0 [heap] -2b7b2d6fa000-2b7b2d71a000 r-xp 00000000 08:02 128802 /lib64/ld-2.12.so -2b7b2d71a000-2b7b2d89c000 rwxp 00000000 00:00 0 -2b7b2d919000-2b7b2d91a000 r-xp 0001f000 08:02 128802 /lib64/ld-2.12.so -2b7b2d91a000-2b7b2d91b000 rwxp 00020000 08:02 128802 /lib64/ld-2.12.so -2b7b2d91b000-2b7b2d91c000 rwxp 00000000 00:00 0 -2b7b2d91c000-2b7b2d933000 r-xp 00000000 08:02 128833 /lib64/libpthread-2.12.so -2b7b2d933000-2b7b2db32000 ---p 00017000 08:02 128833 /lib64/libpthread-2.12.so -2b7b2db32000-2b7b2db33000 r-xp 00016000 08:02 128833 /lib64/libpthread-2.12.so -2b7b2db33000-2b7b2db34000 rwxp 00017000 08:02 128833 /lib64/libpthread-2.12.so -2b7b2db34000-2b7b2db39000 rwxp 00000000 00:00 0 -2b7b2db39000-2b7b2db40000 r-xp 00000000 08:02 128837 /lib64/librt-2.12.so -2b7b2db40000-2b7b2dd3f000 ---p 00007000 08:02 128837 /lib64/librt-2.12.so -2b7b2dd3f000-2b7b2dd40000 r-xp 00006000 08:02 128837 /lib64/librt-2.12.so -2b7b2dd40000-2b7b2dd41000 rwxp 00007000 08:02 128837 /lib64/librt-2.12.so -2b7b2dd41000-2b7b2dd43000 r-xp 00000000 08:02 128815 /lib64/libdl-2.12.so -2b7b2dd43000-2b7b2df43000 ---p 00002000 08:02 128815 /lib64/libdl-2.12.so -2b7b2df43000-2b7b2df44000 r-xp 00002000 08:02 128815 /lib64/libdl-2.12.so -2b7b2df44000-2b7b2df45000 rwxp 00003000 08:02 128815 /lib64/libdl-2.12.so -2b7b2df45000-2b7b2e032000 r-xp 00000000 08:02 276647 /usr/lib64/libboost_regex.so.5 -2b7b2e032000-2b7b2e232000 ---p 000ed000 08:02 276647 /usr/lib64/libboost_regex.so.5 -2b7b2e232000-2b7b2e239000 rwxp 000ed000 08:02 276647 /usr/lib64/libboost_regex.so.5 -2b7b2e239000-2b7b2e23a000 rwxp 00000000 00:00 0 -2b7b2e23a000-2b7b2e322000 r-xp 00000000 08:02 260385 /usr/lib64/libstdc++.so.6.0.13 -2b7b2e322000-2b7b2e522000 ---p 000e8000 08:02 260385 /usr/lib64/libstdc++.so.6.0.13 -2b7b2e522000-2b7b2e529000 r-xp 000e8000 08:02 260385 /usr/lib64/libstdc++.so.6.0.13 -2b7b2e529000-2b7b2e52b000 rwxp 000ef000 08:02 260385 /usr/lib64/libstdc++.so.6.0.13 -2b7b2e52b000-2b7b2e540000 rwxp 00000000 00:00 0 -2b7b2e540000-2b7b2e5c3000 r-xp 00000000 08:02 128817 /lib64/libm-2.12.so -2b7b2e5c3000-2b7b2e7c2000 ---p 00083000 08:02 128817 /lib64/libm-2.12.so -2b7b2e7c2000-2b7b2e7c3000 r-xp 00082000 08:02 128817 /lib64/libm-2.12.so -2b7b2e7c3000-2b7b2e7c4000 rwxp 00083000 08:02 128817 /lib64/libm-2.12.so -2b7b2e7c4000-2b7b2e7da000 r-xp 00000000 08:02 136724 /lib64/libgcc_s-4.4.6-20110824.so.1 -2b7b2e7da000-2b7b2e9d9000 ---p 00016000 08:02 136724 /lib64/libgcc_s-4.4.6-20110824.so.1 -2b7b2e9d9000-2b7b2e9da000 rwxp 00015000 08:02 136724 /lib64/libgcc_s-4.4.6-20110824.so.1 -2b7b2e9da000-2b7b2e9db000 rwxp 00000000 00:00 0 -2b7b2e9db000-2b7b2eb72000 r-xp 00000000 08:02 128809 /lib64/libc-2.12.so -2b7b2eb72000-2b7b2ed72000 ---p 00197000 08:02 128809 /lib64/libc-2.12.so -2b7b2ed72000-2b7b2ed76000 r-xp 00197000 08:02 128809 /lib64/libc-2.12.so -2b7b2ed76000-2b7b2ed77000 rwxp 0019b000 08:02 128809 /lib64/libc-2.12.so -2b7b2ed77000-2b7b2ed7c000 rwxp 00000000 00:00 0 -2b7b2ed7c000-2b7b2eebb000 r-xp 00000000 08:02 276645 /usr/lib64/libicuuc.so.42.1 -2b7b2eebb000-2b7b2f0bb000 ---p 0013f000 08:02 276645 /usr/lib64/libicuuc.so.42.1 -2b7b2f0bb000-2b7b2f0cc000 rwxp 0013f000 08:02 276645 /usr/lib64/libicuuc.so.42.1 -2b7b2f0cc000-2b7b2f0ce000 rwxp 00000000 00:00 0 -2b7b2f0ce000-2b7b2f256000 r-xp 00000000 08:02 276635 /usr/lib64/libicui18n.so.42.1 -2b7b2f256000-2b7b2f456000 ---p 00188000 08:02 276635 /usr/lib64/libicui18n.so.42.1 -2b7b2f456000-2b7b2f463000 rwxp 00188000 08:02 276635 /usr/lib64/libicui18n.so.42.1 -2b7b2f463000-2b7b2f465000 rwxp 00000000 00:00 0 -2b7b2f465000-2b7b303aa000 r-xp 00000000 08:02 276633 /usr/lib64/libicudata.so.42.1 -2b7b303aa000-2b7b305a9000 ---p 00f45000 08:02 276633 /usr/lib64/libicudata.so.42.1 -2b7b305a9000-2b7b305aa000 rwxp 00f44000 08:02 276633 /usr/lib64/libicudata.so.42.1 -2b7b305aa000-2b7b313f5000 rwxp 00000000 00:00 0 -2b7b313f5000-2b7b313f6000 ---p 00000000 00:00 0 -2b7b313f6000-2b7b31df6000 rwxp 00000000 00:00 0 -2b7b31df6000-2b7b31df7000 ---p 00000000 00:00 0 -2b7b31df7000-2b7b327f7000 rwxp 00000000 00:00 0 -2b7b34000000-2b7b34021000 rwxp 00000000 00:00 0 -2b7b34021000-2b7b38000000 ---p 00000000 00:00 0 -2b7b38000000-2b7b38282000 rwxp 00000000 00:00 0 -2b7b38282000-2b7b38302000 rwxs 00000000 00:06 493872 socket:[493872] -2b7b38302000-2b7b38312000 rwxs 00000000 00:06 493872 socket:[493872] -2b7b38312000-2b7b38b12000 r-xs 00000000 00:06 493872 socket:[493872] -2b7b38b12000-2b7b38b22000 rwxs 00000000 00:06 493872 socket:[493872] -2b7b38b22000-2b7b39322000 rwxs 00000000 00:06 493872 socket:[493872] -2b7b39322000-2b7b39323000 ---p 00000000 00:00 0 -2b7b39323000-2b7b39d23000 rwxp 00000000 00:00 0 -2b7b3c000000-2b7b3c021000 rwxp 00000000 00:00 0 -2b7b3c021000-2b7b40000000 ---p 00000000 00:00 0 -2b7b40000000-2b7b40021000 rwxp 00000000 00:00 0 -2b7b40021000-2b7b44000000 ---p 00000000 00:00 0 -2b7b44010000-2b7b4401c000 r-xp 00000000 08:02 128825 /lib64/libnss_files-2.12.so -2b7b4401c000-2b7b4421c000 ---p 0000c000 08:02 128825 /lib64/libnss_files-2.12.so -2b7b4421c000-2b7b4421d000 r-xp 0000c000 08:02 128825 /lib64/libnss_files-2.12.so -2b7b4421d000-2b7b4421e000 rwxp 0000d000 08:02 128825 /lib64/libnss_files-2.12.so -2b7b4439f000-2b7b45ea1000 rwxp 00000000 00:00 0 -7fff26cf7000-7fff26d0c000 rwxp 00000000 00:00 0 [stack] -7fff26dff000-7fff26e00000 r-xp 00000000 00:00 0 [vdso] -ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] diff --git a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/runtest.sh b/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/runtest.sh deleted file mode 100755 index e541b6b..0000000 --- a/tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/runtest.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/bash -# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line -# Description: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line) -# Author: Dagmar Prokopova -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2013 Red Hat, Inc. All rights reserved. -# -# This copyrighted material is made available to anyone wishing -# to use, modify, copy, or redistribute it subject to the terms -# and conditions of the GNU General Public License version 2. -# -# This program 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, write to the Free -# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" - # We need a reproducer. - cp -v proc_maps.txt $TmpDir - rlRun "pushd $TmpDir" - rlPhaseEnd - - rlPhaseStartTest - #No Abort here. - rlRun "eu-unstrip -n -M proc_maps.txt " 0 - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/Makefile b/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/Makefile deleted file mode 100644 index a5a2b7f..0000000 --- a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in -# Description: elfutils-segmentation-fault-in-elf64-xlatetom-in -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: elfutils-segmentation-fault-in-elf64-xlatetom-in" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1680048" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/POC2 b/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/POC2 deleted file mode 100644 index 0c1a4d0..0000000 Binary files a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/POC2 and /dev/null differ diff --git a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/PURPOSE b/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/PURPOSE deleted file mode 100644 index 867dfd8..0000000 --- a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in -Description: elfutils-segmentation-fault-in-elf64-xlatetom-in -Author: Martin Cermak -Bug summary: elfutils: segmentation fault in elf64_xlatetom in libelf/elf32_xlatetom.c [rhdts-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1680048 diff --git a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/main.fmf b/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/main.fmf deleted file mode 100644 index c487d28..0000000 --- a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: elfutils-segmentation-fault-in-elf64-xlatetom-in -description: | - Bug summary: elfutils: segmentation fault in elf64_xlatetom in libelf/elf32_xlatetom.c [rhdts-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1680048 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in -extra-task: /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in diff --git a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/runtest.sh b/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/runtest.sh deleted file mode 100755 index 2287722..0000000 --- a/tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/runtest.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in -# Description: elfutils-segmentation-fault-in-elf64-xlatetom-in -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # failure is 139 - SEGV, 2 is okay - rlRun "eu-stack --core=POC2" 2 - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/eu-elfcompress-breaks-hard-links/bubble.c b/tests/Regression/eu-elfcompress-breaks-hard-links/bubble.c deleted file mode 100644 index f8b643a..0000000 --- a/tests/Regression/eu-elfcompress-breaks-hard-links/bubble.c +++ /dev/null @@ -1,4 +0,0 @@ -int main() -{ - return 0; -} diff --git a/tests/Regression/eu-elfcompress-breaks-hard-links/main.fmf b/tests/Regression/eu-elfcompress-breaks-hard-links/main.fmf deleted file mode 100644 index a34c573..0000000 --- a/tests/Regression/eu-elfcompress-breaks-hard-links/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: eu-elfcompress-breaks-hard-links -description: '' -link: - - relates: https://bugzilla.redhat.com/show_bug.cgi?id=2188064 -contact: Martin Cermak -component: - - elfutils -test: ./runtest.sh -framework: beakerlib -recommend: - - elfutils - - gcc -duration: 1h -extra-summary: /tools/elfutils/Regression/eu-elfcompress-breaks-hard-links -extra-task: /tools/elfutils/Regression/eu-elfcompress-breaks-hard-links diff --git a/tests/Regression/eu-elfcompress-breaks-hard-links/runtest.sh b/tests/Regression/eu-elfcompress-breaks-hard-links/runtest.sh deleted file mode 100755 index 7709a74..0000000 --- a/tests/Regression/eu-elfcompress-breaks-hard-links/runtest.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/eu-elfcompress-breaks-hard-links -# Description: eu-elfcompress-breaks-hard-links -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2023 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TMP=$(mktemp -d)" - rlRun "cp bubble.c $TMP/" - rlRun "pushd $TMP" - rlPhaseEnd - - rlPhaseStartTest - rlRun "gcc -o a.out -g bubble.c" - rlRun "ln a.out a.lnk" - rlRun "eu-elfcompress -q -p -t none a.lnk" - rlRun "i0=$(stat -c '%i' a.out)" - rlRun "i1=$(stat -c '%i' a.lnk)" - rlRun "test $i0 -eq $i1" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TMP" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/eu-readelf-reports-machine-type-is-unknown/Makefile b/tests/Regression/eu-readelf-reports-machine-type-is-unknown/Makefile deleted file mode 100644 index 2f5488f..0000000 --- a/tests/Regression/eu-readelf-reports-machine-type-is-unknown/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown -# Description: Test for BZ#1724350 (eu-readelf reports machine type is ) -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#1724350 (eu-readelf reports machine type is )" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils linux-firmware" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1724350" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/eu-readelf-reports-machine-type-is-unknown/PURPOSE b/tests/Regression/eu-readelf-reports-machine-type-is-unknown/PURPOSE deleted file mode 100644 index 49ffd25..0000000 --- a/tests/Regression/eu-readelf-reports-machine-type-is-unknown/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown -Description: Test for BZ#1724350 (eu-readelf reports machine type is ) -Author: Martin Cermak -Bug summary: eu-readelf reports machine type is on firmware blobs -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1724350 diff --git a/tests/Regression/eu-readelf-reports-machine-type-is-unknown/main.fmf b/tests/Regression/eu-readelf-reports-machine-type-is-unknown/main.fmf deleted file mode 100644 index c9a9d41..0000000 --- a/tests/Regression/eu-readelf-reports-machine-type-is-unknown/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: Test for BZ#1724350 (eu-readelf reports machine type is ) -description: | - Bug summary: eu-readelf reports machine type is on firmware blobs - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1724350 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- linux-firmware -duration: 48h -extra-summary: /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown -extra-task: /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown diff --git a/tests/Regression/eu-readelf-reports-machine-type-is-unknown/runtest.sh b/tests/Regression/eu-readelf-reports-machine-type-is-unknown/runtest.sh deleted file mode 100755 index 8558153..0000000 --- a/tests/Regression/eu-readelf-reports-machine-type-is-unknown/runtest.sh +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown -# Description: Test for BZ#1724350 (eu-readelf reports machine type is ) -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -__showgreenlight () -{ - rlJournalStart - rlPhaseStartTest - rlRun "echo \"Irrelevant for $X_SCLS\"" - rlPhaseEnd - rlJournalEnd - exit 0 -} - -echo $X_SCLS | fgrep -q gcc-toolset-9 && __showgreenlight - -rlJournalStart - rlPhaseStartTest - rlRun "find /usr/lib/firmware/ -name '*.nffw' | xargs eu-readelf -h | awk '/Machine/ {print \$NF}' | fgrep ''" 1 - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/eu-strip-generates-empty-output-if/Makefile b/tests/Regression/eu-strip-generates-empty-output-if/Makefile deleted file mode 100644 index 9da23ec..0000000 --- a/tests/Regression/eu-strip-generates-empty-output-if/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/eu-strip-generates-empty-output-if -# Description: eu-strip-generates-empty-output-if -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/eu-strip-generates-empty-output-if -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: eu-strip-generates-empty-output-if" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1455620" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/eu-strip-generates-empty-output-if/PURPOSE b/tests/Regression/eu-strip-generates-empty-output-if/PURPOSE deleted file mode 100644 index f32e5fd..0000000 --- a/tests/Regression/eu-strip-generates-empty-output-if/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/eu-strip-generates-empty-output-if -Description: eu-strip-generates-empty-output-if -Author: Martin Cermak -Bug summary: eu-strip generates empty output if there is nothing to do -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1455620 diff --git a/tests/Regression/eu-strip-generates-empty-output-if/main.fmf b/tests/Regression/eu-strip-generates-empty-output-if/main.fmf deleted file mode 100644 index 9d9ebbf..0000000 --- a/tests/Regression/eu-strip-generates-empty-output-if/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: eu-strip-generates-empty-output-if -description: | - Bug summary: eu-strip generates empty output if there is nothing to do - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1455620 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Regression/eu-strip-generates-empty-output-if -extra-task: /tools/elfutils/Regression/eu-strip-generates-empty-output-if diff --git a/tests/Regression/eu-strip-generates-empty-output-if/runtest.sh b/tests/Regression/eu-strip-generates-empty-output-if/runtest.sh deleted file mode 100755 index e83d754..0000000 --- a/tests/Regression/eu-strip-generates-empty-output-if/runtest.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/eu-strip-generates-empty-output-if -# Description: eu-strip-generates-empty-output-if -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "tmp=\$(mktemp -d)" - rlRun "pushd $tmp" - rlPhaseEnd - - rlPhaseStartTest - rlRun "echo 'int main() { return 1; }' > test.c" - rlRun "gcc test.c" - rlRun "eu-strip -g -o test ./a.out" - rlRun "test $(stat --format='%s' test) -gt 0" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $tmp" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/eu-strip-invalid-section-alignment-while/Makefile b/tests/Regression/eu-strip-invalid-section-alignment-while/Makefile deleted file mode 100644 index 9599103..0000000 --- a/tests/Regression/eu-strip-invalid-section-alignment-while/Makefile +++ /dev/null @@ -1,65 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while -# Description: eu-strip-invalid-section-alignment-while -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2016 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/eu-strip-invalid-section-alignment-while -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE testprog.c testprog2.c - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: eu-strip-invalid-section-alignment-while" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 5m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Requires: gcc" >> $(METADATA) - @echo "Requires: libaio-devel" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1303845" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/eu-strip-invalid-section-alignment-while/PURPOSE b/tests/Regression/eu-strip-invalid-section-alignment-while/PURPOSE deleted file mode 100644 index ee925cc..0000000 --- a/tests/Regression/eu-strip-invalid-section-alignment-while/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while -Description: eu-strip-invalid-section-alignment-while -Author: Martin Cermak -Bug summary: eu-strip: invalid section alignment while stripping debuginfo from executables -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1303845 diff --git a/tests/Regression/eu-strip-invalid-section-alignment-while/main.fmf b/tests/Regression/eu-strip-invalid-section-alignment-while/main.fmf deleted file mode 100644 index 954c1c5..0000000 --- a/tests/Regression/eu-strip-invalid-section-alignment-while/main.fmf +++ /dev/null @@ -1,17 +0,0 @@ -summary: eu-strip-invalid-section-alignment-while -description: | - Bug summary: eu-strip: invalid section alignment while stripping debuginfo from executables - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1303845 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- gcc -- libaio-devel -duration: 5m -extra-summary: /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while -extra-task: /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while diff --git a/tests/Regression/eu-strip-invalid-section-alignment-while/runtest.sh b/tests/Regression/eu-strip-invalid-section-alignment-while/runtest.sh deleted file mode 100755 index 3c19f91..0000000 --- a/tests/Regression/eu-strip-invalid-section-alignment-while/runtest.sh +++ /dev/null @@ -1,66 +0,0 @@ -#!/bin/bash -# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while -# Description: eu-strip-invalid-section-alignment-while -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2016 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartSetup - for p in gcc eu-strip; do - rlRun "which $p" - rlRun "rpm -qf $( which $p )" - done - rlRun "tmp=$(mktemp -d)" - rlRun "cp testprog.c testprog2.c $tmp" - rlRun "pushd $tmp" - rlPhaseEnd - - if rpm -q libaio-devel; then - rlPhaseStart FAIL customer-testcase - # https://bugzilla.redhat.com/show_bug.cgi?id=1304870 - rlRun "gcc testprog.c -laio -g -o testprog" - rlRun "eu-strip testprog" - rlPhaseEnd - fi - - rlPhaseStart FAIL upstream-testcase - rlRun "gcc -g testprog2.c -o testprog2" - # Testcase for this fix should at some point reach the upstream and - # the rhel package too. After that this QE testcase should be obsoleted. - # Please, refer to: - # https://lists.fedorahosted.org/archives/list/elfutils-devel@lists.fedorahosted.org/message/OP6AXOW5PF6GPB4KN7XQZSZ5JY6RK52U/ - rlRun "eu-strip testprog2" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $tmp" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/eu-strip-invalid-section-alignment-while/testinfo.desc b/tests/Regression/eu-strip-invalid-section-alignment-while/testinfo.desc deleted file mode 100644 index 1aae73b..0000000 --- a/tests/Regression/eu-strip-invalid-section-alignment-while/testinfo.desc +++ /dev/null @@ -1,16 +0,0 @@ -Owner: Martin Cermak -Name: /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while -TestVersion: 1.0 -Path: /mnt/tests/tools/elfutils/Regression/eu-strip-invalid-section-alignment-while -Description: eu-strip-invalid-section-alignment-while -Type: Regression -TestTime: 1d -RunFor: elfutils -Requires: elfutils -Requires: gcc -Requires: libaio-devel -Priority: Normal -License: GPLv2+ -Confidential: no -Destructive: no -Bug: 1303845 diff --git a/tests/Regression/eu-strip-invalid-section-alignment-while/testprog.c b/tests/Regression/eu-strip-invalid-section-alignment-while/testprog.c deleted file mode 100644 index 23debb7..0000000 --- a/tests/Regression/eu-strip-invalid-section-alignment-while/testprog.c +++ /dev/null @@ -1,115 +0,0 @@ -/* - * aio-dio-subblock-eof-read - test AIO read of last block of DIO file - * Copyright (C) 2005 Jeff Moyer - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* - * Code taken from an example posted to linux-aio at kvack.org - * http://marc.info/?l=linux-aio&m=112263621431161&w=2 - * Original Author: Drangon Zhou - * Munged & rewritten by Jeff Moyer. - * - * Description: This source code implements a test to ensure that an AIO - * read of the last block in a file opened with O_DIRECT returns the proper - * amount of data. In the past, there was a bug that resulted in a return - * value of the requested block size, when in fact there was only a fraction - * of that data available. Thus, if the last data block contained 300 bytes - * worth of data, and the user issued a 4k read, we want to ensure that - * the return value is 300, not 4k. - */ -#define _GNU_SOURCE -#include -#include -#include -#include -#include -#include - -/* Create a file of a size that is not a multiple of block size */ -#define FILE_SIZE 300 - -#define fail(fmt , args...) \ -do {\ -printf(fmt , ##args);\ -exit(1);\ -} while (0) - -static unsigned char buffer[4096] __attribute((aligned (4096))); - -int -main(int argc, char **argv) -{ -int ret; -int fd; -const char *filename; -struct iocb myiocb; -struct iocb *cb = &myiocb; -io_context_t ioctx; -struct io_event ie; - -if (argc != 2) -fail("only arg should be file name"); - -filename = argv[1]; -fd = open(filename, O_CREAT|O_RDWR|O_DIRECT, 0600); -if (fd < 0) -fail("open returned error %d\n", errno); - -ret = ftruncate(fd, FILE_SIZE); -if (ret < 0) -fail("truncate returned error %d\n", errno); - -/* <1> use normal disk read, this should be ok */ -ret = read(fd, buffer, 4096); -if (ret != FILE_SIZE) -fail("buffered read returned %d, should be 300\n", ret); - -/* <2> use AIO disk read, it sees error. */ -memset(&myiocb, 0, sizeof(myiocb)); -cb->data = 0; -cb->key = 0; -cb->aio_lio_opcode = IO_CMD_PREAD; -cb->aio_reqprio = 0; -cb->aio_fildes = fd; -cb->u.c.buf = buffer; -cb->u.c.nbytes = 4096; -cb->u.c.offset = 0; - -ret = io_queue_init(1, &ioctx); -if (ret != 0) -fail("io_queue_init returned error %d\n", ret); - -ret = io_submit(ioctx, 1, &cb); -if (ret != 1) -fail("io_submit returned error %d\n", ret); - -ret = io_getevents(ioctx, 1, 1, &ie, NULL); -if (ret != 1) -fail("io_getevents returned %d\n", ret); - -/* - * If all goes well, we should see 300 bytes read. If things - * are broken, we may very well see a result of 4k. - */ -if (ie.res != FILE_SIZE) -fail("AIO read of last block in file returned %ld bytes, " - "expected %d\n", ie.res, FILE_SIZE); - -printf("AIO read of last block in file succeeded.\n"); -return 0; -} - diff --git a/tests/Regression/eu-strip-invalid-section-alignment-while/testprog2.c b/tests/Regression/eu-strip-invalid-section-alignment-while/testprog2.c deleted file mode 100644 index 60f8573..0000000 --- a/tests/Regression/eu-strip-invalid-section-alignment-while/testprog2.c +++ /dev/null @@ -1,12 +0,0 @@ -static unsigned char buffer[4096] __attribute((aligned (4096))); -char -f (int i) -{ - return buffer[i]; -} - -int -main (int argc, char **argv) -{ - return buffer[argc] == 0; -} diff --git a/tests/Regression/initial-DWARF5-support-in-eu-readelf/Makefile b/tests/Regression/initial-DWARF5-support-in-eu-readelf/Makefile deleted file mode 100644 index f6daf76..0000000 --- a/tests/Regression/initial-DWARF5-support-in-eu-readelf/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/initial-DWARF5-support-in-eu-readelf -# Description: initial-DWARF5-support-in-eu-readelf -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/initial-DWARF5-support-in-eu-readelf -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE test3-clang.o - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: initial-DWARF5-support-in-eu-readelf" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1472979" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/initial-DWARF5-support-in-eu-readelf/PURPOSE b/tests/Regression/initial-DWARF5-support-in-eu-readelf/PURPOSE deleted file mode 100644 index 55b9eff..0000000 --- a/tests/Regression/initial-DWARF5-support-in-eu-readelf/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/initial-DWARF5-support-in-eu-readelf -Description: initial-DWARF5-support-in-eu-readelf -Author: Martin Cermak -Bug summary: DWARF5 support in eu-readelf -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1472979 diff --git a/tests/Regression/initial-DWARF5-support-in-eu-readelf/main.fmf b/tests/Regression/initial-DWARF5-support-in-eu-readelf/main.fmf deleted file mode 100644 index 2d62363..0000000 --- a/tests/Regression/initial-DWARF5-support-in-eu-readelf/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: initial-DWARF5-support-in-eu-readelf -description: | - Bug summary: DWARF5 support in eu-readelf - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1472979 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Regression/initial-DWARF5-support-in-eu-readelf -extra-task: /tools/elfutils/Regression/initial-DWARF5-support-in-eu-readelf diff --git a/tests/Regression/initial-DWARF5-support-in-eu-readelf/runtest.sh b/tests/Regression/initial-DWARF5-support-in-eu-readelf/runtest.sh deleted file mode 100755 index e99cdeb..0000000 --- a/tests/Regression/initial-DWARF5-support-in-eu-readelf/runtest.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/initial-DWARF5-support-in-eu-readelf -# Description: initial-DWARF5-support-in-eu-readelf -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -rlJournalStart - rlPhaseStartTest - rlRun "eu-readelf --debug-dump=info test3-clang.o | fgrep '???'" 1 - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/initial-DWARF5-support-in-eu-readelf/test3-clang.o b/tests/Regression/initial-DWARF5-support-in-eu-readelf/test3-clang.o deleted file mode 100644 index 67f6571..0000000 Binary files a/tests/Regression/initial-DWARF5-support-in-eu-readelf/test3-clang.o and /dev/null differ diff --git a/tests/Regression/require-compression-libraries/Makefile b/tests/Regression/require-compression-libraries/Makefile deleted file mode 100644 index b811cc5..0000000 --- a/tests/Regression/require-compression-libraries/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/require-compression-libraries -# Description: require-compression-libraries -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2020 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/require-compression-libraries -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE t.c - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: require-compression-libraries" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils gcc" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1873413" >> $(METADATA) - @echo "Releases: -RHEL4 -RHEL6 -RHEL7 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/require-compression-libraries/PURPOSE b/tests/Regression/require-compression-libraries/PURPOSE deleted file mode 100644 index c9a8bad..0000000 --- a/tests/Regression/require-compression-libraries/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/require-compression-libraries -Description: require-compression-libraries -Author: Martin Cermak -Bug summary: gcc-toolset-10-elfutils-devel doesn't have Requires and/or links against all supported compression libraries for libdw -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1873413 diff --git a/tests/Regression/require-compression-libraries/main.fmf b/tests/Regression/require-compression-libraries/main.fmf deleted file mode 100644 index c75776e..0000000 --- a/tests/Regression/require-compression-libraries/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: require-compression-libraries -description: | - Bug summary: gcc-toolset-10-elfutils-devel doesn't have Requires and/or links against all supported compression libraries for libdw - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1873413 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- gcc -duration: 48h -extra-summary: /tools/elfutils/Regression/require-compression-libraries -extra-task: /tools/elfutils/Regression/require-compression-libraries diff --git a/tests/Regression/require-compression-libraries/runtest.sh b/tests/Regression/require-compression-libraries/runtest.sh deleted file mode 100755 index ecba5e0..0000000 --- a/tests/Regression/require-compression-libraries/runtest.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/require-compression-libraries -# Description: require-compression-libraries -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2020 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - rlRun "gcc -o t t.c -ldw" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/require-compression-libraries/t.c b/tests/Regression/require-compression-libraries/t.c deleted file mode 100644 index 3fa93f7..0000000 --- a/tests/Regression/require-compression-libraries/t.c +++ /dev/null @@ -1,5 +0,0 @@ -#include - -int main () { dwelf_elf_begin (0); } - - diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/Makefile b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/Makefile deleted file mode 100644 index 9bd07f3..0000000 --- a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data -# Description: Test for BZ#1593328 (Robustify elfutils 0.172 against bad DWARF5 data) -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE crashes - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#1593328 (Robustify elfutils 0.172 against bad DWARF5 data)" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1593328" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/PURPOSE b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/PURPOSE deleted file mode 100644 index b90ff34..0000000 --- a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data -Description: Test for BZ#1593328 (Robustify elfutils 0.172 against bad DWARF5 data) -Author: Martin Cermak -Bug summary: Robustify elfutils 0.172 against bad DWARF5 data -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1593328 diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000001,sig_11,src_001936,op_flip1,pos_1100 b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000001,sig_11,src_001936,op_flip1,pos_1100 deleted file mode 100644 index 79d7fe8..0000000 Binary files a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000001,sig_11,src_001936,op_flip1,pos_1100 and /dev/null differ diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000001,sig_11,src_002816,op_int16,pos_370,val_+1024 b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000001,sig_11,src_002816,op_int16,pos_370,val_+1024 deleted file mode 100644 index 39a9b32..0000000 Binary files a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000001,sig_11,src_002816,op_int16,pos_370,val_+1024 and /dev/null differ diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000002,src_001890,op_flip4,pos_371 b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000002,src_001890,op_flip4,pos_371 deleted file mode 100644 index 5e82aca..0000000 Binary files a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000002,src_001890,op_flip4,pos_371 and /dev/null differ diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000006,src_001890,op_arith8,pos_371,val_+14 b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000006,src_001890,op_arith8,pos_371,val_+14 deleted file mode 100644 index 46abd16..0000000 Binary files a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000006,src_001890,op_arith8,pos_371,val_+14 and /dev/null differ diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000011,src_001899,op_flip1,pos_371 b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000011,src_001899,op_flip1,pos_371 deleted file mode 100644 index 35099b4..0000000 Binary files a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/crashes/id_000011,src_001899,op_flip1,pos_371 and /dev/null differ diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/main.fmf b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/main.fmf deleted file mode 100644 index 127b3e1..0000000 --- a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: Test for BZ#1593328 (Robustify elfutils 0.172 against bad DWARF5 data) -description: | - Bug summary: Robustify elfutils 0.172 against bad DWARF5 data - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1593328 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data -extra-task: /tools/elfutils/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data diff --git a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/runtest.sh b/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/runtest.sh deleted file mode 100755 index 85254eb..0000000 --- a/tests/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data/runtest.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/robustify-elfutils-0-172-against-bad-DWARF5-data -# Description: Test for BZ#1593328 (Robustify elfutils 0.172 against bad DWARF5 data) -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -_sections="abbrev addr aranges decodedaranges frame gdb_index info info+ loc \ -line decodedline ranges pubnames str macinfo macro exception" - -rlJournalStart - rlPhaseStartTest - for _data in crashes/*; do - for _section in $_sections; do - # 0 and 1 are expected exitcodes: - rlRun "timeout 7 eu-readelf --debug-dump=$_section $_data >/dev/null" 0,1 - done - done - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Regression/static-relocations-not-known-to-older-linkers/Makefile b/tests/Regression/static-relocations-not-known-to-older-linkers/Makefile deleted file mode 100644 index b91bcbe..0000000 --- a/tests/Regression/static-relocations-not-known-to-older-linkers/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Regression/static-relocations-not-known-to-older-linkers -# Description: static-relocations-not-known-to-older-linkers -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Regression/static-relocations-not-known-to-older-linkers -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: static-relocations-not-known-to-older-linkers" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils-devel" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1508966" >> $(METADATA) - @echo "Releases: RHEL7" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Regression/static-relocations-not-known-to-older-linkers/PURPOSE b/tests/Regression/static-relocations-not-known-to-older-linkers/PURPOSE deleted file mode 100644 index 9a09bad..0000000 --- a/tests/Regression/static-relocations-not-known-to-older-linkers/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Regression/static-relocations-not-known-to-older-linkers -Description: static-relocations-not-known-to-older-linkers -Author: Martin Cermak -Bug summary: Need to rebuild rpm in order to remove static relocations not known to older linkers -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1508966 diff --git a/tests/Regression/static-relocations-not-known-to-older-linkers/main.fmf b/tests/Regression/static-relocations-not-known-to-older-linkers/main.fmf deleted file mode 100644 index 894fc70..0000000 --- a/tests/Regression/static-relocations-not-known-to-older-linkers/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: static-relocations-not-known-to-older-linkers -description: | - Bug summary: Need to rebuild rpm in order to remove static relocations not known to older linkers - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1508966 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils-devel -duration: 48h -extra-summary: /tools/elfutils/Regression/static-relocations-not-known-to-older-linkers -extra-task: /tools/elfutils/Regression/static-relocations-not-known-to-older-linkers diff --git a/tests/Regression/static-relocations-not-known-to-older-linkers/runtest.sh b/tests/Regression/static-relocations-not-known-to-older-linkers/runtest.sh deleted file mode 100755 index 3519d05..0000000 --- a/tests/Regression/static-relocations-not-known-to-older-linkers/runtest.sh +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Regression/static-relocations-not-known-to-older-linkers -# Description: static-relocations-not-known-to-older-linkers -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - relocs=$(mktemp) - for i in `rpm -ql elfutils-devel`; do readelf -r -W $i; done > $relocs - # The above is expected to complain about some files not being ELF files, - # such as *.h files or directories ... ;-) - rlRun "grep -e GOTPCRELX -e GOT32X $relocs" 1 - # for elfutils-devel-0.170-1.el7.x86_64.rpm, the unwanted relocation is - # (only) in /usr/lib64/libebl.a - # readelf -r -W /usr/lib64/libebl.a | grep -e GOTPCRELX -e GOT32X - # 00000000000001ef 000000250000002a R_X86_64_REX_GOTPCRELX 0000000000000000 stdout - 4 - rm $relocs - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Sanity/elfutils-debuginfod/body.sh b/tests/Sanity/elfutils-debuginfod/body.sh deleted file mode 100755 index 1f93014..0000000 --- a/tests/Sanity/elfutils-debuginfod/body.sh +++ /dev/null @@ -1,81 +0,0 @@ -#!/bin/bash - -set -xeo pipefail - - -export DEBUGINFOD_VERBOSE=1 -export DEBUGINFOD_CACHE_PATH=$HOME/.debuginfod_client_cache/ - -# Initial cleanup -systemctl stop debuginfod -rm -rf ~/.cache/debuginfod_client -rm -rf /usr/src/my_extra_rpms $DEBUGINFOD_CACHE_PATH -mkdir $DEBUGINFOD_CACHE_PATH -journalctl -g debuginfod -f & -logger=$! - -# Set up a delay. A delay of 3 worked for me reliably for manual testing. -DELAY=120 - -# Clean up after possible previous failed (=> unfinished) run of this testcase -rm -rf /usr/src/my_extra_rpms $HOME/.debuginfod_client_cache - -# Check the config file is there -cat /etc/sysconfig/debuginfod - -# Make sure the config file doesn't contain unwanted relicts -# from possible previous failed run of this testcase -fgrep DEBUGINFOD_PATHS /etc/sysconfig/debuginfod | (! fgrep /usr/src/my_extra_rpms) - -# Add some directory to the DEBUGINFOD_PATH and configure it -# within /etc/sysconfig/debuginfod -mkdir -p /usr/src/my_extra_rpms -sed -i 's/DEBUGINFOD_PATHS="[^"]*/\0\ \/usr\/src\/my_extra_rpms/' /etc/sysconfig/debuginfod -fgrep DEBUGINFOD_PATHS /etc/sysconfig/debuginfod | fgrep /usr/src/my_extra_rpms - -# Note the DEBUGINFOD_PORT in the sysconfig file -# and use it to export the server URL for the client to use -source /etc/sysconfig/debuginfod -export DEBUGINFOD_URLS="localhost:$DEBUGINFOD_PORT" - -# Get the build-id from some installed binary and make sure -# it isn't found -buildid=$(eu-unstrip -n -e /usr/bin/true | cut -f2 -d\ | cut -f1 -d@) -! debuginfod-find executable $buildid - -# Start the service -systemctl start debuginfod - -# Give it some time to index -sleep $DELAY - -# Now the binary should be found -debuginfod-find executable $buildid - -# Take a small debuginfo rpm and make sure you know the buildid of -# some .debug file in to the directory you created and added to -# the DEBUGINFO_PATH in the config file. -cp sshpass-debuginfo-1.09-2.fc35.x86_64.rpm /usr/src/my_extra_rpms - -# Make sure the denuginfo can't be found yet -# Related: -# - https://bugzilla.redhat.com/show_bug.cgi?id=2023454 -# - https://sourceware.org/bugzilla/show_bug.cgi?id=28240 -! debuginfod-find debuginfo 73952ed43c6edc82cc92186a581ec27f009c529c -echo 0 > $DEBUGINFOD_CACHE_PATH/cache_miss_s - -# Tell debuginfod to start indexing immediately -debuginfod_pid=$(systemctl status debuginfod | fgrep PID | grep -Po '\d+') -kill -SIGUSR1 $debuginfod_pid - -# Give it some time to index -sleep $DELAY - -# Try to find the debug file with the known buildid -debuginfod-find debuginfo 73952ed43c6edc82cc92186a581ec27f009c529c - -# Clean up -rm -rf /usr/src/my_extra_rpms $HOME/.debuginfod_client_cache - -# Kill the logger -kill $logger diff --git a/tests/Sanity/elfutils-debuginfod/main.fmf b/tests/Sanity/elfutils-debuginfod/main.fmf deleted file mode 100644 index dcdc35d..0000000 --- a/tests/Sanity/elfutils-debuginfod/main.fmf +++ /dev/null @@ -1,14 +0,0 @@ -summary: elfutils-debuginfod -description: '' -contact: Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- elfutils-debuginfod -- elfutils-debuginfod-client -duration: 48h -extra-summary: /tools/elfutils/Sanity/elfutils-debuginfod -extra-task: /tools/elfutils/Sanity/elfutils-debuginfod diff --git a/tests/Sanity/elfutils-debuginfod/runtest.sh b/tests/Sanity/elfutils-debuginfod/runtest.sh deleted file mode 100755 index 1ae097e..0000000 --- a/tests/Sanity/elfutils-debuginfod/runtest.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Sanity/elfutils-debuginfod -# Description: elfutils-debuginfod -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartSetup - for p in elfutils-debuginfod elfutils-debuginfod-client; do - rlAssertRpm $p - done - rlRun "TMPD=$(mktemp -d)" - rlRun "cp body.sh sshpass-debuginfo-1.09-2.fc35.x86_64.rpm $TMPD" - rlRun "pushd $TMPD" - rlFileBackup /etc/sysconfig/debuginfod - rlPhaseEnd - - rlPhaseStartTest - rlRun "./body.sh" - rlPhaseEnd - - rlPhaseStartCleanup - rlFileRestore - rlRun "popd" - rlRun "rm -r $TMPD" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Sanity/elfutils-debuginfod/sshpass-debuginfo-1.09-2.fc35.x86_64.rpm b/tests/Sanity/elfutils-debuginfod/sshpass-debuginfo-1.09-2.fc35.x86_64.rpm deleted file mode 100644 index 3ae7fe1..0000000 Binary files a/tests/Sanity/elfutils-debuginfod/sshpass-debuginfo-1.09-2.fc35.x86_64.rpm and /dev/null differ diff --git a/tests/Sanity/yama-scope/main.fmf b/tests/Sanity/yama-scope/main.fmf deleted file mode 100644 index 7b08cd2..0000000 --- a/tests/Sanity/yama-scope/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: yama-scope -description: | - Bug summary: Enable provide_yama_scope for rhel >= 7.4 - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1455514 -contact: Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -link: -- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1455514 -extra-summary: /tools/elfutils/Sanity/yama-scope -extra-task: /tools/elfutils/Sanity/yama-scope diff --git a/tests/Sanity/yama-scope/ptrace-scope-test.sh b/tests/Sanity/yama-scope/ptrace-scope-test.sh deleted file mode 100644 index 6eb1ca4..0000000 --- a/tests/Sanity/yama-scope/ptrace-scope-test.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -RETVAL=0 -OUT=$(mktemp) -eu-stack -p $$ |& tee $OUT -grep -i 'operation not permitted' $OUT && RETVAL=1 -rm $OUT -exit $RETVAL diff --git a/tests/Sanity/yama-scope/runtest.sh b/tests/Sanity/yama-scope/runtest.sh deleted file mode 100755 index 8195b54..0000000 --- a/tests/Sanity/yama-scope/runtest.sh +++ /dev/null @@ -1,108 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Sanity/yama-scope -# Description: yama-scope -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2017 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" -MY_USER="ptrace_scope_testuser" -TESTCASE="/tmp/ptrace-scope-test.sh" -PROCFILE='/proc/sys/kernel/yama/ptrace_scope' - -test_root() -{ - $TESTCASE -} - -test_user() -{ - su - $MY_USER -c $TESTCASE -} - -rlJournalStart - rlPhaseStartTest - -# This can easily be tested with strace. Just cycle through the settings: - -# 0 - Default attach security permissions. -# 1 - Restricted attach. Only child processes plus normal permissions. -# 2 - Admin-only attach. Only executables with CAP_SYS_PTRACE. -# 3 - No attach. No process may call ptrace at all. Irrevocable. - -# echo 0 > /proc/sys/kernel/yama/ptrace_scope - -# With 0, strace works against any process with your uid. For example, strace -p 2190. -# With 1, strace errors when doing the same as in 0: strace: attach: ptrace(PTRACE_SEIZE, 3180): Operation not permitted. However, you can strace any program you run from strace, "strace /bin/ls" or example. -# With 2, you can only strace from the root account. You can no longer strace commands run from strace. -# With 3, even root cannot strace. - -# --- - -# possible related AVCs tracked as https://bugzilla.redhat.com/show_bug.cgi?id=1458999 - -# --- - - rlRun "useradd $MY_USER" 0,9 - - rlRun "cp ptrace-scope-test.sh /tmp/" - rlRun "chmod a+rx /tmp/ptrace-scope-test.sh" - - rlRun "ORIGVAL=$( cat $PROCFILE )" - - # First, test the default behaviour, which is "no restriction" - # from the ptrace perspective. Here we assume that - # elfutils-default-yama-scope.rpm is installed and so the default - # yama policy is set to 0 instead of 1 which would otherwise be set - # as a kernel default (security/yama/yama_lsm.c ---> YAMA_SCOPE_RELATIONAL) - rlRun test_root - rlRun test_user - - rlRun "echo 0 > $PROCFILE" - rlRun test_root - rlRun test_user - rlRun "echo 1 > $PROCFILE" - rlRun test_root - rlRun test_user 1 - rlRun "echo 2 > $PROCFILE" - rlRun test_root - rlRun test_user 1 - # Following subtest would be irrevertible (till next reboot) - # rlRun "echo 3 > $PROCFILE" - # rlRun test_root 1 - # rlRun test_user 1 - - rlRun "userdel -f $MY_USER" - -# This testcase could be more complex - using child and non-child processes and -# performing reboots. But let's keep this simple, since we are not testing the -# kernel facility, but merely an elfutils "plugin" for it, whose purpose is to -# set the default yama policy as such. - - rlRun "echo $ORIGVAL > $PROCFILE" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd