Control: tags 811954 + patch Control: tags 811954 + pending Dear maintainer,
I've prepared an NMU for binutils-msp430 (versioned as
2.22~msp20120406-5.1), upload to DELAYED/5 will follow shortly. Please
feel free to tell me if I should delay it longer.
Regards,
Christoph
diff -u binutils-msp430-2.22~msp20120406/debian/changelog
binutils-msp430-2.22~msp20120406/debian/changelog
--- binutils-msp430-2.22~msp20120406/debian/changelog
+++ binutils-msp430-2.22~msp20120406/debian/changelog
@@ -1,3 +1,10 @@
+binutils-msp430 (2.22~msp20120406-5.1) unstable; urgency=high
+
+ * Non-maintainer upload
+ * Fix build errors with gcc-6. Closes: #811954
+
+ -- Christoph Biedl <[email protected]> Sun, 08 Jan 2017
20:17:49 +0100
+
binutils-msp430 (2.22~msp20120406-5) unstable; urgency=high
* Fix FTBFS with gcc-4.9, patching bfd_xxx_set macros
diff -u binutils-msp430-2.22~msp20120406/debian/patchlist
binutils-msp430-2.22~msp20120406/debian/patchlist
--- binutils-msp430-2.22~msp20120406/debian/patchlist
+++ binutils-msp430-2.22~msp20120406/debian/patchlist
@@ -3,0 +4,2 @@
+./own-patch/ftbfs-gcc-6.patch
+./own-patch/remove-unused-variables.patch
only in patch2:
unchanged:
--- binutils-msp430-2.22~msp20120406.orig/debian/own-patch/ftbfs-gcc-6.patch
+++ binutils-msp430-2.22~msp20120406/debian/own-patch/ftbfs-gcc-6.patch
@@ -0,0 +1,47 @@
+Subject: Fix build errors with gcc-6. Closes: #811954
+Author: Christoph Biedl <[email protected]>
+
+--- a/binutils/dwarf.c
++++ b/binutils/dwarf.c
+@@ -147,7 +147,7 @@
+ *length_return = num_read;
+
+ if (sign && (shift < 8 * sizeof (result)) && (byte & 0x40))
+- result |= -1L << shift;
++ result |= ((1L << shift) - 1) ^ -1L;
+
+ return result;
+ }
+--- a/gas/read.c
++++ b/gas/read.c
+@@ -4968,7 +4968,7 @@
+ {
+ /* Sign-extend VAL. */
+ if (val & (1 << (loaded - 1)))
+- val |= ~0 << loaded;
++ val |= ((1L << loaded) - 1) ^ -1L;
+ if (orig)
+ *p = val & 0x7f;
+ p++;
+--- a/gas/write.c
++++ b/gas/write.c
+@@ -2236,7 +2236,7 @@
+ relax_addressT mask;
+ relax_addressT new_address;
+
+- mask = ~((~0) << alignment);
++ mask = ((1L << alignment) - 1);
+ new_address = (address + mask) & (~mask);
+ #ifdef LINKER_RELAXING_SHRINKS_ONLY
+ if (linkrelax)
+--- a/gas/config/tc-msp430.c
++++ b/gas/config/tc-msp430.c
+@@ -2630,7 +2630,7 @@
+ {
+ int align = bfd_get_section_alignment (stdoutput, seg);
+
+- return ((addr + (1 << align) - 1) & (-1 << align));
++ return ((addr + (1 << align) - 1) & (((1 << align) - 1) ^ -1));
+ }
+
+ /* If you define this macro, it should return the offset between the
only in patch2:
unchanged:
---
binutils-msp430-2.22~msp20120406.orig/debian/own-patch/remove-unused-variables.patch
+++
binutils-msp430-2.22~msp20120406/debian/own-patch/remove-unused-variables.patch
@@ -0,0 +1,21 @@
+Subject: Remove unused variables
+Author: Christoph Biedl <[email protected]>
+
+--- a/gas/config/tc-msp430.c
++++ b/gas/config/tc-msp430.c
+@@ -594,6 +594,7 @@
+ | grep '^ *ERRATUM_*' \
+ | cut -d= -f1 \
+ | sed 's@ *$@,@' */
++/*
+ static const int recognized_errata[] = {
+ ERRATUM_CPU4,
+ ERRATUM_CPU7,
+@@ -623,6 +624,7 @@
+ ERRATUM_CPU35,
+ ERRATUM_CPU40,
+ };
++*/
+
+ static int msp430_cpu = MSP430_CPU_MSP430;
+ static int msp430_mpy = MSP430_MPY_NONE;
signature.asc
Description: Digital signature

