[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[glibc] 01/01: debian/control.in/main, debian/rules, debian/rules.d/build.mk: make sure to use the just built localedef when building locales. When cross-compiling use the system localedef with the correct endianness and build-depends on the correct version.



This is an automated email from the git hooks/post-receive script.

aurel32 pushed a commit to branch sid
in repository glibc.

commit 1e98bd644a2a39f78348a62232f43a4fcd1f92cb
Author: Aurelien Jarno <aurelien@aurel32.net>
Date:   Mon Mar 21 00:04:54 2016 +0100

    debian/control.in/main, debian/rules, debian/rules.d/build.mk: make sure to use the just built localedef when building locales. When cross-compiling use the system localedef with the correct endianness and build-depends on the correct version.
---
 debian/changelog        |  4 ++++
 debian/control          |  3 ++-
 debian/control.in/main  |  3 ++-
 debian/rules            |  2 ++
 debian/rules.d/build.mk | 29 ++++++++++++++++++++++++-----
 5 files changed, 34 insertions(+), 7 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 25a2aac..b464132 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -8,6 +8,10 @@ glibc (2.22-4) UNRELEASED; urgency=medium
   * debian/rules, debian/rules.d/build.mk: move the C.UTF-8 locale and
     locales-all generation to a separate target instead of building them
     in the build_libc target.
+  * debian/control.in/main, debian/rules, debian/rules.d/build.mk: make sure
+    to use the just built localedef when building locales. When
+    cross-compiling use the system localedef with the correct endianness and
+    build-depends on the correct version.
 
   [ Samuel Thibault ]
   * patches/hurd-i386/tg-sendmsg-SCM_RIGHTS.diff,tg-sendmsg-SCM_CREDS.diff:
diff --git a/debian/control b/debian/control
index cbce152..30abd77 100644
--- a/debian/control
+++ b/debian/control
@@ -10,7 +10,8 @@ Build-Depends: gettext, dpkg-dev (>= 1.17.14), xz-utils, file, quilt,
  hurd-dev (>= 1:0.5.git20140320~) [hurd-i386] <!stage1> | libihash-dev [hurd-i386] <!stage1>,
  kfreebsd-kernel-headers [kfreebsd-any],
  binutils (>= 2.21),
- g++-5, g++-5-multilib [amd64 i386 kfreebsd-amd64 mips mipsel mipsn32 mipsn32el mips64 mips64el powerpc ppc64 s390x sparc sparc64 x32]
+ g++-5, g++-5-multilib [amd64 i386 kfreebsd-amd64 mips mipsel mipsn32 mipsn32el mips64 mips64el powerpc ppc64 s390x sparc sparc64 x32],
+ libc-bin (>= 2.22) <cross>
 Build-Depends-Indep: perl, po-debconf (>= 1.0)
 Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
 Uploaders: Clint Adams <clint@debian.org>, Aurelien Jarno <aurel32@debian.org>, Adam Conrad <adconrad@0c3.net>
diff --git a/debian/control.in/main b/debian/control.in/main
index 724f578..c64c2a1 100644
--- a/debian/control.in/main
+++ b/debian/control.in/main
@@ -10,7 +10,8 @@ Build-Depends: gettext, dpkg-dev (>= 1.17.14), xz-utils, file, quilt,
  hurd-dev (>= 1:0.5.git20140320~) [hurd-i386] <!stage1> | libihash-dev [hurd-i386] <!stage1>,
  kfreebsd-kernel-headers [kfreebsd-any],
  binutils (>= 2.21),
- g++-5, g++-5-multilib [amd64 i386 kfreebsd-amd64 mips mipsel mipsn32 mipsn32el mips64 mips64el powerpc ppc64 s390x sparc sparc64 x32]
+ g++-5, g++-5-multilib [amd64 i386 kfreebsd-amd64 mips mipsel mipsn32 mipsn32el mips64 mips64el powerpc ppc64 s390x sparc sparc64 x32],
+ libc-bin (>= @GLIBC_VERSION@) <cross>
 Build-Depends-Indep: perl, po-debconf (>= 1.0)
 Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
 Uploaders: Clint Adams <clint@debian.org>, Aurelien Jarno <aurel32@debian.org>, Adam Conrad <adconrad@0c3.net>
diff --git a/debian/rules b/debian/rules
index dcf3cf4..a6cc77a 100755
--- a/debian/rules
+++ b/debian/rules
@@ -36,6 +36,7 @@ DUMMY := $(shell mkdir -p $(stamp))
 export SHELL          = /bin/bash -e
 
 DEB_HOST_ARCH         ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
+DEB_HOST_ARCH_ENDIAN  ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_ENDIAN)
 DEB_HOST_ARCH_OS      ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
 DEB_HOST_GNU_CPU      ?= $(shell dpkg-architecture -qDEB_HOST_GNU_CPU)
 DEB_HOST_GNU_TYPE     ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
@@ -59,6 +60,7 @@ shlib_dep_ver = $(GLIBC_VERSION)
 shlib_dep = $(libc) (>= $(shlib_dep_ver))
 
 DEB_BUILDDIR ?= $(build-tree)/$(DEB_HOST_ARCH)-$(curpass)
+DEB_BUILDDIRLIBC ?= $(build-tree)/$(DEB_HOST_ARCH)-libc
 
 GLIBC_SOURCES = $(addprefix $(shell basename $(CURDIR))/, \
 		 $(filter-out debian $(shell basename $(stamp)) $(build-tree), $(wildcard *)))
diff --git a/debian/rules.d/build.mk b/debian/rules.d/build.mk
index 5aedb83..c90fc38 100644
--- a/debian/rules.d/build.mk
+++ b/debian/rules.d/build.mk
@@ -278,16 +278,35 @@ ifeq ($(filter stage1,$(DEB_BUILD_PROFILES)),)
 endif
 	touch $@
 
+#
+# Make sure to use the just built localedef for native builds. When
+# cross-compiling use the system localedef passing --little-endian
+# or --big-endian to select the correct endianess. A cross-specific
+# build-dependency makes sure that the correct version is used, as
+# the format might change between upstream versions.
+#
+ifeq ($(DEB_BUILD_ARCH),a$(DEB_HOST_ARCH))
+LOCALEDEF = I18NPATH=$(CURDIR)/localedata \
+	    GCONV_PATH=$(CURDIR)/$(DEB_BUILDDIRLIBC)/iconvdata \
+	    LC_ALL=C \
+	    $(CURDIR)/$(DEB_BUILDDIRLIBC)/elf/ld.so --library-path $(CURDIR)/$(DEB_BUILDDIRLIBC) \
+	    $(CURDIR)/$(DEB_BUILDDIRLIBC)/locale/localedef
+else
+LOCALEDEF = I18NPATH=$(CURDIR)/localedata \
+	    GCONV_PATH=$(CURDIR)/$(DEB_BUILDDIRLIBC)/iconvdata \
+	    LC_ALL=C \
+	    localedef --$(DEB_HOST_ARCH_ENDIAN)-endian
+endif
+
 $(stamp)build_C.UTF-8: $(stamp)/build_libc
-	I18NPATH=$(CURDIR)/localedata GCONV_PATH=$(DEB_BUILDDIR)/iconvdata \
-		 localedef --quiet -c -f UTF-8 -i C $(CURDIR)/build-tree/C.UTF-8
+	$(LOCALEDEF) --quiet -c -f UTF-8 -i C $(CURDIR)/build-tree/C.UTF-8
 	touch $@
 
 $(stamp)build_locales-all: $(stamp)/build_libc
-	$(MAKE) -C $(build-tree)/$(DEB_HOST_ARCH)-libc $(NJOBS) \
-		objdir=$(build-tree)/$(DEB_HOST_ARCH)-libc \
+	$(MAKE) -C $(DEB_BUILDDIRLIBC) $(NJOBS) \
+		objdir=$(DEB_BUILDDIRLIBC) \
 		install_root=$(CURDIR)/build-tree/locales-all \
-		localedata/install-locales
+		localedata/install-locales LOCALEDEF="$(LOCALEDEF)"
 	rdfind -outputname /dev/null -makesymlinks true -removeidentinode false \
 		$(CURDIR)/build-tree/locales-all/usr/lib/locale
 	symlinks -r -s -c $(CURDIR)/build-tree/locales-all/usr/lib/locale

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-glibc/glibc.git


Reply to: