Fix yum install command output when the binary RPM is missing (BZ 981154).
- Fix the changlog entry formatting for 6.3.0.0-0.1.
This commit is contained in:
parent
19d4458238
commit
752ff760ca
@ -1,7 +1,7 @@
|
||||
Index: gdb-7.5.50.20130310/gdb/corelow.c
|
||||
Index: gdb-7.6/gdb/corelow.c
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/corelow.c 2013-01-31 19:37:37.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/corelow.c 2013-03-10 16:36:37.019937408 +0100
|
||||
--- gdb-7.6.orig/gdb/corelow.c 2013-01-31 19:37:37.000000000 +0100
|
||||
+++ gdb-7.6/gdb/corelow.c 2013-07-17 05:28:49.277203536 +0200
|
||||
@@ -46,6 +46,9 @@
|
||||
#include "progspace.h"
|
||||
#include "objfiles.h"
|
||||
@ -93,11 +93,11 @@ Index: gdb-7.5.50.20130310/gdb/corelow.c
|
||||
+ NULL, NULL, NULL,
|
||||
+ &setlist, &showlist);
|
||||
}
|
||||
Index: gdb-7.5.50.20130310/gdb/doc/gdb.texinfo
|
||||
Index: gdb-7.6/gdb/doc/gdb.texinfo
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/doc/gdb.texinfo 2013-03-10 16:16:23.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/doc/gdb.texinfo 2013-03-10 16:17:15.216114613 +0100
|
||||
@@ -16680,6 +16680,27 @@ information files.
|
||||
--- gdb-7.6.orig/gdb/doc/gdb.texinfo 2013-07-17 05:28:48.882203384 +0200
|
||||
+++ gdb-7.6/gdb/doc/gdb.texinfo 2013-07-17 05:28:49.286203539 +0200
|
||||
@@ -16831,6 +16831,27 @@ information files.
|
||||
|
||||
@end table
|
||||
|
||||
@ -125,10 +125,10 @@ Index: gdb-7.5.50.20130310/gdb/doc/gdb.texinfo
|
||||
@cindex @code{.gnu_debuglink} sections
|
||||
@cindex debug link sections
|
||||
A debug link is a special section of the executable file named
|
||||
Index: gdb-7.5.50.20130310/gdb/solib-svr4.c
|
||||
Index: gdb-7.6/gdb/solib-svr4.c
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/solib-svr4.c 2013-01-31 14:52:52.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/solib-svr4.c 2013-03-10 16:37:49.842963280 +0100
|
||||
--- gdb-7.6.orig/gdb/solib-svr4.c 2013-01-31 14:52:52.000000000 +0100
|
||||
+++ gdb-7.6/gdb/solib-svr4.c 2013-07-17 05:28:49.287203539 +0200
|
||||
@@ -1224,9 +1224,52 @@ svr4_read_so_list (CORE_ADDR lm, struct
|
||||
continue;
|
||||
}
|
||||
@ -185,10 +185,10 @@ Index: gdb-7.5.50.20130310/gdb/solib-svr4.c
|
||||
xfree (buffer);
|
||||
|
||||
/* If this entry has no name, or its name matches the name
|
||||
Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
Index: gdb-7.6/gdb/elfread.c
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/elfread.c 2013-03-06 22:20:02.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/elfread.c 2013-03-10 16:38:01.506968687 +0100
|
||||
--- gdb-7.6.orig/gdb/elfread.c 2013-03-18 10:20:02.000000000 +0100
|
||||
+++ gdb-7.6/gdb/elfread.c 2013-07-17 05:31:21.242256141 +0200
|
||||
@@ -45,6 +45,11 @@
|
||||
#include "regcache.h"
|
||||
#include "bcache.h"
|
||||
@ -201,7 +201,7 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
|
||||
extern void _initialize_elfread (void);
|
||||
|
||||
@@ -1067,10 +1072,59 @@ elf_gnu_ifunc_resolver_return_stop (stru
|
||||
@@ -1068,10 +1073,59 @@ elf_gnu_ifunc_resolver_return_stop (stru
|
||||
update_breakpoint_locations (b, sals, sals_end);
|
||||
}
|
||||
|
||||
@ -263,7 +263,7 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
{
|
||||
if (!bfd_check_format (abfd, bfd_object)
|
||||
|| bfd_get_flavour (abfd) != bfd_target_elf_flavour
|
||||
@@ -1080,6 +1134,348 @@ build_id_bfd_get (bfd *abfd)
|
||||
@@ -1081,6 +1135,348 @@ build_id_bfd_get (bfd *abfd)
|
||||
return elf_tdata (abfd)->build_id;
|
||||
}
|
||||
|
||||
@ -612,7 +612,7 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
/* Return if FILENAME has NT_GNU_BUILD_ID matching the CHECK value. */
|
||||
|
||||
static int
|
||||
@@ -1094,7 +1490,7 @@ build_id_verify (const char *filename, c
|
||||
@@ -1095,7 +1491,7 @@ build_id_verify (const char *filename, c
|
||||
if (abfd == NULL)
|
||||
return 0;
|
||||
|
||||
@ -621,12 +621,46 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
|
||||
if (found == NULL)
|
||||
warning (_("File \"%s\" has no build-id, file skipped"), filename);
|
||||
@@ -1110,17 +1506,18 @@ build_id_verify (const char *filename, c
|
||||
return retval;
|
||||
@@ -1112,16 +1508,53 @@ build_id_verify (const char *filename, c
|
||||
}
|
||||
|
||||
-static char *
|
||||
static char *
|
||||
-build_id_to_debug_filename (const struct elf_build_id *build_id)
|
||||
+link_resolve (const char *symlink, int level)
|
||||
+{
|
||||
+ char buf[PATH_MAX + 1], *target, *retval;
|
||||
+ ssize_t got;
|
||||
+
|
||||
+ if (level > 10)
|
||||
+ return xstrdup (symlink);
|
||||
+
|
||||
+ got = readlink (symlink, buf, sizeof (buf));
|
||||
+ if (got < 0 || got >= sizeof (buf))
|
||||
+ return xstrdup (symlink);
|
||||
+ buf[got] = '\0';
|
||||
+
|
||||
+ if (IS_ABSOLUTE_PATH (buf))
|
||||
+ target = xstrdup (buf);
|
||||
+ else
|
||||
+ {
|
||||
+ char *dir = ldirname (symlink);
|
||||
+
|
||||
+ if (dir == NULL)
|
||||
+ return xstrdup (symlink);
|
||||
+ target = xstrprintf ("%s"
|
||||
+#ifndef HAVE_DOS_BASED_FILE_SYSTEM
|
||||
+ "/"
|
||||
+#else /* HAVE_DOS_BASED_FILE_SYSTEM */
|
||||
+ "\\"
|
||||
+#endif /* HAVE_DOS_BASED_FILE_SYSTEM */
|
||||
+ "%s", dir, buf);
|
||||
+ }
|
||||
+
|
||||
+ retval = link_resolve (target, level + 1);
|
||||
+ xfree (target);
|
||||
+ return retval;
|
||||
+}
|
||||
+
|
||||
+char *
|
||||
+build_id_to_filename (const struct elf_build_id *build_id, char **link_return,
|
||||
+ int add_debug_suffix)
|
||||
@ -644,16 +678,19 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
|
||||
/* Keep backward compatibility so that DEBUG_FILE_DIRECTORY being "" will
|
||||
cause "/.build-id/..." lookups. */
|
||||
@@ -1133,6 +1530,8 @@ build_id_to_debug_filename (const struct
|
||||
@@ -1134,7 +1567,10 @@ build_id_to_debug_filename (const struct
|
||||
size_t debugdir_len = strlen (debugdir);
|
||||
const gdb_byte *data = build_id->data;
|
||||
size_t size = build_id->size;
|
||||
- char *s;
|
||||
+ unsigned seqno;
|
||||
+ struct stat statbuf_trash;
|
||||
char *s;
|
||||
+ /* Initialize it just to avoid a GCC false warning. */
|
||||
+ char *s, *link0 = NULL, *link0_resolved;
|
||||
|
||||
memcpy (link, debugdir, debugdir_len);
|
||||
@@ -1147,37 +1546,240 @@ build_id_to_debug_filename (const struct
|
||||
s = &link[debugdir_len];
|
||||
@@ -1148,37 +1584,256 @@ build_id_to_debug_filename (const struct
|
||||
*s++ = '/';
|
||||
while (size-- > 0)
|
||||
s += sprintf (s, "%02x", (unsigned) *data++);
|
||||
@ -682,14 +719,20 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
+ else
|
||||
+ *s2 = 0;
|
||||
+
|
||||
+ if (!seqno)
|
||||
+ {
|
||||
+ /* If none of the real files is found report as missing file
|
||||
+ always the non-.%u-suffixed file. */
|
||||
+ link0 = xstrdup (link);
|
||||
+ }
|
||||
+
|
||||
+ /* `access' automatically dereferences LINK. */
|
||||
+ if (lstat (link, &statbuf_trash) != 0)
|
||||
+ {
|
||||
+ /* Stop increasing SEQNO. */
|
||||
+ break;
|
||||
+ }
|
||||
|
||||
- if (retval != NULL && !build_id_verify (retval, build_id))
|
||||
+
|
||||
+ retval = lrealpath (link);
|
||||
+
|
||||
+ if (retval != NULL && !build_id_verify (retval, build_id))
|
||||
@ -703,29 +746,39 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
+ }
|
||||
+
|
||||
+ if (retval != NULL)
|
||||
+ {
|
||||
+ /* LINK_ALL is not used below in this non-NULL RETVAL case. */
|
||||
+ xfree (link0);
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ /* If the symlink has target request to install the target.
|
||||
+ BASE-debuginfo.rpm contains the symlink but BASE.rpm may be missing.
|
||||
+ https://bugzilla.redhat.com/show_bug.cgi?id=981154 */
|
||||
+ link0_resolved = link_resolve (link0, 0);
|
||||
+ xfree (link0);
|
||||
|
||||
- if (retval != NULL && !build_id_verify (retval, build_id))
|
||||
+ if (link_all == NULL)
|
||||
+ link_all = xstrdup (link0_resolved);
|
||||
+ else
|
||||
{
|
||||
- xfree (retval);
|
||||
- retval = NULL;
|
||||
+ /* LINK_ALL is not used below in this non-NULL RETVAL case. */
|
||||
+ break;
|
||||
+ size_t len_orig = strlen (link_all);
|
||||
+
|
||||
+ link_all = xrealloc (link_all,
|
||||
+ len_orig + 1 + strlen (link0_resolved) + 1);
|
||||
+
|
||||
+ /* Use whitespace instead of DIRNAME_SEPARATOR to be compatible with
|
||||
+ its possible use as an argument for installation command. */
|
||||
+ link_all[len_orig] = ' ';
|
||||
+
|
||||
+ strcpy (&link_all[len_orig + 1], link0_resolved);
|
||||
}
|
||||
|
||||
+ if (link_all == NULL)
|
||||
+ link_all = xstrdup (link);
|
||||
+ else
|
||||
+ {
|
||||
+ size_t len_orig = strlen (link_all);
|
||||
+
|
||||
+ link_all = xrealloc (link_all, len_orig + 1 + strlen (link) + 1);
|
||||
+
|
||||
+ /* Use whitespace instead of DIRNAME_SEPARATOR to be compatible with
|
||||
+ its possible use as an argument for installation command. */
|
||||
+ link_all[len_orig] = ' ';
|
||||
+
|
||||
+ strcpy (&link_all[len_orig + 1], link);
|
||||
+ }
|
||||
+ xfree (link0_resolved);
|
||||
+ }
|
||||
+
|
||||
|
||||
+ if (link_return != NULL)
|
||||
+ {
|
||||
if (retval != NULL)
|
||||
@ -905,7 +958,7 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
/* Prevent looping on a stripped .debug file. */
|
||||
if (build_id_name != NULL
|
||||
&& filename_cmp (build_id_name, objfile->name) == 0)
|
||||
@@ -1187,7 +1789,7 @@ find_separate_debug_file_by_buildid (str
|
||||
@@ -1188,7 +1843,7 @@ find_separate_debug_file_by_buildid (str
|
||||
xfree (build_id_name);
|
||||
}
|
||||
else if (build_id_name != NULL)
|
||||
@ -914,7 +967,7 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
@@ -1425,9 +2027,10 @@ elf_symfile_read (struct objfile *objfil
|
||||
@@ -1426,9 +2081,10 @@ elf_symfile_read (struct objfile *objfil
|
||||
&& objfile->separate_debug_objfile == NULL
|
||||
&& objfile->separate_debug_objfile_backlink == NULL)
|
||||
{
|
||||
@ -927,7 +980,7 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
|
||||
if (debugfile == NULL)
|
||||
debugfile = find_separate_debug_file_by_debuglink (objfile);
|
||||
@@ -1441,6 +2044,12 @@ elf_symfile_read (struct objfile *objfil
|
||||
@@ -1442,6 +2098,12 @@ elf_symfile_read (struct objfile *objfil
|
||||
symbol_file_add_separate (abfd, symfile_flags, objfile);
|
||||
do_cleanups (cleanup);
|
||||
}
|
||||
@ -940,7 +993,7 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1760,4 +2369,16 @@ _initialize_elfread (void)
|
||||
@@ -1761,4 +2423,16 @@ _initialize_elfread (void)
|
||||
|
||||
elf_objfile_gnu_ifunc_cache_data = register_objfile_data ();
|
||||
gnu_ifunc_fns_p = &elf_gnu_ifunc_fns;
|
||||
@ -957,10 +1010,10 @@ Index: gdb-7.5.50.20130310/gdb/elfread.c
|
||||
+
|
||||
+ observer_attach_executable_changed (debug_print_executable_changed);
|
||||
}
|
||||
Index: gdb-7.5.50.20130310/gdb/symfile.h
|
||||
Index: gdb-7.6/gdb/symfile.h
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/symfile.h 2013-02-03 17:20:18.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/symfile.h 2013-03-10 16:37:41.203959517 +0100
|
||||
--- gdb-7.6.orig/gdb/symfile.h 2013-02-03 17:20:18.000000000 +0100
|
||||
+++ gdb-7.6/gdb/symfile.h 2013-07-17 05:28:49.291203541 +0200
|
||||
@@ -593,6 +593,12 @@ void free_symfile_segment_data (struct s
|
||||
|
||||
extern struct cleanup *increment_reading_symtab (void);
|
||||
@ -974,10 +1027,10 @@ Index: gdb-7.5.50.20130310/gdb/symfile.h
|
||||
/* From dwarf2read.c */
|
||||
|
||||
/* Names for a dwarf2 debugging section. The field NORMAL is the normal
|
||||
Index: gdb-7.5.50.20130310/gdb/testsuite/lib/gdb.exp
|
||||
Index: gdb-7.6/gdb/testsuite/lib/gdb.exp
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/testsuite/lib/gdb.exp 2013-03-10 16:16:22.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/testsuite/lib/gdb.exp 2013-03-10 16:17:15.219114612 +0100
|
||||
--- gdb-7.6.orig/gdb/testsuite/lib/gdb.exp 2013-07-17 05:28:48.334203172 +0200
|
||||
+++ gdb-7.6/gdb/testsuite/lib/gdb.exp 2013-07-17 05:28:49.292203541 +0200
|
||||
@@ -1482,6 +1482,16 @@ proc default_gdb_start { } {
|
||||
warning "Couldn't set the width to 0."
|
||||
}
|
||||
@ -995,10 +1048,10 @@ Index: gdb-7.5.50.20130310/gdb/testsuite/lib/gdb.exp
|
||||
return 0;
|
||||
}
|
||||
|
||||
Index: gdb-7.5.50.20130310/gdb/testsuite/lib/mi-support.exp
|
||||
Index: gdb-7.6/gdb/testsuite/lib/mi-support.exp
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/testsuite/lib/mi-support.exp 2013-01-22 00:57:59.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/testsuite/lib/mi-support.exp 2013-03-10 16:17:15.220114612 +0100
|
||||
--- gdb-7.6.orig/gdb/testsuite/lib/mi-support.exp 2013-01-22 00:57:59.000000000 +0100
|
||||
+++ gdb-7.6/gdb/testsuite/lib/mi-support.exp 2013-07-17 05:28:49.292203541 +0200
|
||||
@@ -212,6 +212,16 @@ proc default_mi_gdb_start { args } {
|
||||
warning "Couldn't set the width to 0."
|
||||
}
|
||||
@ -1016,10 +1069,10 @@ Index: gdb-7.5.50.20130310/gdb/testsuite/lib/mi-support.exp
|
||||
# If allowing the inferior to have its own PTY then assign the inferior
|
||||
# its own terminal device here.
|
||||
if { $separate_inferior_pty } {
|
||||
Index: gdb-7.5.50.20130310/gdb/objfiles.h
|
||||
Index: gdb-7.6/gdb/objfiles.h
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/objfiles.h 2013-02-28 20:00:31.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/objfiles.h 2013-03-10 16:17:15.220114612 +0100
|
||||
--- gdb-7.6.orig/gdb/objfiles.h 2013-02-28 20:00:31.000000000 +0100
|
||||
+++ gdb-7.6/gdb/objfiles.h 2013-07-17 05:28:49.293203542 +0200
|
||||
@@ -432,6 +432,10 @@ struct objfile
|
||||
|
||||
#define OBJF_MAINLINE (1 << 5)
|
||||
@ -1031,10 +1084,10 @@ Index: gdb-7.5.50.20130310/gdb/objfiles.h
|
||||
/* The object file that contains the runtime common minimal symbols
|
||||
for SunOS4. Note that this objfile has no associated BFD. */
|
||||
|
||||
Index: gdb-7.5.50.20130310/gdb/testsuite/gdb.base/corefile.exp
|
||||
Index: gdb-7.6/gdb/testsuite/gdb.base/corefile.exp
|
||||
===================================================================
|
||||
--- gdb-7.5.50.20130310.orig/gdb/testsuite/gdb.base/corefile.exp 2013-01-01 07:33:25.000000000 +0100
|
||||
+++ gdb-7.5.50.20130310/gdb/testsuite/gdb.base/corefile.exp 2013-03-10 16:17:15.220114612 +0100
|
||||
--- gdb-7.6.orig/gdb/testsuite/gdb.base/corefile.exp 2013-01-01 07:33:25.000000000 +0100
|
||||
+++ gdb-7.6/gdb/testsuite/gdb.base/corefile.exp 2013-07-17 05:28:49.293203542 +0200
|
||||
@@ -256,3 +256,33 @@ if ![is_remote target] {
|
||||
|
||||
gdb_exit
|
||||
|
10
gdb.spec
10
gdb.spec
@ -36,7 +36,7 @@ Version: 7.6
|
||||
|
||||
# The release always contains a leading reserved number, start it at 1.
|
||||
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
|
||||
Release: 32%{?dist}
|
||||
Release: 33%{?dist}
|
||||
|
||||
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and BSD and Public Domain
|
||||
Group: Development/Debuggers
|
||||
@ -1417,6 +1417,10 @@ fi
|
||||
%endif # 0%{!?el5:1} || "%{_target_cpu}" == "noarch"
|
||||
|
||||
%changelog
|
||||
* Wed Jul 17 2013 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.6-33.fc20
|
||||
- Fix yum install command output when the binary RPM is missing (BZ 981154).
|
||||
- Fix the changlog entry formatting for 6.3.0.0-0.1.
|
||||
|
||||
* Mon Jun 10 2013 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.6-32.fc19
|
||||
- [scl] Disable Python frame filters on scl.
|
||||
- Update libraries opening performance fix from upstream.
|
||||
@ -3744,8 +3748,8 @@ prelink base addresses. Fixes BZ 175075, BZ 190545.
|
||||
- Enable PPC CFI, remove merged ppc patches.
|
||||
|
||||
* Wed Jan 12 2005 Elena Zannoni <ezannoni@redhat.com> - 6.3.0.0-0.1
|
||||
Andrew Cagney <cagney@redhat.com>
|
||||
Jeff Johnston <jjohnstn@redhat.com>
|
||||
- commit co-authors Andrew Cagney <cagney@redhat.com> and
|
||||
Jeff Johnston <jjohnstn@redhat.com>.
|
||||
- Various fixes to complete the import and merge.
|
||||
|
||||
* Wed Dec 01 2004 Andrew Cagney <cagney@redhat.com> - 6.3.0.0
|
||||
|
Loading…
Reference in New Issue
Block a user