From 76374f68fbc07420cd459b0d0fae424895ea4141 Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Fri, 16 Jan 2004 13:38:10 +0000 Subject: 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. --- extra/Configs/Config.alpha | 5 ++++- extra/Configs/Config.arm | 8 ++++++++ extra/Configs/Config.cris | 4 +++- extra/Configs/Config.e1 | 5 ++++- extra/Configs/Config.h8300 | 8 ++++++++ extra/Configs/Config.i386 | 5 ++++- extra/Configs/Config.i960 | 4 ++++ extra/Configs/Config.in.arch | 2 ++ extra/Configs/Config.m68k | 5 ++++- extra/Configs/Config.microblaze | 4 ++++ extra/Configs/Config.mips | 8 ++++++++ extra/Configs/Config.powerpc | 5 ++++- extra/Configs/Config.sh | 8 ++++++-- extra/Configs/Config.sparc | 5 ++++- extra/Configs/Config.v850 | 5 ++++- 15 files changed, 71 insertions(+), 10 deletions(-) diff --git a/extra/Configs/Config.alpha b/extra/Configs/Config.alpha index f7900a1aa..bf83798a5 100644 --- a/extra/Configs/Config.alpha +++ b/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" diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm index e6271cee3..fae965b35 100644 --- a/extra/Configs/Config.arm +++ b/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 diff --git a/extra/Configs/Config.cris b/extra/Configs/Config.cris index d738489a1..716f46841 100644 --- a/extra/Configs/Config.cris +++ b/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 diff --git a/extra/Configs/Config.e1 b/extra/Configs/Config.e1 index bd8328d31..762282c38 100644 --- a/extra/Configs/Config.e1 +++ b/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" diff --git a/extra/Configs/Config.h8300 b/extra/Configs/Config.h8300 index 15e4eeb7b..d94646494 100644 --- a/extra/Configs/Config.h8300 +++ b/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" diff --git a/extra/Configs/Config.i386 b/extra/Configs/Config.i386 index 20b8bbe89..cab2d332f 100644 --- a/extra/Configs/Config.i386 +++ b/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 diff --git a/extra/Configs/Config.i960 b/extra/Configs/Config.i960 index c1b1f21c3..19171c590 100644 --- a/extra/Configs/Config.i960 +++ b/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" diff --git a/extra/Configs/Config.in.arch b/extra/Configs/Config.in.arch index 44ed6ee01..6e4044934 100644 --- a/extra/Configs/Config.in.arch +++ b/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 diff --git a/extra/Configs/Config.m68k b/extra/Configs/Config.m68k index 82ca7ad9e..a394965e1 100644 --- a/extra/Configs/Config.m68k +++ b/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" diff --git a/extra/Configs/Config.microblaze b/extra/Configs/Config.microblaze index cf50a5ea5..b322b6661 100644 --- a/extra/Configs/Config.microblaze +++ b/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 diff --git a/extra/Configs/Config.mips b/extra/Configs/Config.mips index 273e8743d..02382976b 100644 --- a/extra/Configs/Config.mips +++ b/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 diff --git a/extra/Configs/Config.powerpc b/extra/Configs/Config.powerpc index a67b4a544..6c6911c42 100644 --- a/extra/Configs/Config.powerpc +++ b/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 diff --git a/extra/Configs/Config.sh b/extra/Configs/Config.sh index 56ab4edac..79a2ee442 100644 --- a/extra/Configs/Config.sh +++ b/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 diff --git a/extra/Configs/Config.sparc b/extra/Configs/Config.sparc index 3c359edd1..3d99a44ec 100644 --- a/extra/Configs/Config.sparc +++ b/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 diff --git a/extra/Configs/Config.v850 b/extra/Configs/Config.v850 index 64fa9fdff..894cb24ac 100644 --- a/extra/Configs/Config.v850 +++ b/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 -- cgit v1.2.3