RHEL 9.0.0 Alpha bootstrap

The content of this branch was automatically imported from Fedora ELN
with the following as its source:
https://src.fedoraproject.org/rpms/crash#235709a5cf0931c9791cb9d31046ba032eafa787
This commit is contained in:
Petr Šabata 2020-10-14 23:18:42 +02:00
parent 10a1eb403b
commit fd655eaae7
23 changed files with 166873 additions and 0 deletions

44
.gitignore vendored
View File

@ -0,0 +1,44 @@
crash-4.0-8.11.tar.gz
crash-4.0.9.tar.gz
crash-5.0.6.tar.gz
/crash-5.1.2.tar.gz
/crash-5.1.5.tar.gz
/crash-5.1.7.tar.gz
/crash-5.1.8.tar.gz
/crash-6.0.0.tar.gz
/crash-6.0.2.tar.gz
/crash-6.0.5.tar.gz
/crash-6.0.6.tar.gz
/crash-6.0.8.tar.gz
/crash-6.0.9.tar.gz
/crash-6.1.0.tar.gz
/crash-6.1.1.tar.gz
/crash-6.1.2.tar.gz
/crash-6.1.4.tar.gz
/crash-6.1.6.tar.gz
/crash-7.0.1.tar.gz
/crash-7.0.2.tar.gz
/crash-7.0.3.tar.gz
/crash-7.0.4.tar.gz
/crash-7.0.5.tar.gz
/crash-7.0.7.tar.gz
/crash-7.0.8.tar.gz
/crash-7.0.9.tar.gz
/crash-7.1.0.tar.gz
/crash-7.1.1.tar.gz
/crash-7.1.2.tar.gz
/crash-7.1.3.tar.gz
/crash-7.1.4.tar.gz
/crash-7.1.5.tar.gz
/crash-7.1.6.tar.gz
/crash-7.1.7.tar.gz
/crash-7.1.8.tar.gz
/crash-7.1.9.tar.gz
/crash-7.2.0.tar.gz
/crash-7.2.1.tar.gz
/crash-7.2.3.tar.gz
/crash-7.2.4.tar.gz
/crash-7.2.5.tar.gz
/crash-7.2.6.tar.gz
/crash-7.2.7.tar.gz
/crash-7.2.8.tar.gz

16
aarch64.patch Normal file
View File

@ -0,0 +1,16 @@
--- crash-7.0.7/gdb-7.6.patch.orig
+++ crash-7.0.7/gdb-7.6.patch
@@ -1678,3 +1678,13 @@
fprintf_filtered(gdb_stdout, "\n");
lastval++;
}
+--- gdb-7.6/gdb/aarch64-linux-nat.c.orig
++++ gdb-7.6/gdb/aarch64-linux-nat.c
+@@ -32,6 +32,7 @@
+ #include "elf/common.h"
+
+ #include <sys/ptrace.h>
++#include <asm/ptrace.h>
+ #include <sys/utsname.h>
+
+ #include "gregset.h"

View File

@ -0,0 +1,38 @@
diff --git a/gdb-7.6.patch b/gdb-7.6.patch
index f6c311d..f64b55f 100644
--- a/gdb-7.6.patch
+++ b/gdb-7.6.patch
@@ -2471,3 +2471,33 @@ diff -up gdb-7.6/opcodes/configure.orig gdb-7.6/opcodes/configure
#else
# error "!__i386__ && !__x86_64__"
#endif
+--- gdb-7.6/gdb/features/aarch64.c.orig
++++ gdb-7.6/gdb/features/aarch64.c
+@@ -5,7 +5,6 @@
+ #include "osabi.h"
+ #include "target-descriptions.h"
+
+-struct target_desc *tdesc_aarch64;
+ static void
+ initialize_tdesc_aarch64 (void)
+ {
+--- gdb-7.6/gdb/aarch64-linux-nat.c.orig
++++ gdb-7.6/gdb/aarch64-linux-nat.c
+@@ -37,6 +37,7 @@
+
+ #include "gregset.h"
+
++extern struct target_desc *tdesc_aarch64;
+ #include "features/aarch64.c"
+
+ /* Defines ps_err_e, struct ps_prochandle. */
+--- gdb-7.6/gdb/aarch64-tdep.c.orig
++++ gdb-7.6/gdb/aarch64-tdep.c
+@@ -52,6 +52,7 @@
+ #include "gdb_assert.h"
+ #include "vec.h"
+
++struct target_desc *tdesc_aarch64;
+ #include "features/aarch64.c"
+ #include "features/aarch64-without-fpu.c"
+

View File

@ -0,0 +1,154 @@
--- crash-5.1.7/gdb-7.0.patch.orig
+++ crash-5.1.7/gdb-7.0.patch
@@ -1838,3 +1838,151 @@
a = relocation;
b = val & howto->src_mask;
+--- gdb-7.0/bfd/elf32-arm.c.orig
++++ gdb-7.0/bfd/elf32-arm.c
+@@ -3438,7 +3438,6 @@ arm_build_one_stub (struct bfd_hash_entr
+ struct elf32_arm_link_hash_table *htab;
+ asection *stub_sec;
+ bfd *stub_bfd;
+- bfd_vma stub_addr;
+ bfd_byte *loc;
+ bfd_vma sym_value;
+ int template_size;
+@@ -3471,10 +3470,6 @@ arm_build_one_stub (struct bfd_hash_entr
+
+ stub_bfd = stub_sec->owner;
+
+- /* This is the address of the start of the stub. */
+- stub_addr = stub_sec->output_section->vma + stub_sec->output_offset
+- + stub_entry->stub_offset;
+-
+ /* This is the address of the stub destination. */
+ sym_value = (stub_entry->target_value
+ + stub_entry->target_section->output_offset
+@@ -3660,16 +3655,14 @@ find_stub_size_and_template (enum elf32_
+
+ static bfd_boolean
+ arm_size_one_stub (struct bfd_hash_entry *gen_entry,
+- void * in_arg)
++ void * in_arg __attribute__ ((unused)))
+ {
+ struct elf32_arm_stub_hash_entry *stub_entry;
+- struct elf32_arm_link_hash_table *htab;
+ const insn_sequence *template_sequence;
+ int template_size, size;
+
+ /* Massage our args to the form they really have. */
+ stub_entry = (struct elf32_arm_stub_hash_entry *) gen_entry;
+- htab = (struct elf32_arm_link_hash_table *) in_arg;
+
+ BFD_ASSERT((stub_entry->stub_type > arm_stub_none)
+ && stub_entry->stub_type < ARRAY_SIZE(stub_definitions));
+@@ -5147,7 +5140,6 @@ record_vfp11_erratum_veneer (struct bfd_
+ struct bfd_link_hash_entry *bh;
+ bfd_vma val;
+ struct _arm_elf_section_data *sec_data;
+- int errcount;
+ elf32_vfp11_erratum_list *newerr;
+
+ hash_table = elf32_arm_hash_table (link_info);
+@@ -5186,7 +5178,7 @@ record_vfp11_erratum_veneer (struct bfd_
+ myh->forced_local = 1;
+
+ /* Link veneer back to calling location. */
+- errcount = ++(sec_data->erratumcount);
++ sec_data->erratumcount += 1;
+ newerr = bfd_zmalloc (sizeof (elf32_vfp11_erratum_list));
+
+ newerr->type = VFP11_ERRATUM_ARM_VENEER;
+@@ -6035,9 +6027,8 @@ bfd_elf32_arm_vfp11_erratum_scan (bfd *a
+ {
+ elf32_vfp11_erratum_list *newerr
+ = bfd_zmalloc (sizeof (elf32_vfp11_erratum_list));
+- int errcount;
+
+- errcount = ++(elf32_arm_section_data (sec)->erratumcount);
++ elf32_arm_section_data (sec)->erratumcount += 1;
+
+ newerr->u.b.vfp_insn = veneer_of_insn;
+
+@@ -6747,8 +6738,6 @@ elf32_arm_final_link_relocate (reloc_how
+ unsigned long r_symndx;
+ bfd_byte * hit_data = contents + rel->r_offset;
+ bfd * dynobj = NULL;
+- Elf_Internal_Shdr * symtab_hdr;
+- struct elf_link_hash_entry ** sym_hashes;
+ bfd_vma * local_got_offsets;
+ asection * sgot = NULL;
+ asection * splt = NULL;
+@@ -6785,8 +6774,6 @@ elf32_arm_final_link_relocate (reloc_how
+ sgot = bfd_get_section_by_name (dynobj, ".got");
+ splt = bfd_get_section_by_name (dynobj, ".plt");
+ }
+- symtab_hdr = & elf_symtab_hdr (input_bfd);
+- sym_hashes = elf_sym_hashes (input_bfd);
+ local_got_offsets = elf_local_got_offsets (input_bfd);
+ r_symndx = ELF32_R_SYM (rel->r_info);
+
+@@ -8886,7 +8873,7 @@ elf32_arm_relocate_section (bfd *
+ }
+ else
+ {
+- bfd_boolean warned;
++ bfd_boolean warned __attribute__((unused));
+
+ RELOC_FOR_GLOBAL_SYMBOL (info, input_bfd, input_section, rel,
+ r_symndx, symtab_hdr, sym_hashes,
+@@ -10740,7 +10727,6 @@ elf32_arm_check_relocs (bfd *abfd, struc
+ const Elf_Internal_Rela *rel_end;
+ bfd *dynobj;
+ asection *sreloc;
+- bfd_vma *local_got_offsets;
+ struct elf32_arm_link_hash_table *htab;
+ bfd_boolean needs_plt;
+ unsigned long nsyms;
+@@ -10763,7 +10749,6 @@ elf32_arm_check_relocs (bfd *abfd, struc
+ }
+
+ dynobj = elf_hash_table (info)->dynobj;
+- local_got_offsets = elf_local_got_offsets (abfd);
+
+ symtab_hdr = & elf_symtab_hdr (abfd);
+ sym_hashes = elf_sym_hashes (abfd);
+@@ -12864,10 +12849,8 @@ elf32_arm_output_map_sym (output_arch_sy
+ bfd_vma offset)
+ {
+ static const char *names[3] = {"$a", "$t", "$d"};
+- struct elf32_arm_link_hash_table *htab;
+ Elf_Internal_Sym sym;
+
+- htab = elf32_arm_hash_table (osi->info);
+ sym.st_value = osi->sec->output_section->vma
+ + osi->sec->output_offset
+ + offset;
+@@ -12962,10 +12945,8 @@ static bfd_boolean
+ elf32_arm_output_stub_sym (output_arch_syminfo *osi, const char *name,
+ bfd_vma offset, bfd_vma size)
+ {
+- struct elf32_arm_link_hash_table *htab;
+ Elf_Internal_Sym sym;
+
+- htab = elf32_arm_hash_table (osi->info);
+ sym.st_value = osi->sec->output_section->vma
+ + osi->sec->output_offset
+ + offset;
+@@ -12982,7 +12963,6 @@ arm_map_one_stub (struct bfd_hash_entry
+ {
+ struct elf32_arm_stub_hash_entry *stub_entry;
+ struct bfd_link_info *info;
+- struct elf32_arm_link_hash_table *htab;
+ asection *stub_sec;
+ bfd_vma addr;
+ char *stub_name;
+@@ -12999,7 +12979,6 @@ arm_map_one_stub (struct bfd_hash_entry
+
+ info = osi->info;
+
+- htab = elf32_arm_hash_table (info);
+ stub_sec = stub_entry->stub_sec;
+
+ /* Ensure this stub is attached to the current section being

View File

@ -0,0 +1,35 @@
--- crash-5.1.8/gdb-7.0.patch.orig
+++ crash-5.1.8/gdb-7.0.patch
@@ -1986,3 +1986,32 @@
stub_sec = stub_entry->stub_sec;
/* Ensure this stub is attached to the current section being
+--- gdb-7.0/bfd/elf32-arm.c.orig
++++ gdb-7.0/bfd/elf32-arm.c
+@@ -12962,7 +12962,6 @@ arm_map_one_stub (struct bfd_hash_entry
+ void * in_arg)
+ {
+ struct elf32_arm_stub_hash_entry *stub_entry;
+- struct bfd_link_info *info;
+ asection *stub_sec;
+ bfd_vma addr;
+ char *stub_name;
+@@ -12977,8 +12976,6 @@ arm_map_one_stub (struct bfd_hash_entry
+ stub_entry = (struct elf32_arm_stub_hash_entry *) gen_entry;
+ osi = (output_arch_syminfo *) in_arg;
+
+- info = osi->info;
+-
+ stub_sec = stub_entry->stub_sec;
+
+ /* Ensure this stub is attached to the current section being
+--- gdb-7.0/bfd/cpu-arm.c.orig
++++ gdb-7.0/bfd/cpu-arm.c
+@@ -262,6 +262,7 @@ arm_check_note (bfd *abfd,
+ }
+
+ /* FIXME: We should probably check the type as well. */
++ (void) type;
+
+ if (description_return != NULL)
+ * description_return = descr;

203
crash-4.0-8.11-dwarf3.patch Normal file
View File

@ -0,0 +1,203 @@
commit 4809b16f7e629929a10ab8b15816b4f6f775aa82
Author: Jim Blandy <jimb@codesourcery.com>
Date: Thu Dec 13 19:02:51 2007 +0000
commit 35fb264aa9a28b8d117df1e5a19fa3bfaf5a2cc8
Author: Jim Blandy <jimb@codesourcery.com>
Date: Mon Dec 17 18:38:30 2007 +0000
Cherry-picked and backported these, since gdb would crash reading dwarf 3
DW_AT_data_member_location that gcc generates now.
-- Lubomir Rintel <lkundrak@v3.sk>
diff -urp gdb-6.1.orig/gdb/ChangeLog gdb-6.1/gdb/ChangeLog
--- gdb-6.1.orig/gdb/ChangeLog 2009-08-08 17:04:24.836969960 +0200
+++ gdb-6.1/gdb/ChangeLog 2009-08-08 17:00:21.682970174 +0200
@@ -1,3 +1,14 @@
+2007-12-13 Jim Blandy <jimb@codesourcery.com>
+
+ * dwarf2read.c (attr_form_is_constant): New function.
+ (dwarf2_add_field): Use it and attr_form_is_section_offset to
+ recognize DW_AT_data_member_location attributes. Use
+ dwarf2_get_attr_constant_value when the attribute is a constant.
+
+ * dwarf2read.c (attr_form_is_section_offset): New function.
+ (dwarf_add_member_fn, read_common_block, read_partial_die)
+ (dwarf2_symbol_mark_computed): Use it, instead of writing it out.
+
2004-04-03 GDB Administrator <gdbadmin@sourceware.org>
GDB 6.1 released.
diff -urp gdb-6.1.orig/gdb/dwarf2read.c gdb-6.1/gdb/dwarf2read.c
--- gdb-6.1.orig/gdb/dwarf2read.c 2009-06-30 17:31:20.000000000 +0200
+++ gdb-6.1/gdb/dwarf2read.c 2009-08-08 17:20:00.031969143 +0200
@@ -922,6 +922,10 @@ static void dwarf_decode_macros (struct
static int attr_form_is_block (struct attribute *);
+static int attr_form_is_section_offset (struct attribute *);
+
+static int attr_form_is_constant (struct attribute *);
+
static void
dwarf2_symbol_mark_computed (struct attribute *attr, struct symbol *sym,
struct dwarf2_cu *cu);
@@ -2618,8 +2622,16 @@ dwarf2_add_field (struct field_info *fip
attr = dwarf2_attr (die, DW_AT_data_member_location, cu);
if (attr)
{
- FIELD_BITPOS (*fp) =
- decode_locdesc (DW_BLOCK (attr), cu) * bits_per_byte;
+ if (attr_form_is_section_offset (attr))
+ {
+ dwarf2_complex_location_expr_complaint ();
+ FIELD_BITPOS (*fp) = 0;
+ }
+ else if (attr_form_is_constant (attr))
+ FIELD_BITPOS (*fp) = dwarf2_get_attr_constant_value (attr, 0);
+ else
+ FIELD_BITPOS (*fp) =
+ decode_locdesc (DW_BLOCK (attr), cu) * bits_per_byte;
}
else
FIELD_BITPOS (*fp) = 0;
@@ -2939,7 +2951,7 @@ dwarf2_add_member_fn (struct field_info
{
fnp->voffset = decode_locdesc (DW_BLOCK (attr), cu) + 2;
}
- else if (attr->form == DW_FORM_data4 || attr->form == DW_FORM_data8)
+ else if (attr_form_is_section_offset (attr))
{
dwarf2_complex_location_expr_complaint ();
}
@@ -3482,7 +3494,7 @@ read_common_block (struct die_info *die,
{
base = decode_locdesc (DW_BLOCK (attr), cu);
}
- else if (attr->form == DW_FORM_data4 || attr->form == DW_FORM_data8)
+ else if (attr_form_is_section_offset (attr))
{
dwarf2_complex_location_expr_complaint ();
}
@@ -4392,7 +4404,7 @@ read_partial_die (struct partial_die_inf
{
part_die->locdesc = DW_BLOCK (&attr);
}
- else if (attr.form == DW_FORM_data4 || attr.form == DW_FORM_data8)
+ else if (attr_form_is_section_offset (&attr))
{
dwarf2_complex_location_expr_complaint ();
}
@@ -8030,11 +8042,51 @@ attr_form_is_block (struct attribute *at
|| attr->form == DW_FORM_block);
}
+/* Return non-zero if ATTR's value is a section offset (classes
+ lineptr, loclistptr, macptr or rangelistptr). In this case,
+ you may use DW_UNSND (attr) to retrieve the offset. */
+static int
+attr_form_is_section_offset (struct attribute *attr)
+{
+ return (attr->form == DW_FORM_data4
+ || attr->form == DW_FORM_data8);
+}
+
+
+/* Return non-zero if ATTR's value falls in the 'constant' class, or
+ zero otherwise. When this function returns true, you can apply
+ dwarf2_get_attr_constant_value to it.
+
+ However, note that for some attributes you must check
+ attr_form_is_section_offset before using this test. DW_FORM_data4
+ and DW_FORM_data8 are members of both the constant class, and of
+ the classes that contain offsets into other debug sections
+ (lineptr, loclistptr, macptr or rangelistptr). The DWARF spec says
+ that, if an attribute's can be either a constant or one of the
+ section offset classes, DW_FORM_data4 and DW_FORM_data8 should be
+ taken as section offsets, not constants. */
+static int
+attr_form_is_constant (struct attribute *attr)
+{
+ switch (attr->form)
+ {
+ case DW_FORM_sdata:
+ case DW_FORM_udata:
+ case DW_FORM_data1:
+ case DW_FORM_data2:
+ case DW_FORM_data4:
+ case DW_FORM_data8:
+ return 1;
+ default:
+ return 0;
+ }
+}
+
static void
dwarf2_symbol_mark_computed (struct attribute *attr, struct symbol *sym,
struct dwarf2_cu *cu)
{
- if (attr->form == DW_FORM_data4 || attr->form == DW_FORM_data8)
+ if (attr_form_is_section_offset (attr))
{
struct dwarf2_loclist_baton *baton;
diff -urp gdb-6.1.orig/gdb/ChangeLog gdb-6.1/gdb/ChangeLog
--- gdb-6.1.orig/gdb/ChangeLog 2009-08-08 20:49:34.000000000 +0200
+++ gdb-6.1/gdb/ChangeLog 2009-08-09 13:04:25.842288308 +0200
@@ -1,3 +1,11 @@
+2007-12-17 Jim Blandy <jimb@codesourcery.com>
+
+ * dwarf2read.c (dwarf2_add_field): Correctly scale all byte
+ offsets obtained from DW_AT_data_member_location before recording
+ them in FIELD_BITPOS (*fp).
+
+ * dwarf2read.c (attr_form_is_section_offset): Doc fixes.
+
2007-12-13 Jim Blandy <jimb@codesourcery.com>
* dwarf2read.c (attr_form_is_constant): New function.
diff -urp gdb-6.1.orig/gdb/dwarf2read.c gdb-6.1/gdb/dwarf2read.c
--- gdb-6.1.orig/gdb/dwarf2read.c 2009-08-08 20:49:34.000000000 +0200
+++ gdb-6.1/gdb/dwarf2read.c 2009-08-09 13:04:25.864291129 +0200
@@ -2622,16 +2622,19 @@ dwarf2_add_field (struct field_info *fip
attr = dwarf2_attr (die, DW_AT_data_member_location, cu);
if (attr)
{
+ int byte_offset;
+
if (attr_form_is_section_offset (attr))
{
dwarf2_complex_location_expr_complaint ();
- FIELD_BITPOS (*fp) = 0;
+ byte_offset = 0;
}
else if (attr_form_is_constant (attr))
- FIELD_BITPOS (*fp) = dwarf2_get_attr_constant_value (attr, 0);
+ byte_offset = dwarf2_get_attr_constant_value (attr, 0);
else
- FIELD_BITPOS (*fp) =
- decode_locdesc (DW_BLOCK (attr), cu) * bits_per_byte;
+ byte_offset = decode_locdesc (DW_BLOCK (attr), cu);
+
+ FIELD_BITPOS (*fp) = byte_offset * bits_per_byte;
}
else
FIELD_BITPOS (*fp) = 0;
@@ -8042,9 +8045,14 @@ attr_form_is_block (struct attribute *at
|| attr->form == DW_FORM_block);
}
-/* Return non-zero if ATTR's value is a section offset (classes
- lineptr, loclistptr, macptr or rangelistptr). In this case,
- you may use DW_UNSND (attr) to retrieve the offset. */
+/* Return non-zero if ATTR's value is a section offset --- classes
+ lineptr, loclistptr, macptr or rangelistptr --- or zero, otherwise.
+ You may use DW_UNSND (attr) to retrieve such offsets.
+
+ Section 7.5.4, "Attribute Encodings", explains that no attribute
+ may have a value that belongs to more than one of these classes; it
+ would be ambiguous if we did, because we use the same forms for all
+ of them. */
static int
attr_form_is_section_offset (struct attribute *attr)
{

View File

@ -0,0 +1,225 @@
Use proper compiler flags as mandated by the packaging guidelines.
Lubomir Rintel <lkundrak@v3.sk>
diff -up crash-4.0-8.11/Makefile.optflags crash-4.0-8.11/Makefile
--- crash-4.0-8.11/Makefile.optflags 2009-06-30 17:31:20.000000000 +0200
+++ crash-4.0-8.11/Makefile 2009-08-09 13:21:51.025292368 +0200
@@ -224,7 +224,7 @@ GDB_FLAGS=
# TARGET_CFLAGS will be configured automatically by configure
TARGET_CFLAGS=
-CFLAGS=-g -D${TARGET} ${TARGET_CFLAGS}
+CRASH_CFLAGS=${CFLAGS} -D${TARGET} ${TARGET_CFLAGS}
TAR_FILES=${SOURCE_FILES} Makefile COPYING README .rh_rpm_package crash.8 \
${EXTENSION_SOURCE_FILES}
@@ -287,7 +287,7 @@ clean:
@(cd extensions; make --no-print-directory -i clean)
make_build_data: force
- cc -c ${CFLAGS} build_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} build_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
install:
/usr/bin/install ${PROGRAM} ${INSTALLDIR}
@@ -309,150 +309,150 @@ nowarn: make_configure
@make --no-print-directory gdb_merge
main.o: ${GENERIC_HFILES} main.c
- cc -c ${CFLAGS} main.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} main.c ${WARNING_OPTIONS} ${WARNING_ERROR}
cmdline.o: ${GENERIC_HFILES} cmdline.c
- cc -c ${CFLAGS} ${GDB_FLAGS} cmdline.c -I${READLINE_DIRECTORY} ${WARNING_OPTIONS}
+ cc -c ${CRASH_CFLAGS} ${GDB_FLAGS} cmdline.c -I${READLINE_DIRECTORY} ${WARNING_OPTIONS}
tools.o: ${GENERIC_HFILES} tools.c
- cc -c ${CFLAGS} tools.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} tools.c ${WARNING_OPTIONS} ${WARNING_ERROR}
global_data.o: ${GENERIC_HFILES} global_data.c
- cc -c ${CFLAGS} global_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} global_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
symbols.o: ${GENERIC_HFILES} symbols.c
- cc -c ${CFLAGS} ${GDB_FLAGS} symbols.c -I${BFD_DIRECTORY} -I${GDB_INCLUDE_DIRECTORY} ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ${GDB_FLAGS} symbols.c -I${BFD_DIRECTORY} -I${GDB_INCLUDE_DIRECTORY} ${WARNING_OPTIONS} ${WARNING_ERROR}
filesys.o: ${GENERIC_HFILES} filesys.c
- cc -c ${CFLAGS} filesys.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} filesys.c ${WARNING_OPTIONS} ${WARNING_ERROR}
help.o: ${GENERIC_HFILES} help.c
- cc -c ${CFLAGS} ${GDB_FLAGS} help.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ${GDB_FLAGS} help.c ${WARNING_OPTIONS} ${WARNING_ERROR}
memory.o: ${GENERIC_HFILES} memory.c
- cc -c ${CFLAGS} memory.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} memory.c ${WARNING_OPTIONS} ${WARNING_ERROR}
test.o: ${GENERIC_HFILES} test.c
- cc -c ${CFLAGS} test.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} test.c ${WARNING_OPTIONS} ${WARNING_ERROR}
task.o: ${GENERIC_HFILES} task.c
- cc -c ${CFLAGS} ${GDB_FLAGS} task.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ${GDB_FLAGS} task.c ${WARNING_OPTIONS} ${WARNING_ERROR}
kernel.o: ${GENERIC_HFILES} kernel.c
- cc -c ${CFLAGS} ${GDB_FLAGS} kernel.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ${GDB_FLAGS} kernel.c ${WARNING_OPTIONS} ${WARNING_ERROR}
gdb_interface.o: ${GENERIC_HFILES} gdb_interface.c
- cc -c ${CFLAGS} ${GDB_FLAGS} gdb_interface.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ${GDB_FLAGS} gdb_interface.c ${WARNING_OPTIONS} ${WARNING_ERROR}
va_server.o: ${MCORE_HFILES} va_server.c
- cc -c ${CFLAGS} va_server.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} va_server.c ${WARNING_OPTIONS} ${WARNING_ERROR}
va_server_v1.o: ${MCORE_HFILES} va_server_v1.c
- cc -c ${CFLAGS} va_server_v1.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} va_server_v1.c ${WARNING_OPTIONS} ${WARNING_ERROR}
lkcd_common.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_common.c
- cc -c ${CFLAGS} lkcd_common.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} lkcd_common.c ${WARNING_OPTIONS} ${WARNING_ERROR}
lkcd_v1.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v1.c
- cc -c ${CFLAGS} -DMCLX lkcd_v1.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DMCLX lkcd_v1.c ${WARNING_OPTIONS} ${WARNING_ERROR}
lkcd_v2_v3.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v2_v3.c
- cc -c ${CFLAGS} -DMCLX lkcd_v2_v3.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DMCLX lkcd_v2_v3.c ${WARNING_OPTIONS} ${WARNING_ERROR}
lkcd_v5.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v5.c
- cc -c ${CFLAGS} -DMCLX lkcd_v5.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DMCLX lkcd_v5.c ${WARNING_OPTIONS} ${WARNING_ERROR}
lkcd_v7.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v7.c
- cc -c ${CFLAGS} -DMCLX lkcd_v7.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DMCLX lkcd_v7.c ${WARNING_OPTIONS} ${WARNING_ERROR}
lkcd_v8.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v8.c
- cc -c ${CFLAGS} -DMCLX lkcd_v8.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DMCLX lkcd_v8.c ${WARNING_OPTIONS} ${WARNING_ERROR}
net.o: ${GENERIC_HFILES} net.c
- cc -c ${CFLAGS} net.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} net.c ${WARNING_OPTIONS} ${WARNING_ERROR}
dev.o: ${GENERIC_HFILES} dev.c
- cc -c ${CFLAGS} dev.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} dev.c ${WARNING_OPTIONS} ${WARNING_ERROR}
# remote.c functionality has been deprecated
remote.o: ${GENERIC_HFILES} remote.c
- @cc -c ${CFLAGS} remote.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ @cc -c ${CRASH_CFLAGS} remote.c ${WARNING_OPTIONS} ${WARNING_ERROR}
remote_daemon.o: ${GENERIC_HFILES} remote.c
- cc -c ${CFLAGS} -DDAEMON remote.c -o remote_daemon.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DDAEMON remote.c -o remote_daemon.o ${WARNING_OPTIONS} ${WARNING_ERROR}
x86.o: ${GENERIC_HFILES} ${REDHAT_HFILES} x86.c
- cc -c ${CFLAGS} -DMCLX x86.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DMCLX x86.c ${WARNING_OPTIONS} ${WARNING_ERROR}
alpha.o: ${GENERIC_HFILES} alpha.c
- cc -c ${CFLAGS} ${GDB_FLAGS} alpha.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ${GDB_FLAGS} alpha.c ${WARNING_OPTIONS} ${WARNING_ERROR}
ppc.o: ${GENERIC_HFILES} ppc.c
- cc -c ${CFLAGS} ppc.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ppc.c ${WARNING_OPTIONS} ${WARNING_ERROR}
ia64.o: ${GENERIC_HFILES} ${REDHAT_HFILES} ia64.c
- cc -c ${CFLAGS} ia64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ia64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
ppc64.o: ${GENERIC_HFILES} ppc64.c
- cc -c ${CFLAGS} ppc64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} ppc64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
x86_64.o: ${GENERIC_HFILES} ${REDHAT_HFILES} x86_64.c
- cc -c ${CFLAGS} x86_64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} x86_64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
s390.o: ${GENERIC_HFILES} ${IBM_HFILES} s390.c
- cc -c ${CFLAGS} s390.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} s390.c ${WARNING_OPTIONS} ${WARNING_ERROR}
s390x.o: ${GENERIC_HFILES} ${IBM_HFILES} s390x.c
- cc -c ${CFLAGS} s390x.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} s390x.c ${WARNING_OPTIONS} ${WARNING_ERROR}
s390dbf.o: ${GENERIC_HFILES} ${IBM_HFILES} s390dbf.c
- cc -c ${CFLAGS} s390dbf.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} s390dbf.c ${WARNING_OPTIONS} ${WARNING_ERROR}
s390_dump.o: ${GENERIC_HFILES} ${IBM_HFILES} s390_dump.c
- cc -c ${CFLAGS} s390_dump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} s390_dump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
netdump.o: ${GENERIC_HFILES} ${REDHAT_HFILES} netdump.c
- cc -c ${CFLAGS} netdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} netdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
netdump_daemon.o: ${GENERIC_HFILES} ${REDHAT_HFILES} netdump.c
- cc -c ${CFLAGS} -DDAEMON netdump.c -o netdump_daemon.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DDAEMON netdump.c -o netdump_daemon.o ${WARNING_OPTIONS} ${WARNING_ERROR}
diskdump.o: ${GENERIC_HFILES} ${REDHAT_HFILES} diskdump.c
- cc -c ${CFLAGS} diskdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} diskdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
xendump.o: ${GENERIC_HFILES} ${REDHAT_HFILES} xendump.c
- cc -c ${CFLAGS} xendump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} xendump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
extensions.o: ${GENERIC_HFILES} extensions.c
- cc -c ${CFLAGS} extensions.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} extensions.c ${WARNING_OPTIONS} ${WARNING_ERROR}
lkcd_x86_trace.o: ${GENERIC_HFILES} ${LKCD_TRACE_HFILES} lkcd_x86_trace.c
- cc -c ${CFLAGS} -DREDHAT lkcd_x86_trace.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DREDHAT lkcd_x86_trace.c ${WARNING_OPTIONS} ${WARNING_ERROR}
unwind_x86_32_64.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind_x86_32_64.c
- cc -c ${CFLAGS} unwind_x86_32_64.c -o unwind_x86_32_64.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} unwind_x86_32_64.c -o unwind_x86_32_64.o ${WARNING_OPTIONS} ${WARNING_ERROR}
unwind_v1.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind.c unwind_decoder.c
- cc -c ${CFLAGS} -DREDHAT -DUNWIND_V1 unwind.c -o unwind_v1.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DREDHAT -DUNWIND_V1 unwind.c -o unwind_v1.o ${WARNING_OPTIONS} ${WARNING_ERROR}
unwind_v2.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind.c unwind_decoder.c
- cc -c ${CFLAGS} -DREDHAT -DUNWIND_V2 unwind.c -o unwind_v2.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DREDHAT -DUNWIND_V2 unwind.c -o unwind_v2.o ${WARNING_OPTIONS} ${WARNING_ERROR}
unwind_v3.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind.c unwind_decoder.c
- cc -c ${CFLAGS} -DREDHAT -DUNWIND_V3 unwind.c -o unwind_v3.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DREDHAT -DUNWIND_V3 unwind.c -o unwind_v3.o ${WARNING_OPTIONS} ${WARNING_ERROR}
lkcd_fix_mem.o: ${GENERIC_HFILES} ${LKCD_HFILES} lkcd_fix_mem.c
- cc -c ${CFLAGS} -DMCLX lkcd_fix_mem.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} -DMCLX lkcd_fix_mem.c ${WARNING_OPTIONS} ${WARNING_ERROR}
xen_hyper.o: ${GENERIC_HFILES} xen_hyper.c
- cc -c ${CFLAGS} xen_hyper.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} xen_hyper.c ${WARNING_OPTIONS} ${WARNING_ERROR}
xen_hyper_command.o: ${GENERIC_HFILES} xen_hyper_command.c
- cc -c ${CFLAGS} xen_hyper_command.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} xen_hyper_command.c ${WARNING_OPTIONS} ${WARNING_ERROR}
xen_hyper_global_data.o: ${GENERIC_HFILES} xen_hyper_global_data.c
- cc -c ${CFLAGS} xen_hyper_global_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} xen_hyper_global_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
xen_hyper_dump_tables.o: ${GENERIC_HFILES} xen_hyper_dump_tables.c
- cc -c ${CFLAGS} xen_hyper_dump_tables.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+ cc -c ${CRASH_CFLAGS} xen_hyper_dump_tables.c ${WARNING_OPTIONS} ${WARNING_ERROR}
${PROGRAM}: force
@make --no-print-directory all

81032
crash.patch Normal file

File diff suppressed because it is too large Load Diff

83706
crash.patch-4.0-7.7 Normal file

File diff suppressed because it is too large Load Diff

478
crash.spec Normal file
View File

@ -0,0 +1,478 @@
#
# crash core analysis suite
#
Summary: Kernel analysis utility for live systems, netdump, diskdump, kdump, LKCD or mcore dumpfiles
Name: crash
Version: 7.2.8
Release: 5%{?dist}
License: GPLv3
Source: http://people.redhat.com/anderson/crash-%{version}.tar.gz
URL: http://people.redhat.com/anderson
ExclusiveOS: Linux
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm} aarch64 ppc64le
BuildRequires: ncurses-devel zlib-devel lzo-devel snappy-devel bison readline-devel
BuildRequires: gcc gcc-c++
Requires: binutils
Provides: bundled(libiberty)
Provides: bundled(gdb) = 7.6
Patch0: lzo_snappy.patch
Patch1: use_system_readline_v3.patch
Patch2: aarch64_gcc10_fno-common.patch
%description
The core analysis suite is a self-contained tool that can be used to
investigate either live systems, kernel core dumps created from the
netdump, diskdump and kdump packages from Red Hat Linux, the mcore kernel patch
offered by Mission Critical Linux, or the LKCD kernel patch.
%package devel
Requires: %{name} = %{version}, zlib-devel
Summary: kernel crash analysis utility for live systems, netdump, diskdump, kdump, LKCD or mcore dumpfiles
%description devel
The core analysis suite is a self-contained tool that can be used to
investigate either live systems, kernel core dumps created from the
netdump, diskdump and kdump packages from Red Hat Linux, the mcore kernel patch
offered by Mission Critical Linux, or the LKCD kernel patch.
%prep
%setup -n %{name}-%{version} -q
%patch0 -p1 -b lzo_snappy.patch
%patch1 -p1 -b use_system_readline_v3.patch
%patch2 -p1 -b aarch64_gcc10_fno-common.patch
%build
# This package has an internal copy of GDB which has broken configure code for
# INTDIV0_RAISES_SIGFPE and MUST_REINSTALL_SIGHANDLERS
# Updating that code properly seems nontrivial and best left to the package
# maintainer.
# Disable LTO
%define _lto_cflags %{nil}
make RPMPKG="%{version}-%{release}" CFLAGS="%{optflags}" LDFLAGS="%{build_ldflags}"
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}%{_bindir}
%make_install
mkdir -p %{buildroot}%{_mandir}/man8
cp -p crash.8 %{buildroot}%{_mandir}/man8/crash.8
mkdir -p %{buildroot}%{_includedir}/crash
chmod 0644 defs.h
cp -p defs.h %{buildroot}%{_includedir}/crash
%files
%{_bindir}/crash
%{_mandir}/man8/crash.8*
%doc README COPYING3
%files devel
%{_includedir}/*
%changelog
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.8-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 7.2.8-4
- Use make macros
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
* Tue Jun 30 2020 Jeff Law <law@redhat.com> - 7.2.8-3
- Disable LTO
* Fri Jan 31 2020 Dave Anderson <anderson@redhat.com> - 7.2.8-2
- Update to latest upstream release
- Fix aarch64 build for gcc-10 -fno-common
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Sep 23 2019 Dave Anderson <anderson@redhat.com> - 7.2.7-1
- Update to latest upstream release
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Mon May 6 2019 Dave Anderson <anderson@redhat.com> - 7.2.6-1
- Update to latest upstream release
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 7.2.5-3
- Rebuild for readline 8.0
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jan 11 2019 Dave Anderson <anderson@redhat.com> - 7.2.5-1
- Update to latest upstream release
* Mon Sep 24 2018 Dave Anderson <anderson@redhat.com> - 7.2.4-1
- Update to latest upstream release
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri May 18 2018 Dave Anderson <anderson@redhat.com> - 7.2.3-1
- Update to latest upstream release
* Fri Feb 23 2018 Dave Anderson <anderson@redhat.com> - 7.2.1-2
- Use RPM build flags for LDFLAGS
* Fri Feb 16 2018 Dave Anderson <anderson@redhat.com> - 7.2.1-1
- Update to latest upstream release
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Mon Oct 2 2017 Dave Anderson <anderson@redhat.com> - 7.2.0-1
- Update to latest upstream release
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.1.9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.1.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Mon Apr 24 2017 Dave Anderson <anderson@redhat.com> - 7.1.9-1
- Update to latest upstream release
* Thu Feb 23 2017 Dave Anderson <anderson@redhat.com> - 7.1.8-1
- Update to latest upstream release
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.1.7-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Jan 12 2017 Igor Gnatenko <ignatenko@redhat.com> - 7.1.7-2
- Rebuild for readline 7.x
* Tue Dec 6 2016 Dave Anderson <anderson@redhat.com> - 7.1.7-1
- Update to latest upstream release
* Fri Oct 14 2016 Dave Anderson <anderson@redhat.com> - 7.1.6-1
- Update to latest upstream release
- Fix for RHBZ#1044119 - crash bundles gdb
* Thu May 5 2016 Dave Anderson <anderson@redhat.com> - 7.1.5-2
- BZ #1333295 - FTBFS due compiler warnings in elf64-s390.c
* Thu Apr 28 2016 Dave Anderson <anderson@redhat.com> - 7.1.5-1
- Update to latest upstream release
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 7.1.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Thu Dec 17 2015 Dave Anderson <anderson@redhat.com> - 7.1.4-1
- Update to latest upstream release
* Thu Sep 3 2015 Dave Anderson <anderson@redhat.com> - 7.1.3-1
- Update to latest upstream release
* Mon Jul 13 2015 Dave Anderson <anderson@redhat.com> - 7.1.2-1
- Update to latest upstream release
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.1.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu May 28 2015 Dave Anderson <anderson@redhat.com> - 7.1.1-1
- Update to latest upstream release
* Mon Mar 2 2015 Dave Anderson <anderson@redhat.com> - 7.1.0-3
- Support increment of Linux version from 3 to 4
* Sat Feb 21 2015 Till Maas <opensource@till.name> - 7.1.0-2
- Rebuilt for Fedora 23 Change
https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
* Tue Feb 10 2015 Dave Anderson <anderson@redhat.com> - 7.1.0-1
- Update to latest upstream release
* Fri Nov 15 2014 Dave Anderson <anderson@redhat.com> - 7.0.9-1
- Update to latest upstream release
* Mon Sep 15 2014 Dave Anderson <anderson@redhat.com> - 7.0.8-1
- Update to latest upstream release
- Add ppc64le as supported architecture for crash package (BZ #1136050)
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.0.7-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Wed Jul 02 2014 Dave Anderson <anderson@redhat.com> - 7.0.7-2
- Fix FTBS for aarch64 (BZ #1114588)
* Wed Jun 11 2014 Dave Anderson <anderson@redhat.com> - 7.0.7-1
- Update to latest upstream release
- Fix Fedora_21_Mass_Rebuild FTBFS (BZ #1106090)
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.0.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Fri Feb 28 2014 Dave Anderson <anderson@redhat.com> - 7.0.5-1
- Update to latest upstream release
- Use system readline library
- Fix "crash --log vmcore" command for 3.11 and later kernels.
* Tue Dec 17 2013 Toshio Kuratomi <toshio@fedoraproject.org> - 7.0.4-2
- crash bundles gdb which bundles libiberty. Add virtual Provides for
libiberty tracking. Open a bug for unbundling gdb RHBZ#1044119
* Mon Dec 16 2013 Dave Anderson <anderson@redhat.com> - 7.0.4-1
- Update to latest upstream release
* Tue Oct 29 2013 Dave Anderson <anderson@redhat.com> - 7.0.3-1
- Update to latest upstream release
* Wed Sep 04 2013 Dave Anderson <anderson@redhat.com> - 7.0.2-1
- Update to latest upstream release
- Build with lzo and snappy compression capability
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.0.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Mon Jun 17 2013 Dave Anderson <anderson@redhat.com> - 7.0.1-1
- Update to latest upstream release
- Add aarch64 as an exclusive arch
* Tue Apr 9 2013 Dave Anderson <anderson@redhat.com> - 6.1.6-1
- Update to latest upstream release
* Tue Feb 19 2013 Dave Anderson <anderson@redhat.com> - 6.1.4-1
- Update to latest upstream release
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.1.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Wed Jan 9 2013 Dave Anderson <anderson@redhat.com> - 6.1.2-1
- Update to latest upstream release
* Tue Nov 27 2012 Dave Anderson <anderson@redhat.com> - 6.1.1-1
- Update to latest upstream release
* Mon Sep 1 2012 Dave Anderson <anderson@redhat.com> - 6.1.0-1
- Add ppc to ExclusiveArch list
- Update to latest upstream release
* Tue Aug 21 2012 Dave Anderson <anderson@redhat.com> - 6.0.9-1
- Update to latest upstream release
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Mon Jul 1 2012 Dave Anderson <anderson@redhat.com> - 6.0.8-1
- Update to latest upstream release.
- Replace usage of "struct siginfo" with "siginfo_t".
* Mon Apr 30 2012 Dave Anderson <anderson@redhat.com> - 6.0.6-1
- Update to latest upstream release
* Mon Mar 26 2012 Dave Anderson <anderson@redhat.com> - 6.0.5-1
- Update to latest upstream release
* Wed Jan 4 2012 Dave Anderson <anderson@redhat.com> - 6.0.2-1
- Update to latest upstream release
* Wed Oct 26 2011 Dave Anderson <anderson@redhat.com> - 6.0.0-1
- Update to latest upstream release
* Tue Sep 20 2011 Dave Anderson <anderson@redhat.com> - 5.1.8-1
- Update to latest upstream release
- Additional fixes for gcc-4.6 -Werror compile failures for ARM architecture.
* Thu Sep 1 2011 Dave Anderson <anderson@redhat.com> - 5.1.7-2
- Fixes for gcc-4.6 -Werror compile failures for ARM architecture.
* Wed Aug 17 2011 Dave Anderson <anderson@redhat.com> - 5.1.7-1
- Update to latest upstream release
- Fixes for gcc-4.6 -Werror compile failures for ppc64/ppc.
* Tue May 31 2011 Peter Robinson <pbrobinson@gmail.com> - 5.1.5-1
- Update to latest upstream release
- Add ARM to the Exclusive arch
* Wed Feb 25 2011 Dave Anderson <anderson@redhat.com> - 5.1.2-2
- Fixes for gcc-4.6 -Werror compile failures in gdb module.
* Wed Feb 23 2011 Dave Anderson <anderson@redhat.com> - 5.1.2-1
- Upstream version.
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.0.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Tue Jul 20 2010 Dave Anderson <anderson@redhat.com> - 5.0.6-2
- Bump version.
* Tue Jul 20 2010 Dave Anderson <anderson@redhat.com> - 5.0.6-1
- Update to upstream version.
* Fri Sep 11 2009 Dave Anderson <anderson@redhat.com> - 4.0.9-2
Bump version.
* Fri Sep 11 2009 Dave Anderson <anderson@redhat.com> - 4.0.9-1
- Update to upstream release, which allows the removal of the
Revision tag workaround, the crash-4.0-8.11-dwarf3.patch and
the crash-4.0-8.11-optflags.patch
* Sun Aug 05 2009 Lubomir Rintel <lkundrak@v3.sk> - 4.0.8.11-2
- Fix reading of dwarf 3 DW_AT_data_member_location
- Use proper compiler flags
* Wed Aug 05 2009 Lubomir Rintel <lkundrak@v3.sk> - 4.0.8.11-1
- Update to later upstream release
- Fix abuse of Revision tag
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0-9.7.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0-8.7.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Thu Feb 19 2009 Dave Anderson <anderson@redhat.com> - 4.0-7.7.2
- Replace exclusive arch i386 with ix86.
* Thu Feb 19 2009 Dave Anderson <anderson@redhat.com> - 4.0-7.7.1
- Updates to this file per crash merge review
- Update to upstream version 4.0-7.7. Full changelog viewable in:
http://people.redhat.com/anderson/crash.changelog.html
* Tue Jul 15 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4.0-7
- fix license tag
* Tue Apr 29 2008 Dave Anderson <anderson@redhat.com> - 4.0-6.3
- Added crash-devel subpackage
- Updated crash.patch to match upstream version 4.0-6.3
* Wed Feb 20 2008 Dave Anderson <anderson@redhat.com> - 4.0-6.0.5
- Second attempt at addressing the GCC 4.3 build, which failed due
to additional ptrace.h includes in the lkcd vmdump header files.
* Wed Feb 20 2008 Dave Anderson <anderson@redhat.com> - 4.0-6.0.4
- First attempt at addressing the GCC 4.3 build, which failed on x86_64
because ptrace-abi.h (included by ptrace.h) uses the "u32" typedef,
which relies on <asm/types.h>, and include/asm-x86_64/types.h
does not not typedef u32 as done in include/asm-x86/types.h.
* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 4.0-6.0.3
- Autorebuild for GCC 4.3
* Wed Jan 23 2008 Dave Anderson <anderson@redhat.com> - 4.0-5.0.3
- Updated crash.patch to match upstream version 4.0-5.0.
* Wed Aug 29 2007 Dave Anderson <anderson@redhat.com> - 4.0-4.6.2
- Updated crash.patch to match upstream version 4.0-4.6.
* Wed Sep 13 2006 Dave Anderson <anderson@redhat.com> - 4.0-3.3
- Updated crash.patch to match upstream version 4.0-3.3.
- Support for x86_64 relocatable kernels. BZ #204557
* Mon Aug 7 2006 Dave Anderson <anderson@redhat.com> - 4.0-3.1
- Updated crash.patch to match upstream version 4.0-3.1.
- Added kdump reference to description.
- Added s390 and s390x to ExclusiveArch list. BZ #199125
- Removed LKCD v1 pt_regs references for s390/s390x build.
- Removed LKCD v2_v3 pt_regs references for for s390/s390x build.
* Fri Jul 14 2006 Jesse Keating <jkeating@redhat.com> - 4.0-3
- rebuild
* Mon May 15 2006 Dave Anderson <anderson@redhat.com> - 4.0-2.26.4
- Updated crash.patch such that <asm/page.h> is not #include'd
by s390_dump.c; IBM did not make the file s390[s] only; BZ #192719
* Mon May 15 2006 Dave Anderson <anderson@redhat.com> - 4.0-2.26.3
- Updated crash.patch such that <asm/page.h> is not #include'd
by vas_crash.h; only ia64 build complained; BZ #191719
* Mon May 15 2006 Dave Anderson <anderson@redhat.com> - 4.0-2.26.2
- Updated crash.patch such that <asm/segment.h> is not #include'd
by lkcd_x86_trace.c; also for BZ #191719
* Mon May 15 2006 Dave Anderson <anderson@redhat.com> - 4.0-2.26.1
- Updated crash.patch to bring it up to 4.0-2.26, which should
address BZ #191719 - "crash fails to build in mock"
* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 4.0-2.18.1
- rebuilt for new gcc4.1 snapshot and glibc changes
* Wed Jan 04 2006 Dave Anderson <anderson@redhat.com> 4.0-2.18
- Updated source package to crash-4.0.tar.gz, and crash.patch
to bring it up to 4.0-2.18.
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt
* Thu Mar 03 2005 Dave Anderson <anderson@redhat.com> 3.10-13
- Compiler error- and warning-related fixes for gcc 4 build.
- Update to enhance x86 and x86_64 gdb disassembly output so as to
symbolically display call targets from kernel module text without
requiring module debuginfo data.
- Fix hole where an ia64 vmcore could be mistakenly accepted as a
usable dumpfile on an x86_64 machine, leading eventually to a
non-related error message.
* Wed Mar 02 2005 Dave Anderson <anderson@redhat.com> 3.10-12
- rebuild (gcc 4)
* Thu Feb 10 2005 Dave Anderson <anderson@redhat.com> 3.10-9
- Updated source package to crash-3.10.tar.gz, containing
IBM's final ppc64 processor support for RHEL4
- Fixes potential "bt -a" hang on dumpfile where netdump IPI interrupted
an x86 process while executing the instructions just after it had entered
the kernel for a syscall, but before calling the handler. BZ #139437
- Update to handle backtraces in dumpfiles generated on IA64 with the
INIT switch (functionality intro'd in RHEL3-U5 kernel). BZ #139429
- Fix for handling ia64 and x86_64 machines booted with maxcpus=1 on
an SMP kernel. BZ #139435
- Update to handle backtraces in dumpfiles generated on x86_64 from the
NMI exception stack (functionality intro'd in RHEL3-U5 kernel).
- "kmem -[sS]" beefed up to more accurately verify slab cache chains
and report errors found.
- Fix for ia64 INIT switch-generated backtrace handling when
init_handler_platform() is inlined into ia64_init_handler();
properly handles both RHEL3 and RHEL4 kernel patches.
BZ #138350
- Update to enhance ia64 gdb disassembly output so as to
symbolically display call targets from kernel module
text without requiring module debuginfo data.
* Wed Jul 14 2004 Dave Anderson <anderson@redhat.com> 3.8-5
- bump release for fc3
* Tue Jul 13 2004 Dave Anderson <anderson@redhat.com> 3.8-4
- Fix for gcc 3.4.x/gdb issue where vmlinux was mistakenly presumed non-debug
* Fri Jun 25 2004 Dave Anderson <anderson@redhat.com> 3.8-3
- remove (harmless) error message during ia64 diskdump invocation when
an SMP system gets booted with maxcpus=1
- several 2.6 kernel specific updates
* Thu Jun 17 2004 Dave Anderson <anderson@redhat.com> 3.8-2
- updated source package to crash-3.8.tar.gz
- diskdump support
- x86_64 processor support
* Mon Sep 22 2003 Dave Anderson <anderson@redhat.com> 3.7-5
- make bt recovery code start fix-up only upon reaching first faulting frame
* Fri Sep 19 2003 Dave Anderson <anderson@redhat.com> 3.7-4
- fix "bt -e" and bt recovery code to recognize new __KERNEL_CS and DS
* Wed Sep 10 2003 Dave Anderson <anderson@redhat.com> 3.7-3
- patch to recognize per-cpu GDT changes that redefine __KERNEL_CS and DS
* Wed Sep 10 2003 Dave Anderson <anderson@redhat.com> 3.7-2
- patches for netdump active_set determination and slab info gathering
* Wed Aug 20 2003 Dave Anderson <anderson@redhat.com> 3.7-1
- updated source package to crash-3.7.tar.gz
* Wed Jul 23 2003 Dave Anderson <anderson@redhat.com> 3.6-1
- removed Packager, Distribution, and Vendor tags
- updated source package to crash-3.6.tar.gz
* Fri Jul 18 2003 Jay Fenlason <fenlason@redhat.com> 3.5-2
- remove ppc from arch list, since it doesn't work with ppc64 kernels
- remove alpha from the arch list since we don't build it any more
* Fri Jul 18 2003 Matt Wilson <msw@redhat.com> 3.5-1
- use %%defattr(-,root,root)
* Tue Jul 15 2003 Jay Fenlason <fenlason@redhat.com>
- Updated spec file as first step in turning this into a real RPM for taroon.
- Wrote man page.

65
crash_log.patch Normal file
View File

@ -0,0 +1,65 @@
--- crash-7.0.5/kernel.c.orig
+++ crash-7.0.5/kernel.c
@@ -8980,6 +8980,12 @@ get_log_from_vmcoreinfo(char *file, char
fprintf(fp, "OFFSET(log.ts_nsec): %ld\n",
vmc->log_ts_nsec_OFFSET);
free(string);
+ } else if ((string = vmcoreinfo_read_string("OFFSET(printk_log.ts_nsec)"))) {
+ vmc->log_ts_nsec_OFFSET = dtol(string, RETURN_ON_ERROR, NULL);
+ if (CRASHDEBUG(1))
+ fprintf(fp, "OFFSET(printk_log.ts_nsec): %ld\n",
+ vmc->log_ts_nsec_OFFSET);
+ free(string);
}
if ((string = vmcoreinfo_read_string("OFFSET(log.len)"))) {
vmc->log_len_OFFSET = dtol(string, RETURN_ON_ERROR, NULL);
@@ -8987,6 +8993,12 @@ get_log_from_vmcoreinfo(char *file, char
fprintf(fp, "OFFSET(log.len): %ld\n",
vmc->log_len_OFFSET);
free(string);
+ } else if ((string = vmcoreinfo_read_string("OFFSET(printk_log.len)"))) {
+ vmc->log_len_OFFSET = dtol(string, RETURN_ON_ERROR, NULL);
+ if (CRASHDEBUG(1))
+ fprintf(fp, "OFFSET(printk_log.len): %ld\n",
+ vmc->log_len_OFFSET);
+ free(string);
}
if ((string = vmcoreinfo_read_string("OFFSET(log.text_len)"))) {
vmc->log_text_len_OFFSET = dtol(string, RETURN_ON_ERROR, NULL);
@@ -8994,6 +9006,12 @@ get_log_from_vmcoreinfo(char *file, char
fprintf(fp, "OFFSET(log.text_len): %ld\n",
vmc->log_text_len_OFFSET);
free(string);
+ } else if ((string = vmcoreinfo_read_string("OFFSET(printk_log.text_len)"))) {
+ vmc->log_text_len_OFFSET = dtol(string, RETURN_ON_ERROR, NULL);
+ if (CRASHDEBUG(1))
+ fprintf(fp, "OFFSET(printk_log.text_len): %ld\n",
+ vmc->log_text_len_OFFSET);
+ free(string);
}
if ((string = vmcoreinfo_read_string("OFFSET(log.dict_len)"))) {
vmc->log_dict_len_OFFSET = dtol(string, RETURN_ON_ERROR, NULL);
@@ -9001,12 +9019,23 @@ get_log_from_vmcoreinfo(char *file, char
fprintf(fp, "OFFSET(log.dict_len): %ld\n",
vmc->log_dict_len_OFFSET);
free(string);
+ } else if ((string = vmcoreinfo_read_string("OFFSET(printk_log.dict_len)"))) {
+ vmc->log_dict_len_OFFSET = dtol(string, RETURN_ON_ERROR, NULL);
+ if (CRASHDEBUG(1))
+ fprintf(fp, "OFFSET(printk_log.dict_len): %ld\n",
+ vmc->log_dict_len_OFFSET);
+ free(string);
}
if ((string = vmcoreinfo_read_string("SIZE(log)"))) {
vmc->log_SIZE = dtol(string, RETURN_ON_ERROR, NULL);
if (CRASHDEBUG(1))
fprintf(fp, "SIZE(log): %ld\n", vmc->log_SIZE);
free(string);
+ } else if ((string = vmcoreinfo_read_string("SIZE(printk_log)"))) {
+ vmc->log_SIZE = dtol(string, RETURN_ON_ERROR, NULL);
+ if (CRASHDEBUG(1))
+ fprintf(fp, "SIZE(printk_log): %ld\n", vmc->log_SIZE);
+ free(string);
}
/*

34
elf64-s390.patch Normal file
View File

@ -0,0 +1,34 @@
commit 5649088bccc35f1a824e2b0c6482397b13c94abd
Author: Dave Anderson <anderson@redhat.com>
Date: Thu May 5 09:01:35 2016 -0400
Fix for a "[-Werror=misleading-indentation]" compiler warning that
is generated by gdb-7.6/bfd/elf64-s390.c when building S390X in a
Fedora Rawhide environment with gcc-6.0.0.
(anderson@redhat.com)
diff --git a/gdb-7.6.patch b/gdb-7.6.patch
index 920ea1c..794555f 100644
--- a/gdb-7.6.patch
+++ b/gdb-7.6.patch
@@ -2206,3 +2206,20 @@ diff -up gdb-7.6/bfd/elf64-ppc.c.orig gdb-7.6/bfd/elf64-ppc.c
+ gi->finished = 1;
+}
#endif
+--- gdb-7.6/bfd/elf64-s390.c.orig
++++ gdb-7.6/bfd/elf64-s390.c
+@@ -323,10 +323,10 @@ elf_s390_reloc_name_lookup (bfd *abfd AT
+ && strcasecmp (elf_howto_table[i].name, r_name) == 0)
+ return &elf_howto_table[i];
+
+- if (strcasecmp (elf64_s390_vtinherit_howto.name, r_name) == 0)
+- return &elf64_s390_vtinherit_howto;
+- if (strcasecmp (elf64_s390_vtentry_howto.name, r_name) == 0)
+- return &elf64_s390_vtentry_howto;
++ if (strcasecmp (elf64_s390_vtinherit_howto.name, r_name) == 0)
++ return &elf64_s390_vtinherit_howto;
++ if (strcasecmp (elf64_s390_vtentry_howto.name, r_name) == 0)
++ return &elf64_s390_vtentry_howto;
+
+ return NULL;
+ }

241
gdb_Werror_fixes.patch Normal file
View File

@ -0,0 +1,241 @@
--- crash-5.1.2/gdb-7.0.patch.orig
+++ crash-5.1.2/gdb-7.0.patch
@@ -1316,3 +1316,238 @@
if (! verilog_write_record (abfd,
location,
+--- gdb-7.0/bfd/elf64-x86-64.c.orig
++++ gdb-7.0/bfd/elf64-x86-64.c
+@@ -2628,7 +2628,7 @@ elf64_x86_64_relocate_section (bfd *outp
+ }
+ else
+ {
+- bfd_boolean warned;
++ bfd_boolean warned ATTRIBUTE_UNUSED;
+
+ RELOC_FOR_GLOBAL_SYMBOL (info, input_bfd, input_section, rel,
+ r_symndx, symtab_hdr, sym_hashes,
+@@ -3284,10 +3284,9 @@ elf64_x86_64_relocate_section (bfd *outp
+ movl $x@tpoff, %rax
+ */
+
+- unsigned int val, type, type2;
++ unsigned int val, type;
+
+ type = bfd_get_8 (input_bfd, contents + roff - 3);
+- type2 = bfd_get_8 (input_bfd, contents + roff - 2);
+ val = bfd_get_8 (input_bfd, contents + roff - 1);
+ bfd_put_8 (output_bfd, 0x48 | ((type >> 2) & 1),
+ contents + roff - 3);
+@@ -3532,12 +3531,6 @@ elf64_x86_64_relocate_section (bfd *outp
+ movq x@gottpoff(%rip), %rax # before xchg %ax,%ax
+ */
+
+- unsigned int val, type, type2;
+-
+- type = bfd_get_8 (input_bfd, contents + roff - 3);
+- type2 = bfd_get_8 (input_bfd, contents + roff - 2);
+- val = bfd_get_8 (input_bfd, contents + roff - 1);
+-
+ /* Now modify the instruction as appropriate. To
+ turn a leaq into a movq in the form we use it, it
+ suffices to change the second byte from 0x8d to
+@@ -3563,10 +3556,6 @@ elf64_x86_64_relocate_section (bfd *outp
+ Change it to:
+ xchg %ax,%ax. */
+
+- unsigned int val, type;
+-
+- type = bfd_get_8 (input_bfd, contents + roff);
+- val = bfd_get_8 (input_bfd, contents + roff + 1);
+ bfd_put_8 (output_bfd, 0x66, contents + roff);
+ bfd_put_8 (output_bfd, 0x90, contents + roff + 1);
+ continue;
+--- gdb-7.0/bfd/elf.c.orig
++++ gdb-7.0/bfd/elf.c
+@@ -4832,7 +4832,6 @@ static bfd_boolean
+ prep_headers (bfd *abfd)
+ {
+ Elf_Internal_Ehdr *i_ehdrp; /* Elf file header, internal form */
+- Elf_Internal_Phdr *i_phdrp = 0; /* Program header table, internal form */
+ struct elf_strtab_hash *shstrtab;
+ const struct elf_backend_data *bed = get_elf_backend_data (abfd);
+
+@@ -4900,7 +4899,6 @@ prep_headers (bfd *abfd)
+ else
+ {
+ i_ehdrp->e_phentsize = 0;
+- i_phdrp = 0;
+ i_ehdrp->e_phoff = 0;
+ }
+
+@@ -4948,7 +4946,6 @@ bfd_boolean
+ _bfd_elf_write_object_contents (bfd *abfd)
+ {
+ const struct elf_backend_data *bed = get_elf_backend_data (abfd);
+- Elf_Internal_Ehdr *i_ehdrp;
+ Elf_Internal_Shdr **i_shdrp;
+ bfd_boolean failed;
+ unsigned int count, num_sec;
+@@ -4958,7 +4955,6 @@ _bfd_elf_write_object_contents (bfd *abf
+ return FALSE;
+
+ i_shdrp = elf_elfsections (abfd);
+- i_ehdrp = elf_elfheader (abfd);
+
+ failed = FALSE;
+ bfd_map_over_sections (abfd, bed->s->write_relocs, &failed);
+--- gdb-7.0/bfd/elf-eh-frame.c.orig
++++ gdb-7.0/bfd/elf-eh-frame.c
+@@ -1241,8 +1241,6 @@ _bfd_elf_eh_frame_section_offset (bfd *o
+ bfd_vma offset)
+ {
+ struct eh_frame_sec_info *sec_info;
+- struct elf_link_hash_table *htab;
+- struct eh_frame_hdr_info *hdr_info;
+ unsigned int lo, hi, mid;
+
+ if (sec->sec_info_type != ELF_INFO_TYPE_EH_FRAME)
+@@ -1252,9 +1250,6 @@ _bfd_elf_eh_frame_section_offset (bfd *o
+ if (offset >= sec->rawsize)
+ return offset - sec->rawsize + sec->size;
+
+- htab = elf_hash_table (info);
+- hdr_info = &htab->eh_info;
+-
+ lo = 0;
+ hi = sec_info->count;
+ mid = 0;
+--- gdb-7.0/bfd/elf-eh-frame.c.orig
++++ gdb-7.0/bfd/elf-eh-frame.c
+@@ -1236,7 +1236,7 @@ _bfd_elf_maybe_strip_eh_frame_hdr (struc
+
+ bfd_vma
+ _bfd_elf_eh_frame_section_offset (bfd *output_bfd ATTRIBUTE_UNUSED,
+- struct bfd_link_info *info,
++ struct bfd_link_info *info ATTRIBUTE_UNUSED,
+ asection *sec,
+ bfd_vma offset)
+ {
+--- gdb-7.0/bfd/elf32-i386.c.orig
++++ gdb-7.0/bfd/elf32-i386.c
+@@ -2909,7 +2909,7 @@ elf_i386_relocate_section (bfd *output_b
+ }
+ else
+ {
+- bfd_boolean warned;
++ bfd_boolean warned ATTRIBUTE_UNUSED;
+
+ RELOC_FOR_GLOBAL_SYMBOL (info, input_bfd, input_section, rel,
+ r_symndx, symtab_hdr, sym_hashes,
+--- gdb-7.0/bfd/aoutx.h.orig
++++ gdb-7.0/bfd/aoutx.h
+@@ -5233,8 +5233,6 @@ aout_link_write_symbols (struct aout_fin
+ static bfd_boolean
+ aout_link_input_bfd (struct aout_final_link_info *finfo, bfd *input_bfd)
+ {
+- bfd_size_type sym_count;
+-
+ BFD_ASSERT (bfd_get_format (input_bfd) == bfd_object);
+
+ /* If this is a dynamic object, it may need special handling. */
+@@ -5248,8 +5246,6 @@ aout_link_input_bfd (struct aout_final_l
+ if (! aout_get_external_symbols (input_bfd))
+ return FALSE;
+
+- sym_count = obj_aout_external_sym_count (input_bfd);
+-
+ /* Write out the symbols and get a map of the new indices. The map
+ is placed into finfo->symbol_map. */
+ if (! aout_link_write_symbols (finfo, input_bfd))
+--- gdb-7.0/bfd/peXXigen.c.orig
++++ gdb-7.0/bfd/peXXigen.c
+@@ -1919,7 +1919,6 @@ pe_print_reloc (bfd * abfd, void * vfile
+ FILE *file = (FILE *) vfile;
+ bfd_byte *data = 0;
+ asection *section = bfd_get_section_by_name (abfd, ".reloc");
+- bfd_size_type datasize;
+ bfd_size_type i;
+ bfd_size_type start, stop;
+
+@@ -1932,7 +1931,6 @@ pe_print_reloc (bfd * abfd, void * vfile
+ fprintf (file,
+ _("\n\nPE File Base Relocations (interpreted .reloc section contents)\n"));
+
+- datasize = section->size;
+ if (! bfd_malloc_and_get_section (abfd, section, &data))
+ {
+ if (data != NULL)
+--- gdb-7.0/bfd/archive64.c.orig
++++ gdb-7.0/bfd/archive64.c
+@@ -43,7 +43,6 @@ bfd_elf64_archive_slurp_armap (bfd *abfd
+ {
+ struct artdata *ardata = bfd_ardata (abfd);
+ char nextname[17];
+- file_ptr arhdrpos;
+ bfd_size_type i, parsed_size, nsymz, stringsize, carsym_size, ptrsize;
+ struct areltdata *mapdata;
+ bfd_byte int_buf[8];
+@@ -55,7 +54,6 @@ bfd_elf64_archive_slurp_armap (bfd *abfd
+ ardata->symdefs = NULL;
+
+ /* Get the name of the first element. */
+- arhdrpos = bfd_tell (abfd);
+ i = bfd_bread (nextname, 16, abfd);
+ if (i == 0)
+ return TRUE;
+--- gdb-7.0/opcodes/i386-dis.c.orig
++++ gdb-7.0/opcodes/i386-dis.c
+@@ -9410,7 +9410,6 @@ print_insn (bfd_vma pc, disassemble_info
+ int sizeflag;
+ const char *p;
+ struct dis_private priv;
+- unsigned char op;
+ char prefix_obuf[32];
+ char *prefix_obufp;
+
+@@ -9607,8 +9606,6 @@ print_insn (bfd_vma pc, disassemble_info
+ return 1;
+ }
+
+- op = 0;
+-
+ if (*codep == 0x0f)
+ {
+ unsigned char threebyte;
+@@ -11595,7 +11592,6 @@ static void
+ OP_sI (int bytemode, int sizeflag)
+ {
+ bfd_signed_vma op;
+- bfd_signed_vma mask = -1;
+
+ switch (bytemode)
+ {
+@@ -11604,7 +11600,6 @@ OP_sI (int bytemode, int sizeflag)
+ op = *codep++;
+ if ((op & 0x80) != 0)
+ op -= 0x100;
+- mask = 0xffffffff;
+ break;
+ case v_mode:
+ USED_REX (REX_W);
+@@ -11613,11 +11608,9 @@ OP_sI (int bytemode, int sizeflag)
+ else if (sizeflag & DFLAG)
+ {
+ op = get32s ();
+- mask = 0xffffffff;
+ }
+ else
+ {
+- mask = 0xffffffff;
+ op = get16 ();
+ if ((op & 0x8000) != 0)
+ op -= 0x10000;
+@@ -11626,7 +11619,6 @@ OP_sI (int bytemode, int sizeflag)
+ break;
+ case w_mode:
+ op = get16 ();
+- mask = 0xffffffff;
+ if ((op & 0x8000) != 0)
+ op -= 0x10000;
+ break;

View File

@ -0,0 +1,61 @@
--- crash-7.1.6/gdb-7.6.patch.orig
+++ crash-7.1.6/gdb-7.6.patch
@@ -2299,3 +2299,58 @@ diff -up gdb-7.6/bfd/elf64-ppc.c.orig gd
do_cleanups (old_chain);
}
+--- gdb-7.6/gdb/gdb_proc_service.h.orig
++++ gdb-7.6/gdb/gdb_proc_service.h
+@@ -115,7 +115,7 @@ extern pid_t ps_getpid (struct ps_procha
+ /* Fetch the special per-thread address associated with the given LWP.
+ This call is only used on a few platforms (most use a normal register).
+ The meaning of the `int' parameter is machine-dependent. */
+-extern ps_err_e ps_get_thread_area (const struct ps_prochandle *,
++extern ps_err_e ps_get_thread_area (struct ps_prochandle *,
+ lwpid_t, int, psaddr_t *);
+
+
+--- gdb-7.6/gdb/amd64-linux-nat.c.orig
++++ gdb-7.6/gdb/amd64-linux-nat.c
+@@ -493,7 +493,7 @@ amd64_linux_new_fork (struct lwp_info *p
+ a request for a thread's local storage address. */
+
+ ps_err_e
+-ps_get_thread_area (const struct ps_prochandle *ph,
++ps_get_thread_area (struct ps_prochandle *ph,
+ lwpid_t lwpid, int idx, void **base)
+ {
+ if (gdbarch_bfd_arch_info (target_gdbarch ())->bits_per_word == 32)
+--- gdb-7.6/gdb/aarch64-linux-nat.c.orig
++++ gdb-7.6/gdb/aarch64-linux-nat.c
+@@ -750,7 +750,7 @@ aarch64_linux_new_fork (struct lwp_info
+ storage (or its descriptor). */
+
+ ps_err_e
+-ps_get_thread_area (const struct ps_prochandle *ph,
++ps_get_thread_area (struct ps_prochandle *ph,
+ lwpid_t lwpid, int idx, void **base)
+ {
+ struct iovec iovec;
+--- gdb-7.6/gdb/arm-linux-nat.c.orig
++++ gdb-7.6/gdb/arm-linux-nat.c
+@@ -613,7 +613,7 @@ supply_fpregset (struct regcache *regcac
+ /* Fetch the thread-local storage pointer for libthread_db. */
+
+ ps_err_e
+-ps_get_thread_area (const struct ps_prochandle *ph,
++ps_get_thread_area (struct ps_prochandle *ph,
+ lwpid_t lwpid, int idx, void **base)
+ {
+ if (ptrace (PTRACE_GET_THREAD_AREA, lwpid, NULL, base) != 0)
+--- gdb-7.6/gdb/i386-linux-nat.c.orig
++++ gdb-7.6/gdb/i386-linux-nat.c
+@@ -849,7 +849,7 @@ i386_linux_new_fork (struct lwp_info *pa
+ storage (or its descriptor). */
+
+ ps_err_e
+-ps_get_thread_area (const struct ps_prochandle *ph,
++ps_get_thread_area (struct ps_prochandle *ph,
+ lwpid_t lwpid, int idx, void **base)
+ {
+ /* NOTE: cagney/2003-08-26: The definition of this buffer is found

View File

@ -0,0 +1,61 @@
--- crash-7.1.8/gdb-7.6.patch.orig
+++ crash-7.1.8/gdb-7.6.patch
@@ -2323,3 +2323,58 @@ diff -up gdb-7.6/opcodes/configure.orig
NO_WERROR="-Wno-error"
fi
+--- gdb-7.6/gdb/gdb_proc_service.h.orig
++++ gdb-7.6/gdb/gdb_proc_service.h
+@@ -115,7 +115,7 @@ extern pid_t ps_getpid (struct ps_procha
+ /* Fetch the special per-thread address associated with the given LWP.
+ This call is only used on a few platforms (most use a normal register).
+ The meaning of the `int' parameter is machine-dependent. */
+-extern ps_err_e ps_get_thread_area (const struct ps_prochandle *,
++extern ps_err_e ps_get_thread_area (struct ps_prochandle *,
+ lwpid_t, int, psaddr_t *);
+
+
+--- gdb-7.6/gdb/amd64-linux-nat.c.orig
++++ gdb-7.6/gdb/amd64-linux-nat.c
+@@ -493,7 +493,7 @@ amd64_linux_new_fork (struct lwp_info *p
+ a request for a thread's local storage address. */
+
+ ps_err_e
+-ps_get_thread_area (const struct ps_prochandle *ph,
++ps_get_thread_area (struct ps_prochandle *ph,
+ lwpid_t lwpid, int idx, void **base)
+ {
+ if (gdbarch_bfd_arch_info (target_gdbarch ())->bits_per_word == 32)
+--- gdb-7.6/gdb/aarch64-linux-nat.c.orig
++++ gdb-7.6/gdb/aarch64-linux-nat.c
+@@ -750,7 +750,7 @@ aarch64_linux_new_fork (struct lwp_info
+ storage (or its descriptor). */
+
+ ps_err_e
+-ps_get_thread_area (const struct ps_prochandle *ph,
++ps_get_thread_area (struct ps_prochandle *ph,
+ lwpid_t lwpid, int idx, void **base)
+ {
+ struct iovec iovec;
+--- gdb-7.6/gdb/arm-linux-nat.c.orig
++++ gdb-7.6/gdb/arm-linux-nat.c
+@@ -613,7 +613,7 @@ supply_fpregset (struct regcache *regcac
+ /* Fetch the thread-local storage pointer for libthread_db. */
+
+ ps_err_e
+-ps_get_thread_area (const struct ps_prochandle *ph,
++ps_get_thread_area (struct ps_prochandle *ph,
+ lwpid_t lwpid, int idx, void **base)
+ {
+ if (ptrace (PTRACE_GET_THREAD_AREA, lwpid, NULL, base) != 0)
+--- gdb-7.6/gdb/i386-linux-nat.c.orig
++++ gdb-7.6/gdb/i386-linux-nat.c
+@@ -849,7 +849,7 @@ i386_linux_new_fork (struct lwp_info *pa
+ storage (or its descriptor). */
+
+ ps_err_e
+-ps_get_thread_area (const struct ps_prochandle *ph,
++ps_get_thread_area (struct ps_prochandle *ph,
+ lwpid_t lwpid, int idx, void **base)
+ {
+ /* NOTE: cagney/2003-08-26: The definition of this buffer is found

View File

@ -0,0 +1,32 @@
commit db07dbf5a7e19806b1629bd4125e6643978c6f9f
Author: Dave Anderson <anderson@redhat.com>
Date: Thu Feb 19 16:16:33 2015 -0500
Prepare for the future increment of Linux 3.x to 4.x.
(anderson@redhat.com)
diff --git a/kernel.c b/kernel.c
index cf858c2..a5e0c64 100644
--- a/kernel.c
+++ b/kernel.c
@@ -1211,7 +1211,8 @@ verify_namelist()
sprintf(buffer3, "(unknown)");
while (fgets(buffer, BUFSIZE-1, pipe)) {
if (!strstr(buffer, "Linux version 2.") &&
- !strstr(buffer, "Linux version 3."))
+ !strstr(buffer, "Linux version 3.") &&
+ !strstr(buffer, "Linux version 4."))
continue;
if (strstr(buffer, kt->proc_version)) {
@@ -4909,7 +4910,8 @@ debug_kernel_version(char *namelist)
argc = 0;
while (fgets(buf, BUFSIZE-1, pipe)) {
if (!strstr(buf, "Linux version 2.") &&
- !strstr(buf, "Linux version 3."))
+ !strstr(buf, "Linux version 3.") &&
+ !strstr(buf, "Linux version 4."))
continue;
argc = parse_line(buf, arglist);

22
lzo_snappy.patch Normal file
View File

@ -0,0 +1,22 @@
--- crash-7.1.4/diskdump.c.orig
+++ crash-7.1.4/diskdump.c
@@ -23,6 +23,8 @@
* GNU General Public License for more details.
*/
+#define LZO
+#define SNAPPY
#include "defs.h"
#include "diskdump.h"
#include "xen_dom0.h"
--- crash-7.1.4/Makefile.orig
+++ crash-7.1.4/Makefile
@@ -228,7 +228,7 @@ all: make_configure
gdb_merge: force
@if [ ! -f ${GDB}/README ]; then \
make --no-print-directory gdb_unzip; fi
- @echo "${LDFLAGS} -lz -ldl -rdynamic" > ${GDB}/gdb/mergelibs
+ @echo "${LDFLAGS} -lz -llzo2 -lsnappy -ldl -rdynamic" > ${GDB}/gdb/mergelibs
@echo "../../${PROGRAM} ../../${PROGRAM}lib.a" > ${GDB}/gdb/mergeobj
@rm -f ${PROGRAM}
@if [ ! -f ${GDB}/config.status ]; then \

View File

@ -0,0 +1,159 @@
--- crash-5.1.7/gdb-7.0.patch.orig
+++ crash-5.1.7/gdb-7.0.patch
@@ -1685,3 +1685,156 @@
add_symbol_to_list (sym, &global_symbols);
}
child_die = sibling_die (child_die);
+--- gdb-7.0/bfd/elf64-ppc.c.orig
++++ gdb-7.0/bfd/elf64-ppc.c
+@@ -4764,7 +4764,7 @@ ppc64_elf_check_relocs (bfd *abfd, struc
+ {
+ struct ppc_link_hash_table *htab;
+ Elf_Internal_Shdr *symtab_hdr;
+- struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
++ struct elf_link_hash_entry **sym_hashes;
+ const Elf_Internal_Rela *rel;
+ const Elf_Internal_Rela *rel_end;
+ asection *sreloc;
+@@ -4793,10 +4793,6 @@ ppc64_elf_check_relocs (bfd *abfd, struc
+ symtab_hdr = &elf_symtab_hdr (abfd);
+
+ sym_hashes = elf_sym_hashes (abfd);
+- sym_hashes_end = (sym_hashes
+- + symtab_hdr->sh_size / sizeof (Elf64_External_Sym)
+- - symtab_hdr->sh_info);
+-
+ sreloc = NULL;
+ opd_sym_map = NULL;
+ if (strcmp (bfd_get_section_name (abfd, sec), ".opd") == 0)
+@@ -5672,6 +5668,9 @@ ppc64_elf_gc_sweep_hook (bfd *abfd, stru
+ elf_section_data (sec)->local_dynrel = NULL;
+
+ htab = ppc_hash_table (info);
++ if (htab == NULL)
++ return FALSE;
++
+ symtab_hdr = &elf_symtab_hdr (abfd);
+ sym_hashes = elf_sym_hashes (abfd);
+ local_got_ents = elf_local_got_ents (abfd);
+@@ -6790,7 +6789,6 @@ ppc64_elf_edit_opd (bfd *obfd, struct bf
+ Elf_Internal_Rela *relstart, *rel, *relend;
+ Elf_Internal_Shdr *symtab_hdr;
+ Elf_Internal_Sym *local_syms;
+- struct elf_link_hash_entry **sym_hashes;
+ bfd_vma offset;
+ struct _opd_sec_data *opd;
+ bfd_boolean need_edit, add_aux_fields;
+@@ -6812,7 +6810,6 @@ ppc64_elf_edit_opd (bfd *obfd, struct bf
+
+ local_syms = NULL;
+ symtab_hdr = &elf_symtab_hdr (ibfd);
+- sym_hashes = elf_sym_hashes (ibfd);
+
+ /* Read the relocations. */
+ relstart = _bfd_elf_link_read_relocs (ibfd, sec, NULL, NULL,
+@@ -7664,7 +7661,6 @@ ppc64_elf_edit_toc (bfd *obfd ATTRIBUTE_
+ asection *toc, *sec;
+ Elf_Internal_Shdr *symtab_hdr;
+ Elf_Internal_Sym *local_syms;
+- struct elf_link_hash_entry **sym_hashes;
+ Elf_Internal_Rela *relstart, *rel;
+ unsigned long *skip, *drop;
+ unsigned char *used;
+@@ -7679,7 +7675,6 @@ ppc64_elf_edit_toc (bfd *obfd ATTRIBUTE_
+
+ local_syms = NULL;
+ symtab_hdr = &elf_symtab_hdr (ibfd);
+- sym_hashes = elf_sym_hashes (ibfd);
+
+ /* Look at sections dropped from the final link. */
+ skip = NULL;
+--- gdb-7.0/bfd/elf32-ppc.c.orig
++++ gdb-7.0/bfd/elf32-ppc.c
+@@ -4735,7 +4735,6 @@ ppc_elf_tls_optimize (bfd *obfd ATTRIBUT
+ }
+ else
+ {
+- Elf_Internal_Sym *sym;
+ bfd_signed_vma *lgot_refs;
+ struct plt_entry **local_plt;
+ char *lgot_masks;
+@@ -4754,7 +4753,6 @@ ppc_elf_tls_optimize (bfd *obfd ATTRIBUT
+ return FALSE;
+ }
+ }
+- sym = locsyms + r_symndx;
+ lgot_refs = elf_local_got_refcounts (ibfd);
+ if (lgot_refs == NULL)
+ abort ();
+@@ -5941,7 +5939,7 @@ ppc_elf_relax_section (bfd *abfd,
+ for (irel = internal_relocs; irel < irelend; irel++)
+ {
+ unsigned long r_type = ELF32_R_TYPE (irel->r_info);
+- bfd_vma reladdr, toff, roff;
++ bfd_vma toff, roff;
+ asection *tsec;
+ struct one_fixup *f;
+ size_t insn_offset = 0;
+@@ -6125,7 +6123,6 @@ ppc_elf_relax_section (bfd *abfd,
+ continue;
+
+ roff = irel->r_offset;
+- reladdr = isec->output_section->vma + isec->output_offset + roff;
+
+ /* If the branch is in range, no need to do anything. */
+ if (tsec != bfd_und_section_ptr
+--- gdb-7.0/bfd/coffcode.h.orig
++++ gdb-7.0/bfd/coffcode.h
+@@ -3527,7 +3527,9 @@ coff_write_object_contents (bfd * abfd)
+ asection *current;
+ bfd_boolean hasrelocs = FALSE;
+ bfd_boolean haslinno = FALSE;
++#ifdef COFF_IMAGE_WITH_PE
+ bfd_boolean hasdebug = FALSE;
++#endif
+ file_ptr scn_base;
+ file_ptr reloc_base;
+ file_ptr lineno_base;
+@@ -3630,9 +3632,9 @@ coff_write_object_contents (bfd * abfd)
+ current = current->next)
+ {
+ struct internal_scnhdr section;
++#ifdef COFF_IMAGE_WITH_PE
+ bfd_boolean is_reloc_section = FALSE;
+
+-#ifdef COFF_IMAGE_WITH_PE
+ if (strcmp (current->name, DOT_RELOC) == 0)
+ {
+ is_reloc_section = TRUE;
+@@ -3731,9 +3733,11 @@ coff_write_object_contents (bfd * abfd)
+ #endif
+ if (current->lineno_count != 0)
+ haslinno = TRUE;
++#ifdef COFF_IMAGE_WITH_PE
+ if ((current->flags & SEC_DEBUGGING) != 0
+ && ! is_reloc_section)
+ hasdebug = TRUE;
++#endif
+
+ #ifdef RS6000COFF_C
+ #ifndef XCOFF64
+--- gdb-7.0/bfd/coff-rs6000.c.orig
++++ gdb-7.0/bfd/coff-rs6000.c
+@@ -3068,7 +3068,7 @@ xcoff_complain_overflow_bitfield_func (i
+ bfd_vma relocation;
+ struct reloc_howto_struct *howto;
+ {
+- bfd_vma addrmask, fieldmask, signmask, ss;
++ bfd_vma fieldmask, signmask, ss;
+ bfd_vma a, b, sum;
+
+ /* Get the values to be added together. For signed and unsigned
+@@ -3076,7 +3076,6 @@ xcoff_complain_overflow_bitfield_func (i
+ the size of an address. For bitfields, all the bits matter.
+ See also bfd_check_overflow. */
+ fieldmask = N_ONES (howto->bitsize);
+- addrmask = N_ONES (bfd_arch_bits_per_address (input_bfd)) | fieldmask;
+ a = relocation;
+ b = val & howto->src_mask;
+

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (crash-7.2.7.tar.gz) = 14e0c5842b752faa7f2c5667517c9cb214a172cea5b779df5cd38feec6472eb6fd6508346c1c4eec02d4565fd6dade270e851ebf571e778023f32ac7f82836b7
SHA512 (crash-7.2.8.tar.gz) = 3269760a50b49f25af0e1c43d60432e603036793aa542f8ccfb0b8019376da45afa7c053d3860ae2130b6471f3ac72cff78f1096e9ffa8c6f1d34afb52208e70

View File

@ -0,0 +1,169 @@
--- crash-6.0.8/gdb-7.3.1.patch.orig
+++ crash-6.0.8/gdb-7.3.1.patch
@@ -1526,3 +1526,166 @@ diff -up gdb-7.3.1/gdb/psymtab.c.orig gd
+ return NULL;
+}
#endif
+--- gdb-7.3.1/gdb/arm-linux-nat.c.orig
++++ gdb-7.3.1/gdb/arm-linux-nat.c
+@@ -1203,7 +1203,7 @@ arm_linux_remove_watchpoint (CORE_ADDR a
+ static int
+ arm_linux_stopped_data_address (struct target_ops *target, CORE_ADDR *addr_p)
+ {
+- struct siginfo *siginfo_p = linux_nat_get_siginfo (inferior_ptid);
++ siginfo_t *siginfo_p = linux_nat_get_siginfo (inferior_ptid);
+ int slot = siginfo_p->si_errno;
+
+ /* This must be a hardware breakpoint. */
+--- gdb-7.3.1/gdb/ia64-linux-nat.c.orig
++++ gdb-7.3.1/gdb/ia64-linux-nat.c
+@@ -640,7 +640,7 @@ static int
+ ia64_linux_stopped_data_address (struct target_ops *ops, CORE_ADDR *addr_p)
+ {
+ CORE_ADDR psr;
+- struct siginfo *siginfo_p;
++ siginfo_t *siginfo_p;
+ struct regcache *regcache = get_current_regcache ();
+
+ siginfo_p = linux_nat_get_siginfo (inferior_ptid);
+--- gdb-7.3.1/gdb/ppc-linux-nat.c.orig
++++ gdb-7.3.1/gdb/ppc-linux-nat.c
+@@ -2161,7 +2161,7 @@ ppc_linux_thread_exit (struct thread_inf
+ static int
+ ppc_linux_stopped_data_address (struct target_ops *target, CORE_ADDR *addr_p)
+ {
+- struct siginfo *siginfo_p;
++ siginfo_t *siginfo_p;
+
+ siginfo_p = linux_nat_get_siginfo (inferior_ptid);
+
+--- gdb-7.3.1/gdb/alpha-linux-tdep.c.orig
++++ gdb-7.3.1/gdb/alpha-linux-tdep.c
+@@ -115,7 +115,7 @@ alpha_linux_sigcontext_addr (struct fram
+ /* __NR_rt_sigreturn has a couple of structures on the stack. This is:
+
+ struct rt_sigframe {
+- struct siginfo info;
++ siginfo_t info;
+ struct ucontext uc;
+ };
+
+--- gdb-7.3.1/gdb/procfs.c.orig
++++ gdb-7.3.1/gdb/procfs.c
+@@ -263,7 +263,7 @@ typedef struct sigaction gdb_sigaction_t
+ #ifdef HAVE_PR_SIGINFO64_T
+ typedef pr_siginfo64_t gdb_siginfo_t;
+ #else
+-typedef struct siginfo gdb_siginfo_t;
++typedef siginfo_t gdb_siginfo_t;
+ #endif
+
+ /* On mips-irix, praddset and prdelset are defined in such a way that
+--- gdb-7.3.1/gdb/amd64-linux-nat.c.orig
++++ gdb-7.3.1/gdb/amd64-linux-nat.c
+@@ -695,13 +695,13 @@ siginfo_from_compat_siginfo (siginfo_t *
+ INF. */
+
+ static int
+-amd64_linux_siginfo_fixup (struct siginfo *native, gdb_byte *inf, int direction)
++amd64_linux_siginfo_fixup (siginfo_t *native, gdb_byte *inf, int direction)
+ {
+ /* Is the inferior 32-bit? If so, then do fixup the siginfo
+ object. */
+ if (gdbarch_addr_bit (get_frame_arch (get_current_frame ())) == 32)
+ {
+- gdb_assert (sizeof (struct siginfo) == sizeof (compat_siginfo_t));
++ gdb_assert (sizeof (siginfo_t) == sizeof (compat_siginfo_t));
+
+ if (direction == 0)
+ compat_siginfo_from_siginfo ((struct compat_siginfo *) inf, native);
+--- gdb-7.3.1/gdb/linux-nat.h.orig
++++ gdb-7.3.1/gdb/linux-nat.h
+@@ -60,7 +60,7 @@ struct lwp_info
+
+ /* Non-zero si_signo if this LWP stopped with a trap. si_addr may
+ be the address of a hardware watchpoint. */
+- struct siginfo siginfo;
++ siginfo_t siginfo;
+
+ /* STOPPED_BY_WATCHPOINT is non-zero if this LWP stopped with a data
+ watchpoint trap. */
+@@ -160,7 +160,7 @@ void linux_nat_set_new_thread (struct ta
+ that ptrace returns, and the layout in the architecture of the
+ inferior. */
+ void linux_nat_set_siginfo_fixup (struct target_ops *,
+- int (*) (struct siginfo *,
++ int (*) (siginfo_t *,
+ gdb_byte *,
+ int));
+
+@@ -169,7 +169,7 @@ void linux_nat_set_siginfo_fixup (struct
+ void linux_nat_switch_fork (ptid_t new_ptid);
+
+ /* Return the saved siginfo associated with PTID. */
+-struct siginfo *linux_nat_get_siginfo (ptid_t ptid);
++siginfo_t *linux_nat_get_siginfo (ptid_t ptid);
+
+ /* Compute and return the processor core of a given thread. */
+ int linux_nat_core_of_thread_1 (ptid_t ptid);
+--- gdb-7.3.1/gdb/linux-nat.c.orig
++++ gdb-7.3.1/gdb/linux-nat.c
+@@ -214,7 +214,7 @@ static void (*linux_nat_new_thread) (pti
+ /* The method to call, if any, when the siginfo object needs to be
+ converted between the layout returned by ptrace, and the layout in
+ the architecture of the inferior. */
+-static int (*linux_nat_siginfo_fixup) (struct siginfo *,
++static int (*linux_nat_siginfo_fixup) (siginfo_t *,
+ gdb_byte *,
+ int);
+
+@@ -3945,7 +3945,7 @@ linux_nat_mourn_inferior (struct target_
+ layout of the inferiors' architecture. */
+
+ static void
+-siginfo_fixup (struct siginfo *siginfo, gdb_byte *inf_siginfo, int direction)
++siginfo_fixup (siginfo_t *siginfo, gdb_byte *inf_siginfo, int direction)
+ {
+ int done = 0;
+
+@@ -3957,9 +3957,9 @@ siginfo_fixup (struct siginfo *siginfo,
+ if (!done)
+ {
+ if (direction == 1)
+- memcpy (siginfo, inf_siginfo, sizeof (struct siginfo));
++ memcpy (siginfo, inf_siginfo, sizeof (siginfo_t));
+ else
+- memcpy (inf_siginfo, siginfo, sizeof (struct siginfo));
++ memcpy (inf_siginfo, siginfo, sizeof (siginfo_t));
+ }
+ }
+
+@@ -3969,8 +3969,8 @@ linux_xfer_siginfo (struct target_ops *o
+ const gdb_byte *writebuf, ULONGEST offset, LONGEST len)
+ {
+ int pid;
+- struct siginfo siginfo;
+- gdb_byte inf_siginfo[sizeof (struct siginfo)];
++ siginfo_t siginfo;
++ gdb_byte inf_siginfo[sizeof (siginfo_t)];
+
+ gdb_assert (object == TARGET_OBJECT_SIGNAL_INFO);
+ gdb_assert (readbuf || writebuf);
+@@ -5784,7 +5784,7 @@ linux_nat_set_new_thread (struct target_
+ inferior. */
+ void
+ linux_nat_set_siginfo_fixup (struct target_ops *t,
+- int (*siginfo_fixup) (struct siginfo *,
++ int (*siginfo_fixup) (siginfo_t *,
+ gdb_byte *,
+ int))
+ {
+@@ -5793,7 +5793,7 @@ linux_nat_set_siginfo_fixup (struct targ
+ }
+
+ /* Return the saved siginfo associated with PTID. */
+-struct siginfo *
++siginfo_t *
+ linux_nat_get_siginfo (ptid_t ptid)
+ {
+ struct lwp_info *lp = find_lwp_pid (ptid);

32
use_system_readline.patch Normal file
View File

@ -0,0 +1,32 @@
--- crash-7.0.4/cmdline.c.orig
+++ crash-7.0.4/cmdline.c
@@ -42,7 +42,8 @@ static int verify_args_input_file(char *
#define READLINE_LIBRARY
#include <readline.h>
-#include <rldefs.h>
+#define vi_mode 0
+#define emacs_mode 1
#include <history.h>
static void readline_init(void);
--- crash-7.0.4/Makefile.orig
+++ crash-7.0.4/Makefile
@@ -200,7 +200,7 @@ TAR_FILES=${SOURCE_FILES} Makefile ${GPL
${EXTENSION_SOURCE_FILES} ${MEMORY_DRIVER_FILES}
CSCOPE_FILES=${SOURCE_FILES}
-READLINE_DIRECTORY=./${GDB}/readline
+READLINE_DIRECTORY=/usr/include/readline
BFD_DIRECTORY=./${GDB}/bfd
GDB_INCLUDE_DIRECTORY=./${GDB}/include
@@ -228,7 +228,7 @@ gdb_merge: force
@rm -f ${PROGRAM}
@if [ ! -f ${GDB}/config.status ]; then \
(cd ${GDB}; ./configure ${GDB_CONF_FLAGS} --with-separate-debug-dir=/usr/lib/debug \
- --with-bugurl="" --with-expat=no --with-python=no; \
+ --with-bugurl="" --with-expat=no --with-python=no --with-system-readline; \
make --no-print-directory CRASH_TARGET=${TARGET}; echo ${TARGET} > crash.target) \
else (cd ${GDB}/gdb; make --no-print-directory CRASH_TARGET=${TARGET};); fi
@if [ ! -f ${PROGRAM} ]; then \

View File

@ -0,0 +1,32 @@
--- crash-7.0.7/cmdline.c.orig
+++ crash-7.0.7/cmdline.c
@@ -42,7 +42,8 @@ static int verify_args_input_file(char *
#define READLINE_LIBRARY
#include <readline.h>
-#include <rldefs.h>
+#define vi_mode 0
+#define emacs_mode 1
#include <history.h>
static void readline_init(void);
--- crash-7.0.7/Makefile.orig
+++ crash-7.0.7/Makefile
@@ -200,7 +200,7 @@ TAR_FILES=${SOURCE_FILES} Makefile ${GPL
${EXTENSION_SOURCE_FILES} ${MEMORY_DRIVER_FILES}
CSCOPE_FILES=${SOURCE_FILES}
-READLINE_DIRECTORY=./${GDB}/readline
+READLINE_DIRECTORY=/usr/include/readline
BFD_DIRECTORY=./${GDB}/bfd
GDB_INCLUDE_DIRECTORY=./${GDB}/include
@@ -228,7 +228,7 @@ gdb_merge: force
@rm -f ${PROGRAM}
@if [ ! -f ${GDB}/config.status ]; then \
(cd ${GDB}; ./configure ${GDB_CONF_FLAGS} --with-separate-debug-dir=/usr/lib/debug \
- --with-bugurl="" --with-expat=no --with-python=no; \
+ --with-bugurl="" --with-expat=no --with-python=no --with-system-readline; \
make --no-print-directory CRASH_TARGET=${TARGET}; echo ${TARGET} > crash.target) \
else make --no-print-directory rebuild; fi
@if [ ! -f ${PROGRAM} ]; then \

View File

@ -0,0 +1,32 @@
--- crash-7.0.7/cmdline.c.orig
+++ crash-7.0.7/cmdline.c
@@ -46,7 +46,8 @@ static int verify_args_input_file(char *
#define READLINE_LIBRARY
#include <readline.h>
-#include <rldefs.h>
+#define vi_mode 0
+#define emacs_mode 1
#include <history.h>
static void readline_init(void);
--- crash-7.0.7/Makefile.orig
+++ crash-7.0.7/Makefile
@@ -205,7 +205,7 @@ TAR_FILES=${SOURCE_FILES} Makefile ${GPL
${EXTENSION_SOURCE_FILES} ${MEMORY_DRIVER_FILES}
CSCOPE_FILES=${SOURCE_FILES}
-READLINE_DIRECTORY=./${GDB}/readline
+READLINE_DIRECTORY=/usr/include/readline
BFD_DIRECTORY=./${GDB}/bfd
GDB_INCLUDE_DIRECTORY=./${GDB}/include
@@ -233,7 +233,7 @@ gdb_merge: force
@rm -f ${PROGRAM}
@if [ ! -f ${GDB}/config.status ]; then \
(cd ${GDB}; ./configure ${GDB_CONF_FLAGS} --with-separate-debug-dir=/usr/lib/debug \
- --with-bugurl="" --with-expat=no --with-python=no --disable-sim; \
+ --with-bugurl="" --with-expat=no --with-python=no --disable-sim --with-system-readline; \
make --no-print-directory CRASH_TARGET=${TARGET}; echo ${TARGET} > crash.target) \
else make --no-print-directory rebuild; fi
@if [ ! -f ${PROGRAM} ]; then \