3c8d890c19
Currently, when verifying the configuration of a uClibc toolchain for the presence of locale support, we check __UCLIBC_HAS_LOCALE__. It turns out that we in fact also expect __UCLIBC_HAS_XLOCALE__ to be defined, as without it locale_t is not defined, causing build failure in some packages, such as libcpprestsdk: In file included from /home/thomas/autobuild/instance-0/output-1/build/libcpprestsdk-2.10.18/Release/include/cpprest/json.h:18, from /home/thomas/autobuild/instance-0/output-1/build/libcpprestsdk-2.10.18/Release/src/pch/stdafx.h:88, from /home/thomas/autobuild/instance-0/output-1/build/libcpprestsdk-2.10.18/Release/src/http/client/http_client_msg.cpp:13: /home/thomas/autobuild/instance-0/output-1/build/libcpprestsdk-2.10.18/Release/include/cpprest/asyncrt_utils.h:317:13: error: 'locale_t' does not name a type 317 | typedef locale_t xplat_locale; | ^~~~~~~~ As essentially our requirement for uClibc in external toolchains is "it should match the uClibc configuration used by Buildroot for internal toolchains", it makes sense to verify __UCLIBC_HAS_XLOCALE__. Note that of course checking __UCLIBC_HAS_XLOCALE__ is sufficient, as it cannot be enabled if __UCLIBC_HAS_LOCALE isn't. This addresses an issue with the Synopsys ARC external toolchain, which is built with __UCLIBC_HAS_LOCALE__, but without __UCLIBC_HAS_XLOCALE__ causing a build failure with some packages (such as libcpprestsdk). Therefore, this patch also changes how the Synospys ARC external toolchain is exposed in Buildroot: it no longer advertise locale support. Fixes: http://autobuild.buildroot.org/results/e6778e60cc1ea455f5b4511d5824f04d8040f67b Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> |
||
---|---|---|
.. | ||
toolchain-external-arm-aarch64 | ||
toolchain-external-arm-aarch64-be | ||
toolchain-external-arm-arm | ||
toolchain-external-bootlin | ||
toolchain-external-codescape-img-mips | ||
toolchain-external-codescape-mti-mips | ||
toolchain-external-codesourcery-aarch64 | ||
toolchain-external-codesourcery-arm | ||
toolchain-external-codesourcery-mips | ||
toolchain-external-codesourcery-niosII | ||
toolchain-external-custom | ||
toolchain-external-linaro-aarch64 | ||
toolchain-external-linaro-aarch64-be | ||
toolchain-external-linaro-arm | ||
toolchain-external-linaro-armeb | ||
toolchain-external-synopsys-arc | ||
Config.in | ||
pkg-toolchain-external.mk | ||
toolchain-external.mk |