summaryrefslogtreecommitdiff
path: root/recipes/gcc/gcc-4.4.0/debian/gcc-ice-apport.dpatch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/gcc/gcc-4.4.0/debian/gcc-ice-apport.dpatch')
-rw-r--r--recipes/gcc/gcc-4.4.0/debian/gcc-ice-apport.dpatch44
1 files changed, 44 insertions, 0 deletions
diff --git a/recipes/gcc/gcc-4.4.0/debian/gcc-ice-apport.dpatch b/recipes/gcc/gcc-4.4.0/debian/gcc-ice-apport.dpatch
new file mode 100644
index 0000000000..87b8f06ea8
--- /dev/null
+++ b/recipes/gcc/gcc-4.4.0/debian/gcc-ice-apport.dpatch
@@ -0,0 +1,44 @@
+#! /bin/sh -e
+
+# DP: Report an ICE to apport (if apport is available
+# DP: and the environment variable GCC_NOAPPORT is not set)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+ pdir="-d $3"
+ dir="$3/"
+elif [ $# -ne 1 ]; then
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+fi
+case "$1" in
+ -patch)
+ patch $pdir -f --no-backup-if-mismatch -p0 < $0
+ ;;
+ -unpatch)
+ patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+ ;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+esac
+exit 0
+
+--- gcc/gcc.c~ 2007-08-05 22:17:07.000000000 +0200
++++ gcc/gcc.c 2007-08-12 15:03:16.000000000 +0200
+@@ -6119,6 +6119,15 @@
+ {
+ notice ("Preprocessed source stored into %s file, please attach this to your bugreport.\n",
+ temp_filenames[attempt * 2]);
++ if (!getenv ("GCC_NOAPPORT")
++ && !access ("/usr/share/apport/gcc_ice_hook", R_OK | X_OK))
++ {
++ char *cmd = xmalloc (50 + strlen (temp_filenames[attempt * 2]) + strlen (new_argv[0]));
++ sprintf (cmd, "/usr/share/apport/gcc_ice_hook %s %s",
++ new_argv[0], temp_filenames[attempt * 2]);
++ system (cmd);
++ free (cmd);
++ }
+ /* Make sure it is not deleted. */
+ free (temp_filenames[attempt * 2]);
+ temp_filenames[attempt * 2] = NULL;