arch/m68k: re-enable the architecture
authorWaldemar Brodkorb <wbx@openadk.org>
Sat, 19 Mar 2016 19:04:10 +0000 (20:04 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sun, 20 Mar 2016 14:28:44 +0000 (15:28 +0100)
This allows to build a m68k toolchain with uClibc.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
arch/Config.in
arch/Config.in.m68k
package/gcc/4.8.5/890-fix-m68k-compile.patch [new file with mode: 0644]
package/gcc/4.9.3/890-fix-m68k-compile.patch [new file with mode: 0644]
package/gcc/5.3.0/890-fix-m68k-compile.patch [new file with mode: 0644]

index 401bd28e86e39885fcbe568f5051a238ec890d7b..3f1453fc0a63635d8bd9bfcf275fe85c317fed44 100644 (file)
@@ -95,7 +95,6 @@ config BR2_i386
 config BR2_m68k
        bool "m68k"
        select BR2_ARCH_HAS_MMU_MANDATORY
-       depends on BROKEN # ice in uclibc / inet_ntoa_r
        help
          Motorola 68000 family microprocessor
          http://en.wikipedia.org/wiki/M68k
index f40f97c43e8a8d6603f04d8ec9e8ee9b439f9a5b..94494c88077667189eb621e1d1453e7c4b71c4b7 100644 (file)
@@ -4,10 +4,18 @@ config BR2_ARCH
 config BR2_ENDIAN
        default "BIG"
 
-config BR2_GCC_TARGET_ARCH
-       default "68000"         if BR2_m68k_68000
-       default "68010"         if BR2_m68k_68010
-       default "68020"         if BR2_m68k_68020
-       default "68030"         if BR2_m68k_68030
+# coldfire variants will be added later
+choice
+       prompt "Target CPU"
+       depends on BR2_m68k
+       default BR2_m68k_68040
+       help
+         Specific CPU variant to use
+
+config BR2_m68k_68040
+       bool "68040"
+
+endchoice
+
+config BR2_GCC_TARGET_CPU
        default "68040"         if BR2_m68k_68040
-       default "68060"         if BR2_m68k_68060
diff --git a/package/gcc/4.8.5/890-fix-m68k-compile.patch b/package/gcc/4.8.5/890-fix-m68k-compile.patch
new file mode 100644 (file)
index 0000000..124e842
--- /dev/null
@@ -0,0 +1,15 @@
+remove unused header, which breaks the toolchain building
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur gcc-4.8.5.orig/libgcc/config/m68k/linux-atomic.c gcc-4.8.5/libgcc/config/m68k/linux-atomic.c
+--- gcc-4.8.5.orig/libgcc/config/m68k/linux-atomic.c   2013-02-04 20:06:20.000000000 +0100
++++ gcc-4.8.5/libgcc/config/m68k/linux-atomic.c        2016-03-19 00:18:12.000000000 +0100
+@@ -33,7 +33,6 @@
+    using the kernel helper defined below.  There is no support for
+    64-bit operations yet.  */
+-#include <asm/unistd.h>
+ #include <stdbool.h>
+ #ifndef __NR_atomic_cmpxchg_32
diff --git a/package/gcc/4.9.3/890-fix-m68k-compile.patch b/package/gcc/4.9.3/890-fix-m68k-compile.patch
new file mode 100644 (file)
index 0000000..140977b
--- /dev/null
@@ -0,0 +1,15 @@
+remove unused header, which breaks the toolchain building
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur gcc-4.9.3.orig/libgcc/config/m68k/linux-atomic.c gcc-4.9.3/libgcc/config/m68k/linux-atomic.c
+--- gcc-4.9.3.orig/libgcc/config/m68k/linux-atomic.c   2014-01-02 23:25:22.000000000 +0100
++++ gcc-4.9.3/libgcc/config/m68k/linux-atomic.c        2016-03-18 22:24:40.000000000 +0100
+@@ -33,7 +33,6 @@
+    using the kernel helper defined below.  There is no support for
+    64-bit operations yet.  */
+-#include <asm/unistd.h>
+ #include <stdbool.h>
+ #ifndef __NR_atomic_cmpxchg_32
diff --git a/package/gcc/5.3.0/890-fix-m68k-compile.patch b/package/gcc/5.3.0/890-fix-m68k-compile.patch
new file mode 100644 (file)
index 0000000..6e63de0
--- /dev/null
@@ -0,0 +1,15 @@
+remove unused header, which breaks the toolchain building
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur gcc-5.3.0.orig/libgcc/config/m68k/linux-atomic.c gcc-5.3.0/libgcc/config/m68k/linux-atomic.c
+--- gcc-5.3.0.orig/libgcc/config/m68k/linux-atomic.c   2015-01-05 13:33:28.000000000 +0100
++++ gcc-5.3.0/libgcc/config/m68k/linux-atomic.c        2016-03-19 09:25:07.000000000 +0100
+@@ -33,7 +33,6 @@
+    using the kernel helper defined below.  There is no support for
+    64-bit operations yet.  */
+-#include <asm/unistd.h>
+ #include <stdbool.h>
+ #ifndef __NR_atomic_cmpxchg_32