With the approval of the current debian maintainer[1], I'd like to
propose an oldstable update for binutils. See below for the
details. debdiff attached.
Risk of regression should be low as this is adding support for a
syntax that was previously unsupported on mips and would cause the
assembler to exit with an error.
[1]
<doko> [...]should be fine with me, I don't really see what could
break
<dannf> [...]if you like, i can prepare the package
<doko> sure, just go ahead
--
dann frazier
--- Begin Message ---
hey Matthias,
I'm working on backporting a kernel fix for CVE-2009-0029, which
includes this changeset:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=1a94bc34768e463a93cb3751819709ab0ea80a01
This bit causes a FTBFS on mips:
+#define SYSCALL_ALIAS(alias, name) \
+ asm ("\t.globl " #alias "\n\t.set " #alias ", " #name)
This changeset appears to fix it:
http://sourceware.org/ml/binutils/2007-05/msg00242.html
So - my question for you is, do you think this is a reasonable thing
to add in an etch point release? Or, do you know of another way to
implement this macro without requiring this syntax?
--
dann frazier
--- End Message ---
diff -u binutils-2.17/debian/patches/00list binutils-2.17/debian/patches/00list
--- binutils-2.17/debian/patches/00list
+++ binutils-2.17/debian/patches/00list
@@ -8,0 +9 @@
+129_mips_set_generic_handler
diff -u binutils-2.17/debian/changelog binutils-2.17/debian/changelog
--- binutils-2.17/debian/changelog
+++ binutils-2.17/debian/changelog
@@ -1,3 +1,11 @@
+binutils (2.17-3+etch1) oldstable; urgency=high
+
+ * Non-maintainer upload.
+ * 129_mips_set_generic_handler.dpatch: Add mips support for
+ ".set symbol,value" gas syntax.
+
+ -- dann frazier <da...@debian.org> Thu, 16 Apr 2009 12:21:46 -0600
+
binutils (2.17-3) unstable; urgency=low
* debian/rules (configure-multi-stamp): drop i486-kfreebsd-gnu again as
only in patch2:
unchanged:
--- binutils-2.17.orig/debian/patches/129_mips_set_generic_handler.dpatch
+++ binutils-2.17/debian/patches/129_mips_set_generic_handler.dpatch
@@ -0,0 +1,43 @@
+#!/bin/sh -e
+## 129_mips_set_generic_handler.dpatch
+##
+## DP: Description: Add support for ".set symbol,value" syntax
+## DP: Author: "Joseph S. Myers" <joseph at codesourcery dot com>
+## DP: Upstream status: Included
+
+if [ $# -ne 1 ]; then
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+fi
+
+[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
+patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
+
+case "$1" in
+ -patch) patch $patch_opts -p1 < $0;;
+ -unpatch) patch $patch_opts -p1 -R < $0;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1;;
+esac
+
+exit 0
+
+...@dpatch@
+--- binutils-2.17/gas/config/tc-mips.c.orig 2009-04-16 12:16:45.000000000 -0600
++++ binutils-2.17/gas/config/tc-mips.c 2009-04-16 12:17:28.000000000 -0600
+@@ -12162,6 +12162,14 @@
+ mips_opts.sym32 = TRUE;
+ else if (strcmp (name, "nosym32") == 0)
+ mips_opts.sym32 = FALSE;
++ else if (strchr (name, ','))
++ {
++ /* Generic ".set" directive; use the generic handler. */
++ *input_line_pointer = ch;
++ input_line_pointer = name;
++ s_set (0);
++ return;
++ }
+ else
+ {
+ as_warn (_("Tried to set unrecognized symbol: %s\n"), name);