Bug#644771: Cross-compile fails due to inability to build "locales-all"
Source: eglibc
Version: 2.13-21
Severity: wishlist
Tags: patch
While cross-compiling EGLIBC, the package-build fails building the
architecture-specific "locales-all" package as the binaries needed for
that task are for a non-native architecture.
To resolve the issue, the "locales-all" package should only be built
when compiling natively. The attached patch results in successful
cross-builds in my test environment.
Cheers,
Kyle Moffett
-- System Information:
Debian Release: wheezy/sid
APT prefers testing
APT policy: (700, 'testing'), (700, 'stable'), (600, 'unstable'), (500, 'stable-updates'), (500, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.0.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
diff -ru eglibc-2.13/debian/rules STAGE2/EGLIBC/eglibc-2.13/debian/rules
--- eglibc-2.13/debian/rules 2011-10-07 17:40:39.000000000 -0400
+++ STAGE2/EGLIBC/eglibc-2.13/debian/rules 2011-10-08 17:45:08.000000000 -0400
@@ -128,10 +128,15 @@
# Which build pass are we on?
curpass = $(filter-out %_,$(subst _,_ ,$@))
-DEB_ARCH_REGULAR_PACKAGES = $(libc) $(libc)-dev $(libc)-dbg $(libc)-prof $(libc)-pic libc-bin libc-dev-bin locales-all multiarch-support
+DEB_ARCH_REGULAR_PACKAGES = $(libc) $(libc)-dev $(libc)-dbg $(libc)-prof $(libc)-pic libc-bin libc-dev-bin multiarch-support
DEB_INDEP_REGULAR_PACKAGES = glibc-doc eglibc-source locales
DEB_UDEB_PACKAGES = $(libc)-udeb libnss-dns-udeb libnss-files-udeb
+## Locales can only be pre-generated during native compiles
+ifeq ($(DEB_HOST_ARCH),$(DEB_BUILD_ARCH))
+DEB_ARCH_REGULAR_PACKAGES += locales-all
+endif
+
# Generic kernel version check
define kernel_check
(if [ $(CURRENT_KERNEL_VERSION) -lt $(1) ]; then \
Reply to: