summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/libc/glibc.in.25
-rw-r--r--scripts/build/libc/glibc.sh9
2 files changed, 13 insertions, 1 deletions
diff --git a/config/libc/glibc.in.2 b/config/libc/glibc.in.2
index 9d3c2e1..93b7b59 100644
--- a/config/libc/glibc.in.2
+++ b/config/libc/glibc.in.2
@@ -136,12 +136,15 @@ config LIBC_LOCALES
which is required in order to support internationalization.
if LIBC_glibc && LIBC_LOCALES
-comment "WARNING! "
+comment "WARNING! "
comment "| The built locales will be usable if and only if the build "
comment "| machine and the target: "
comment "| - have the same endianness, "
comment "| - and have the same alignment requirements for uint32_t. "
comment "| You will have to check by yourself (for now). "
+comment "WARNING! "
+comment "| Building GLIBC locales requires that GLIBC supports "
+comment "| the build machine as the target. "
endif # LIBC_glibc && LIBC_LOCALES
if KERNEL_linux
diff --git a/scripts/build/libc/glibc.sh b/scripts/build/libc/glibc.sh
index 348c35a..c12a553 100644
--- a/scripts/build/libc/glibc.sh
+++ b/scripts/build/libc/glibc.sh
@@ -526,6 +526,15 @@ do_libc_locales() {
local -a extra_config
local glibc_cflags
+ # To build locales, we'd need to build glibc for the build machine.
+ # Bail out if the host is not supported.
+ case "${CT_BUILD}" in
+ *-cygwin)
+ CT_DoLog EXTRA "Skipping GNU libc locales: incompatible build machine"
+ return
+ ;;
+ esac
+
mkdir -p "${CT_BUILD_DIR}/build-localedef"
cd "${CT_BUILD_DIR}/build-localedef"