Browse Source

improve c6x toolchain build support

Waldemar Brodkorb 9 years ago
parent
commit
4077374c95
3 changed files with 15 additions and 20 deletions
  1. 1 18
      target/c6x/uclibc.config
  2. 11 1
      target/config/Config.in.binfmt
  3. 3 1
      toolchain/uclibc-ng/Makefile

+ 1 - 18
target/c6x/uclibc.config

@@ -2,26 +2,18 @@
 # Automatically generated file; DO NOT EDIT.
 # uClibc 1.0.0-git C Library Configuration
 #
-# TARGET_alpha is not set
 # TARGET_arc is not set
 # TARGET_arm is not set
 # TARGET_avr32 is not set
 # TARGET_bfin is not set
 TARGET_c6x=y
 # TARGET_cris is not set
-# TARGET_hppa is not set
 # TARGET_i386 is not set
-# TARGET_ia64 is not set
 # TARGET_m68k is not set
-# TARGET_metag is not set
-# TARGET_microblaze is not set
 # TARGET_mips is not set
-# TARGET_nios2 is not set
 # TARGET_powerpc is not set
 # TARGET_sh is not set
-# TARGET_sh64 is not set
 # TARGET_sparc is not set
-# TARGET_vax is not set
 # TARGET_x86_64 is not set
 # TARGET_xtensa is not set
 
@@ -30,8 +22,6 @@ TARGET_c6x=y
 #
 TARGET_ARCH="c6x"
 FORCE_OPTIONS_FOR_ARCH=y
-# CONFIG_CRIS is not set
-# CONFIG_CRISV32 is not set
 CONFIG_GENERIC_C6X=y
 # CONFIG_TMS320C64X is not set
 # CONFIG_TMS320C64XPLUS is not set
@@ -79,17 +69,12 @@ LDSO_LD_LIBRARY_PATH=y
 # LDSO_NO_CLEANUP is not set
 UCLIBC_CTOR_DTOR=y
 # LDSO_GNU_HASH_SUPPORT is not set
-# HAS_NO_THREADS is not set
+HAS_NO_THREADS=y
 # LINUXTHREADS_OLD is not set
-# LINUXTHREADS_NEW is not set
-UCLIBC_HAS_THREADS_NATIVE=y
-UCLIBC_HAS_THREADS=y
-PTHREADS_DEBUG_SUPPORT=y
 UCLIBC_HAS_SYSLOG=y
 UCLIBC_HAS_LFS=y
 MALLOC=y
 # MALLOC_SIMPLE is not set
-# MALLOC_STANDARD is not set
 MALLOC_GLIBC_COMPAT=y
 UCLIBC_HAS_OBSTACK=y
 UCLIBC_DYNAMIC_ATEXIT=y
@@ -236,7 +221,6 @@ UCLIBC_BUILD_NOEXECSTACK=y
 CROSS_COMPILER_PREFIX=""
 UCLIBC_EXTRA_CFLAGS=""
 # DODEBUG is not set
-# DODEBUG_PT is not set
 # DOSTRIP is not set
 # DOASSERTS is not set
 # SUPPORT_LD_DEBUG is not set
@@ -246,4 +230,3 @@ UCLIBC_EXTRA_CFLAGS=""
 WARNINGS="-Wall"
 # EXTRA_WARNINGS is not set
 # DOMULTI is not set
-# UCLIBC_MJN3_ONLY is not set

+ 11 - 1
target/config/Config.in.binfmt

@@ -3,16 +3,26 @@
 
 choice
 prompt "Binary Format"
-depends on ADK_TARGET_ARCH_M68K || ADK_TARGET_ARCH_BFIN
+depends on ADK_TARGET_ARCH_M68K || ADK_TARGET_ARCH_BFIN || ADK_TARGET_ARCH_C6X
 
 config ADK_TARGET_BINFMT_ELF
 	bool "ELF"
+	depends on !ADK_TARGET_ARCH_C6X
+	depends on !ADK_TARGET_ARCH_BFIN
+
+config ADK_TARGET_BINFMT_DSBT
+	bool "DSBT"
+	depends on ADK_TARGET_ARCH_C6X
+	depends on !ADK_TARGET_ARCH_BFIN
+	depends on !ADK_TARGET_ARCH_M68K
 
 config ADK_TARGET_BINFMT_FDPIC
 	bool "FDPIC"
 	depends on ADK_TARGET_ARCH_BFIN
+	depends on !ADK_TARGET_ARCH_C6X
 
 config ADK_TARGET_BINFMT_FLAT
 	bool "FLAT"
+	depends on !ADK_TARGET_ARCH_C6X
 
 endchoice

+ 3 - 1
toolchain/uclibc-ng/Makefile

@@ -30,8 +30,10 @@ else
 	$(SED) 's/.*\(ARCH_LITTLE_ENDIAN\).*/# \1 is not set/' ${WRKBUILD}/.config
 	$(SED) 's/.*\(ARCH_WANTS_LITTLE_ENDIAN\).*/# \1 is not set/' ${WRKBUILD}/.config
 endif
-ifeq ($(ADK_TARGET_UCLINUX),y)
+ifeq ($(ADK_TARGET_BINFMT_FLAT),y)
 	$(SED) 's/.*\(UCLIBC_FORMAT_FLAT_SEP_DATA\).*/\1=y/' ${WRKBUILD}/.config
+endif
+ifeq ($(ADK_TARGET_UCLINUX),y)
 	$(SED) 's/.*\(ARCH_USE_MMU\).*/# \1 is not set/' ${WRKBUILD}/.config
 endif
 ifeq ($(ADK_TARGET_USE_STATIC_LIBS)$(ADK_TARGET_BINFMT_FLAT),)