From f5268b171a04e9fe286d88117d9590d7e68df754 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Sun, 22 May 2011 00:05:40 +0200 Subject: [PATCH] toolchain/crosstool-NG: bundle one CT-NG config file for each libc familly Currently, the bundled CT-NG config file has no C library configured. It is quite complex to add and/or munge options in this case. Now, with one config file per libc familly, it becomes easier. Signed-off-by: "Yann E. MORIN" Signed-off-by: Peter Korsgaard --- toolchain/toolchain-crosstool-ng/Config.in | 11 +- .../crosstool-ng.config-eglibc | 457 ++++++++++++++++++ .../crosstool-ng.config-glibc | 457 ++++++++++++++++++ ...l-ng.config => crosstool-ng.config-uClibc} | 107 +++- .../toolchain-crosstool-ng/crosstool-ng.mk | 18 +- 5 files changed, 1019 insertions(+), 31 deletions(-) create mode 100644 toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc create mode 100644 toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc rename toolchain/toolchain-crosstool-ng/{crosstool-ng.config => crosstool-ng.config-uClibc} (76%) diff --git a/toolchain/toolchain-crosstool-ng/Config.in b/toolchain/toolchain-crosstool-ng/Config.in index 1a1041630b..3cac8088af 100644 --- a/toolchain/toolchain-crosstool-ng/Config.in +++ b/toolchain/toolchain-crosstool-ng/Config.in @@ -38,12 +38,15 @@ config BR2_TOOLCHAIN_CTNG_LIBC config BR2_TOOLCHAIN_CTNG_CONFIG string "crosstool-NG configuration file to use" - default "toolchain/toolchain-crosstool-ng/crosstool-ng.config" + default "toolchain/toolchain-crosstool-ng/crosstool-ng.config-uClibc" if BR2_TOOLCHAIN_CTNG_uClibc + default "toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc" if BR2_TOOLCHAIN_CTNG_eglibc + default "toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc" if BR2_TOOLCHAIN_CTNG_glibc help Enter here the crosstool-NG's .config file to use. - If unsure, use the default. - To finetune your toolchain, you can also call: - make ctng-menuconfig + To fine-tune your toolchain, you can also call: + make ctng-menuconfig + + If unsure, keep the default value. if BR2_TOOLCHAIN_CTNG_uClibc diff --git a/toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc new file mode 100644 index 0000000000..83af9e7ecb --- /dev/null +++ b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc @@ -0,0 +1,457 @@ +# +# Automatically generated make config: don't edit +# crosstool-NG version: 1.10.1 +# Sun Apr 24 23:38:08 2011 +# +CT_BACKEND=y +CT_MODULES=y + +# +# Paths and misc options +# + +# +# crosstool-NG behavior +# +# CT_OBSOLETE is not set +# CT_EXPERIMENTAL is not set + +# +# Paths +# +CT_LOCAL_TARBALLS_DIR="" +CT_SAVE_TARBALLS=y +CT_WORK_DIR="${CT_TOP_DIR}/.build" +CT_PREFIX_DIR="${HOME}/x-tools/${CT_TARGET}" +CT_INSTALL_DIR="${CT_PREFIX_DIR}" +CT_REMOVE_DOCS=y +# CT_INSTALL_DIR_RO is not set +# CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES is not set + +# +# Downloading +# +# CT_FORBID_DOWNLOAD is not set +# CT_FORCE_DOWNLOAD is not set +# CT_USE_MIRROR is not set +CT_CONNECT_TIMEOUT=10 +# CT_ONLY_DOWNLOAD is not set + +# +# Extracting +# +# CT_FORCE_EXTRACT is not set +CT_OVERIDE_CONFIG_GUESS_SUB=y +# CT_ONLY_EXTRACT is not set +CT_PATCH_BUNDLED=y +# CT_PATCH_LOCAL is not set +# CT_PATCH_BUNDLED_LOCAL is not set +# CT_PATCH_LOCAL_BUNDLED is not set +# CT_PATCH_BUNDLED_FALLBACK_LOCAL is not set +# CT_PATCH_LOCAL_FALLBACK_BUNDLED is not set +# CT_PATCH_NONE is not set +CT_PATCH_ORDER="bundled" +# CT_PATCH_SINGLE is not set +# CT_PATCH_USE_LOCAL is not set + +# +# Build behavior +# + +# +# Build options hiden +# +CT_PARALLEL_JOBS=1 +CT_LOAD=0 +CT_USE_PIPES=y +CT_CONFIG_SHELL="custom" +CT_CONFIG_SHELL_CUSTOM_PATH="/bin/sh" + +# +# Logging +# +# CT_LOG_ERROR is not set +# CT_LOG_WARN is not set +# CT_LOG_INFO is not set +# CT_LOG_EXTRA is not set +CT_LOG_ALL=y +# CT_LOG_DEBUG is not set +CT_LOG_LEVEL_MAX="ALL" +# CT_LOG_SEE_TOOLS_WARN is not set +CT_LOG_TO_FILE=y +CT_LOG_FILE_COMPRESS=y + +# +# Target options +# +CT_ARCH="arm" +CT_ARCH_SUPPORTS_BOTH_MMU=y +CT_ARCH_SUPPORTS_BOTH_ENDIAN=y +CT_ARCH_SUPPORTS_32=y +# CT_ARCH_SUPPORTS_64 is not set +CT_ARCH_SUPPORT_ARCH=y +# CT_ARCH_SUPPORT_ABI is not set +CT_ARCH_SUPPORT_CPU=y +CT_ARCH_SUPPORT_TUNE=y +CT_ARCH_SUPPORT_FPU=y +CT_ARCH_DEFAULT_HAS_MMU=y +# CT_ARCH_DEFAULT_BE is not set +CT_ARCH_DEFAULT_LE=y +CT_ARCH_DEFAULT_32=y +# CT_ARCH_DEFAULT_64 is not set +CT_ARCH_ARCH="" +CT_ARCH_CPU="" +CT_ARCH_TUNE="" +CT_ARCH_FPU="" +# CT_ARCH_BE is not set +CT_ARCH_LE=y +CT_ARCH_32=y +# CT_ARCH_64 is not set +CT_ARCH_BITNESS=32 +CT_ARCH_FLOAT_HW=y +# CT_ARCH_FLOAT_SW is not set +CT_TARGET_CFLAGS="" +CT_TARGET_LDFLAGS="" + +# +# General target options +# +# CT_ARCH_alpha is not set +CT_ARCH_arm=y +# CT_ARCH_avr32 is not set +# CT_ARCH_blackfin is not set +# CT_ARCH_m68k is not set +# CT_ARCH_mips is not set +# CT_ARCH_powerpc is not set +# CT_ARCH_s390 is not set +# CT_ARCH_sh is not set +# CT_ARCH_x86 is not set +CT_ARCH_alpha_AVAILABLE=y +CT_ARCH_arm_AVAILABLE=y +CT_ARCH_avr32_AVAILABLE=y +CT_ARCH_blackfin_AVAILABLE=y +CT_ARCH_m68k_AVAILABLE=y +CT_ARCH_mips_AVAILABLE=y +CT_ARCH_powerpc_AVAILABLE=y +CT_ARCH_s390_AVAILABLE=y +CT_ARCH_sh_AVAILABLE=y +CT_ARCH_x86_AVAILABLE=y +CT_ARCH_USE_MMU=y + +# +# arm other options +# +CT_ARCH_ARM_MODE="arm" +CT_ARCH_ARM_MODE_ARM=y +# CT_ARCH_ARM_MODE_THUMB is not set +CT_ARCH_ARM_EABI=y + +# +# Target optimisations +# + +# +# Toolchain options +# + +# +# General toolchain options +# +CT_FORCE_SYSROOT=y +CT_USE_SYSROOT=y +CT_SYSROOT_NAME="sysroot" +CT_SYSROOT_DIR_PREFIX="" + +# +# Tuple completion and aliasing +# +CT_TARGET_VENDOR="unknown" +CT_TARGET_ALIAS_SED_EXPR="" +CT_TARGET_ALIAS="" + +# +# Toolchain type +# +# CT_NATIVE is not set +CT_CROSS=y +# CT_CROSS_NATIVE is not set +# CT_CANADIAN is not set +CT_TOOLCHAIN_TYPE="cross" + +# +# Build system +# +CT_BUILD="" +CT_BUILD_PREFIX="" +CT_BUILD_SUFFIX="" + +# +# Operating System +# +# CT_BARE_METAL is not set +# CT_MINGW32 is not set +CT_KERNEL_SUPPORTS_SHARED_LIBS=y +CT_KERNEL="linux" +CT_KERNEL_VERSION="2.6.37" +# CT_KERNEL_bare_metal is not set +CT_KERNEL_linux=y +# CT_KERNEL_mingw32 is not set +CT_KERNEL_bare_metal_AVAILABLE=y +CT_KERNEL_linux_AVAILABLE=y +CT_KERNEL_LINUX_INSTALL=y +CT_KERNEL_V_2_6_37=y +# CT_KERNEL_V_2_6_36_3 is not set +# CT_KERNEL_V_2_6_36_2 is not set +# CT_KERNEL_V_2_6_36_1 is not set +# CT_KERNEL_V_2_6_36 is not set +# CT_KERNEL_V_2_6_35_10 is not set +# CT_KERNEL_V_2_6_34_8 is not set +# CT_KERNEL_V_2_6_33_7 is not set +# CT_KERNEL_V_2_6_32_28 is not set +# CT_KERNEL_V_2_6_31_14 is not set +# CT_KERNEL_V_2_6_27_57 is not set +# CT_KERNEL_LINUX_CUSTOM is not set +CT_KERNEL_LINUX_VERBOSITY_0=y +# CT_KERNEL_LINUX_VERBOSITY_1 is not set +# CT_KERNEL_LINUX_VERBOSITY_2 is not set +CT_KERNEL_LINUX_VERBOSE_LEVEL=0 +CT_KERNEL_LINUX_INSTALL_CHECK=y +# CT_KERNEL_LINUX_USE_CUSTOM_HEADERS is not set +CT_KERNEL_mingw32_AVAILABLE=y + +# +# Common kernel options +# +CT_SHARED_LIBS=y + +# +# Binary utilities +# +CT_ARCH_BINFMT_ELF=y +# CT_ARCH_BINFMT_FLAT is not set +# CT_ARCH_BINFMT_FDPIC is not set + +# +# GNU binutils +# +# CT_BINUTILS_V_2_21 is not set +# CT_BINUTILS_V_2_20_1 is not set +CT_BINUTILS_V_2_20=y +# CT_BINUTILS_V_2_19_1 is not set +# CT_BINUTILS_V_2_19 is not set +# CT_BINUTILS_V_2_18 is not set +# CT_BINUTILS_V_2_17 is not set +# CT_BINUTILS_V_2_16_1 is not set +CT_BINUTILS_VERSION="2.20" +CT_BINUTILS_GOLD_SUPPORTS_ARCH=y +CT_BINUTILS_EXTRA_CONFIG="" + +# +# C compiler +# +CT_CC="gcc" +CT_CC_VERSION="4.4.3" +CT_CC_gcc=y +# CT_CC_V_4_5_2 is not set +# CT_CC_V_4_5_1 is not set +# CT_CC_V_4_5_0 is not set +# CT_CC_V_4_4_5 is not set +# CT_CC_V_4_4_4 is not set +CT_CC_V_4_4_3=y +# CT_CC_V_4_4_2 is not set +# CT_CC_V_4_4_1 is not set +# CT_CC_V_4_4_0 is not set +# CT_CC_V_4_3_5 is not set +# CT_CC_V_4_3_4 is not set +# CT_CC_V_4_3_3 is not set +# CT_CC_V_4_3_2 is not set +# CT_CC_V_4_3_1 is not set +# CT_CC_V_4_2_4 is not set +# CT_CC_V_4_2_3 is not set +# CT_CC_V_4_2_2 is not set +# CT_CC_V_4_2_1 is not set +# CT_CC_V_4_2_0 is not set +# CT_CC_V_4_1_2 is not set +# CT_CC_V_4_0_4 is not set +# CT_CC_V_3_4_6 is not set +CT_CC_GCC_4_2_or_later=y +CT_CC_GCC_4_3_or_later=y +CT_CC_GCC_4_4_or_later=y +# CT_CC_GCC_4_5_or_later is not set +CT_CC_GCC_HAS_GRAPHITE=y +# CT_CC_GCC_HAS_LTO is not set +CT_CC_GCC_USE_GMP_MPFR=y +CT_CC_GCC_USE_PPL_CLOOG=y +# CT_CC_GCC_USE_MPC is not set +# CT_CC_GCC_USE_LIBELF is not set +CT_CC_PKGVERSION="crosstool-NG-${CT_VERSION}" +CT_CC_BUGURL="" +CT_CC_ENABLE_CXX_FLAGS="" +CT_CC_CORE_EXTRA_CONFIG="" +CT_CC_EXTRA_CONFIG="" +CT_CC_SUPPORT_CXX=y +CT_CC_SUPPORT_FORTRAN=y +CT_CC_SUPPORT_JAVA=y +CT_CC_SUPPORT_ADA=y +CT_CC_SUPPORT_OBJC=y +CT_CC_SUPPORT_OBJCXX=y + +# +# Additional supported languages: +# +# CT_CC_LANG_CXX is not set +# CT_CC_LANG_FORTRAN is not set +# CT_CC_LANG_JAVA is not set + +# +# gcc other options +# +CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y +CT_CC_GCC_USE_GRAPHITE=y +CT_CC_STATIC_LIBSTDCXX=y +# CT_CC_GCC_LIBMUDFLAP is not set +# CT_CC_GCC_LIBGOMP is not set +# CT_CC_GCC_LIBSSP is not set + +# +# Misc. obscure options. +# +CT_CC_CXA_ATEXIT=y +# CT_CC_GCC_DISABLE_PCH is not set +CT_CC_GCC_SJLJ_EXCEPTIONS=m +CT_CC_GCC_LDBL_128=m + +# +# C-library +# +CT_LIBC="eglibc" +CT_LIBC_VERSION="2_10" +CT_LIBC_eglibc=y +# CT_LIBC_glibc is not set +# CT_LIBC_mingw is not set +# CT_LIBC_newlib is not set +# CT_LIBC_none is not set +# CT_LIBC_uClibc is not set +CT_LIBC_eglibc_AVAILABLE=y +# CT_LIBC_EGLIBC_V_2_12 is not set +# CT_LIBC_EGLIBC_V_2_11 is not set +CT_LIBC_EGLIBC_V_2_10=y +# CT_LIBC_EGLIBC_V_2_9 is not set +# CT_LIBC_EGLIBC_V_2_8 is not set +# CT_LIBC_EGLIBC_V_2_7 is not set +# CT_LIBC_EGLIBC_V_2_6 is not set +# CT_LIBC_EGLIBC_V_2_5 is not set +# CT_LIBC_EGLIBC_V_TRUNK is not set +CT_EGLIBC_REVISION="HEAD" +# CT_EGLIBC_CHECKOUT is not set +# CT_EGLIBC_OPT_SIZE is not set +# CT_EGLIBC_CUSTOM_CONFIG is not set +CT_LIBC_glibc_AVAILABLE=y +CT_LIBC_mingw_AVAILABLE=y +CT_LIBC_newlib_AVAILABLE=y +CT_LIBC_none_AVAILABLE=y +CT_LIBC_uClibc_AVAILABLE=y + +# +# glibc/eglibc common options +# +CT_LIBC_GLIBC_EXTRA_CONFIG="" +CT_LIBC_GLIBC_CONFIGPARMS="" +CT_LIBC_GLIBC_EXTRA_CFLAGS="" +CT_LIBC_EXTRA_CC_ARGS="" +# CT_LIBC_DISABLE_VERSIONING is not set +CT_LIBC_OLDEST_ABI="" +# CT_LIBC_GLIBC_FORCE_UNWIND is not set +CT_LIBC_GLIBC_USE_PORTS=y +CT_LIBC_ADDONS_LIST="" + +# +# WARNING !!! +# + +# +# For glibc >= 2.8, it can happen that the tarballs +# + +# +# for the addons are not available for download. +# + +# +# If that happens, bad luck... Try a previous version +# + +# +# or try again later... :-( +# +# CT_LIBC_GLIBC_KERNEL_VERSION_NONE is not set +CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS=y +# CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set +CT_LIBC_GLIBC_MIN_KERNEL="2.6.37" +CT_LIBC_SUPPORT_THREADS_ANY=y +CT_LIBC_SUPPORT_NPTL=y +CT_LIBC_SUPPORT_LINUXTHREADS=y +# CT_LIBC_SUPPORT_WIN32THREADS is not set +# CT_LIBC_SUPPORT_THREADS_NONE is not set +CT_THREADS="nptl" + +# +# Common C library options +# +CT_THREADS_NPTL=y +# CT_THREADS_LINUXTHREADS is not set +# CT_THREADS_WIN32THREADS is not set +# CT_THREADS_NONE is not set +CT_LIBC_XLDD=y + +# +# Debug facilities +# +# CT_DEBUG_gdb is not set + +# +# Companion libraries +# +CT_COMPLIBS_NEEDED=y +CT_GMP_NEEDED=y +CT_MPFR_NEEDED=y +CT_PPL_NEEDED=y +CT_CLOOG_NEEDED=y +# CT_MPC_NEEDED is not set +# CT_LIBELF_NEEDED is not set +CT_COMPLIBS=y +# CT_WRAPPER_NEEDED is not set +CT_GMP=y +CT_MPFR=y +CT_PPL=y +CT_CLOOG=y +# CT_GMP_V_5_0_1 is not set +CT_GMP_V_4_3_2=y +# CT_GMP_V_4_3_1 is not set +# CT_GMP_V_4_3_0 is not set +# CT_GMP_V_4_2_4 is not set +# CT_GMP_V_4_2_2 is not set +CT_GMP_VERSION="4.3.2" +# CT_MPFR_V_3_0_0 is not set +CT_MPFR_V_2_4_2=y +# CT_MPFR_V_2_4_1 is not set +# CT_MPFR_V_2_4_0 is not set +# CT_MPFR_V_2_3_2 is not set +# CT_MPFR_V_2_3_1 is not set +CT_MPFR_VERSION="2.4.2" +# CT_PPL_V_0_11 is not set +CT_PPL_V_0_10_2=y +CT_PPL_VERSION="0.10.2" +# CT_CLOOG_V_0_15_10 is not set +CT_CLOOG_V_0_15_9=y +# CT_CLOOG_V_0_15_8 is not set +# CT_CLOOG_V_0_15_7 is not set +# CT_CLOOG_V_0_15_6 is not set +CT_CLOOG_VERSION="0.15.9" + +# +# Companion libraries common options +# +CT_COMPLIBS_BACKUP=y +# CT_COMPLIBS_CHECK is not set +# CT_COMPLIBS_SHARED is not set diff --git a/toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc new file mode 100644 index 0000000000..737429dc26 --- /dev/null +++ b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc @@ -0,0 +1,457 @@ +# +# Automatically generated make config: don't edit +# crosstool-NG version: 1.10.1 +# Sun Apr 24 23:37:30 2011 +# +CT_BACKEND=y +CT_MODULES=y + +# +# Paths and misc options +# + +# +# crosstool-NG behavior +# +# CT_OBSOLETE is not set +# CT_EXPERIMENTAL is not set + +# +# Paths +# +CT_LOCAL_TARBALLS_DIR="" +CT_SAVE_TARBALLS=y +CT_WORK_DIR="${CT_TOP_DIR}/.build" +CT_PREFIX_DIR="${HOME}/x-tools/${CT_TARGET}" +CT_INSTALL_DIR="${CT_PREFIX_DIR}" +CT_REMOVE_DOCS=y +# CT_INSTALL_DIR_RO is not set +# CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES is not set + +# +# Downloading +# +# CT_FORBID_DOWNLOAD is not set +# CT_FORCE_DOWNLOAD is not set +# CT_USE_MIRROR is not set +CT_CONNECT_TIMEOUT=10 +# CT_ONLY_DOWNLOAD is not set + +# +# Extracting +# +# CT_FORCE_EXTRACT is not set +CT_OVERIDE_CONFIG_GUESS_SUB=y +# CT_ONLY_EXTRACT is not set +CT_PATCH_BUNDLED=y +# CT_PATCH_LOCAL is not set +# CT_PATCH_BUNDLED_LOCAL is not set +# CT_PATCH_LOCAL_BUNDLED is not set +# CT_PATCH_BUNDLED_FALLBACK_LOCAL is not set +# CT_PATCH_LOCAL_FALLBACK_BUNDLED is not set +# CT_PATCH_NONE is not set +CT_PATCH_ORDER="bundled" +# CT_PATCH_SINGLE is not set +# CT_PATCH_USE_LOCAL is not set + +# +# Build behavior +# + +# +# Build options hiden +# +CT_PARALLEL_JOBS=1 +CT_LOAD=0 +CT_USE_PIPES=y +CT_CONFIG_SHELL="custom" +CT_CONFIG_SHELL_CUSTOM_PATH="/bin/sh" + +# +# Logging +# +# CT_LOG_ERROR is not set +# CT_LOG_WARN is not set +# CT_LOG_INFO is not set +# CT_LOG_EXTRA is not set +CT_LOG_ALL=y +# CT_LOG_DEBUG is not set +CT_LOG_LEVEL_MAX="ALL" +# CT_LOG_SEE_TOOLS_WARN is not set +CT_LOG_TO_FILE=y +CT_LOG_FILE_COMPRESS=y + +# +# Target options +# +CT_ARCH="arm" +CT_ARCH_SUPPORTS_BOTH_MMU=y +CT_ARCH_SUPPORTS_BOTH_ENDIAN=y +CT_ARCH_SUPPORTS_32=y +# CT_ARCH_SUPPORTS_64 is not set +CT_ARCH_SUPPORT_ARCH=y +# CT_ARCH_SUPPORT_ABI is not set +CT_ARCH_SUPPORT_CPU=y +CT_ARCH_SUPPORT_TUNE=y +CT_ARCH_SUPPORT_FPU=y +CT_ARCH_DEFAULT_HAS_MMU=y +# CT_ARCH_DEFAULT_BE is not set +CT_ARCH_DEFAULT_LE=y +CT_ARCH_DEFAULT_32=y +# CT_ARCH_DEFAULT_64 is not set +CT_ARCH_ARCH="" +CT_ARCH_CPU="" +CT_ARCH_TUNE="" +CT_ARCH_FPU="" +# CT_ARCH_BE is not set +CT_ARCH_LE=y +CT_ARCH_32=y +# CT_ARCH_64 is not set +CT_ARCH_BITNESS=32 +CT_ARCH_FLOAT_HW=y +# CT_ARCH_FLOAT_SW is not set +CT_TARGET_CFLAGS="" +CT_TARGET_LDFLAGS="" + +# +# General target options +# +# CT_ARCH_alpha is not set +CT_ARCH_arm=y +# CT_ARCH_avr32 is not set +# CT_ARCH_blackfin is not set +# CT_ARCH_m68k is not set +# CT_ARCH_mips is not set +# CT_ARCH_powerpc is not set +# CT_ARCH_s390 is not set +# CT_ARCH_sh is not set +# CT_ARCH_x86 is not set +CT_ARCH_alpha_AVAILABLE=y +CT_ARCH_arm_AVAILABLE=y +CT_ARCH_avr32_AVAILABLE=y +CT_ARCH_blackfin_AVAILABLE=y +CT_ARCH_m68k_AVAILABLE=y +CT_ARCH_mips_AVAILABLE=y +CT_ARCH_powerpc_AVAILABLE=y +CT_ARCH_s390_AVAILABLE=y +CT_ARCH_sh_AVAILABLE=y +CT_ARCH_x86_AVAILABLE=y +CT_ARCH_USE_MMU=y + +# +# arm other options +# +CT_ARCH_ARM_MODE="arm" +CT_ARCH_ARM_MODE_ARM=y +# CT_ARCH_ARM_MODE_THUMB is not set +CT_ARCH_ARM_EABI=y + +# +# Target optimisations +# + +# +# Toolchain options +# + +# +# General toolchain options +# +CT_FORCE_SYSROOT=y +CT_USE_SYSROOT=y +CT_SYSROOT_NAME="sysroot" +CT_SYSROOT_DIR_PREFIX="" + +# +# Tuple completion and aliasing +# +CT_TARGET_VENDOR="unknown" +CT_TARGET_ALIAS_SED_EXPR="" +CT_TARGET_ALIAS="" + +# +# Toolchain type +# +# CT_NATIVE is not set +CT_CROSS=y +# CT_CROSS_NATIVE is not set +# CT_CANADIAN is not set +CT_TOOLCHAIN_TYPE="cross" + +# +# Build system +# +CT_BUILD="" +CT_BUILD_PREFIX="" +CT_BUILD_SUFFIX="" + +# +# Operating System +# +# CT_BARE_METAL is not set +# CT_MINGW32 is not set +CT_KERNEL_SUPPORTS_SHARED_LIBS=y +CT_KERNEL="linux" +CT_KERNEL_VERSION="2.6.37" +# CT_KERNEL_bare_metal is not set +CT_KERNEL_linux=y +# CT_KERNEL_mingw32 is not set +CT_KERNEL_bare_metal_AVAILABLE=y +CT_KERNEL_linux_AVAILABLE=y +CT_KERNEL_LINUX_INSTALL=y +CT_KERNEL_V_2_6_37=y +# CT_KERNEL_V_2_6_36_3 is not set +# CT_KERNEL_V_2_6_36_2 is not set +# CT_KERNEL_V_2_6_36_1 is not set +# CT_KERNEL_V_2_6_36 is not set +# CT_KERNEL_V_2_6_35_10 is not set +# CT_KERNEL_V_2_6_34_8 is not set +# CT_KERNEL_V_2_6_33_7 is not set +# CT_KERNEL_V_2_6_32_28 is not set +# CT_KERNEL_V_2_6_31_14 is not set +# CT_KERNEL_V_2_6_27_57 is not set +# CT_KERNEL_LINUX_CUSTOM is not set +CT_KERNEL_LINUX_VERBOSITY_0=y +# CT_KERNEL_LINUX_VERBOSITY_1 is not set +# CT_KERNEL_LINUX_VERBOSITY_2 is not set +CT_KERNEL_LINUX_VERBOSE_LEVEL=0 +CT_KERNEL_LINUX_INSTALL_CHECK=y +# CT_KERNEL_LINUX_USE_CUSTOM_HEADERS is not set +CT_KERNEL_mingw32_AVAILABLE=y + +# +# Common kernel options +# +CT_SHARED_LIBS=y + +# +# Binary utilities +# +CT_ARCH_BINFMT_ELF=y +# CT_ARCH_BINFMT_FLAT is not set +# CT_ARCH_BINFMT_FDPIC is not set + +# +# GNU binutils +# +# CT_BINUTILS_V_2_21 is not set +# CT_BINUTILS_V_2_20_1 is not set +CT_BINUTILS_V_2_20=y +# CT_BINUTILS_V_2_19_1 is not set +# CT_BINUTILS_V_2_19 is not set +# CT_BINUTILS_V_2_18 is not set +# CT_BINUTILS_V_2_17 is not set +# CT_BINUTILS_V_2_16_1 is not set +CT_BINUTILS_VERSION="2.20" +CT_BINUTILS_GOLD_SUPPORTS_ARCH=y +CT_BINUTILS_EXTRA_CONFIG="" + +# +# C compiler +# +CT_CC="gcc" +CT_CC_VERSION="4.4.3" +CT_CC_gcc=y +# CT_CC_V_4_5_2 is not set +# CT_CC_V_4_5_1 is not set +# CT_CC_V_4_5_0 is not set +# CT_CC_V_4_4_5 is not set +# CT_CC_V_4_4_4 is not set +CT_CC_V_4_4_3=y +# CT_CC_V_4_4_2 is not set +# CT_CC_V_4_4_1 is not set +# CT_CC_V_4_4_0 is not set +# CT_CC_V_4_3_5 is not set +# CT_CC_V_4_3_4 is not set +# CT_CC_V_4_3_3 is not set +# CT_CC_V_4_3_2 is not set +# CT_CC_V_4_3_1 is not set +# CT_CC_V_4_2_4 is not set +# CT_CC_V_4_2_3 is not set +# CT_CC_V_4_2_2 is not set +# CT_CC_V_4_2_1 is not set +# CT_CC_V_4_2_0 is not set +# CT_CC_V_4_1_2 is not set +# CT_CC_V_4_0_4 is not set +# CT_CC_V_3_4_6 is not set +CT_CC_GCC_4_2_or_later=y +CT_CC_GCC_4_3_or_later=y +CT_CC_GCC_4_4_or_later=y +# CT_CC_GCC_4_5_or_later is not set +CT_CC_GCC_HAS_GRAPHITE=y +# CT_CC_GCC_HAS_LTO is not set +CT_CC_GCC_USE_GMP_MPFR=y +CT_CC_GCC_USE_PPL_CLOOG=y +# CT_CC_GCC_USE_MPC is not set +# CT_CC_GCC_USE_LIBELF is not set +CT_CC_PKGVERSION="crosstool-NG-${CT_VERSION}" +CT_CC_BUGURL="" +CT_CC_ENABLE_CXX_FLAGS="" +CT_CC_CORE_EXTRA_CONFIG="" +CT_CC_EXTRA_CONFIG="" +CT_CC_SUPPORT_CXX=y +CT_CC_SUPPORT_FORTRAN=y +CT_CC_SUPPORT_JAVA=y +CT_CC_SUPPORT_ADA=y +CT_CC_SUPPORT_OBJC=y +CT_CC_SUPPORT_OBJCXX=y + +# +# Additional supported languages: +# +# CT_CC_LANG_CXX is not set +# CT_CC_LANG_FORTRAN is not set +# CT_CC_LANG_JAVA is not set + +# +# gcc other options +# +CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y +CT_CC_GCC_USE_GRAPHITE=y +CT_CC_STATIC_LIBSTDCXX=y +# CT_CC_GCC_LIBMUDFLAP is not set +# CT_CC_GCC_LIBGOMP is not set +# CT_CC_GCC_LIBSSP is not set + +# +# Misc. obscure options. +# +CT_CC_CXA_ATEXIT=y +# CT_CC_GCC_DISABLE_PCH is not set +CT_CC_GCC_SJLJ_EXCEPTIONS=m +CT_CC_GCC_LDBL_128=m + +# +# C-library +# +CT_LIBC="glibc" +CT_LIBC_VERSION="2.9" +# CT_LIBC_eglibc is not set +CT_LIBC_glibc=y +# CT_LIBC_mingw is not set +# CT_LIBC_newlib is not set +# CT_LIBC_none is not set +# CT_LIBC_uClibc is not set +CT_LIBC_eglibc_AVAILABLE=y +CT_LIBC_glibc_AVAILABLE=y +CT_LIBC_GLIBC_TARBALL=y +# CT_LIBC_GLIBC_V_2_12_2 is not set +# CT_LIBC_GLIBC_V_2_12_1 is not set +# CT_LIBC_GLIBC_V_2_11_1 is not set +# CT_LIBC_GLIBC_V_2_11 is not set +# CT_LIBC_GLIBC_V_2_10_1 is not set +CT_LIBC_GLIBC_V_2_9=y +# CT_LIBC_GLIBC_V_2_8 is not set +# CT_LIBC_GLIBC_V_2_7 is not set +# CT_LIBC_GLIBC_V_2_6_1 is not set +# CT_LIBC_GLIBC_V_2_6 is not set +# CT_LIBC_GLIBC_V_2_5_1 is not set +# CT_LIBC_GLIBC_V_2_5 is not set +CT_LIBC_mingw_AVAILABLE=y +CT_LIBC_newlib_AVAILABLE=y +CT_LIBC_none_AVAILABLE=y +CT_LIBC_uClibc_AVAILABLE=y + +# +# glibc/eglibc common options +# +CT_LIBC_GLIBC_EXTRA_CONFIG="" +CT_LIBC_GLIBC_CONFIGPARMS="" +CT_LIBC_GLIBC_EXTRA_CFLAGS="" +CT_LIBC_EXTRA_CC_ARGS="" +# CT_LIBC_DISABLE_VERSIONING is not set +CT_LIBC_OLDEST_ABI="" +# CT_LIBC_GLIBC_FORCE_UNWIND is not set +CT_LIBC_GLIBC_USE_PORTS=y +CT_LIBC_ADDONS_LIST="" + +# +# WARNING !!! +# + +# +# For glibc >= 2.8, it can happen that the tarballs +# + +# +# for the addons are not available for download. +# + +# +# If that happens, bad luck... Try a previous version +# + +# +# or try again later... :-( +# +# CT_LIBC_GLIBC_KERNEL_VERSION_NONE is not set +CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS=y +# CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set +CT_LIBC_GLIBC_MIN_KERNEL="2.6.37" +CT_LIBC_SUPPORT_THREADS_ANY=y +CT_LIBC_SUPPORT_NPTL=y +# CT_LIBC_SUPPORT_LINUXTHREADS is not set +# CT_LIBC_SUPPORT_WIN32THREADS is not set +# CT_LIBC_SUPPORT_THREADS_NONE is not set +CT_THREADS="nptl" + +# +# Common C library options +# +CT_THREADS_NPTL=y +# CT_THREADS_LINUXTHREADS is not set +# CT_THREADS_WIN32THREADS is not set +# CT_THREADS_NONE is not set +CT_LIBC_XLDD=y + +# +# Debug facilities +# +# CT_DEBUG_gdb is not set + +# +# Companion libraries +# +CT_COMPLIBS_NEEDED=y +CT_GMP_NEEDED=y +CT_MPFR_NEEDED=y +CT_PPL_NEEDED=y +CT_CLOOG_NEEDED=y +# CT_MPC_NEEDED is not set +# CT_LIBELF_NEEDED is not set +CT_COMPLIBS=y +# CT_WRAPPER_NEEDED is not set +CT_GMP=y +CT_MPFR=y +CT_PPL=y +CT_CLOOG=y +# CT_GMP_V_5_0_1 is not set +CT_GMP_V_4_3_2=y +# CT_GMP_V_4_3_1 is not set +# CT_GMP_V_4_3_0 is not set +# CT_GMP_V_4_2_4 is not set +# CT_GMP_V_4_2_2 is not set +CT_GMP_VERSION="4.3.2" +# CT_MPFR_V_3_0_0 is not set +CT_MPFR_V_2_4_2=y +# CT_MPFR_V_2_4_1 is not set +# CT_MPFR_V_2_4_0 is not set +# CT_MPFR_V_2_3_2 is not set +# CT_MPFR_V_2_3_1 is not set +CT_MPFR_VERSION="2.4.2" +# CT_PPL_V_0_11 is not set +CT_PPL_V_0_10_2=y +CT_PPL_VERSION="0.10.2" +# CT_CLOOG_V_0_15_10 is not set +CT_CLOOG_V_0_15_9=y +# CT_CLOOG_V_0_15_8 is not set +# CT_CLOOG_V_0_15_7 is not set +# CT_CLOOG_V_0_15_6 is not set +CT_CLOOG_VERSION="0.15.9" + +# +# Companion libraries common options +# +CT_COMPLIBS_BACKUP=y +# CT_COMPLIBS_CHECK is not set +# CT_COMPLIBS_SHARED is not set diff --git a/toolchain/toolchain-crosstool-ng/crosstool-ng.config b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-uClibc similarity index 76% rename from toolchain/toolchain-crosstool-ng/crosstool-ng.config rename to toolchain/toolchain-crosstool-ng/crosstool-ng.config-uClibc index 5f6aefed12..f25172687c 100644 --- a/toolchain/toolchain-crosstool-ng/crosstool-ng.config +++ b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-uClibc @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# crosstool-NG version: 1.10.0 -# Mon Feb 7 14:03:32 2011 +# crosstool-NG version: 1.10.1 +# Sun Apr 24 23:37:50 2011 # CT_BACKEND=y CT_MODULES=y @@ -84,9 +84,9 @@ CT_LOG_FILE_COMPRESS=y # # Target options # -CT_ARCH="blackfin" -# CT_ARCH_SUPPORTS_BOTH_MMU is not set -# CT_ARCH_SUPPORTS_BOTH_ENDIAN is not set +CT_ARCH="arm" +CT_ARCH_SUPPORTS_BOTH_MMU=y +CT_ARCH_SUPPORTS_BOTH_ENDIAN=y CT_ARCH_SUPPORTS_32=y # CT_ARCH_SUPPORTS_64 is not set CT_ARCH_SUPPORT_ARCH=y @@ -94,7 +94,7 @@ CT_ARCH_SUPPORT_ARCH=y CT_ARCH_SUPPORT_CPU=y CT_ARCH_SUPPORT_TUNE=y CT_ARCH_SUPPORT_FPU=y -# CT_ARCH_DEFAULT_HAS_MMU is not set +CT_ARCH_DEFAULT_HAS_MMU=y # CT_ARCH_DEFAULT_BE is not set CT_ARCH_DEFAULT_LE=y CT_ARCH_DEFAULT_32=y @@ -103,6 +103,8 @@ CT_ARCH_ARCH="" CT_ARCH_CPU="" CT_ARCH_TUNE="" CT_ARCH_FPU="" +# CT_ARCH_BE is not set +CT_ARCH_LE=y CT_ARCH_32=y # CT_ARCH_64 is not set CT_ARCH_BITNESS=32 @@ -115,9 +117,9 @@ CT_TARGET_LDFLAGS="" # General target options # # CT_ARCH_alpha is not set -# CT_ARCH_arm is not set +CT_ARCH_arm=y # CT_ARCH_avr32 is not set -CT_ARCH_blackfin=y +# CT_ARCH_blackfin is not set # CT_ARCH_m68k is not set # CT_ARCH_mips is not set # CT_ARCH_powerpc is not set @@ -134,7 +136,15 @@ CT_ARCH_powerpc_AVAILABLE=y CT_ARCH_s390_AVAILABLE=y CT_ARCH_sh_AVAILABLE=y CT_ARCH_x86_AVAILABLE=y -# CT_ARCH_USE_MMU is not set +CT_ARCH_USE_MMU=y + +# +# arm other options +# +CT_ARCH_ARM_MODE="arm" +CT_ARCH_ARM_MODE_ARM=y +# CT_ARCH_ARM_MODE_THUMB is not set +CT_ARCH_ARM_EABI=y # # Target optimisations @@ -178,17 +188,18 @@ CT_BUILD_SUFFIX="" # # Operating System # -CT_BARE_METAL=y +# CT_BARE_METAL is not set # CT_MINGW32 is not set -# CT_KERNEL_SUPPORTS_SHARED_LIBS is not set -CT_KERNEL="bare-metal" -CT_KERNEL_bare_metal=y -# CT_KERNEL_linux is not set +CT_KERNEL_SUPPORTS_SHARED_LIBS=y +CT_KERNEL="linux" +CT_KERNEL_VERSION="2.6.37" +# CT_KERNEL_bare_metal is not set +CT_KERNEL_linux=y # CT_KERNEL_mingw32 is not set CT_KERNEL_bare_metal_AVAILABLE=y CT_KERNEL_linux_AVAILABLE=y -# CT_KERNEL_LINUX_INSTALL is not set -# CT_KERNEL_V_2_6_37 is not set +CT_KERNEL_LINUX_INSTALL=y +CT_KERNEL_V_2_6_37=y # CT_KERNEL_V_2_6_36_3 is not set # CT_KERNEL_V_2_6_36_2 is not set # CT_KERNEL_V_2_6_36_1 is not set @@ -200,15 +211,18 @@ CT_KERNEL_linux_AVAILABLE=y # CT_KERNEL_V_2_6_31_14 is not set # CT_KERNEL_V_2_6_27_57 is not set # CT_KERNEL_LINUX_CUSTOM is not set -# CT_KERNEL_LINUX_VERBOSITY_0 is not set +CT_KERNEL_LINUX_VERBOSITY_0=y # CT_KERNEL_LINUX_VERBOSITY_1 is not set # CT_KERNEL_LINUX_VERBOSITY_2 is not set +CT_KERNEL_LINUX_VERBOSE_LEVEL=0 +CT_KERNEL_LINUX_INSTALL_CHECK=y # CT_KERNEL_LINUX_USE_CUSTOM_HEADERS is not set CT_KERNEL_mingw32_AVAILABLE=y # # Common kernel options # +CT_SHARED_LIBS=y # # Binary utilities @@ -229,6 +243,7 @@ CT_BINUTILS_V_2_20=y # CT_BINUTILS_V_2_17 is not set # CT_BINUTILS_V_2_16_1 is not set CT_BINUTILS_VERSION="2.20" +CT_BINUTILS_GOLD_SUPPORTS_ARCH=y CT_BINUTILS_EXTRA_CONFIG="" # @@ -273,6 +288,7 @@ CT_CC_PKGVERSION="crosstool-NG-${CT_VERSION}" CT_CC_BUGURL="" CT_CC_ENABLE_CXX_FLAGS="" CT_CC_CORE_EXTRA_CONFIG="" +CT_CC_EXTRA_CONFIG="" CT_CC_SUPPORT_CXX=y CT_CC_SUPPORT_FORTRAN=y CT_CC_SUPPORT_JAVA=y @@ -284,6 +300,8 @@ CT_CC_SUPPORT_OBJCXX=y # Additional supported languages: # # CT_CC_LANG_CXX is not set +# CT_CC_LANG_FORTRAN is not set +# CT_CC_LANG_JAVA is not set # # gcc other options @@ -298,31 +316,72 @@ CT_CC_STATIC_LIBSTDCXX=y # # Misc. obscure options. # +CT_CC_CXA_ATEXIT=y # CT_CC_GCC_DISABLE_PCH is not set +CT_CC_GCC_SJLJ_EXCEPTIONS=m CT_CC_GCC_LDBL_128=m # # C-library # -CT_LIBC="none" +CT_LIBC="uClibc" +CT_LIBC_VERSION="0.9.30.3" # CT_LIBC_eglibc is not set # CT_LIBC_glibc is not set # CT_LIBC_mingw is not set # CT_LIBC_newlib is not set -CT_LIBC_none=y -# CT_LIBC_uClibc is not set +# CT_LIBC_none is not set +CT_LIBC_uClibc=y CT_LIBC_eglibc_AVAILABLE=y CT_LIBC_glibc_AVAILABLE=y CT_LIBC_mingw_AVAILABLE=y CT_LIBC_newlib_AVAILABLE=y CT_LIBC_none_AVAILABLE=y CT_LIBC_uClibc_AVAILABLE=y -# CT_LIBC_SUPPORT_THREADS_ANY is not set +# CT_LIBC_UCLIBC_V_0_9_31 is not set +CT_LIBC_UCLIBC_V_0_9_30_3=y +# CT_LIBC_UCLIBC_V_0_9_30_2 is not set +# CT_LIBC_UCLIBC_V_0_9_30_1 is not set +# CT_LIBC_UCLIBC_V_0_9_30 is not set +# CT_LIBC_UCLIBC_V_0_9_29 is not set +# CT_LIBC_UCLIBC_V_0_9_28_3 is not set +# CT_LIBC_UCLIBC_V_snapshot is not set +# CT_LIBC_UCLIBC_V_specific_date is not set +CT_LIBC_UCLIBC_0_9_30_or_later=y +CT_LIBC_UCLIBC_PARALLEL=y +CT_LIBC_UCLIBC_VERBOSITY_0=y +# CT_LIBC_UCLIBC_VERBOSITY_1 is not set +# CT_LIBC_UCLIBC_VERBOSITY_2 is not set +CT_LIBC_UCLIBC_VERBOSITY="" +CT_LIBC_UCLIBC_DEBUG_LEVEL_0=y +# CT_LIBC_UCLIBC_DEBUG_LEVEL_1 is not set +# CT_LIBC_UCLIBC_DEBUG_LEVEL_2 is not set +CT_LIBC_UCLIBC_DEBUG_LEVEL=0 +CT_LIBC_UCLIBC_CONFIG_FILE="" +CT_LIBC_SUPPORT_THREADS_ANY=y # CT_LIBC_SUPPORT_NPTL is not set -# CT_LIBC_SUPPORT_LINUXTHREADS is not set +CT_LIBC_SUPPORT_LINUXTHREADS=y # CT_LIBC_SUPPORT_WIN32THREADS is not set -# CT_LIBC_SUPPORT_THREADS_NONE is not set -CT_THREADS="none" +CT_LIBC_SUPPORT_THREADS_NONE=y +CT_THREADS="linuxthreads" + +# +# Common C library options +# +# CT_THREADS_NPTL is not set +CT_THREADS_LINUXTHREADS=y +# CT_THREADS_WIN32THREADS is not set +# CT_THREADS_NONE is not set +CT_LIBC_XLDD=y + +# +# uClibc other options +# +CT_LIBC_UCLIBC_LNXTHRD_OLD=y +# CT_LIBC_UCLIBC_LNXTHRD_NEW is not set +CT_LIBC_UCLIBC_LNXTHRD="old" +# CT_LIBC_UCLIBC_LOCALES is not set +# CT_LIBC_UCLIBC_WCHAR is not set # # Debug facilities diff --git a/toolchain/toolchain-crosstool-ng/crosstool-ng.mk b/toolchain/toolchain-crosstool-ng/crosstool-ng.mk index 015cd13e63..ed7f7c60aa 100644 --- a/toolchain/toolchain-crosstool-ng/crosstool-ng.mk +++ b/toolchain/toolchain-crosstool-ng/crosstool-ng.mk @@ -20,9 +20,10 @@ CTNG_SOURCE:=crosstool-ng-$(CTNG_VERSION).tar.bz2 CTNG_DIR:=$(BUILD_DIR)/crosstool-ng-$(CTNG_VERSION) CTNG_CAT:=bzcat CTNG_PATCH_DIR:=toolchain/toolchain-crosstool-ng -CTNG_CONFIG_FILE:=$(call qstrip,$(BR2_TOOLCHAIN_CTNG_CONFIG)) CTNG_UCLIBC_CONFIG_FILE := $(TOPDIR)/toolchain/toolchain-crosstool-ng/uClibc.config +CTNG_CONFIG_FILE:=$(call qstrip,$(BR2_TOOLCHAIN_CTNG_CONFIG)) + # Hack! ct-ng is in fact a Makefile script. As such, it accepts all # make options, such as -C, which makes it uneeded to chdir prior # to calling ct-ng. @@ -349,13 +350,24 @@ endef # Default configuration # Depends on top-level .config because it has options we have to shoe-horn # into crosstool-NG's .config -# Only copy the original .config file if we don't have one already +# Only copy the original .config file if we don't have one already. +# Check that given config file matches selected C library. # We need to call oldconfig twice in a row to ensure the options # are correctly set ( eg. if an option is new, then the initial sed # can't do anything about it ) Ideally, this should go in oldconfig # itself, but it's much easier to handle here. $(CTNG_DIR)/.config: $(CTNG_CONFIG_FILE) $(CTNG_DIR)/ct-ng $(CONFIG_DIR)/.config - $(Q)[ -f $@ ] && cp -a $@ $@.timestamp || cp -f $< $@ + $(Q)if [ ! -f $@ ]; then \ + libc="$$(awk -F '"' '$$1=="CT_LIBC=" { print $$2; }' "$<")"; \ + if [ "$${libc}" != "$(BR2_TOOLCHAIN_CTNG_LIBC)" ]; then \ + echo "* Inconsistency in crosstool-NG config file '$<'"; \ + echo "* - buildroot configured for '$(BR2_TOOLCHAIN_CTNG_LIBC)'"; \ + echo "* - given config file for '$${libc}'"; \ + exit 1; \ + fi; \ + cp -f $< $@; \ + fi + $(Q)cp -a $@ $@.timestamp $(call ctng-oldconfig,$@) $(call ctng-oldconfig,$@) $(call ctng-check-config-changed,$@,$@.timestamp) -- 2.30.2