rpms/gdb/devel gdb-6.3-pie-20050110.patch, 1.5, 1.6 gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch, 1.3, 1.4 gdb.spec, 1.258, 1.259

Jan Kratochvil (jkratoch) fedora-extras-commits at redhat.com
Fri Nov 16 02:15:44 UTC 2007


Author: jkratoch

Update of /cvs/pkgs/rpms/gdb/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv3872

Modified Files:
	gdb-6.3-pie-20050110.patch 
	gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch 
	gdb.spec 
Log Message:
* Fri Nov 16 2007 Jan Kratochvil <jan.kratochvil at redhat.com> - 6.7.1-4
- Fix `errno' resolving across separate debuginfo files.
- Fix segfault on no file loaded, `set debug solib 1', `info sharedlibrary'.
- Extend the testsuite run for all the languages if %{dist} is defined.
- Support gdb.fortran/ tests by substituting the g77 compiler by gfortran.


gdb-6.3-pie-20050110.patch:

Index: gdb-6.3-pie-20050110.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.3-pie-20050110.patch,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- gdb-6.3-pie-20050110.patch	3 Nov 2007 19:10:29 -0000	1.5
+++ gdb-6.3-pie-20050110.patch	16 Nov 2007 02:15:40 -0000	1.6
@@ -6,6 +6,10 @@
 
 	Port to post-GDB-6.7.1 multi-PC breakpoints.
 
+2007-11-09  Jan Kratochvil  <jan.kratochvil at redhat.com>
+
+	* solib-svr4.c (svr4_current_sos): Fix segfault on NULL EXEC_BFD.
+
 Index: gdb-6.7.1/gdb/dwarf2read.c
 ===================================================================
 --- gdb-6.7.1.orig/gdb/dwarf2read.c	2007-11-02 15:24:10.000000000 +0100
@@ -375,16 +379,16 @@
 @@ -704,6 +803,11 @@ svr4_current_sos (void)
    struct so_list **link_ptr = &head;
    CORE_ADDR ldsomap = 0;
++  const char *filename = exec_bfd ? exec_bfd->filename : "<none>";
  
 +  if (debug_solib)
 +    fprintf_unfiltered (gdb_stdlog, 
-+                        "svr4_current_sos: exec_bfd %s\n",
-+                        exec_bfd->filename);
++                        "svr4_current_sos: exec_bfd %s\n", filename);
 +
    /* Make sure we've looked up the inferior's dynamic linker's base
       structure.  */
    if (! debug_base)
-@@ -713,11 +817,21 @@ svr4_current_sos (void)
+@@ -713,11 +817,20 @@ svr4_current_sos (void)
        /* If we can't find the dynamic linker's base structure, this
  	 must not be a dynamically linked executable.  Hmm.  */
        if (! debug_base)
@@ -393,7 +397,7 @@
 +	  if (debug_solib)
 +	    fprintf_unfiltered (gdb_stdlog, 
 +				"svr4_current_sos: no DT_DEBUG found in %s -- return now\n",
-+				exec_bfd->filename);
++				filename);
 +	  return svr4_default_sos ();
 +        }
      }
@@ -402,8 +406,7 @@
       `struct so_list' nodes.  */
 +  if (debug_solib)
 +    fprintf_unfiltered (gdb_stdlog, 
-+                        "svr4_current_sos: walk link map in %s\n",
-+                        exec_bfd->filename);
++                        "svr4_current_sos: walk link map in %s\n", filename);
    lm = solib_svr4_r_map ();
  
    while (lm)
@@ -428,8 +431,9 @@
           SVR4, it has no name.  For others (Solaris 2.3 for example), it
           does have a name, so we can no longer use a missing name to
           decide when to ignore it. */
-       if (IGNORE_FIRST_LINK_MAP_ENTRY (new) && ldsomap == 0)
+-      if (IGNORE_FIRST_LINK_MAP_ENTRY (new) && ldsomap == 0)
 -	free_so (new);
++      if (exec_bfd != NULL && IGNORE_FIRST_LINK_MAP_ENTRY (new) && ldsomap == 0)
 +	{
 +          /* It is the first link map entry, i.e. it is the main executable.  */
 +
@@ -564,14 +568,12 @@
  	}
  
        /* On Solaris, the dynamic linker is not in the normal list of
-@@ -789,6 +995,11 @@ svr4_current_sos (void)
+@@ -789,6 +995,9 @@ svr4_current_sos (void)
    if (head == NULL)
      return svr4_default_sos ();
  
 +  if (debug_solib)
-+    fprintf_unfiltered (gdb_stdlog, 
-+                        "svr4_current_sos: ENDS %s\n",
-+                        exec_bfd->filename);
++    fprintf_unfiltered (gdb_stdlog, "svr4_current_sos: ENDS %s\n", filename);
 +
    return head;
  }

gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch:

Index: gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch	4 Nov 2007 17:55:57 -0000	1.3
+++ gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch	16 Nov 2007 02:15:40 -0000	1.4
@@ -160,7 +160,7 @@
  /* Using the objfile specified in BATON, find the address for the
     current thread's thread-local storage with offset OFFSET.  */
  CORE_ADDR
-@@ -906,7 +925,22 @@ target_translate_tls_address (struct obj
+@@ -904,7 +923,28 @@ target_translate_tls_address (struct obj
    /* It wouldn't be wrong here to try a gdbarch method, too; finding
       TLS is an ABI-specific thing.  But we don't do that yet.  */
    else
@@ -171,7 +171,13 @@
 +      msymbol = lookup_minimal_symbol ("errno", NULL, NULL);
 +      if (msymbol != NULL
 +	  && SYMBOL_VALUE_ADDRESS (msymbol) == offset
-+	  && SYMBOL_BFD_SECTION (msymbol)->owner == objfile->obfd)
++	  && (SYMBOL_BFD_SECTION (msymbol)->owner == objfile->obfd
++	      || (objfile->separate_debug_objfile != NULL
++	          && SYMBOL_BFD_SECTION (msymbol)->owner
++		     == objfile->separate_debug_objfile->obfd)
++	      || (objfile->separate_debug_objfile_backlink != NULL
++	          && SYMBOL_BFD_SECTION (msymbol)->owner
++		     == objfile->separate_debug_objfile_backlink->obfd)))
 +	{
 +	  if (!catch_errors (resolve_errno, (void *) &addr, "",
 +	                     RETURN_MASK_ALL))


Index: gdb.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb.spec,v
retrieving revision 1.258
retrieving revision 1.259
diff -u -r1.258 -r1.259
--- gdb.spec	4 Nov 2007 17:55:57 -0000	1.258
+++ gdb.spec	16 Nov 2007 02:15:40 -0000	1.259
@@ -11,7 +11,7 @@
 Version: 6.7.1
 
 # The release always contains a leading reserved number, start it at 1.
-Release: 3%{?dist}
+Release: 4%{?dist}
 
 License: GPL
 Group: Development/Debuggers
@@ -331,11 +331,21 @@
 Requires: readline
 BuildRequires: readline-devel
 
+# BuildRequires only for the complete testsuite run.
+# Omit them on local user builds.
+%if 0%{?dist:1}
+# gcc-objc++ is not covered by the GDB testsuite.
+BuildRequires: gcc gcc-c++ gcc-gfortran gcc-java gcc-objc
+# Copied from gcc-4.1.2-32
+%ifarch %{ix86} x86_64 ia64 ppc alpha
+BuildRequires: gcc-gnat
+%endif
 %define multilib_64_archs sparc64 ppc64 s390x x86_64
 %ifarch %{multilib_64_archs} sparc ppc
 # Ensure glibc{,-devel} is installed for both multilib arches
 BuildRequires: /lib/libc.so.6 %{_exec_prefix}/lib/libc.so /lib64/libc.so.6 %{_exec_prefix}/lib64/libc.so
 %endif
+%endif
 
 %ifarch ia64
 BuildRequires: libunwind-devel >= 0.99-0.1.frysk20070405cvs
@@ -486,6 +496,10 @@
 mkdir %{gdb_build}
 cd %{gdb_build}
 
+# g77 executable is no longer present in Fedora gcc-4.x+.
+g77="`which gfortran 2>/dev/null`"
+test -n "$g77" && ln -s "$g77" ./g77
+
 # FIXME: The configure option --enable-gdb-build-warnings=,-Werror
 # below can conflict with user settings. For instance, passing a
 # combination of -Wall and -O0 from the file rpmrc will always cause
@@ -615,6 +629,12 @@
 # don't include the files in include, they are part of binutils
 
 %changelog
+* Fri Nov 16 2007 Jan Kratochvil <jan.kratochvil at redhat.com> - 6.7.1-4
+- Fix `errno' resolving across separate debuginfo files.
+- Fix segfault on no file loaded, `set debug solib 1', `info sharedlibrary'.
+- Extend the testsuite run for all the languages if %%{dist} is defined.
+- Support gdb.fortran/ tests by substituting the g77 compiler by gfortran.
+
 * Sun Nov  4 2007 Jan Kratochvil <jan.kratochvil at redhat.com> - 6.7.1-3
 - Fix `errno' resolving on recent glibc with broken DW_AT_MIPS_linkage_name.
 - Imported new test for 6.7 PPC hiding of call-volatile parameter register.




More information about the fedora-extras-commits mailing list