[oe-commits] Tom Rini : gdb, gdb-cross, gdb-cross-sdk 6.8 : Pull in a patch from Ubuntu for gcc-4.3

GIT User account git at amethyst.openembedded.net
Fri Dec 5 00:47:22 UTC 2008


Module: openembedded.git
Branch: org.openembedded.dev
Commit: f9b92f770bde15dec86a9b0a6af0f1a83096d76a
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=f9b92f770bde15dec86a9b0a6af0f1a83096d76a

Author: Tom Rini <trini at embeddedalley.com>
Date:   Fri Dec  5 00:45:25 2008 +0000

gdb, gdb-cross, gdb-cross-sdk 6.8 : Pull in a patch from Ubuntu for gcc-4.3

gcc-4.3 introduces new warnings for certain risky-in-some-situations
behaviors.  Previously we had just sed'd out -Werror from gcc-cross-sdk.
Now pull in a patch from Ubuntu to fix all these warnings and apply to all
gdb 6.8 variants.  Bump PR.

---

 packages/gdb/gdb-6.8/gcc-4.3-build-error.patch |  129 ++++++++++++++++++++++++
 packages/gdb/gdb-cross-sdk_6.8.bb              |   16 +---
 packages/gdb/gdb-cross_6.8.bb                  |    5 +-
 packages/gdb/gdb_6.8.bb                        |    4 +-
 4 files changed, 139 insertions(+), 15 deletions(-)

diff --git a/packages/gdb/gdb-6.8/gcc-4.3-build-error.patch b/packages/gdb/gdb-6.8/gcc-4.3-build-error.patch
new file mode 100644
index 0000000..36e501a
--- /dev/null
+++ b/packages/gdb/gdb-6.8/gcc-4.3-build-error.patch
@@ -0,0 +1,129 @@
+http://patches.ubuntu.com/g/gdb/extracted/gcc-4.3-build-error.patch
+
+--- gdb/cli/cli-cmds.c~	2008-06-24 16:07:25.000000000 +0200
++++ gdb/cli/cli-cmds.c	2008-06-24 16:22:31.000000000 +0200
+@@ -323,7 +323,8 @@
+ {
+   if (args)
+     error (_("The \"pwd\" command does not take an argument: %s"), args);
+-  getcwd (gdb_dirbuf, sizeof (gdb_dirbuf));
++  if (!getcwd (gdb_dirbuf, sizeof (gdb_dirbuf)))
++    error (_("Unable to determine current directory"));
+ 
+   if (strcmp (gdb_dirbuf, current_directory) != 0)
+     printf_unfiltered (_("Working directory %s\n (canonically %s).\n"),
+--- gdb/linux-nat.c~	2008-01-29 23:47:20.000000000 +0100
++++ gdb/linux-nat.c	2008-06-24 16:18:57.000000000 +0200
+@@ -2876,7 +2876,8 @@
+       sprintf (fname1, "/proc/%lld/cmdline", pid);
+       if ((procfile = fopen (fname1, "r")) != NULL)
+ 	{
+-	  fgets (buffer, sizeof (buffer), procfile);
++	  if (!fgets (buffer, sizeof (buffer), procfile))
++	    error(_("Unable to read '%s'"), fname1);
+ 	  printf_filtered ("cmdline = '%s'\n", buffer);
+ 	  fclose (procfile);
+ 	}
+--- gdb/inflow.c~	2008-01-01 23:53:11.000000000 +0100
++++ gdb/inflow.c	2008-06-24 16:32:10.000000000 +0200
+@@ -512,7 +512,7 @@
+ void
+ new_tty (void)
+ {
+-  int tty;
++  int tty, rv;
+ 
+   if (inferior_thisrun_terminal == 0)
+     return;
+@@ -545,17 +545,17 @@
+   if (tty != 0)
+     {
+       close (0);
+-      dup (tty);
++      rv = dup (tty);
+     }
+   if (tty != 1)
+     {
+       close (1);
+-      dup (tty);
++      rv = dup (tty);
+     }
+   if (tty != 2)
+     {
+       close (2);
+-      dup (tty);
++      rv = dup (tty);
+     }
+   if (tty > 2)
+     close (tty);
+--- gdb/mi/mi-cmd-env.c~	2008-01-01 23:53:14.000000000 +0100
++++ gdb/mi/mi-cmd-env.c	2008-06-24 16:23:25.000000000 +0200
+@@ -78,7 +78,8 @@
+      
+   /* Otherwise the mi level is 2 or higher.  */
+ 
+-  getcwd (gdb_dirbuf, sizeof (gdb_dirbuf));
++  if (!getcwd (gdb_dirbuf, sizeof (gdb_dirbuf)))
++    error (_("Unable to determine current directory"));
+   ui_out_field_string (uiout, "cwd", gdb_dirbuf);
+ 
+   return MI_CMD_DONE;
+--- gdb/utils.c~	2008-01-01 23:53:13.000000000 +0100
++++ gdb/utils.c	2008-06-24 16:29:13.000000000 +0200
+@@ -688,6 +688,7 @@
+   static int dejavu;
+   int quit_p;
+   int dump_core_p;
++  int rv;
+   char *reason;
+ 
+   /* Don't allow infinite error/warning recursion.  */
+@@ -704,7 +705,7 @@
+ 	abort ();	/* NOTE: GDB has only three calls to abort().  */
+       default:
+ 	dejavu = 3;
+-	write (STDERR_FILENO, msg, sizeof (msg));
++	rv = write (STDERR_FILENO, msg, sizeof (msg));
+ 	exit (1);
+       }
+   }
+--- gdb/top.c~	2008-01-01 23:53:13.000000000 +0100
++++ gdb/top.c	2008-06-24 16:26:51.000000000 +0200
+@@ -1628,7 +1628,8 @@
+ 
+   /* Run the init function of each source file */
+ 
+-  getcwd (gdb_dirbuf, sizeof (gdb_dirbuf));
++  if (!getcwd (gdb_dirbuf, sizeof (gdb_dirbuf)))
++    error (_("Unable to determine current directory"));
+   current_directory = gdb_dirbuf;
+ 
+ #ifdef __MSDOS__
+--- gdb/ui-file.c~	2008-01-01 23:53:13.000000000 +0100
++++ gdb/ui-file.c	2008-06-24 16:30:16.000000000 +0200
+@@ -477,11 +477,12 @@
+ static void
+ stdio_file_write (struct ui_file *file, const char *buf, long length_buf)
+ {
++  int rv;
+   struct stdio_file *stdio = ui_file_data (file);
+   if (stdio->magic != &stdio_file_magic)
+     internal_error (__FILE__, __LINE__,
+ 		    _("stdio_file_write: bad magic number"));
+-  fwrite (buf, length_buf, 1, stdio->file);
++  rv = fwrite (buf, length_buf, 1, stdio->file);
+ }
+ 
+ static void
+--- gdb/main.c~	2008-06-24 16:07:25.000000000 +0200
++++ gdb/main.c	2008-06-24 16:25:05.000000000 +0200
+@@ -188,7 +188,8 @@
+   line[0] = '\0';		/* Terminate saved (now empty) cmd line */
+   instream = stdin;
+ 
+-  getcwd (gdb_dirbuf, sizeof (gdb_dirbuf));
++  if (!getcwd (gdb_dirbuf, sizeof (gdb_dirbuf)))
++    error (_("Unable to determine current directory"));
+   current_directory = gdb_dirbuf;
+ 
+   gdb_stdout = stdio_fileopen (stdout);
diff --git a/packages/gdb/gdb-cross-sdk_6.8.bb b/packages/gdb/gdb-cross-sdk_6.8.bb
index be5c480..6aed03d 100644
--- a/packages/gdb/gdb-cross-sdk_6.8.bb
+++ b/packages/gdb/gdb-cross-sdk_6.8.bb
@@ -1,22 +1,12 @@
 require gdb-cross.inc
 
+SRC_URI += "file://gcc-4.3-build-error.patch;patch=1;pnum=0"
+
 DEPENDS = "ncurses-sdk"
 
 inherit sdk
 
-PR = "r1"
-
-do_configure_prepend() {
-	for i in $(find ${S} -name "warning*m4") ; do 
-		sed -i -e s:-Werror::g $i 
-	done
-    for i in $(find ${S} -name "configure.ac") ; do
-		sed -i -e s:-Werror::g $i
-	done
-	for i in $(find ${S} -name "configure") ; do
-		sed -i -e s:-Werror::g $i
-	done
-}
+PR = "r2"
 
 do_stage() {
 	:
diff --git a/packages/gdb/gdb-cross_6.8.bb b/packages/gdb/gdb-cross_6.8.bb
index f63f144..664ab5e 100644
--- a/packages/gdb/gdb-cross_6.8.bb
+++ b/packages/gdb/gdb-cross_6.8.bb
@@ -1,4 +1,7 @@
 require gdb-cross.inc
+
+SRC_URI += "file://gcc-4.3-build-error.patch;patch=1;pnum=0"
+
 inherit cross
 
-PR = "r2"
+PR = "r3"
diff --git a/packages/gdb/gdb_6.8.bb b/packages/gdb/gdb_6.8.bb
index be40f3f..a969651 100644
--- a/packages/gdb/gdb_6.8.bb
+++ b/packages/gdb/gdb_6.8.bb
@@ -1,3 +1,5 @@
 require gdb.inc
 
-PR = "r2"
+SRC_URI += "file://gcc-4.3-build-error.patch;patch=1;pnum=0"
+
+PR = "r3"





More information about the Openembedded-commits mailing list