Browse Source

Fixup selection of endianness, since select does not work on choice
items, we have to declare what endianness cpus are capable of supporting
and work using dependancies.

Eric Andersen 21 years ago
parent
commit
76374f68fb

+ 4 - 1
extra/Configs/Config.alpha

@@ -5,7 +5,6 @@
 
 config HAVE_ELF
 	select UCLIBC_HAS_MMU
-	select ARCH_LITTLE_ENDIAN
 	select HAVE_NO_SHARED
 	select ARCH_HAS_NO_LDSO
 	select HAS_NO_THREADS
@@ -13,6 +12,10 @@ config HAVE_ELF
 	bool
 	default y
 
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
+	default y
+
 config TARGET_ARCH
 	default "alpha"
 

+ 8 - 0
extra/Configs/Config.arm

@@ -19,6 +19,14 @@ config ARCH_LDFLAGS
 config LIBGCC_CFLAGS
 	string
 
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
+	default y
+
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
+	default y
+
 choice
 	prompt "Target Processor Type"
 	default CONFIG_GENERIC_ARM

+ 3 - 1
extra/Configs/Config.cris

@@ -19,6 +19,9 @@ config ARCH_LDFLAGS
 config LIBGCC_CFLAGS
 	string
 
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
+	default y
 
 choice
 	prompt "Target Architecture Type"
@@ -32,7 +35,6 @@ choice
 
 config CONFIG_CRIS
 	select UCLIBC_HAS_MMU
-	select ARCH_LITTLE_ENDIAN
 	bool "CRIS"
 
 endchoice

+ 4 - 1
extra/Configs/Config.e1

@@ -8,10 +8,13 @@ config HAVE_ELF
 	select ARCH_HAS_NO_MMU
 	select HAVE_NO_SHARED
 	select ARCH_HAS_NO_LDSO
-	select ARCH_BIG_ENDIAN
 	bool
 	default n
 
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
+	default y
+
 config TARGET_ARCH
 	default "e1"
 

+ 8 - 0
extra/Configs/Config.h8300

@@ -11,6 +11,14 @@ config HAVE_ELF
 	select ARCH_HAS_NO_LDSO
 	default y
 
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
+	default y
+
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
+	default y
+
 config TARGET_ARCH
 	default "h8300"
 

+ 4 - 1
extra/Configs/Config.i386

@@ -5,7 +5,6 @@
 
 config HAVE_ELF
 	bool
-	select ARCH_LITTLE_ENDIAN
 	select UCLIBC_HAS_MMU
 	default y
 
@@ -22,6 +21,10 @@ config ARCH_LDFLAGS
 config LIBGCC_CFLAGS
 	string
 
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
+	default y
+
 choice
 	prompt "Target x86 Processor Family"
 	default CONFIG_GENERIC_386

+ 4 - 0
extra/Configs/Config.i960

@@ -14,6 +14,10 @@ config HAVE_ELF
 	select HAS_NO_THREADS
 	default n
 
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
+	default y
+
 config ARCH_CFLAGS
 	string
 	default "-mh -mint32 -fsigned-char"

+ 2 - 0
extra/Configs/Config.in.arch

@@ -11,9 +11,11 @@ choice
 
 config ARCH_LITTLE_ENDIAN
 	bool "Little Endian"
+	depends on ARCH_SUPPORTS_LITTLE_ENDIAN
 
 config ARCH_BIG_ENDIAN
 	bool "Big Endian"
+	depends on ARCH_SUPPORTS_BIG_ENDIAN
 
 endchoice
 

+ 4 - 1
extra/Configs/Config.m68k

@@ -9,11 +9,14 @@ config TARGET_ARCH
 config HAVE_ELF
 	bool
 	select ARCH_HAS_NO_MMU
-	select ARCH_BIG_ENDIAN
 	select HAVE_NO_SHARED
 	select ARCH_HAS_NO_LDSO
 	default y
 
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
+	default y
+
 config ARCH_CFLAGS
 	string
 	default "-Wa,--bitwise-or -I$(KERNEL_SOURCE)/include"

+ 4 - 0
extra/Configs/Config.microblaze

@@ -14,6 +14,10 @@ config HAVE_ELF
 	select ARCH_HAS_NO_LDSO
 	default y
 
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
+	default y
+
 config ARCH_CFLAGS
 	string
 

+ 8 - 0
extra/Configs/Config.mips

@@ -20,6 +20,14 @@ config ARCH_LDFLAGS
 config LIBGCC_CFLAGS
 	string
 
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
+	default y
+
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
+	default y
+
 choice
 	prompt "Target Processor Architecture"
 	default CONFIG_MIPS_ISA_1

+ 4 - 1
extra/Configs/Config.powerpc

@@ -9,7 +9,10 @@ config TARGET_ARCH
 config HAVE_ELF
 	bool
 	select UCLIBC_HAS_MMU
-	select ARCH_BIG_ENDIAN
+	default y
+
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
 	default y
 
 config ARCH_CFLAGS

+ 6 - 2
extra/Configs/Config.sh

@@ -24,8 +24,12 @@ config HAVE_DOT_HIDDEN
         bool
 	default y
 
-config UCLIBC_COMPLETELY_PIC
-        bool
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
+	default y
+
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
 	default y
 
 choice

+ 4 - 1
extra/Configs/Config.sparc

@@ -8,11 +8,14 @@ config TARGET_ARCH
 
 config HAVE_ELF
 	bool
-	select ARCH_BIG_ENDIAN
 	select HAVE_NO_SHARED
 	select ARCH_HAS_NO_LDSO
 	default y
 
+config ARCH_SUPPORTS_BIG_ENDIAN
+	bool
+	default y
+
 config ARCH_CFLAGS
 	string
 

+ 4 - 1
extra/Configs/Config.v850

@@ -9,13 +9,16 @@ config TARGET_ARCH
 config HAVE_ELF
 	bool
 	select ARCH_HAS_NO_MMU
-	select ARCH_LITTLE_ENDIAN
 	select ARCH_HAS_C_SYMBOL_PREFIX
 	select HAVE_NO_PIC
 	select HAVE_NO_SHARED
 	select ARCH_HAS_NO_LDSO
 	default y
 
+config ARCH_SUPPORTS_LITTLE_ENDIAN
+	bool
+	default y
+
 config ARCH_CFLAGS
 	string