diff options
-rw-r--r-- | toolchain/helpers.mk | 27 | ||||
-rw-r--r-- | toolchain/toolchain-external/Config.in | 37 |
2 files changed, 50 insertions, 14 deletions
diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk index 34e9c179d..1509ff8b7 100644 --- a/toolchain/helpers.mk +++ b/toolchain/helpers.mk @@ -172,9 +172,10 @@ create_lib64_symlinks = \ (cd $(STAGING_DIR)/usr ; ln -s lib lib64) # -# Check the availability of a particular glibc feature. We assume that -# all Buildroot toolchain options are supported by glibc, so we just -# check that they are enabled. +# Check the availability of a particular glibc feature. This function +# is used to check toolchain options that are always supported by +# glibc, so we simply check that the corresponding option is properly +# enabled. # # $1: Buildroot option name # $2: feature description @@ -186,6 +187,22 @@ check_glibc_feature = \ fi # +# Check the availability of RPC support in a glibc toolchain +# +# $1: sysroot directory +# +check_glibc_rpc_feature = \ + IS_IN_LIBC=`test -f $(1)/usr/include/rpc/rpc.h && echo y` ; \ + if [ "$(BR2_TOOLCHAIN_HAS_NATIVE_RPC)" != "y" -a "$${IS_IN_LIBC}" = "y" ] ; then \ + echo "RPC support available in C library, please enable BR2_TOOLCHAIN_HAS_NATIVE_RPC" ; \ + exit 1 ; \ + fi ; \ + if [ "$(BR2_TOOLCHAIN_HAS_NATIVE_RPC)" = "y" -a "$${IS_IN_LIBC}" != "y" ] ; then \ + echo "RPC support not available in C library, please disable BR2_TOOLCHAIN_HAS_NATIVE_RPC" ; \ + exit 1 ; \ + fi + +# # Check the correctness of a glibc external toolchain configuration. # 1. Check that the C library selected in Buildroot matches the one # of the external toolchain @@ -202,10 +219,10 @@ check_glibc = \ fi; \ $(call check_glibc_feature,BR2_LARGEFILE,Large file support) ;\ $(call check_glibc_feature,BR2_INET_IPV6,IPv6 support) ;\ - $(call check_glibc_feature,BR2_TOOLCHAIN_HAS_NATIVE_RPC,RPC support) ;\ $(call check_glibc_feature,BR2_ENABLE_LOCALE,Locale support) ;\ $(call check_glibc_feature,BR2_USE_MMU,MMU support) ;\ - $(call check_glibc_feature,BR2_USE_WCHAR,Wide char support) + $(call check_glibc_feature,BR2_USE_WCHAR,Wide char support) ;\ + $(call check_glibc_rpc_feature,$${SYSROOT_DIR}) # # Check the conformity of Buildroot configuration with regard to the diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in index 595864bf4..4f6934e2a 100644 --- a/toolchain/toolchain-external/Config.in +++ b/toolchain/toolchain-external/Config.in @@ -8,6 +8,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_2012_10 depends on BR2_arm depends on BR2_cortex_a8 || BR2_cortex_a9 select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Linaro toolchain for the ARM architecture. It uses Linaro @@ -24,6 +25,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_2012_09 depends on BR2_arm depends on BR2_cortex_a8 || BR2_cortex_a9 select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Linaro toolchain for the ARM architecture. It uses Linaro @@ -40,6 +42,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_2012_08 depends on BR2_arm depends on BR2_cortex_a8 || BR2_cortex_a9 select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Linaro toolchain for the ARM architecture. It uses Linaro @@ -56,6 +59,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_2012_07 depends on BR2_arm depends on BR2_cortex_a8 || BR2_cortex_a9 select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Linaro toolchain for the ARM architecture. It uses Linaro @@ -72,6 +76,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_2012_06 depends on BR2_arm depends on BR2_cortex_a8 || BR2_cortex_a9 select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Linaro toolchain for the ARM architecture. It uses Linaro @@ -108,6 +113,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201109 bool "Sourcery CodeBench ARM 2011.09" depends on BR2_arm select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the ARM architecture, from @@ -129,6 +135,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201103 bool "Sourcery CodeBench ARM 2011.03" depends on BR2_arm select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the ARM architecture, from @@ -150,6 +157,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201009 bool "Sourcery CodeBench ARM 2010.09" depends on BR2_arm select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the ARM architecture, from @@ -171,6 +179,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2010Q1 bool "Sourcery CodeBench ARM 2010q1" depends on BR2_arm select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the ARM architecture, from @@ -192,6 +201,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201109 bool "Sourcery CodeBench MIPS 2011.09" depends on BR2_mips || BR2_mipsel select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the MIPS architecture, from @@ -259,6 +269,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201103 bool "Sourcery CodeBench MIPS 2011.03" depends on BR2_mips || BR2_mipsel select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the MIPS architecture, from @@ -308,6 +319,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS44 bool "Sourcery CodeBench MIPS 4.4" depends on BR2_mips || BR2_mipsel select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the MIPS architecture, from @@ -357,6 +369,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103 bool "Sourcery CodeBench PowerPC 2011.03" depends on BR2_powerpc select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the PowerPC architecture, @@ -384,6 +397,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009 bool "Sourcery CodeBench PowerPC 2010.09" depends on BR2_powerpc select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the PowerPC architecture, @@ -411,6 +425,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201103 bool "Sourcery CodeBench SH 2011.03" depends on BR2_sh4a || BR2_sh4aeb select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the SuperH architecture, @@ -430,6 +445,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201009 bool "Sourcery CodeBench SH 2010.09" depends on BR2_sh4a || BR2_sh4aeb select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the SuperH architecture, @@ -483,6 +499,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109 bool "Sourcery CodeBench x86/x86_64 2011.09" depends on BR2_i386 || BR2_x86_64 select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the x86/x86_64 @@ -504,6 +521,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201009 bool "Sourcery CodeBench x86/x86_64 2010.09" depends on BR2_i386 || BR2_x86_64 select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP help Sourcery CodeBench toolchain for the x86/x86_64 @@ -570,6 +588,7 @@ config BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEEL_V2 bool "Xilinx Little Endian Microblaze GNU Tools" depends on BR2_microblazeel select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC help Toolchain for the Microblaze architecture, from http://wiki.xilinx.com/mb-gnu-tools @@ -578,6 +597,7 @@ config BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEBE_V2 bool "Xilinx Big Endian Microblaze GNU Tools" depends on BR2_microblazebe select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC help Toolchain for the Microblaze architecture, from http://wiki.xilinx.com/mb-gnu-tools @@ -678,7 +698,6 @@ config BR2_TOOLCHAIN_EXTERNAL_GLIBC bool select BR2_LARGEFILE select BR2_INET_IPV6 - select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_TOOLCHAIN_HAS_THREADS @@ -730,14 +749,6 @@ config BR2_TOOLCHAIN_EXTERNAL_INET_IPV6 IPv6. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. -config BR2_TOOLCHAIN_EXTERNAL_INET_RPC - bool "Toolchain has RPC support?" - select BR2_TOOLCHAIN_HAS_NATIVE_RPC - help - Select this option if your external toolchain supports - RPC. If you don't know, leave the default value, Buildroot - will tell you if it's correct or not. - config BR2_TOOLCHAIN_EXTERNAL_WCHAR bool "Toolchain has WCHAR support?" select BR2_USE_WCHAR @@ -776,6 +787,14 @@ config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC +config BR2_TOOLCHAIN_EXTERNAL_INET_RPC + bool "Toolchain has RPC support?" + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Select this option if your external toolchain supports + RPC. If you don't know, leave the default value, Buildroot + will tell you if it's correct or not. + config BR2_TOOLCHAIN_EXTERNAL_CXX bool "Toolchain has C++ support?" select BR2_INSTALL_LIBSTDCPP |