Hi folks

The attached patch adds powerpc64 support to the snapshot glibc. The
powerpc64 lib is tls, as we do not support 2.4 kernels. 32bit nptl is
disabled, it only segfaults.

It always uses gcc-3.4 and workarounds #260710, which hits the check
target of at least any nptl lib.

I tried it with 4.0, but it misscompiles several parts of the powerpc64
lib.
 
Bastian

-- 
All your people must learn before you can reach for the stars.
                -- Kirk, "The Gamesters of Triskelion", stardate 3259.2
=== debian/control.in/main
==================================================================
--- debian/control.in/main   (/glibc/debian/current)   (revision 45)
+++ debian/control.in/main   (/glibc/trunk)   (revision 45)
@@ -1,7 +1,7 @@
 Source: @glibc@
 Section: libs
 Priority: required
-Build-Depends: gettext (>= 0.10.37-1), make (>= 3.80-1), dpkg-dev (>= 
1.4.1.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-3.3 [!ia64] | gcc-3.4 [!ia64], gcc-3.3 (>= 1:3.3.5-5) 
[ia64] | gcc-3.4 (>= 3.4.3-2) [ia64], 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.4.1.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-3.4 [!ia64], gcc-3.4 (>= 3.4.3-2) [ia64], autoconf, 
binutils (>= 2.14.90.0.7-5), sed (>= 4.0.5-4), gawk, debhelper (>= 4.1.76)
 Build-Depends-Indep: perl, po-debconf
 Maintainer: GNU Libc Maintainers <[email protected]>
 Uploaders: Ben Collins <[EMAIL PROTECTED]>, GOTO Masanori <[EMAIL PROTECTED]>, 
Philip Blundell <[EMAIL PROTECTED]>, Jeff Bailey <[EMAIL PROTECTED]>, Daniel 
Jacobowitz <[EMAIL PROTECTED]>
=== debian/control.in/powerpc64
==================================================================
--- debian/control.in/powerpc64   (/glibc/debian/current)   (revision 45)
+++ debian/control.in/powerpc64   (/glibc/trunk)   (revision 45)
@@ -0,0 +1,21 @@
+
+Package: libc6-powerpc64
+Architecture: powerpc
+Section: base
+Priority: required
+Depends: libc6 (= ${Source-Version})
+Description: GNU C Library: 64bit Shared libraries for PowerPC
+ 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 G5, Power 5 and other systems.
+
+Package: libc6-dev-powerpc64
+Architecture: powerpc
+Section: libdevel
+Priority: standard
+Depends: libc6-powerpc64 (= ${Source-Version}), libc6-dev (= ${Source-Version})
+Description: GNU C Library: 64bit Development Libraries for PowerPC
+ 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 G5, Power 5 and other systems.
+
=== debian/rules
==================================================================
--- debian/rules   (/glibc/debian/current)   (revision 45)
+++ debian/rules   (/glibc/trunk)   (revision 45)
@@ -81,7 +81,7 @@
 sbindir=$(prefix)/sbin
 libexecdir=$(prefix)/lib
 
-BUILD_CC = gcc-3.3
+BUILD_CC = gcc-3.4
 
 # Set CC for cross-compiling
 ifneq ($(DEB_HOST_ARCH),$(DEB_BUILD_ARCH))
=== debian/sysdeps/linux.mk
==================================================================
--- debian/sysdeps/linux.mk   (/glibc/debian/current)   (revision 45)
+++ debian/sysdeps/linux.mk   (/glibc/trunk)   (revision 45)
@@ -30,7 +30,8 @@
 # NPTL Config
 nptl_add-ons = nptl $(add-ons)
 nptl_extra_config_options = $(extra_config_options) --with-tls --with-__thread 
--disable-profile
-nptl_extra_cflags = -g1 -O3
+# -g0 is needed to workaround #260710
+nptl_extra_cflags = -g0 -O3
 nptl_MIN_KERNEL_SUPPORTED = 2.6.0
 nptl_LIBDIR = /tls
 
=== debian/sysdeps/powerpc.mk
==================================================================
--- debian/sysdeps/powerpc.mk   (/glibc/debian/current)   (revision 45)
+++ debian/sysdeps/powerpc.mk   (/glibc/trunk)   (revision 45)
@@ -1,13 +1,12 @@
-#GLIBC_PASSES += nptl powerpc64
-#DEB_ARCH_REGULAR_PACKAGES += libc6-powerpc64 libc6-dev-powerpc64
+GLIBC_PASSES += powerpc64 #nptl
+DEB_ARCH_REGULAR_PACKAGES += libc6-powerpc64 libc6-dev-powerpc64
 
-#powerpc64_MIN_KERNEL_SUPPORTED = 2.4.1
-#powerpc64_configure_target = powerpc64-linux
-#powerpc64_CC = $(CC) -m64
-#powerpc64_add-ons = linuxthreads $(add-ons)
-#libc6-powerpc64_shlib_dep = libc6-powerpc64 (>= $(shlib_dep_ver))
-#powerpc64_extra_cflags = -g1 -O3
-#powerpc64_LIBDIR = 64
-#powerpc64_extra_config_options := $(extra_config_options) --disable-profile
+powerpc64_MIN_KERNEL_SUPPORTED = 2.6.0
+powerpc64_configure_target = powerpc64-linux
+powerpc64_CC = $(CC) -m64
+powerpc64_add-ons = nptl $(add-ons)
+libc6-powerpc64_shlib_dep = libc6-powerpc64 (>= $(shlib_dep_ver))
+powerpc64_extra_cflags = -g0 -O3
+powerpc64_LIBDIR = 64
+powerpc64_extra_config_options := $(extra_config_options) --with-tls 
--with-__thread --disable-profile
 
-
=== debian/rules.d/control.mk
==================================================================
--- debian/rules.d/control.mk   (/glibc/debian/current)   (revision 45)
+++ debian/rules.d/control.mk   (/glibc/trunk)   (revision 45)
@@ -1,4 +1,4 @@
-control_deps := $(addprefix debian/control.in/, libc6 libc6.1 libc0.3 libc1 
sparc64 s390x opt)
+control_deps := $(addprefix debian/control.in/, libc6 libc6.1 libc0.3 libc1 
powerpc64 sparc64 s390x opt)
 
 threads_archs := alpha amd64 arm i386 m68k mips mipsel powerpc sparc ia64 hppa 
s390 sh3 sh4 sh3eb sh4eb freebsd-i386
 
@@ -22,6 +22,7 @@
        cat debian/control.in/libc6.1           >> [EMAIL PROTECTED]
        cat debian/control.in/libc0.3           >> [EMAIL PROTECTED]
        cat debian/control.in/libc1             >> [EMAIL PROTECTED]
+       cat debian/control.in/powerpc64         >> [EMAIL PROTECTED]
        cat debian/control.in/sparc64           >> [EMAIL PROTECTED]
        cat debian/control.in/s390x             >> [EMAIL PROTECTED]
        cat debian/control.in/opt               >> [EMAIL PROTECTED]

Attachment: signature.asc
Description: Digital signature

Reply via email to