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

r1039 - in glibc-package/trunk/debian: . control.in patches rules.d sysdeps



Author: dan
Date: 2005-10-14 02:34:05 +0000 (Fri, 14 Oct 2005)
New Revision: 1039

Added:
   glibc-package/trunk/debian/control.in/amd64
   glibc-package/trunk/debian/patches/i386-amd64-biarch.dpatch
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/control
   glibc-package/trunk/debian/control.in/main
   glibc-package/trunk/debian/patches/00list
   glibc-package/trunk/debian/patches/amd64-lib.dpatch
   glibc-package/trunk/debian/rules.d/control.mk
   glibc-package/trunk/debian/sysdeps/i386.mk
Log:
  * Build 64-bit packages on i386 - based on patches from both Ubuntu
    and Andreas Jochens <aj@andaco.de>.
    - Build depend on a biarch linux-kernel-headers package.
    - Build depend on new libc6-dev-amd64 package.
    - Conflict with amd64-libs to avoid stale libraries.
    - Replace files from amd64-libs-dev.
    - Use lib64 for 64-bit libraries on i386.
    - Search lib64 for ldconfig.
    - Install 64-bit headers in /usr/include/x86_64-linux-gnu.


Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/changelog	2005-10-14 02:34:05 UTC (rev 1039)
@@ -1,10 +1,20 @@
 glibc (2.3.5-7) unstable; urgency=low
 
-  * GOTO Masanori <gotom@debian.org>
+  [ GOTO Masanori ]
+  * debian/script.in/kernelcheck.sh: Drop real-i386 kernel support.
 
-    * debian/script.in/kernelcheck.sh: Drop real-i386 kernel support.
+  [ Daniel Jacobowitz ]
+  * Build 64-bit packages on i386 - based on patches from both Ubuntu
+    and Andreas Jochens <aj@andaco.de>.
+    - Build depend on a biarch linux-kernel-headers package.
+    - Build depend on new libc6-dev-amd64 package.
+    - Conflict with amd64-libs to avoid stale libraries.
+    - Replace files from amd64-libs-dev.
+    - Use lib64 for 64-bit libraries on i386.
+    - Search lib64 for ldconfig.
+    - Install 64-bit headers in /usr/include/x86_64-linux-gnu.
 
- -- GOTO Masanori <gotom@debian.org>  Sun, 28 Aug 2005 12:31:58 +0900
+ -- Daniel Jacobowitz <dan@debian.org>  Thu, 13 Oct 2005 22:31:28 -0400
 
 glibc (2.3.5-6) unstable; urgency=low
 

Modified: glibc-package/trunk/debian/control
===================================================================
--- glibc-package/trunk/debian/control	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/control	2005-10-14 02:34:05 UTC (rev 1039)
@@ -1,7 +1,7 @@
 Source: glibc
 Section: libs
 Priority: required
-Build-Depends: gettext (>= 0.10.37-1), make (>= 3.80-1), dpkg-dev (>= 1.13.5), debianutils (>= 1.13.1), tar (>= 1.13.11), bzip2, texinfo (>= 4.0), linux-kernel-headers (>= 2.5.999-test7-bk-9) [!hurd-i386], mig (>= 1.3-2) [hurd-i386], hurd-dev (>= 20020608-1) [hurd-i386], gnumach-dev [hurd-i386], texi2html, file, gcc-4.0 [!powerpc !m68k !hppa !hurd-i386], gcc-4.0 (>= 4.0.1-5) [hppa], gcc-3.4 (>= 3.4.4-6) [powerpc], gcc-3.4 [m68k], gcc-3.3 [hurd-i386], autoconf, binutils (>= 2.14.90.0.7-5), sed (>= 4.0.5-4), gawk, debhelper (>= 4.1.76)
+Build-Depends: gettext (>= 0.10.37-1), make (>= 3.80-1), dpkg-dev (>= 1.13.5), debianutils (>= 1.13.1), tar (>= 1.13.11), bzip2, texinfo (>= 4.0), linux-kernel-headers (>= 2.6.13+0rc3-2) [!hurd-i386], mig (>= 1.3-2) [hurd-i386], hurd-dev (>= 20020608-1) [hurd-i386], gnumach-dev [hurd-i386], texi2html, file, gcc-4.0 [!powerpc !m68k !hppa !hurd-i386], gcc-4.0 (>= 4.0.1-5) [hppa], gcc-3.4 (>= 3.4.4-6) [powerpc], gcc-3.4 [m68k], gcc-3.3 [hurd-i386], autoconf, binutils (>= 2.14.90.0.7-5), sed (>= 4.0.5-4), gawk, debhelper (>= 4.1.76), libc6-dev-amd64 [i386]
 Build-Depends-Indep: perl, po-debconf
 Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
 Uploaders: Ben Collins <bcollins@debian.org>, GOTO Masanori <gotom@debian.org>, Philip Blundell <pb@nexus.co.uk>, Jeff Bailey <jbailey@raspberryginger.com>, Daniel Jacobowitz <dan@debian.org>
@@ -380,6 +380,29 @@
  which use the standard C library. This is the 64bit version of the
  library, meant for zSeries systems.
 
+Package: libc6-amd64
+Architecture: i386
+Section: base
+Priority: required
+Depends: libc6 (= ${Source-Version}), lib64gcc1
+Conflicts: amd64-libs (<= 1.2)
+Description: GNU C Library: 64bit Shared libraries for AMD64
+ This package includes shared versions of the standard C library and the
+ standard math library, as well as many others. This is the 64bit version
+ of the library, meant for AMD64 systems.
+
+Package: libc6-dev-amd64
+Architecture: i386
+Section: libdevel
+Priority: standard
+Depends: libc6-amd64 (= ${Source-Version}), libc6-dev (= ${Source-Version})
+Replaces: amd64-libs-dev (<= 1.2)
+Provides: lib64c-dev
+Description: GNU C Library: 64bit Development Libraries for AMD64
+ Contains the symlinks and object files needed to compile and link programs
+ which use the standard C library. This is the 64bit version of the
+ library, meant for AMD64 systems.
+
 Package: libc6-ppc64
 Architecture: powerpc
 Section: base

Added: glibc-package/trunk/debian/control.in/amd64
===================================================================
--- glibc-package/trunk/debian/control.in/amd64	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/control.in/amd64	2005-10-14 02:34:05 UTC (rev 1039)
@@ -0,0 +1,23 @@
+Package: libc6-amd64
+Architecture: i386
+Section: base
+Priority: required
+Depends: libc6 (= ${Source-Version}), lib64gcc1
+Conflicts: amd64-libs (<= 1.2)
+Description: GNU C Library: 64bit Shared libraries for AMD64
+ This package includes shared versions of the standard C library and the
+ standard math library, as well as many others. This is the 64bit version
+ of the library, meant for AMD64 systems.
+
+Package: libc6-dev-amd64
+Architecture: i386
+Section: libdevel
+Priority: standard
+Depends: libc6-amd64 (= ${Source-Version}), libc6-dev (= ${Source-Version})
+Replaces: amd64-libs-dev (<= 1.2)
+Provides: lib64c-dev
+Description: GNU C Library: 64bit Development Libraries for AMD64
+ Contains the symlinks and object files needed to compile and link programs
+ which use the standard C library. This is the 64bit version of the
+ library, meant for AMD64 systems.
+

Modified: glibc-package/trunk/debian/control.in/main
===================================================================
--- glibc-package/trunk/debian/control.in/main	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/control.in/main	2005-10-14 02:34:05 UTC (rev 1039)
@@ -1,7 +1,7 @@
 Source: @glibc@
 Section: libs
 Priority: required
-Build-Depends: gettext (>= 0.10.37-1), make (>= 3.80-1), dpkg-dev (>= 1.13.5), debianutils (>= 1.13.1), tar (>= 1.13.11), bzip2, texinfo (>= 4.0), linux-kernel-headers (>= 2.5.999-test7-bk-9) [!hurd-i386], mig (>= 1.3-2) [hurd-i386], hurd-dev (>= 20020608-1) [hurd-i386], gnumach-dev [hurd-i386], texi2html, file, gcc-4.0 [!powerpc !m68k !hppa !hurd-i386], gcc-4.0 (>= 4.0.1-5) [hppa], gcc-3.4 (>= 3.4.4-6) [powerpc], gcc-3.4 [m68k], gcc-3.3 [hurd-i386], autoconf, binutils (>= 2.14.90.0.7-5), sed (>= 4.0.5-4), gawk, debhelper (>= 4.1.76)
+Build-Depends: gettext (>= 0.10.37-1), make (>= 3.80-1), dpkg-dev (>= 1.13.5), debianutils (>= 1.13.1), tar (>= 1.13.11), bzip2, texinfo (>= 4.0), linux-kernel-headers (>= 2.6.13+0rc3-2) [!hurd-i386], mig (>= 1.3-2) [hurd-i386], hurd-dev (>= 20020608-1) [hurd-i386], gnumach-dev [hurd-i386], texi2html, file, gcc-4.0 [!powerpc !m68k !hppa !hurd-i386], gcc-4.0 (>= 4.0.1-5) [hppa], gcc-3.4 (>= 3.4.4-6) [powerpc], gcc-3.4 [m68k], gcc-3.3 [hurd-i386], autoconf, binutils (>= 2.14.90.0.7-5), sed (>= 4.0.5-4), gawk, debhelper (>= 4.1.76), libc6-dev-amd64 [i386]
 Build-Depends-Indep: perl, po-debconf
 Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
 Uploaders: Ben Collins <bcollins@debian.org>, GOTO Masanori <gotom@debian.org>, Philip Blundell <pb@nexus.co.uk>, Jeff Bailey <jbailey@raspberryginger.com>, Daniel Jacobowitz <dan@debian.org>

Modified: glibc-package/trunk/debian/patches/00list
===================================================================
--- glibc-package/trunk/debian/patches/00list	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/patches/00list	2005-10-14 02:34:05 UTC (rev 1039)
@@ -85,3 +85,4 @@
 glibc235-localedata-locales
 glibc235-gcc4-hurd
 glibc235-alpha-divqu
+i386-amd64-biarch

Modified: glibc-package/trunk/debian/patches/amd64-lib.dpatch
===================================================================
--- glibc-package/trunk/debian/patches/amd64-lib.dpatch	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/patches/amd64-lib.dpatch	2005-10-14 02:34:05 UTC (rev 1039)
@@ -6,8 +6,12 @@
 # DP: Patch author: 
 # DP: Upstream status: Debian-Specific
 # DP: Status Details: 
-# DP: Date: 2004-06-07
+# DP: Date: 2004-06-07 (updated 2005-10-13)
 
+# This patch is for amd64 only; on i386 we want the 64-bit libraries
+# in /lib64.
+[ "$DEB_HOST_ARCH" != "amd64" ] && exit 0
+
 if [ $# -ne 2 ]; then
     echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
     exit 1

Added: glibc-package/trunk/debian/patches/i386-amd64-biarch.dpatch
===================================================================
--- glibc-package/trunk/debian/patches/i386-amd64-biarch.dpatch	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/patches/i386-amd64-biarch.dpatch	2005-10-14 02:34:05 UTC (rev 1039)
@@ -0,0 +1,31 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DP:' are a description of the patch.
+# DP: Description: Allow ldconfig to work on i386/x86-64 biarch systems
+# DP: Related bugs: 
+# DP: Dpatch author: Daniel Jacobowitz
+# DP: Patch author: Daniel Jacobowitz
+# DP: Upstream status: Debian-Specific
+# DP: Status Details: based on Ubuntu change by Jeff Bailey
+# DP: Date: 2005-10-13
+
+PATCHLEVEL=1
+
+if [ $# -ne 2 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch) patch -d "$2" -f --no-backup-if-mismatch -p$PATCHLEVEL < $0;;
+    -unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p$PATCHLEVEL < $0;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1
+esac
+exit 0
+
+# append the patch here and adjust the -p? flag in the patch calls.
+--- /dev/null	2005-07-29 18:11:21.000000000 +0000
++++ glibc-2.3.5/sysdeps/unix/sysv/linux/i386/dl-cache.h	2005-08-05 14:15:39.162794976 +0000
+@@ -0,0 +1,1 @@
++#include <sysdeps/unix/sysv/linux/sparc/dl-cache.h>


Property changes on: glibc-package/trunk/debian/patches/i386-amd64-biarch.dpatch
___________________________________________________________________
Name: svn:executable
   + *

Modified: glibc-package/trunk/debian/rules.d/control.mk
===================================================================
--- glibc-package/trunk/debian/rules.d/control.mk	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/rules.d/control.mk	2005-10-14 02:34:05 UTC (rev 1039)
@@ -1,4 +1,4 @@
-control_deps := $(addprefix debian/control.in/, libc6 libc6.1 libc0.3 libc1 sparc64 s390x ppc64 opt)
+control_deps := $(addprefix debian/control.in/, libc6 libc6.1 libc0.3 libc1 sparc64 s390x ppc64 opt amd64)
 
 threads_archs := alpha amd64 arm i386 m68k mips mipsel powerpc sparc ia64 hppa s390 sh3 sh4 sh3eb sh4eb freebsd-i386
 
@@ -24,6 +24,7 @@
 	cat debian/control.in/libc1		>> $@T
 	cat debian/control.in/sparc64		>> $@T
 	cat debian/control.in/s390x		>> $@T
+	cat debian/control.in/amd64		>> $@T
 	cat debian/control.in/ppc64		>> $@T
 	cat debian/control.in/opt		>> $@T
 	cat debian/control.in/libnss-dns-udeb	>> $@T

Modified: glibc-package/trunk/debian/sysdeps/i386.mk
===================================================================
--- glibc-package/trunk/debian/sysdeps/i386.mk	2005-10-13 20:02:19 UTC (rev 1038)
+++ glibc-package/trunk/debian/sysdeps/i386.mk	2005-10-14 02:34:05 UTC (rev 1039)
@@ -20,3 +20,28 @@
 i686_extra_config_options = $(extra_config_options) --disable-profile --with-tls --with-__thread
 
 libc_extra_config_options = $(extra_config_options) --with-tls --without-__thread
+
+# build 64-bit (amd64) alternative library
+GLIBC_PASSES += amd64
+DEB_ARCH_REGULAR_PACKAGES += libc6-amd64 libc6-dev-amd64
+libc6-amd64_shlib_dep = libc6-amd64 (>= $(shlib_dep_ver))
+
+amd64_configure_target = x86_64-linux
+# __x86_64__ is defined here because Makeconfig uses -undef and the
+# /usr/include/asm wrappers need that symbol.
+amd64_CC = $(CC) -m64 -D__x86_64__
+amd64_add-ons = nptl $(add-ons)
+amd64_extra_cflags = -O3 -g1
+amd64_extra_config_options = $(extra_config_options) --disable-profile \
+	--includedir=/usr/include/x86_64-linux-gnu
+amd64_LIBDIR = 64
+amd64_MIN_KERNEL_SUPPORTED = 2.6.0
+
+define amd64_extra_install
+cp debian/tmp-amd64/usr/bin/ldd debian/tmp-libc/usr/bin
+endef
+
+define libc6-dev-amd64_extra_pkg_install
+dh_install -plibc6-dev-amd64 debian/tmp-amd64/usr/include/x86_64-linux-gnu \
+	usr/include
+endef



Reply to: