diff options
-rw-r--r-- | package/gdbserver/patches/patch-gdb_common_linux-ptrace_h | 11 | ||||
-rw-r--r-- | package/w3m/Makefile | 2 | ||||
-rw-r--r-- | target/arch.lst | 1 | ||||
-rw-r--r-- | target/config/Config.in.cpu | 4 | ||||
-rw-r--r-- | target/config/Config.in.libc.choice | 2 | ||||
-rw-r--r-- | target/config/Config.in.toolchain | 1 | ||||
-rw-r--r-- | target/m68k/uclibc.config | 4 | ||||
-rw-r--r-- | target/tile/Makefile | 9 | ||||
-rw-r--r-- | target/tile/systems/toolchain-tile | 10 | ||||
-rw-r--r-- | toolchain/uclibc/Makefile | 2 | ||||
-rw-r--r-- | toolchain/uclibc/patches/0.9.34-git/0001-fix-linuxthreads-for-coldfire-nommu.patch | 106 |
11 files changed, 148 insertions, 4 deletions
diff --git a/package/gdbserver/patches/patch-gdb_common_linux-ptrace_h b/package/gdbserver/patches/patch-gdb_common_linux-ptrace_h new file mode 100644 index 000000000..1f8e5b9b4 --- /dev/null +++ b/package/gdbserver/patches/patch-gdb_common_linux-ptrace_h @@ -0,0 +1,11 @@ +--- gdb-7.8.orig/gdb/common/linux-ptrace.h 2014-07-29 14:37:42.000000000 +0200 ++++ gdb-7.8/gdb/common/linux-ptrace.h 2014-10-04 08:25:08.000000000 +0200 +@@ -23,7 +23,7 @@ struct buffer; + #include <sys/ptrace.h> + + #ifdef __UCLIBC__ +-#if !(defined(__UCLIBC_HAS_MMU__) || defined(__ARCH_HAS_MMU__)) ++#if !defined(__UCLIBC_HAS_MMU__) + /* PTRACE_TEXT_ADDR and friends. */ + #include <asm/ptrace.h> + #define HAS_NOMMU diff --git a/package/w3m/Makefile b/package/w3m/Makefile index 9f5f7c942..2be9aec05 100644 --- a/package/w3m/Makefile +++ b/package/w3m/Makefile @@ -10,7 +10,7 @@ PKG_MD5SUM:= 1b845a983a50b8dec0169ac48479eacc PKG_DESCR:= console web browser PKG_SECTION:= app/browser PKG_DEPENDS:= libgc libncurses -PKG_BUILDDEP:= libgc ncurses +PKG_BUILDDEP:= libgc-host libgc ncurses PKG_URL:= http://w3m.sourceforge.net/ PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=w3m/} diff --git a/target/arch.lst b/target/arch.lst index 703793bb0..fd5c9f80c 100644 --- a/target/arch.lst +++ b/target/arch.lst @@ -14,6 +14,7 @@ ppc64 sparc sparc64 sh +tile x86 x86_64 xtensa diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu index c191d9f37..6039c01b4 100644 --- a/target/config/Config.in.cpu +++ b/target/config/Config.in.cpu @@ -46,6 +46,9 @@ config ADK_CPU_ATHLON config ADK_CPU_ARC boolean +config ADK_CPU_TILE + boolean + config ADK_CPU_CRIS_V10 boolean @@ -160,6 +163,7 @@ config ADK_TARGET_CPU_ARCH default "sh4eb" if ADK_LINUX_SH && ADK_big default "sparc" if ADK_LINUX_SPARC default "sparc64" if ADK_LINUX_SPARC64 + default "tilegx" if ADK_CPU_TILE default "x86_64" if ADK_CPU_X86_64 default "x86_64" if ADK_CPU_AMDFAM10 default "xtensa" if ADK_LINUX_XTENSA diff --git a/target/config/Config.in.libc.choice b/target/config/Config.in.libc.choice index 01391f453..9f4772876 100644 --- a/target/config/Config.in.libc.choice +++ b/target/config/Config.in.libc.choice @@ -15,6 +15,7 @@ config ADK_TARGET_LIB_UCLIBC_NG !ADK_LINUX_MICROBLAZE && \ !ADK_LINUX_SPARC64 && \ !ADK_LINUX_PPC64 && \ + !ADK_LINUX_TILE && \ !ADK_x32 help http://uclibc-ng.org @@ -59,6 +60,7 @@ config ADK_TARGET_LIB_UCLIBC !ADK_LINUX_MICROBLAZE && \ !ADK_LINUX_SPARC64 && \ !ADK_LINUX_PPC64 && \ + !ADK_LINUX_TILE && \ !ADK_x32 help http://uclibc.org diff --git a/target/config/Config.in.toolchain b/target/config/Config.in.toolchain index 0fcdc442b..47165b978 100644 --- a/target/config/Config.in.toolchain +++ b/target/config/Config.in.toolchain @@ -41,6 +41,7 @@ config ADK_TOOLCHAIN_GCC_4_8_3 depends on !ADK_LINUX_ARC depends on !ADK_LINUX_AVR32 depends on !ADK_LINUX_CRIS + depends on !ADK_LINUX_TILE config ADK_TOOLCHAIN_GCC_4_9_1 prompt "4.9.1" diff --git a/target/m68k/uclibc.config b/target/m68k/uclibc.config index 7abadef09..8c7ca1104 100644 --- a/target/m68k/uclibc.config +++ b/target/m68k/uclibc.config @@ -83,8 +83,8 @@ LDSO_LD_LIBRARY_PATH=y UCLIBC_CTOR_DTOR=y # LDSO_GNU_HASH_SUPPORT is not set # HAS_NO_THREADS is not set -LINUXTHREADS_OLD=y -# LINUXTHREADS_NEW is not set +# LINUXTHREADS_OLD is not set +LINUXTHREADS_NEW=y # UCLIBC_HAS_THREADS_NATIVE is not set UCLIBC_HAS_THREADS=y PTHREADS_DEBUG_SUPPORT=y diff --git a/target/tile/Makefile b/target/tile/Makefile new file mode 100644 index 000000000..ebc17340e --- /dev/null +++ b/target/tile/Makefile @@ -0,0 +1,9 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(ADK_TOPDIR)/rules.mk +include $(ADK_TOPDIR)/mk/kernel.mk +include $(ADK_TOPDIR)/mk/modules.mk +include $(ADK_TOPDIR)/mk/kernel-build.mk +include $(ADK_TOPDIR)/mk/image.mk + diff --git a/target/tile/systems/toolchain-tile b/target/tile/systems/toolchain-tile new file mode 100644 index 000000000..bd6837dd8 --- /dev/null +++ b/target/tile/systems/toolchain-tile @@ -0,0 +1,10 @@ +config ADK_TARGET_SYSTEM_TOOLCHAIN_TILE + bool "Toolchain only" + select ADK_tile + select ADK_toolchain_tile + select ADK_CPU_TILE + select ADK_TARGET_TOOLCHAIN + select ADK_TARGET_PACKAGE_TXZ + help + TILE toolchain. + diff --git a/toolchain/uclibc/Makefile b/toolchain/uclibc/Makefile index 759db985e..c13ff9cc9 100644 --- a/toolchain/uclibc/Makefile +++ b/toolchain/uclibc/Makefile @@ -152,7 +152,7 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.install_headers $(WRKBUILD)/.fixup: ifeq ($(ADK_UCLIBC_TEST),y) - PATH='$(HOST_PATH)' $(MAKE) ${UCLIBC_MAKEOPTS} -C $(WRKBUILD) \ + PATH='$(HOST_PATH)' $(MAKE) -C $(WRKBUILD) \ TEST_INSTALLED_UCLIBC=1 \ UCLIBC_ONLY=1 \ UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ diff --git a/toolchain/uclibc/patches/0.9.34-git/0001-fix-linuxthreads-for-coldfire-nommu.patch b/toolchain/uclibc/patches/0.9.34-git/0001-fix-linuxthreads-for-coldfire-nommu.patch new file mode 100644 index 000000000..4f8320c34 --- /dev/null +++ b/toolchain/uclibc/patches/0.9.34-git/0001-fix-linuxthreads-for-coldfire-nommu.patch @@ -0,0 +1,106 @@ +From 45064565100b67ff2f960e93d580449b720a66c9 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb <wbx@openadk.org> +Date: Sat, 6 Sep 2014 01:52:10 +0200 +Subject: [PATCH] fix linuxthreads for coldfire nommu + +Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> +--- + libpthread/linuxthreads/sysdeps/m68k/pspinlock.c | 20 +++++++++++++++----- + libpthread/linuxthreads/sysdeps/m68k/pt-machine.h | 11 +++++++++-- + libpthread/linuxthreads/sysdeps/pthread/herrno-loc.c | 2 ++ + 3 files changed, 26 insertions(+), 7 deletions(-) + +diff --git a/libpthread/linuxthreads/sysdeps/m68k/pspinlock.c b/libpthread/linuxthreads/sysdeps/m68k/pspinlock.c +index c26a278..af77c2a 100644 +--- a/libpthread/linuxthreads/sysdeps/m68k/pspinlock.c ++++ b/libpthread/linuxthreads/sysdeps/m68k/pspinlock.c +@@ -27,10 +27,15 @@ __pthread_spin_lock (pthread_spinlock_t *lock) + unsigned int val; + + do +- __asm__ __volatile__ ("tas %1; sne %0" +- : "=dm" (val), "=m" (*lock) +- : "m" (*lock) +- : "cc"); ++ __asm__ __volatile__ ( ++#if !defined(__mcoldfire__) && !defined(__mcf5200__) && !defined(__m68000) ++ "tas %1; sne %0" ++#else ++ "bset #7,%1; sne %0" ++#endif ++ : "=dm" (val), "=m" (*lock) ++ : "m" (*lock) ++ : "cc"); + while (val); + + return 0; +@@ -43,7 +48,12 @@ __pthread_spin_trylock (pthread_spinlock_t *lock) + { + unsigned int val; + +- __asm__ __volatile__ ("tas %1; sne %0" ++ __asm__ __volatile__ ( ++#if !defined(__mcoldfire__) && !defined(__mcf5200__) && !defined(__m68000) ++ "tas %1; sne %0" ++#else ++ "bset #7,%1; sne %0" ++#endif + : "=dm" (val), "=m" (*lock) + : "m" (*lock) + : "cc"); +diff --git a/libpthread/linuxthreads/sysdeps/m68k/pt-machine.h b/libpthread/linuxthreads/sysdeps/m68k/pt-machine.h +index e2d7bdc..1eb9fd5 100644 +--- a/libpthread/linuxthreads/sysdeps/m68k/pt-machine.h ++++ b/libpthread/linuxthreads/sysdeps/m68k/pt-machine.h +@@ -28,12 +28,18 @@ + #endif + + /* Spinlock implementation; required. */ ++PT_EI long int testandset (int *spinlock); + PT_EI long int + testandset (int *spinlock) + { + char ret; + +- __asm__ __volatile__("tas %1; sne %0" ++ __asm__ __volatile__( ++#if !defined(__mcoldfire__) && !defined(__mcf5200__) && !defined(__m68000) ++ "tas %1; sne %0" ++#else ++ "bset #7,%1; sne %0" ++#endif + : "=dm"(ret), "=m"(*spinlock) + : "m"(*spinlock) + : "cc"); +@@ -50,6 +56,7 @@ register char * stack_pointer __asm__ ("%sp"); + + /* Compare-and-swap for semaphores. */ + ++#if !defined(__mcoldfire__) && !defined(__mcf5200__) && !defined(__mc68000) + #define HAS_COMPARE_AND_SWAP + PT_EI int + __compare_and_swap (long int *p, long int oldval, long int newval) +@@ -63,5 +70,5 @@ __compare_and_swap (long int *p, long int oldval, long int newval) + + return ret; + } +- ++#endif + #endif /* pt-machine.h */ +diff --git a/libpthread/linuxthreads/sysdeps/pthread/herrno-loc.c b/libpthread/linuxthreads/sysdeps/pthread/herrno-loc.c +index 706faef..634c752 100644 +--- a/libpthread/linuxthreads/sysdeps/pthread/herrno-loc.c ++++ b/libpthread/linuxthreads/sysdeps/pthread/herrno-loc.c +@@ -16,7 +16,9 @@ + <http://www.gnu.org/licenses/>. */ + + #include <netdb.h> ++#ifdef __UCLIBC_HAS_TLS__ + #include <tls.h> ++#endif + #include <linuxthreads/internals.h> + #include <sysdep-cancel.h> + +-- +2.0.1 + |