diff options
Diffstat (limited to 'recipes/uclibc/uclibc-0.9.27')
17 files changed, 2193 insertions, 0 deletions
diff --git a/recipes/uclibc/uclibc-0.9.27/arm-thumb-defined.patch b/recipes/uclibc/uclibc-0.9.27/arm-thumb-defined.patch new file mode 100644 index 0000000000..675ab6f5c0 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/arm-thumb-defined.patch @@ -0,0 +1,84 @@ +--- uClibc-0.9.27/ldso/include/dl-string.h.orig 2005-08-09 18:16:50.618935711 -0700 ++++ uClibc-0.9.27/ldso/include/dl-string.h 2005-08-09 18:17:02.279669474 -0700 +@@ -250,7 +250,7 @@ + } + + +-#if defined(mc68000) || defined(__arm__) || defined(__mips__) || defined(__sh__) || defined(__powerpc__) ++#if defined(mc68000) || defined(__arm__) || defined(__mips__) || defined(__sh__) || defined(__powerpc__) || defined(__thumb__) + /* On some arches constant strings are referenced through the GOT. */ + /* XXX Requires load_addr to be defined. */ + #define SEND_STDERR(X) \ +--- uClibc-0.9.27/ldso/ldso/dl-startup.c.orig 2005-08-09 18:17:02.307671237 -0700 ++++ uClibc-0.9.27/ldso/ldso/dl-startup.c 2005-08-09 18:19:40.633634061 -0700 +@@ -137,7 +137,7 @@ + /* First obtain the information on the stack that tells us more about + what binary is loaded, where it is loaded, etc, etc */ + GET_ARGV(aux_dat, args); +-#if defined (__arm__) || defined (__mips__) || defined (__cris__) ++#if defined (__arm__) || defined (__mips__) || defined (__cris__) || defined(__thumb__) + aux_dat += 1; + #endif + argc = *(aux_dat - 1); +@@ -200,7 +200,7 @@ + __asm__("movel %%a5,%0":"=g"(got)); + #elif defined(__sparc__) + __asm__("\tmov %%l7,%0\n\t":"=r"(got)); +-#elif defined(__arm__) ++#elif defined(__arm__) || defined(__thumb__) + __asm__("\tmov %0, r10\n\t":"=r"(got)); + #elif defined(__powerpc__) + __asm__("\tbl _GLOBAL_OFFSET_TABLE_-4@local\n\t":"=l"(got)); +--- uClibc-0.9.27/libc/sysdeps/linux/common/create_module.c.orig 2005-08-09 18:19:40.769642620 -0700 ++++ uClibc-0.9.27/libc/sysdeps/linux/common/create_module.c 2005-08-09 18:19:58.442754719 -0700 +@@ -31,7 +31,7 @@ + + #ifdef __NR_create_module + +-#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || defined(__cris__) || defined(__i960__) ++#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || defined(__cris__) || defined(__i960__) || defined(__thumb__) + #define __NR___create_module __NR_create_module + #ifdef __STR_NR_create_module + #define __STR_NR___create_module __STR_NR_create_module +--- uClibc-0.9.27/libc/sysdeps/linux/common/iopl.c.orig 2005-08-09 18:20:02.302997628 -0700 ++++ uClibc-0.9.27/libc/sysdeps/linux/common/iopl.c 2005-08-09 18:20:12.327628439 -0700 +@@ -9,7 +9,7 @@ + + #include "syscalls.h" + /* For arm there is a totally different implementation */ +-#if !defined(__arm__) ++#if !defined(__arm__) && !defined(__thumb__) + /* Tuns out the m68k unistd.h kernel header is broken */ + # if defined __ARCH_HAS_MMU__ && defined __NR_iopl && ( !defined(__mc68000__)) + _syscall1(int, iopl, int, level); +--- uClibc-0.9.27/libm/math_private.h.orig 2005-08-09 18:20:18.584022129 -0700 ++++ uClibc-0.9.27/libm/math_private.h 2005-08-09 18:21:26.280281986 -0700 +@@ -40,7 +40,7 @@ + * For VFP, floats words follow the memory system mode. + */ + +-#if (__BYTE_ORDER == __BIG_ENDIAN) || defined(__arm__) && !defined(__VFP_FP__) ++#if (__BYTE_ORDER == __BIG_ENDIAN) || (defined(__arm__) || defined(__thumb__)) && !defined(__VFP_FP__) + + typedef union + { +@@ -54,7 +54,7 @@ + + #endif + +-#if (__BYTE_ORDER == __LITTLE_ENDIAN) && (!defined(__arm__) || defined(__VFP_FP__)) ++#if (__BYTE_ORDER == __LITTLE_ENDIAN) && ((!defined(__arm__) && !defined(__thumb__)) || defined(__VFP_FP__)) + + typedef union + { +--- uClibc-0.9.27/utils/ldd.c.orig 2005-08-09 18:21:27.724372857 -0700 ++++ uClibc-0.9.27/utils/ldd.c 2005-08-09 18:23:13.018998630 -0700 +@@ -51,7 +51,7 @@ + #include <dmalloc.h> + #endif + +-#if defined(__arm__) ++#if defined(__arm__) || defined(__thumb__) + #define MATCH_MACHINE(x) (x == EM_ARM) + #define ELFCLASSM ELFCLASS32 + #endif diff --git a/recipes/uclibc/uclibc-0.9.27/arm/uClibc.config b/recipes/uclibc/uclibc-0.9.27/arm/uClibc.config new file mode 100644 index 0000000000..a20c9a8b63 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/arm/uClibc.config @@ -0,0 +1,164 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +TARGET_arm=y +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="arm" +ARCH_SUPPORTS_BIG_ENDIAN=y +# CONFIG_GENERIC_ARM is not set +# CONFIG_ARM610 is not set +# CONFIG_ARM710 is not set +# CONFIG_ARM720T is not set +# CONFIG_ARM920T is not set +# CONFIG_ARM922T is not set +# CONFIG_ARM926T is not set +# CONFIG_ARM_SA110 is not set +CONFIG_ARM_SA1100=y +# CONFIG_ARM_XSCALE is not set +ARCH_LITTLE_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +# HAS_FPU is not set +UCLIBC_HAS_SOFT_FLOAT=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="<path/to/kernel/sources>" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_LFS=y +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +UCLIBC_HAS_LOCALE=y +UCLIBC_PREGENERATED_LOCALE_DATA=y +UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA=y +UCLIBC_HAS_XLOCALE=y +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_DIGIT_GROUPING=y +UCLIBC_HAS_SCANF_LENIENT_DIGIT_GROUPING=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +UCLIBC_HAS_STDIO_BUFSIZ_256=y +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +UCLIBC_HAS_SYS_ERRLIST=y +UCLIBC_HAS_SIGNUM_MESSAGES=y +UCLIBC_HAS_SYS_SIGLIST=y +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="$(DEVEL_PREFIX)/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="//usr" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/recipes/uclibc/uclibc-0.9.27/armeb/uClibc.config b/recipes/uclibc/uclibc-0.9.27/armeb/uClibc.config new file mode 100644 index 0000000000..25e68fe378 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/armeb/uClibc.config @@ -0,0 +1,160 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +TARGET_arm=y +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="arm" +ARCH_SUPPORTS_BIG_ENDIAN=y +CONFIG_GENERIC_ARM=y +# CONFIG_ARM610 is not set +# CONFIG_ARM710 is not set +# CONFIG_ARM720T is not set +# CONFIG_ARM920T is not set +# CONFIG_ARM922T is not set +# CONFIG_ARM926T is not set +# CONFIG_ARM_SA110 is not set +# CONFIG_ARM_SA1100 is not set +# CONFIG_ARM_XSCALE is not set +# ARCH_LITTLE_ENDIAN is not set +ARCH_BIG_ENDIAN=y +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +# HAS_FPU is not set +UCLIBC_HAS_SOFT_FLOAT=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="/home/kergoth/code/build-armeb/tmp.linux-uclibc/cross/armeb-linux-uclibc/include" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_LFS=y +# UCLIBC_STATIC_LDCONFIG is not set +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +# UCLIBC_HAS_LOCALE is not set +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +UCLIBC_HAS_STDIO_BUFSIZ_256=y +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="$(DEVEL_PREFIX)/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="//usr" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/recipes/uclibc/uclibc-0.9.27/dyn-ldconfig.patch b/recipes/uclibc/uclibc-0.9.27/dyn-ldconfig.patch new file mode 100644 index 0000000000..a053b9ee81 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/dyn-ldconfig.patch @@ -0,0 +1,34 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- uClibc/utils/Makefile~dyn-ldconfig ++++ uClibc/utils/Makefile +@@ -45,7 +45,7 @@ + $(STRIPTOOL) -x -R .note -R .comment $@ + + ldconfig: ldconfig.c +- $(CC) $(CFLAGS) -Wl,-s -static \ ++ $(CC) $(CFLAGS) -Wl,-s $(if $(filter $(UCLIBC_STATIC_LDCONFIG),y),-static) \ + -DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" \ + -DUCLIBC_LDSO=$(UCLIBC_LDSO) -I. -I../ldso/include \ + $^ -o $@ +--- uClibc/extra/Configs/Config.in~dyn-ldconfig ++++ uClibc/extra/Configs/Config.in +@@ -311,6 +311,15 @@ + if you are using an older Linux kernel (2.0.x) that lacks large file + support. Enabling this option will increase the size of uClibc. + ++config UCLIBC_STATIC_LDCONFIG ++ bool "Link ldconfig statically" ++ default y ++ help ++ If you wish to link the ldconfig binary statically, enable this option. ++ It being static can be beneficial if you have a library problem and need ++ ldconfig to recover from it. If keeping the size down is more important ++ to you than system recovery, disable this option. ++ + choice + prompt "Malloc Implementation" + default MALLOC if ! ARCH_HAS_MMU diff --git a/recipes/uclibc/uclibc-0.9.27/i386/uClibc.config b/recipes/uclibc/uclibc-0.9.27/i386/uClibc.config new file mode 100644 index 0000000000..90d5ce1fd7 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/i386/uClibc.config @@ -0,0 +1,170 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +TARGET_i386=y +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="i386" +# CONFIG_GENERIC_386 is not set +# CONFIG_386 is not set +# CONFIG_486 is not set +# CONFIG_586 is not set +# CONFIG_586MMX is not set +# CONFIG_686 is not set +# CONFIG_PENTIUMII is not set +# CONFIG_PENTIUMIII is not set +CONFIG_PENTIUM4=y +# CONFIG_K6 is not set +# CONFIG_K7 is not set +# CONFIG_ELAN is not set +# CONFIG_CRUSOE is not set +# CONFIG_WINCHIPC6 is not set +# CONFIG_WINCHIP2 is not set +# CONFIG_CYRIXIII is not set +# CONFIG_NEHEMIAH is not set +ARCH_LITTLE_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +HAS_FPU=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="/home/kergoth/code/user/oe/build-colinux/tmp/cross/i686-linux-uclibc/include" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_LFS=y +# UCLIBC_STATIC_LDCONFIG is not set +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +UCLIBC_HAS_LOCALE=y +UCLIBC_PREGENERATED_LOCALE_DATA=y +# UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA is not set +UCLIBC_HAS_XLOCALE=y +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_DIGIT_GROUPING=y +UCLIBC_HAS_SCANF_LENIENT_DIGIT_GROUPING=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +UCLIBC_HAS_STDIO_BUFSIZ_256=y +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="$(DEVEL_PREFIX)/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="//usr" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/recipes/uclibc/uclibc-0.9.27/i686/uClibc.config b/recipes/uclibc/uclibc-0.9.27/i686/uClibc.config new file mode 100644 index 0000000000..90d5ce1fd7 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/i686/uClibc.config @@ -0,0 +1,170 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +TARGET_i386=y +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="i386" +# CONFIG_GENERIC_386 is not set +# CONFIG_386 is not set +# CONFIG_486 is not set +# CONFIG_586 is not set +# CONFIG_586MMX is not set +# CONFIG_686 is not set +# CONFIG_PENTIUMII is not set +# CONFIG_PENTIUMIII is not set +CONFIG_PENTIUM4=y +# CONFIG_K6 is not set +# CONFIG_K7 is not set +# CONFIG_ELAN is not set +# CONFIG_CRUSOE is not set +# CONFIG_WINCHIPC6 is not set +# CONFIG_WINCHIP2 is not set +# CONFIG_CYRIXIII is not set +# CONFIG_NEHEMIAH is not set +ARCH_LITTLE_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +HAS_FPU=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="/home/kergoth/code/user/oe/build-colinux/tmp/cross/i686-linux-uclibc/include" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_LFS=y +# UCLIBC_STATIC_LDCONFIG is not set +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +UCLIBC_HAS_LOCALE=y +UCLIBC_PREGENERATED_LOCALE_DATA=y +# UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA is not set +UCLIBC_HAS_XLOCALE=y +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_DIGIT_GROUPING=y +UCLIBC_HAS_SCANF_LENIENT_DIGIT_GROUPING=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +UCLIBC_HAS_STDIO_BUFSIZ_256=y +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="$(DEVEL_PREFIX)/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="//usr" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/recipes/uclibc/uclibc-0.9.27/mipsel/uClibc.config b/recipes/uclibc/uclibc-0.9.27/mipsel/uClibc.config new file mode 100644 index 0000000000..b71ae46456 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/mipsel/uClibc.config @@ -0,0 +1,161 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +TARGET_mips=y +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="mips" +ARCH_CFLAGS="-mno-split-addresses" +ARCH_SUPPORTS_BIG_ENDIAN=y +# CONFIG_MIPS_ISA_1 is not set +# CONFIG_MIPS_ISA_2 is not set +# CONFIG_MIPS_ISA_3 is not set +# CONFIG_MIPS_ISA_4 is not set +CONFIG_MIPS_ISA_MIPS32=y +# CONFIG_MIPS_ISA_MIPS64 is not set +ARCH_LITTLE_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +# HAS_FPU is not set +UCLIBC_HAS_SOFT_FLOAT=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="/home/kergoth/code/build-wrt/tmp/cross/mipsel-linux-uclibc/include" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_LFS=y +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +UCLIBC_HAS_LOCALE=y +UCLIBC_PREGENERATED_LOCALE_DATA=y +# UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA is not set +UCLIBC_HAS_XLOCALE=y +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_DIGIT_GROUPING=y +UCLIBC_HAS_SCANF_LENIENT_DIGIT_GROUPING=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +UCLIBC_HAS_STDIO_BUFSIZ_256=y +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="$(DEVEL_PREFIX)/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="//usr" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/recipes/uclibc/uclibc-0.9.27/sh3/uClibc.config b/recipes/uclibc/uclibc-0.9.27/sh3/uClibc.config new file mode 100644 index 0000000000..b557506b9b --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/sh3/uClibc.config @@ -0,0 +1,159 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +TARGET_sh=y +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="sh" +ARCH_SUPPORTS_BIG_ENDIAN=y +HAVE_DOT_HIDDEN=y +# CONFIG_SH2 is not set +CONFIG_SH3=y +# CONFIG_SH4 is not set +# CONFIG_SH5 is not set +ARCH_LITTLE_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +HAS_FPU=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="/path/to/kernel/sources" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +FORCE_SHAREABLE_TEXT_SEGMENTS=y +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_LFS=y +# UCLIBC_STATIC_LDCONFIG is not set +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +UCLIBC_HAS_LOCALE=y +UCLIBC_PREGENERATED_LOCALE_DATA=y +# UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA is not set +UCLIBC_HAS_XLOCALE=y +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_DIGIT_GROUPING=y +UCLIBC_HAS_SCANF_LENIENT_DIGIT_GROUPING=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +UCLIBC_HAS_STDIO_BUFSIZ_256=y +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="$(DEVEL_PREFIX)/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="//usr" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/recipes/uclibc/uclibc-0.9.27/sh4/uClibc.config b/recipes/uclibc/uclibc-0.9.27/sh4/uClibc.config new file mode 100644 index 0000000000..a80f4dcbe1 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/sh4/uClibc.config @@ -0,0 +1,160 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +TARGET_sh=y +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="sh" +ARCH_SUPPORTS_BIG_ENDIAN=y +# CONFIG_GENERIC_ARM is not set +# CONFIG_ARM610 is not set +# CONFIG_ARM710 is not set +# CONFIG_ARM720T is not set +# CONFIG_ARM920T is not set +# CONFIG_ARM922T is not set +# CONFIG_ARM926T is not set +# CONFIG_ARM_SA110 is not set +# CONFIG_ARM_SA1100 is not set +# CONFIG_ARM_XSCALE is not set +HAVE_DOT_HIDDEN=y +# CONFIG_SH2 is not set +# CONFIG_SH3 is not set +CONFIG_SH4=y +# CONFIG_SH5 is not set +ARCH_LITTLE_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +HAS_FPU=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="/path/to/kernel/sources" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +FORCE_SHAREABLE_TEXT_SEGMENTS=y +# UCLIBC_PIE_SUPPORT is not set +LDSO_LDD_SUPPORT=y +UCLIBC_CTOR_DTOR=y +# UCLIBC_PROPOLICE is not set +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_LFS=y +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +UCLIBC_HAS_LOCALE=y +UCLIBC_PREGENERATED_LOCALE_DATA=y +# UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA is not set +UCLIBC_HAS_XLOCALE=y +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_DIGIT_GROUPING=y +UCLIBC_HAS_SCANF_LENIENT_DIGIT_GROUPING=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +UCLIBC_HAS_STDIO_BUFSIZ_256=y +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GETTEXT_AWARENESS=y +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="$(DEVEL_PREFIX)/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="//usr" + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/recipes/uclibc/uclibc-0.9.27/thumb-interwork-asm.patch b/recipes/uclibc/uclibc-0.9.27/thumb-interwork-asm.patch new file mode 100644 index 0000000000..bc99f9a5db --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/thumb-interwork-asm.patch @@ -0,0 +1,326 @@ +--- uClibc-0.9.27/ldso/include/dl-elf.h 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/ldso/include/dl-elf.h 2005-08-12 18:24:43.000000000 -0700 +@@ -112,6 +112,13 @@ + # define ELF_RTYPE_CLASS_COPY (0x2) + #endif + #define ELF_RTYPE_CLASS_PLT (0x1) ++/* The type class can be qualified by a list (mask) of the acceptable ++ * STT_ symbol types, if not given the default is everything numerically ++ * <= STT_FUNC (from the original code...) ++ */ ++#define ELF_RTYPE_CLASS_OF(type) ((1<<2) << (type)) ++#define ELF_RTYPE_CLASS_ALL (0xffff << 2) ++#define ELF_RTYPE_CLASS_DEFAULT (((ELF_RTYPE_CLASS_OF(STT_FUNC) << 1) - 1)&ELF_RTYPE_CLASS_ALL) + + + /* Convert between the Linux flags for page protections and the +--- uClibc-0.9.27/ldso/ldso/arm/resolve.S 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/ldso/ldso/arm/resolve.S 2005-08-13 15:08:27.523344709 -0700 +@@ -1,43 +1,117 @@ + /* +- * This function is _not_ called directly. It is jumped to (so no return +- * address is on the stack) when attempting to use a symbol that has not yet +- * been resolved. The first time a jump symbol (such as a function call inside +- * a shared library) is used (before it gets resolved) it will jump here to +- * _dl_linux_resolve. When we get called the stack looks like this: +- * reloc_entry +- * tpnt +- * +- * This function saves all the registers, puts a copy of reloc_entry and tpnt +- * on the stack (as function arguments) then make the function call +- * _dl_linux_resolver(tpnt, reloc_entry). _dl_linux_resolver() figures out +- * where the jump symbol is _really_ supposed to have jumped to and returns +- * that to us. Once we have that, we overwrite tpnt with this fixed up +- * address. We then clean up after ourselves, put all the registers back how we +- * found them, then we jump to the fixed up address, which is where the jump +- * symbol that got us here really wanted to jump to in the first place. +- * -Erik Andersen ++ * On ARM the PLT contains the following three instructions (for ARM calls): ++ * ++ * add ip, pc, #0xNN00000 ++ * add ip, ip, #0xNN000 ++ * ldr pc, [ip, #0xNNN]! ++ * ++ * So that, effectively, causes the following to happen: ++ * ++ * ip := pc+0x0NNNNNNN ++ * pc := *ip ++ * ++ * For thumb the above fragment is preceded by "bx pc, nop" to switch to ARM ++ * mode and the thumb 'bl' must go to PLT-4 - the PLT entry is expanded by ++ * four bytes to accomodate the trampoline code. ++ * ++ * 0x0NNNNNNN is the offset of the GOT entry for this function relative to ++ * the PLT entry for this function (where the code is). So the code in the ++ * PLT causes a branch to whatever is in the GOT, leaving the actual address ++ * of the GOT entry in ip. (Note that the GOT must follow the PLT - the ++ * added value is 28 bit unsigned). ++ * ++ * ip is a pointer to the GOT entry for this function, the first time round ++ * *ip points to this code: ++ * ++ * str lr, [sp, #-4]! @ save lr ++ * ldr lr, [pc, #4] @ lr := *dat (&GOT_TABLE[0]-.) ++ * add lr, pc, lr @ lr += &dat (so lr == &GOT_TABLE[0]) ++ * ldr pc, [lr, #8]! @ pc := GOT_TABLE[2] ++ *dat: .long &GOT_TABLE[0] - . ++ * ++ * (this code is actually held in the first entry of the PLT). The code ++ * preserves lr then uses it as a scratch register (this preserves the ip ++ * value calculated above). GOT_TABLE[2] is initialized by INIT_GOT in ++ * dl-sysdep.h to point to _dl_linux_resolve - this function. The first ++ * three entries in the GOT are reserved, then they are followed by the ++ * entries for the PLT entries, in order. ++ * ++ * The linker initialises the following (non-reserved) GOT entries to ++ * the offset of the PLT with an associated relocation so that on load ++ * the entry is relocated to point to the PLT - the above code. ++ * ++ * The net effect of all this is that on the first call to an external (as ++ * yet unresolved) function all seven of the above instructions are ++ * executed in sequence and the program ends up executing _dl_linux_resolve ++ * with the following important values in registers: ++ * ++ * ip - a pointer to the GOT entry for the as yet unresolved function ++ * lr - &GOT_TABLE[2] ++ * ++ * GOT_TABLE[2] has already been initialised to _dl_linux_resolve, and ++ * GOT_TABLE[1] is a pointer to the (elf_resolve*) from INIT_GOT. ++ * _dl_linux_resolve unfrobnicates the ip and lr values to obtain arguments ++ * for a call to _dl_linux_resolver (not the additional 'r' on the end) - ++ * this is in elfinterp.c in this directory. The call takes arguments: ++ * ++ * _dl_linux_resolver(struct elf_resolve *tpnt, int reloc_entry) ++ * ++ * And returns the address of the function, it also overwrites the GOT ++ * table entry so that the next time round only the first code fragment will ++ * be executed - it will call the function directly. ++ * ++ * [[Of course, this simply doesn't work on ARM 4T with a thumb target - because ++ * 4T did not do the thumb/arm change on ldr pc! It can be made to work by ++ * changing _dl_linux_resolver to return __%s_from_arm for an STT_TFUNC, but ++ * this hasn't been done, and there is no guarantee that the linker generated ++ * that glue anyway.]] ++ * ++ * _dl_linux_resolve gets the arguments to call the resolver as follows: ++ * ++ * tpnt GOT_TABLE[1], [lr-4] ++ * reloc-entry &GOT-&GOT_TABLE[3], (ip - lr - 4)/4 ++ * ++ * (I.e. 'GOT' means the table entry for this function, the thing for which ++ * ip holds the address.) The reloc-entry is passed as an index, since ++ * since the GOT table has 4 byte entries the code needs to divide this by 4 ++ * to get the actual index. ++ * ++ * John Bowler, August 13, 2005 - determined by experiment and examination ++ * of generated ARM code (there was no documentation...) ++ * ++ * This code is all ARM code - not thumb - _dl_linux_resolver may, itself, ++ * be thumb, in which case the linker will insert the appropriate glue. A ++ * call from thumb to the PLT hits the trampoline code described above. ++ * This code (now) builds a proper stack frame. ++ * ++ * The code does *not* set sb (r9,v6) - to do that the basic PLT instructions ++ * would need to save sb and load the new value and that would require ++ * support in the linker since it generates those instructions. (Also note ++ * that linux/uclibc seems to be using r10 - sl - as a PIC base register - see ++ * dl-startup.c). + */ + +-#define sl r10 +-#define fp r11 +-#define ip r12 +- + .text + .globl _dl_linux_resolve + .type _dl_linux_resolve,%function + .align 4; + + _dl_linux_resolve: +- stmdb sp!, {r0, r1, r2, r3, sl, fp} +- sub r1, ip, lr +- sub r1, r1, #4 +- add r1, r1, r1 +- ldr r0, [lr, #-4] +- mov r3,r0 ++ @ _dl_linux_resolver is a standard subroutine call, therefore it ++ @ preserves everything except r0-r3 (a1-a4), ip and lr. This ++ @ function must branch to the real function, and that expects ++ @ r0-r3 and lr to be as they were before the whole PLT stuff - ++ @ ip can be trashed. ++ stmdb sp!, {r0-r3} ++ ldr r0, [lr, #-4] @ r0 := [lr-4] (GOT_TABLE[1]) ++ sub r1, lr, ip @ r1 := (lr-ip) (a multple of 4) ++ mvn r1, r1, ASR #2 @ r1 := ~((lr-ip)>>2), since -x = (1+~x) ++ @ ~x = -x-1, therefore ~(r1>>2) = (-((lr-ip)>>2)-1) ++ @ = - ((lr-ip)/4) - 1 = (ip - lr - 4)/4, as required + + bl _dl_linux_resolver + +- mov ip, r0 +- ldmia sp!, {r0, r1, r2, r3, sl, fp, lr} +- mov pc,ip ++ mov ip, r0 ++ ldmia sp!, {r0-r3, lr} ++ bx ip + .size _dl_linux_resolve, .-_dl_linux_resolve +--- uClibc-0.9.27/ldso/ldso/arm/elfinterp.c 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/ldso/ldso/arm/elfinterp.c 2005-08-13 16:08:19.061345947 -0700 +@@ -128,7 +128,7 @@ + + rel_addr = (ELF_RELOC *) (tpnt->dynamic_info[DT_JMPREL] + tpnt->loadaddr); + +- this_reloc = rel_addr + (reloc_entry >> 3); ++ this_reloc = rel_addr + reloc_entry; + reloc_type = ELF32_R_TYPE(this_reloc->r_info); + symtab_index = ELF32_R_SYM(this_reloc->r_info); + +@@ -149,13 +149,20 @@ + got_addr = (char **) instr_addr; + + /* Get the address of the GOT entry */ +- new_addr = _dl_find_hash(symname, tpnt->symbol_scope, +- tpnt, ELF_RTYPE_CLASS_PLT); +- if (unlikely(!new_addr)) { +- _dl_dprintf(2, "%s: can't resolve symbol '%s'\n", +- _dl_progname, symname); +- _dl_exit(1); +- }; ++ new_addr = _dl_find_hash(symname, tpnt->symbol_scope, tpnt, ++ ELF_RTYPE_CLASS_PLT+ELF_RTYPE_CLASS_OF(STT_FUNC)); ++ if (!new_addr) { ++ new_addr = _dl_find_hash(symname, tpnt->symbol_scope, tpnt, ++ ELF_RTYPE_CLASS_PLT+ELF_RTYPE_CLASS_OF(STT_ARM_TFUNC)); ++ if (new_addr) { ++ /* Fix up the address for thumb. */ ++ new_addr = (char*)((unsigned long)new_addr | 1); ++ } else { ++ _dl_dprintf(2, "%s: can't resolve symbol '%s'\n", ++ _dl_progname, symname); ++ _dl_exit(1); ++ } ++ } + #if defined (__SUPPORT_LD_DEBUG__) + if ((unsigned long) got_addr < 0x40000000) + { +@@ -278,7 +285,8 @@ + if (symtab_index) { + + symbol_addr = (unsigned long) _dl_find_hash(strtab + symtab[symtab_index].st_name, +- scope, tpnt, elf_machine_type_class(reloc_type)); ++ scope, tpnt, elf_machine_type_class(reloc_type) + ++ ELF_RTYPE_CLASS_DEFAULT + ELF_RTYPE_CLASS_OF(STT_ARM_TFUNC)); + + /* + * We want to allow undefined references to weak symbols - this might +--- uClibc-0.9.27/ldso/ldso/dl-hash.c 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/ldso/ldso/dl-hash.c 2005-08-12 18:28:05.000000000 -0700 +@@ -148,7 +148,11 @@ + char *weak_result = NULL; + + elf_hash_number = _dl_elf_hash(name); +- ++ /* The type class argument may specify the valid symbol types, if not ++ * any type <= STT_FUNC is permitted. ++ */ ++ if ((type_class & ELF_RTYPE_CLASS_ALL) == 0) ++ type_class += ELF_RTYPE_CLASS_DEFAULT; + for (; rpnt; rpnt = rpnt->next) { + tpnt = rpnt->dyn; + +@@ -178,13 +182,16 @@ + for (si = tpnt->elf_buckets[hn]; si != STN_UNDEF; si = tpnt->chains[si]) { + sym = &symtab[si]; + ++ /*... nb, ELF_RTYPE_CLASS_PLT is, must be, "1" - at least ++ * it must be for the following to work. ++ */ + if (type_class & (sym->st_shndx == SHN_UNDEF)) + continue; +- if (_dl_strcmp(strtab + sym->st_name, name) != 0) +- continue; + if (sym->st_value == 0) + continue; +- if (ELF32_ST_TYPE(sym->st_info) > STT_FUNC) ++ if ((ELF_RTYPE_CLASS_OF(ELF32_ST_TYPE(sym->st_info)) & type_class) == 0) ++ continue; ++ if (_dl_strcmp(strtab + sym->st_name, name) != 0) + continue; + + switch (ELF32_ST_BIND(sym->st_info)) { +--- uClibc-0.9.27/libc/sysdeps/linux/arm/clone.S 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/clone.S 2005-08-13 11:56:47.275679748 -0700 +@@ -49,12 +49,13 @@ + swi __NR_clone + movs a1, a1 + blt __syscall_error (PLT) +- movne pc, lr ++ bxne lr + + @ pick the function arg and call address off the stack and execute + ldr r0, [sp, #4] ++ ldr ip, [sp] + mov lr, pc +- ldr pc, [sp] ++ bx ip + + @ and we are done, passing the return value through r0 + b _exit (PLT) +@@ -70,7 +71,7 @@ + + /* return -1 */ + mvn r0, $0 +- mov pc, lr ++ bx lr + .size __clone,.-__clone; + + .L4: .word errno +--- uClibc-0.9.27/libc/sysdeps/linux/arm/mmap64.S 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/mmap64.S 2005-08-13 12:20:35.633560643 -0700 +@@ -44,7 +44,7 @@ + mov ip, r0 + swi __NR_mmap2 + cmn r0, $4096 +- ldmccfd sp!, {r4, r5, pc} ++ ldmccfd sp!, {r4, r5, pc} @ requires >=5T + cmn r0, $ENOSYS + ldmnefd sp!, {r4, r5, lr} + bne __syscall_error (PLT) +@@ -71,7 +71,7 @@ + + /* return -1 */ + mvn r0, $0 +- mov pc, lr ++ bx lr + .size mmap64,.-mmap64; + + .L4: .word errno +--- uClibc-0.9.27/libc/sysdeps/linux/arm/vfork.S 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/vfork.S 2005-08-13 12:23:27.500375540 -0700 +@@ -37,7 +37,7 @@ + #ifdef __NR_vfork + swi __NR_vfork + cmn r0, #4096 +- movcc pc, lr ++ bxcc lr + + /* Check if vfork even exists. */ + ldr r1, =-ENOSYS +@@ -50,7 +50,7 @@ + cmn r0, #4096 + + /* Syscal worked. Return to child/parent */ +- movcc pc, lr ++ bxcc lr + + __syscall_error: + +@@ -64,7 +64,7 @@ + + /* return -1 */ + mvn r0, $0 +- mov pc, lr ++ bx lr + + .L4: .word errno + diff --git a/recipes/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch b/recipes/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch new file mode 100644 index 0000000000..9d3cb6bbab --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch @@ -0,0 +1,21 @@ +--- /home/work-tmp/jbowler/nslu2/ucslugc.0807/work/uclibc-0.9.27-r5/uClibc-0.9.27/ldso/ldso/arm/dl-startup.h 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/ldso/ldso/arm/dl-startup.h 2005-08-11 23:40:01.393797745 -0700 +@@ -7,6 +7,9 @@ + + /* Overrive the default _dl_boot function, and replace it with a bit of asm. + * Then call the real _dl_boot function, which is now named _dl_boot2. */ ++/*NOTE: the 'bx' instruction at the end replaces mov pc, r6 - which is not ++ * compatible with thumb interworking. The instruction should be supported ++ * on all modern ARM architectures (because they all support thumb). */ + asm("" \ + " .text\n" \ + " .globl _dl_boot\n" \ +@@ -17,7 +20,7 @@ + " bl _dl_boot2\n" \ + " mov r6, r0\n" \ + " mov r0, r7\n" \ +-" mov pc, r6\n" \ ++" bx r6\n" \ + ); + + #define DL_BOOT(X) static __attribute_used__ void* _dl_boot2 (X) diff --git a/recipes/uclibc/uclibc-0.9.27/thumb-static-main.patch b/recipes/uclibc/uclibc-0.9.27/thumb-static-main.patch new file mode 100644 index 0000000000..5b82f39bbf --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/thumb-static-main.patch @@ -0,0 +1,60 @@ +# This patch almost works, it allows a statically linked application +# to be compiled with a thumb main and to have this work from a +# non-thumb uClibc build. However it stops the same thing working +# in the dynamically linked case (because the value of 'main' doesn't +# have the low bit set when loaded - something must be wrong with the +# relocation for STT_ARM_TFUNC?) At present it is not included for +# this reason. +--- uClibc-0.9.27/libc/misc/internals/__uClibc_main.c 2005-08-13 18:04:09.078682965 -0700 ++++ uClibc-0.9.27/libc/misc/internals/__uClibc_main.c 2005-08-13 18:07:38.159839613 -0700 +@@ -32,6 +32,13 @@ + /* + * Prototypes. + */ ++#if (defined __arm__ || defined __thumb__) && defined __THUMB_INTERWORK__ && defined __linux__ ++/* Because when linking statically the GNU linker provides no glue for ++ * main, so if main is thumb and we are arm or vice versa the static ++ * link fails. ++ */ ++# define main __arm_main ++#endif + extern int main(int argc, char **argv, char **envp); + extern void weak_function _stdio_init(void); + extern int *weak_const_function __errno_location(void); +--- uClibc-0.9.27/libc/sysdeps/linux/arm/Makefile 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/Makefile 2005-08-13 18:08:08.953777353 -0700 +@@ -25,7 +25,7 @@ + CTOR_TARGETS=$(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o + + SSRC=__longjmp.S vfork.S clone.S setjmp.S bsd-setjmp.S \ +- bsd-_setjmp.S sigrestorer.S mmap64.S ++ bsd-_setjmp.S sigrestorer.S mmap64.S mainglue.S + SOBJS=$(patsubst %.S,%.o, $(SSRC)) + + CSRC=brk.c syscall.c ioperm.c sigaction.c +--- uClibc-0.9.27/.pc/thumb-static-main.patch/libc/sysdeps/linux/arm/mainglue.S 2005-08-13 18:20:44.181300825 -0700 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/mainglue.S 2005-08-13 19:11:05.031390937 -0700 +@@ -0,0 +1,23 @@ ++/* ++ * Apparently the GNU linker doesn't generate the 'glue' code ++ * required for ARM/thumb interwork for the 'main' function - ++ * presumably glibc doesn't need it, but uClibc does. ++ * ++ * We can't provide this stuff, because the linker expects to ++ * have generated the glue code itself and asserts if the code ++ * is not in memory (because it has been read from a pre-existing ++ * definition), therefore we must avoid the glue - so we make ++ * __uClibc_main call __arm_main and define it here (in arm ++ * code). ++ */ ++#if defined __THUMB_INTERWORK__ ++ .text ++ .arm ++ .global __arm_main ++ .type __arm_main, %function ++__arm_main: ++ ldr ip, [pc] ++ bx ip ++ .word main ++ .size __arm_main,.-__arm_main ++#endif diff --git a/recipes/uclibc/uclibc-0.9.27/thumb-swi.patch b/recipes/uclibc/uclibc-0.9.27/thumb-swi.patch new file mode 100644 index 0000000000..a6929a9fc5 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/thumb-swi.patch @@ -0,0 +1,82 @@ +--- uClibc-0.9.27/.pc/thumb-swi.patch/libc/sysdeps/linux/arm/bits/syscalls.h 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/bits/syscalls.h 2005-08-08 21:04:11.081932985 -0700 +@@ -97,6 +97,7 @@ + #define INTERNAL_SYSCALL_DECL(err) do { } while (0) + + #undef INTERNAL_SYSCALL ++#if !defined(__thumb__) + #define INTERNAL_SYSCALL(name, err, nr, args...) \ + ({ unsigned int _sys_result; \ + { \ +@@ -109,6 +110,21 @@ + _sys_result = _a1; \ + } \ + (int) _sys_result; }) ++#else ++#define INTERNAL_SYSCALL(name, err, nr, args...) \ ++ ({ unsigned int _sys_result; \ ++ { \ ++ register int _a1 asm ("a1"); \ ++ LOAD_ARGS_##nr (args) \ ++ register int _r7 asm ("r7") = (int) (SYS_ify(name)); \ ++ asm volatile ("swi 0 @ syscall " #name \ ++ : "=r" (_a1) \ ++ : "r" (_r7) ASM_ARGS_##nr \ ++ : "memory"); \ ++ _sys_result = _a1; \ ++ } \ ++ (int) _sys_result; }) ++#endif + + #undef INTERNAL_SYSCALL_ERROR_P + #define INTERNAL_SYSCALL_ERROR_P(val, err) \ +--- uClibc-0.9.27/libc/sysdeps/linux/arm/brk.c.orig 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/brk.c 2005-08-09 12:44:56.000000000 -0700 +@@ -26,14 +26,7 @@ + + int brk (void *addr) + { +- void *newbrk; +- +- asm ("mov a1, %1\n" /* save the argment in r0 */ +- "swi %2\n" /* do the system call */ +- "mov %0, a1;" /* keep the return value */ +- : "=r"(newbrk) +- : "r"(addr), "i" (__NR_brk) +- : "a1"); ++ void *newbrk = (void*)INTERNAL_SYSCALL(brk, , 1, addr); + + __curbrk = newbrk; + +--- uClibc-0.9.27/libc/sysdeps/linux/arm/syscall.c.orig 2005-08-09 12:51:10.681364959 -0700 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/syscall.c 2005-08-09 12:52:43.371197563 -0700 +@@ -26,6 +26,7 @@ + + long syscall(long sysnum, long a, long b, long c, long d, long e, long f) + { ++#if !defined(__thumb__) + register long _r0 asm("r0")=(long)(sysnum); + register long _r6 asm("r6")=(long)(f); + register long _r5 asm("r5")=(long)(e); +@@ -40,6 +41,21 @@ + "r"(_r2), "r"(_r3), "r"(_r4), "r"(_r5), + "r"(_r6) + : "memory"); ++#else ++ register long _r7 asm("r7")=(long)(sysnum); ++ register long _r5 asm("r5")=(long)(f); ++ register long _r4 asm("r4")=(long)(e); ++ register long _r3 asm("r3")=(long)(d); ++ register long _r2 asm("r2")=(long)(c); ++ register long _r1 asm("r1")=(long)(b); ++ register long _r0 asm("r0")=(long)(a); ++ asm volatile( ++ "swi 0" ++ : "=r"(_r0) ++ : "r"(_r0), "r"(_r1), "r"(_r2), "r"(_r3), ++ "r"(_r4), "r"(_r5), "r"(_r7) ++ : "memory"); ++#endif + if(_r0 >=(unsigned long) -4095) { + long err = _r0; + (*__errno_location())=(-err); diff --git a/recipes/uclibc/uclibc-0.9.27/thumb-swp.patch b/recipes/uclibc/uclibc-0.9.27/thumb-swp.patch new file mode 100644 index 0000000000..89171f735d --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/thumb-swp.patch @@ -0,0 +1,102 @@ +--- uClibc-0.9.27/libc/sysdeps/linux/arm/bits/atomicity.h.orig 2005-08-09 13:12:59.663734027 -0700 ++++ uClibc-0.9.27/libc/sysdeps/linux/arm/bits/atomicity.h 2005-08-09 17:54:14.581605661 -0700 +@@ -31,12 +31,23 @@ + int tmp2; + int result; + __asm__ ("\n" ++#if defined(__thumb__) ++ "\t.align 0\n" ++ "\tbx pc\n" ++ "\tnop\n" ++ "\t.arm\n" ++#endif + "0:\tldr\t%0,[%3]\n\t" + "add\t%1,%0,%4\n\t" + "swp\t%2,%1,[%3]\n\t" + "cmp\t%0,%2\n\t" + "swpne\t%1,%2,[%3]\n\t" + "bne\t0b" ++#if defined(__thumb__) ++ "\torr %1, pc, #1\n" ++ "\tbx %1\n" ++ "\t.force_thumb" ++#endif + : "=&r" (result), "=&r" (tmp1), "=&r" (tmp2) + : "r" (mem), "r"(val) + : "cc", "memory"); +@@ -51,12 +62,23 @@ + int tmp2; + int tmp3; + __asm__ ("\n" ++#if defined(__thumb__) ++ "\t.align 0\n" ++ "\tbx pc\n" ++ "\tnop\n" ++ "\t.arm\n" ++#endif + "0:\tldr\t%0,[%3]\n\t" + "add\t%1,%0,%4\n\t" + "swp\t%2,%1,[%3]\n\t" + "cmp\t%0,%2\n\t" + "swpne\t%1,%2,[%3]\n\t" + "bne\t0b" ++#if defined(__thumb__) ++ "\torr %1, pc, #1\n" ++ "\tbx %1\n" ++ "\t.force_thumb" ++#endif + : "=&r" (tmp1), "=&r" (tmp2), "=&r" (tmp3) + : "r" (mem), "r"(val) + : "cc", "memory"); +@@ -68,6 +90,12 @@ + { + int result, tmp; + __asm__ ("\n" ++#if defined(__thumb__) ++ "\t.align 0\n" ++ "\tbx pc\n" ++ "\tnop\n" ++ "\t.arm\n" ++#endif + "0:\tldr\t%1,[%2]\n\t" + "mov\t%0,#0\n\t" + "cmp\t%1,%4\n\t" +@@ -78,6 +106,11 @@ + "bne\t0b\n\t" + "mov\t%0,#1\n" + "1:" ++#if defined(__thumb__) ++ "\torr %1, pc, #1\n" ++ "\tbx %1\n" ++ "\t.force_thumb" ++#endif + : "=&r" (result), "=&r" (tmp) + : "r" (p), "r" (newval), "r" (oldval) + : "cc", "memory"); +--- uClibc-0.9.27/libpthread/linuxthreads/sysdeps/arm/pt-machine.h.orig 2005-08-09 14:16:50.204774778 -0700 ++++ uClibc-0.9.27/libpthread/linuxthreads/sysdeps/arm/pt-machine.h 2005-08-09 17:55:54.027863420 -0700 +@@ -39,9 +39,24 @@ + { + register unsigned int ret; + ++#if defined(__thumb__) ++ void *pc; ++ __asm__ __volatile__( ++ ".align 0\n" ++ "\tbx pc\n" ++ "\tnop\n" ++ "\t.arm\n" ++ "\tswp %0, %2, [%3]\n" ++ "\torr %1, pc, #1\n" ++ "\tbx %1\n" ++ "\t.force_thumb" ++ : "=r"(ret), "=r"(pc) ++ : "0"(1), "r"(spinlock)); ++#else + __asm__ __volatile__("swp %0, %1, [%2]" + : "=r"(ret) + : "0"(1), "r"(spinlock)); ++#endif + + return ret; + } diff --git a/recipes/uclibc/uclibc-0.9.27/uclibc-makevars-in-quotes.patch b/recipes/uclibc/uclibc-0.9.27/uclibc-makevars-in-quotes.patch new file mode 100644 index 0000000000..ce67e8f764 --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/uclibc-makevars-in-quotes.patch @@ -0,0 +1,25 @@ +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: uClibc-0.9.27/Makefile +=================================================================== +--- uClibc-0.9.27.orig/Makefile 2008-07-23 20:05:34.000000000 -0700 ++++ uClibc-0.9.27/Makefile 2008-07-23 20:06:27.000000000 -0700 +@@ -243,14 +243,14 @@ endif + .PHONY: utils + ifeq ($(strip $(HAVE_SHARED)),y) + utils: +- $(MAKE) CROSS=$(CROSS) CC=$(CC) -C utils ++ $(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C utils + else + utils: dummy + endif + + # Installs helper applications, such as 'ldd' and 'ldconfig' + install_utils: utils +- $(MAKE) CROSS=$(CROSS) CC=$(CC) -C utils install ++ $(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C utils install + #ifeq ($(strip $(UCLIBC_HAS_LOCALE)),y) + # @$(MAKE) -C libc/misc/wchar iconv.target + # $(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)/usr/bin; diff --git a/recipes/uclibc/uclibc-0.9.27/ucslugc/uClibc.config b/recipes/uclibc/uclibc-0.9.27/ucslugc/uClibc.config new file mode 100644 index 0000000000..7c8196e93b --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/ucslugc/uClibc.config @@ -0,0 +1,160 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +TARGET_arm=y +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="arm" +ARCH_SUPPORTS_BIG_ENDIAN=y +CONFIG_GENERIC_ARM=y +# CONFIG_ARM610 is not set +# CONFIG_ARM710 is not set +# CONFIG_ARM720T is not set +# CONFIG_ARM920T is not set +# CONFIG_ARM922T is not set +# CONFIG_ARM926T is not set +# CONFIG_ARM_SA110 is not set +# CONFIG_ARM_SA1100 is not set +# CONFIG_ARM_XSCALE is not set +# ARCH_LITTLE_ENDIAN is not set +ARCH_BIG_ENDIAN=y +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +# HAS_FPU is not set +UCLIBC_HAS_SOFT_FLOAT=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="/home/work-tmp/jbowler/nslu2/ucslugc/cross/armeb-linux-uclibc/include" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_LFS=y +# UCLIBC_STATIC_LDCONFIG is not set +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +UNIX98PTY_ONLY=y +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +# UCLIBC_HAS_STRING_GENERIC_OPT is not set +# UCLIBC_HAS_STRING_ARCH_OPT is not set +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +# UCLIBC_HAS_LOCALE is not set +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +UCLIBC_HAS_STDIO_BUFSIZ_256=y +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="$(DEVEL_PREFIX)/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="//usr" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/recipes/uclibc/uclibc-0.9.27/wrt54/uClibc.config b/recipes/uclibc/uclibc-0.9.27/wrt54/uClibc.config new file mode 100644 index 0000000000..5fddbed9ef --- /dev/null +++ b/recipes/uclibc/uclibc-0.9.27/wrt54/uClibc.config @@ -0,0 +1,155 @@ +# +# Automatically generated make config: don't edit +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +TARGET_mips=y +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_v850 is not set + +# +# Target Architecture Features and Options +# +HAVE_ELF=y +ARCH_SUPPORTS_LITTLE_ENDIAN=y +TARGET_ARCH="mips" +ARCH_CFLAGS="-mno-split-addresses" +ARCH_SUPPORTS_BIG_ENDIAN=y +# CONFIG_MIPS_ISA_1 is not set +# CONFIG_MIPS_ISA_2 is not set +# CONFIG_MIPS_ISA_3 is not set +# CONFIG_MIPS_ISA_4 is not set +CONFIG_MIPS_ISA_MIPS32=y +# CONFIG_MIPS_ISA_MIPS64 is not set +ARCH_LITTLE_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +# ARCH_HAS_NO_MMU is not set +ARCH_HAS_MMU=y +UCLIBC_HAS_FLOATS=y +HAS_FPU=y +DO_C99_MATH=y +WARNINGS="-Wall" +KERNEL_SOURCE="/data/wlan/wrt/openwrt.experimental/toolchain_build_mipsel/linux" +C_SYMBOL_PREFIX="" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +HAVE_SHARED=y +# ARCH_HAS_NO_LDSO is not set +BUILD_UCLIBC_LDSO=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +# PTHREADS_DEBUG_SUPPORT is not set +UCLIBC_HAS_LFS=y +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +HAS_SHADOW=y +# UNIX98PTY_ONLY is not set +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +# UCLIBC_HAS_LOCALE is not set +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +UCLIBC_HAS_STDIO_BUFSIZ_4096=y +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +# UCLIBC_HAS_WORDEXP is not set +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="/usr/" + +# +# uClibc security related options +# +# UCLIBC_SECURITY is not set + +# +# uClibc development/debugging options +# +# DODEBUG is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MJN3_ONLY is not set |