r1227 - in glibc-package/trunk/debian: . control.in rules.d sysdeps
Author: aurel32
Date: 2006-02-23 16:18:45 +0000 (Thu, 23 Feb 2006)
New Revision: 1227
Added:
glibc-package/trunk/debian/control.in/i386
Modified:
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/control.in/main
glibc-package/trunk/debian/rules.d/control.mk
glibc-package/trunk/debian/rules.d/debhelper.mk
glibc-package/trunk/debian/sysdeps/amd64.mk
Log:
* Build a 32-bit libc on amd64, using the new multiarch directories.
(Closes: #274367)
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2006-02-23 11:33:46 UTC (rev 1226)
+++ glibc-package/trunk/debian/changelog 2006-02-23 16:18:45 UTC (rev 1227)
@@ -107,6 +107,8 @@
(Closes: #352636)
* Add hppa-inlining.diff (Increase the maximal overall growth of the
compilation unit caused by inlining for dl-reloc.c on hppa).
+ * Build a 32-bit libc on amd64, using the new multiarch directories.
+ (Closes: #274367)
-- Clint Adams <schizo@debian.org> Sun, 12 Feb 2006 11:04:38 -0500
Added: glibc-package/trunk/debian/control.in/i386
===================================================================
--- glibc-package/trunk/debian/control.in/i386 2006-02-23 11:33:46 UTC (rev 1226)
+++ glibc-package/trunk/debian/control.in/i386 2006-02-23 16:18:45 UTC (rev 1227)
@@ -0,0 +1,22 @@
+Package: libc6-i386
+Architecture: amd64
+Section: libs
+Priority: standard
+Depends: libc6 (= ${Source-Version})
+Conflicts: ia32-libs (<= 1.5)
+Description: GNU C Library: 32bit 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 32bit version of the library, meant for AMD64 systems.
+
+Package: libc6-dev-i386
+Architecture: amd64
+Section: libdevel
+Priority: optional
+Provides: lib32c-dev
+Depends: libc6-i386 (= ${Source-Version}), libc6-dev (= ${Source-Version}), lib32gcc1
+Description: GNU C Library: 32bit 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 32bit version of the
+ library, meant for AMD64 systems.
+
Modified: glibc-package/trunk/debian/control.in/main
===================================================================
--- glibc-package/trunk/debian/control.in/main 2006-02-23 11:33:46 UTC (rev 1226)
+++ glibc-package/trunk/debian/control.in/main 2006-02-23 16:18:45 UTC (rev 1227)
@@ -8,7 +8,7 @@
kfreebsd-kernel-headers [kfreebsd-i386],
gcc-4.0 [!m68k], gcc-3.4 [m68k], binutils (>= 2.16.1cvs20051109-1),
autoconf, sed (>= 4.0.5-4), gawk, debhelper (>= 4.1.76),
- libc6-dev-amd64 [i386], libc6-dev-ppc64 [powerpc],
+ libc6-dev-amd64 [i386], libc6-dev-ppc64 [powerpc], libc6-dev-i386 [amd64] | ia32-libs-dev [amd64] (<= 1.5),
quilt
Build-Depends-Indep: perl, po-debconf
Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
Modified: glibc-package/trunk/debian/rules.d/control.mk
===================================================================
--- glibc-package/trunk/debian/rules.d/control.mk 2006-02-23 11:33:46 UTC (rev 1226)
+++ glibc-package/trunk/debian/rules.d/control.mk 2006-02-23 16:18:45 UTC (rev 1227)
@@ -23,6 +23,7 @@
cat debian/control.in/libc6.1 >> $@T
cat debian/control.in/libc0.3 >> $@T
cat debian/control.in/libc0.1 >> $@T
+ cat debian/control.in/i386 >> $@T
cat debian/control.in/sparc64 >> $@T
cat debian/control.in/s390x >> $@T
cat debian/control.in/amd64 >> $@T
Modified: glibc-package/trunk/debian/rules.d/debhelper.mk
===================================================================
--- glibc-package/trunk/debian/rules.d/debhelper.mk 2006-02-23 11:33:46 UTC (rev 1226)
+++ glibc-package/trunk/debian/rules.d/debhelper.mk 2006-02-23 16:18:45 UTC (rev 1227)
@@ -188,16 +188,17 @@
esac; \
done
- # Hack: special-case passes whose destdir is 64 (i.e. /lib64)
- # to use a different install template, which includes more
- # libraries. Also generate a -dev. Non-64 libraries get scripts
+ # Hack: special-case passes whose destdir is 32, 64 or a multiarch
+ # directory to use a different install template, which includes more
+ # libraries. Also generate a -dev. Other libraries get scripts
# to temporarily disable hwcap. This needs some cleaning up.
set -- $(OPT_DESTDIRS); \
for x in $(OPT_PASSES); do \
destdir=$$1; \
shift; \
z=debian/$(libc)-$$x.install; \
- if test $$destdir = 64; then \
+ case $$destdir in \
+ 32 | 64 | /*-*-gnu) \
cp debian/debhelper.in/libc-alt.install $$z; \
zd=debian/$(libc)-dev-$$x.install; \
cp debian/debhelper.in/libc-alt-dev.install $$zd; \
@@ -206,7 +207,8 @@
sed -e "s#LIBC#$(libc)#" -i $$z; \
sed -e "s#DESTLIBDIR#$$destdir#" -i $$zd; \
sed -e "s/^#.*//" -i $$zd; \
- else \
+ ;; \
+ *) \
cp debian/debhelper.in/libc-otherbuild.install $$z; \
cp debian/debhelper.in/libc-otherbuild.preinst debian/$(libc)-$$x.preinst ; \
cp debian/debhelper.in/libc-otherbuild.postinst debian/$(libc)-$$x.postinst ; \
@@ -216,7 +218,8 @@
sed -e "s#OPT#$(libc)-$$x#" -i debian/$(libc)-$$x.postrm; \
sed -e "s#CURRENT_VER#$(DEB_VERSION)#" -i debian/$(libc)-$$x.postinst; \
sed -e "s#CURRENT_VER#$(DEB_VERSION)#" -i debian/$(libc)-$$x.postrm; \
- fi; \
+ ;; \
+ esac; \
sed -e "s#TMPDIR#debian/tmp-$$x#" -i $$z; \
sed -e "s#DEB_SRCDIR#$(DEB_SRCDIR)#" -i $$z; \
sed -e "s#DESTLIBDIR#$$destdir#" -i $$z; \
Modified: glibc-package/trunk/debian/sysdeps/amd64.mk
===================================================================
--- glibc-package/trunk/debian/sysdeps/amd64.mk 2006-02-23 11:33:46 UTC (rev 1226)
+++ glibc-package/trunk/debian/sysdeps/amd64.mk 2006-02-23 16:18:45 UTC (rev 1227)
@@ -12,3 +12,29 @@
ln -sf lib debian/$(curpass)/usr/lib64
endef
+# build 32-bit (i386) alternative library
+GLIBC_PASSES += i386
+DEB_ARCH_REGULAR_PACKAGES += libc6-i386 libc6-dev-i386
+libc6-i386_shlib_dep = libc6-i386 (>= $(shlib_dep_ver))
+
+i386_configure_target = i486-linux
+i386_CC = $(CC) -m32
+i386_add-ons = nptl $(add-ons)
+i386_extra_cflags = -march=pentium4 -g1 -O3
+i386_extra_config_options = $(extra_config_options) --includedir=/usr/include/i486-linux-gnu
+i386_rtlddir = /lib
+i386_slibdir = /lib/i486-linux-gnu
+i386_libdir = /usr/lib/i486-linux-gnu
+i386_LIBDIR = /i486-linux-gnu
+i386_MIN_KERNEL_SUPPORTED = 2.6.0
+
+define libc6-dev-i386_extra_pkg_install
+mkdir -p debian/libc6-dev-i386/usr/include
+cp -af debian/tmp-i386/usr/include/i486-linux-gnu \
+ debian/libc6-dev-i386/usr/include
+endef
+
+define libc6-i386_extra_pkg_install
+mkdir -p debian/libc6-i386/lib
+ln -sf /lib/i486-linux-gnu/ld-linux.so.2 debian/libc6-i386/lib
+endef
Reply to: