diff options
| -rw-r--r-- | extra/Configs/Config.in | 29 | ||||
| -rw-r--r-- | extra/Configs/Config.in.arch | 62 | ||||
| -rw-r--r-- | extra/Configs/Config.mips | 11 |
3 files changed, 66 insertions, 36 deletions
diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in index 64d4a9fb3..41e5c9fa5 100644 --- a/extra/Configs/Config.in +++ b/extra/Configs/Config.in @@ -304,7 +304,6 @@ config LDSO_RUNPATH config UCLIBC_CTOR_DTOR bool "Support global constructors and destructors" - depends on !TARGET_bfin default y help If you wish to build uClibc with support for global constructor @@ -476,6 +475,15 @@ config COMPAT_ATEXIT Enable this option if you want to update from 0.9.28 to svn/0.9.29, else you will be missing atexit() until you rebuild all apps. +config UCLIBC_SUSV3_LEGACY + bool "Enable SuSv3 LEGACY functions" + default n + help + Enable this option if you want to have SuSv3 LEGACY functions + in the library, else they are replaced by SuSv3 proposed macros. + Currently applies to bcopy/bzero/bcmp/index/rindex. + WARNING! ABI incompatibility. + config HAS_SHADOW bool "Shadow Password Support" default y @@ -1333,11 +1341,21 @@ config UCLIBC_HAS_SSP default n help Add propolice smashing stack protector to the library. - This requires a patched version of GCC or GCC 4.1, supporting the + This requires GCC 4.1, supporting the -fstack-protector[-all] + options. GCC does not have to provide libssp, the needed + functions are added to ldso/libc instead. + Most people will answer N. + +config UCLIBC_HAS_SSP_COMPAT + bool "Support for gcc-3.x propolice smashing stack protector" + depends on UCLIBC_HAS_SSP + default n + help + Add gcc-3.x propolice smashing stack protector to the library. + This requires a patched version of GCC, supporting the -fstack-protector[-all] options, with the __guard and - __stack_smash_handler, respectively __stack_chk_guard and - __stack_chk_fail functions removed from libgcc. - These functions are added to libc instead. + __stack_smash_handler functions removed from libgcc. + These functions are added to ldso/libc instead. More information at: <http://www.research.ibm.com/trl/projects/security/ssp/> Most people will answer N. @@ -1420,6 +1438,7 @@ config DODEBUG bool "Build uClibc with debugging symbols" default n select NOSTRIP + select EXTRA_WARNINGS help Say Y here if you wish to compile uClibc with debugging symbols. This will allow you to use a debugger to examine uClibc internals diff --git a/extra/Configs/Config.in.arch b/extra/Configs/Config.in.arch index e5d59e35a..f5c31b276 100644 --- a/extra/Configs/Config.in.arch +++ b/extra/Configs/Config.in.arch @@ -3,31 +3,44 @@ # see extra/config/Kconfig-language.txt # +config ARCH_ANY_ENDIAN + bool +config ARCH_BIG_ENDIAN + bool +config ARCH_LITTLE_ENDIAN + bool +if ARCH_ANY_ENDIAN choice prompt "Target Processor Endianness" help - This is the endianness you wish to build use. Choose either Big + This is the endianness you wish to use. Choose either Big Endian, or Little Endian. - -config ARCH_LITTLE_ENDIAN - bool "Little Endian" - depends on ARCH_SUPPORTS_LITTLE_ENDIAN - -config ARCH_BIG_ENDIAN +config ARCH_WANTS_BIG_ENDIAN bool "Big Endian" - depends on ARCH_SUPPORTS_BIG_ENDIAN - + select ARCH_BIG_ENDIAN +config ARCH_WANTS_LITTLE_ENDIAN + bool "Little Endian" + select ARCH_LITTLE_ENDIAN endchoice +endif +# if the arch only supports one endian, just display the setting +if !ARCH_ANY_ENDIAN && ARCH_LITTLE_ENDIAN +comment "Using Little Endian" +endif +if !ARCH_ANY_ENDIAN && ARCH_BIG_ENDIAN +comment "Using Big Endian" +endif config ARCH_HAS_NO_MMU - bool "Target CPU does not have a memory management unit (MMU)" - select ARCH_HAS_NO_LDSO if !TARGET_frv - default n + bool +if ARCH_HAS_NO_MMU +comment "Target CPU lacks a memory management unit (MMU)" +endif config ARCH_HAS_MMU bool "Target CPU has a memory management unit (MMU)" - default y depends !ARCH_HAS_NO_MMU + default y help If your target CPU does not have a memory management unit (MMU), then answer N here. Normally, Linux runs on systems with an MMU. @@ -35,6 +48,16 @@ config ARCH_HAS_MMU Most people will answer Y. +config ARCH_USE_MMU + bool "Do you want to utilize the MMU?" + depends on ARCH_HAS_MMU + default y + help + If your target CPU has a MMU, and you wish to actually utilize it, + then answer Y here. Normal Linux requires an MMU. + + If you're unsure, answer Y. + config UCLIBC_HAS_FLOATS bool "Enable floating point number support" default y @@ -48,7 +71,7 @@ config UCLIBC_HAS_FLOATS Answering N to this option can reduce the size of uClibc. Most people will answer Y. -config HAS_FPU +config UCLIBC_HAS_FPU bool "Target CPU has a floating point unit (FPU)" depends on UCLIBC_HAS_FLOATS default y @@ -64,7 +87,7 @@ config HAS_FPU config UCLIBC_HAS_SOFT_FLOAT bool - depends on UCLIBC_HAS_FLOATS && !HAS_FPU + depends on UCLIBC_HAS_FLOATS && !UCLIBC_HAS_FPU default y config DO_C99_MATH @@ -95,19 +118,14 @@ config KERNEL_SOURCE config UCLIBC_UCLINUX_BROKEN_MUNMAP bool - depends on !ARCH_HAS_MMU + depends on !ARCH_USE_MMU default y config EXCLUDE_BRK bool - depends on !ARCH_HAS_MMU + depends on !ARCH_USE_MMU default y -config C_SYMBOL_PREFIX - string - default "_" if ARCH_HAS_C_SYMBOL_PREFIX - default "" if !ARCH_HAS_C_SYMBOL_PREFIX - config HAVE_DOT_CONFIG bool default y diff --git a/extra/Configs/Config.mips b/extra/Configs/Config.mips index bca298a69..43e0bbb46 100644 --- a/extra/Configs/Config.mips +++ b/extra/Configs/Config.mips @@ -6,9 +6,10 @@ config TARGET_ARCH default "mips" -config HAVE_ELF +config FORCE_OPTIONS_FOR_ARCH bool default y + select ARCH_ANY_ENDIAN config ARCH_CFLAGS string @@ -17,14 +18,6 @@ config ARCH_CFLAGS 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 |
