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

[glibc] 01/02: Enable libmvec per flavour and not per platform



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

aurel32 pushed a commit to branch sid
in repository glibc.

commit e9dc95750e2a3460dea6422e5b759659d4be6bc8
Author: Aurelien Jarno <aurelien@aurel32.net>
Date:   Wed Mar 9 18:04:52 2016 +0100

    Enable libmvec per flavour and not per platform
    
    Otherwise libmvec_nonshared.a is missing in libc6-x32:amd64, causing GCC
    to fail building C++ code with -mx32.
    
    * debian/rules, debian/rules.d/build.mk, debian/rules.d/debhelper.mk: define
      the mvec variable per flavour and not per platform.
    * sysdeps/*mk: enable libmvec only on amd64 and x32 flavours.
    * debian/debhelper.in/libc-dev-alt.install: install libmvec_nonshared.a also
      for alternative builds.
---
 debian/changelog                         | 5 +++++
 debian/debhelper.in/libc-dev-alt.install | 1 +
 debian/rules                             | 1 +
 debian/rules.d/build.mk                  | 2 +-
 debian/rules.d/debhelper.mk              | 2 +-
 debian/sysdeps/amd64.mk                  | 3 ++-
 debian/sysdeps/hurd.mk                   | 2 --
 debian/sysdeps/i386.mk                   | 2 ++
 debian/sysdeps/kfreebsd.mk               | 2 --
 debian/sysdeps/linux.mk                  | 2 --
 debian/sysdeps/x32.mk                    | 4 +++-
 11 files changed, 16 insertions(+), 10 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 0ba2624..43bddeb 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -11,6 +11,11 @@ glibc (2.22-2) UNRELEASED; urgency=medium
     glibc-bsd):
     - Fix consistency check for PIC code when built with GCC 5.  Closes:
       #817207.
+  * debian/rules, debian/rules.d/build.mk, debian/rules.d/debhelper.mk: define
+    the mvec variable per flavour and not per platform.
+  * sysdeps/*mk: enable libmvec only on amd64 and x32 flavours.
+  * debian/debhelper.in/libc-dev-alt.install: install libmvec_nonshared.a also
+    for alternative builds.
 
  -- Aurelien Jarno <aurel32@debian.org>  Mon, 07 Mar 2016 14:33:41 +0100
 
diff --git a/debian/debhelper.in/libc-dev-alt.install b/debian/debhelper.in/libc-dev-alt.install
index 1348654..43decee 100644
--- a/debian/debhelper.in/libc-dev-alt.install
+++ b/debian/debhelper.in/libc-dev-alt.install
@@ -9,6 +9,7 @@ TMPDIR/LIBDIR/libg.a LIBDIR
 TMPDIR/LIBDIR/libieee.a LIBDIR
 TMPDIR/LIBDIR/libm.a LIBDIR
 TMPDIR/LIBDIR/libmcheck.a LIBDIR
+TMPDIR/LIBDIR/libmvec_nonshared.a LIBDIR
 TMPDIR/LIBDIR/libnsl.a LIBDIR
 TMPDIR/LIBDIR/libpthread.a LIBDIR
 TMPDIR/LIBDIR/libpthread_nonshared.a LIBDIR
diff --git a/debian/rules b/debian/rules
index 08ac6ce..2aef770 100755
--- a/debian/rules
+++ b/debian/rules
@@ -97,6 +97,7 @@ vardbdir=/var/lib/misc
 rtlddir=/lib
 slibdir=/lib/$(DEB_HOST_MULTIARCH)
 libdir=/usr/lib/$(DEB_HOST_MULTIARCH)
+mvec = no
 
 
 BASE_CC = gcc
diff --git a/debian/rules.d/build.mk b/debian/rules.d/build.mk
index 3c2dc00..ddb3ced 100644
--- a/debian/rules.d/build.mk
+++ b/debian/rules.d/build.mk
@@ -96,7 +96,7 @@ $(stamp)configure_%: $(stamp)mkbuilddir_%
 		--with-bugurl="http://www.debian.org/Bugs/"; \
 		$(if $(filter $(pt_chown),yes),--enable-pt_chown) \
 		$(if $(filter $(threads),no),--disable-nscd) \
-		$(if $(filter $(mvec),no),--disable-mathvec) \
+		$(if $(filter $(call xx,mvec),no),--disable-mathvec) \
 		$(call xx,with_headers) $(call xx,extra_config_options))
 	touch $@
 
diff --git a/debian/rules.d/debhelper.mk b/debian/rules.d/debhelper.mk
index 6f33ed8..6fe4ec5 100644
--- a/debian/rules.d/debhelper.mk
+++ b/debian/rules.d/debhelper.mk
@@ -142,7 +142,6 @@ $(stamp)debhelper-common:
 	      sed -e "s/^#.*//" -i $$y ; \
 	      $(if $(filter $(pt_chown),no),sed -e "/pt_chown/d" -i $$y ;) \
 	      $(if $(filter $(pldd),no),sed -e "/pldd/d" -i $$y ;) \
-	      $(if $(filter $(mvec),no),sed -e "/libmvec/d" -i $$y ;) \
 	      ;; \
 	  esac; \
 	done
@@ -235,6 +234,7 @@ $(stamp)debhelper_%: $(stamp)debhelper-common $(stamp)install_%
 	    sed -e "s#FLAVOR#$$curpass#g" -i $$t; \
 	    sed -e "s#RTLD_SO#$$rtld_so#g" -i $$t ; \
 	    sed -e "s#MULTIARCHDIR#$$DEB_HOST_MULTIARCH#g" -i $$t ; \
+	    $(if $(filter $(call xx,mvec),no),sed -e "/libmvec/d" -i $$t ;) \
 	  done ; \
 	done
 endif
diff --git a/debian/sysdeps/amd64.mk b/debian/sysdeps/amd64.mk
index fd3d16c..13de135 100644
--- a/debian/sysdeps/amd64.mk
+++ b/debian/sysdeps/amd64.mk
@@ -1,9 +1,9 @@
 # configuration options for all flavours
 extra_config_options = --enable-multi-arch --enable-lock-elision
-mvec = yes
 MIN_KERNEL_SUPPORTED := 2.6.32
 
 # main library
+libc_mvec = yes
 libc_rtlddir = /lib64
 
 # build 32-bit (i386) alternative library
@@ -46,6 +46,7 @@ libc6-x32_shlib_dep = libc6-x32 (>= $(shlib_dep_ver))
 x32_configure_target = x86_64-linux-gnux32
 x32_CC = $(CC) -mx32
 x32_CXX = $(CXX) -mx32
+x32_mvec = yes
 x32_rtlddir = /libx32
 x32_slibdir = /libx32
 x32_libdir = /usr/libx32
diff --git a/debian/sysdeps/hurd.mk b/debian/sysdeps/hurd.mk
index 2ee0545..6e8fff7 100644
--- a/debian/sysdeps/hurd.mk
+++ b/debian/sysdeps/hurd.mk
@@ -5,8 +5,6 @@ libc = libc0.3
 pt_chown = yes
 # Expect pldd on this platform
 pldd = no
-# Expect the mvec library on this platform
-mvec = no
 
 # Linuxthreads Config (we claim "no threads" as nptl keys off this)
 threads = no
diff --git a/debian/sysdeps/i386.mk b/debian/sysdeps/i386.mk
index 33a6f4f..59d5748 100644
--- a/debian/sysdeps/i386.mk
+++ b/debian/sysdeps/i386.mk
@@ -40,6 +40,7 @@ amd64_configure_target = x86_64-linux-gnu
 # /usr/include/asm wrappers need that symbol.
 amd64_CC = $(CC) -m64 -D__x86_64__
 amd64_CXX = $(CXX) -m64 -D__x86_64__
+amd64_mvec = yes
 amd64_rtlddir = /lib64
 amd64_slibdir = /lib64
 amd64_libdir = /usr/lib64
@@ -82,6 +83,7 @@ libc6-x32_shlib_dep = libc6-x32 (>= $(shlib_dep_ver))
 x32_configure_target = x86_64-linux-gnux32
 x32_CC = $(CC) -mx32
 x32_CXX = $(CXX) -mx32
+x32_mvec = yes
 x32_rtlddir = /libx32
 x32_slibdir = /libx32
 x32_libdir = /usr/libx32
diff --git a/debian/sysdeps/kfreebsd.mk b/debian/sysdeps/kfreebsd.mk
index 999031b..66dab01 100644
--- a/debian/sysdeps/kfreebsd.mk
+++ b/debian/sysdeps/kfreebsd.mk
@@ -6,8 +6,6 @@ libc = libc0.1
 pt_chown = yes
 # Expect pldd on this platform
 pldd = no
-# Expect the mvec library on this platform
-mvec = no
 
 # NPTL Config
 threads = yes
diff --git a/debian/sysdeps/linux.mk b/debian/sysdeps/linux.mk
index 32228ce..7e9fda8 100644
--- a/debian/sysdeps/linux.mk
+++ b/debian/sysdeps/linux.mk
@@ -6,8 +6,6 @@ libc = libc6
 pt_chown = no
 # Expect pldd on this platform
 pldd = yes
-# Expect the mvec library on this platform
-mvec = no
 
 # NPTL Config
 threads = yes
diff --git a/debian/sysdeps/x32.mk b/debian/sysdeps/x32.mk
index 4b145ff..c88b1a4 100644
--- a/debian/sysdeps/x32.mk
+++ b/debian/sysdeps/x32.mk
@@ -1,8 +1,8 @@
 # configuration options for all flavours
 extra_config_options = --enable-multi-arch --enable-lock-elision
-mvec = yes
 
 # main library
+libc_mvec = yes
 libc_rtlddir = /libx32
 
 # build 64-bit (amd64) alternative library
@@ -12,6 +12,7 @@ libc6-amd64_shlib_dep = libc6-amd64 (>= $(shlib_dep_ver))
 amd64_configure_target = x86_64-linux-gnu
 amd64_CC = $(CC) -m64
 amd64_CXX = $(CXX) -m64
+amd64_mvec = yes
 amd64_rtlddir = /lib64
 amd64_slibdir = /lib64
 amd64_libdir = /usr/lib64
@@ -41,6 +42,7 @@ libc6-i386_shlib_dep = libc6-i386 (>= $(shlib_dep_ver))
 i386_configure_target = i686-linux-gnu
 i386_CC = $(CC) -m32 -march=pentium4 -mtune=generic
 i386_CXX = $(CXX) -m32 -march=pentium4 -mtune=generic
+i386_mvec = no
 i386_slibdir = /lib32
 i386_libdir = /usr/lib32
 

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


Reply to: