r1590 - in glibc-package: branches/glibc-2.4/debian branches/glibc-2.4/debian/control.in branches/glibc-2.4/debian/patches branches/glibc-2.4/debian/patches/alpha branches/glibc-2.4/debian/sysdeps trunk/debian trunk/debian/patches trunk/debian/patches/alpha
Author: aurel32
Date: 2006-05-30 20:17:07 +0000 (Tue, 30 May 2006)
New Revision: 1590
Added:
glibc-package/branches/glibc-2.4/debian/patches/alpha/local-gcc4.1.diff
glibc-package/trunk/debian/patches/alpha/local-gcc4.1.diff
Modified:
glibc-package/branches/glibc-2.4/debian/changelog
glibc-package/branches/glibc-2.4/debian/control
glibc-package/branches/glibc-2.4/debian/control.in/main
glibc-package/branches/glibc-2.4/debian/patches/series
glibc-package/branches/glibc-2.4/debian/sysdeps/alpha.mk
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/patches/series
Log:
* Add patches/alpha/local-gcc4.1.diff (fix build with gcc-4.1) from
Falk Hueffner.
Modified: glibc-package/branches/glibc-2.4/debian/changelog
===================================================================
--- glibc-package/branches/glibc-2.4/debian/changelog 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/branches/glibc-2.4/debian/changelog 2006-05-30 20:17:07 UTC (rev 1590)
@@ -108,7 +108,6 @@
* Drop any/local-ldconfig-multiarch.diff, use /etc/ld.so.conf.d/ to
configure multiarch libraries.
* debian/sysdeps/alpha.mk: do an NPTL pass.
- * debian/sysdeps/alpha.mk: build with gcc-4.0.
-- Aurelien Jarno <aurel32@debian.org> Sun, 28 May 2006 03:28:14 +0200
@@ -116,6 +115,8 @@
* Don't do a udeb pass, it is still too buggy. (Closes: #369492)
* debian/control.in/main: build-depends on libc6-dev-sparc64 on sparc.
+ * Add patches/alpha/local-gcc4.1.diff (fix build with gcc-4.1) from
+ Falk Hueffner.
-- Aurelien Jarno <aurel32@debian.org> Tue, 30 May 2006 06:53:29 +0200
Modified: glibc-package/branches/glibc-2.4/debian/control
===================================================================
--- glibc-package/branches/glibc-2.4/debian/control 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/branches/glibc-2.4/debian/control 2006-05-30 20:17:07 UTC (rev 1590)
@@ -5,7 +5,7 @@
linux-kernel-headers (>= 2.6.13+0rc3-2) [!hurd-i386 !kfreebsd-i386 !kfreebsd-amd64],
mig (>= 1.3-2) [hurd-i386], hurd-dev (>= 20020608-1) [hurd-i386], gnumach-dev [hurd-i386],
kfreebsd-kernel-headers [kfreebsd-i386 kfreebsd-amd64],
- gcc-4.0 [alpha], gcc-4.1 [!alpha], binutils (>= 2.16.1cvs20051109-1),
+ gcc-4.1, 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-i386 [amd64], libc6-dev-powerpc [ppc64], libc6-dev-sparc64 [sparc],
quilt
Modified: glibc-package/branches/glibc-2.4/debian/control.in/main
===================================================================
--- glibc-package/branches/glibc-2.4/debian/control.in/main 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/branches/glibc-2.4/debian/control.in/main 2006-05-30 20:17:07 UTC (rev 1590)
@@ -5,7 +5,7 @@
linux-kernel-headers (>= 2.6.13+0rc3-2) [!hurd-i386 !kfreebsd-i386 !kfreebsd-amd64],
mig (>= 1.3-2) [hurd-i386], hurd-dev (>= 20020608-1) [hurd-i386], gnumach-dev [hurd-i386],
kfreebsd-kernel-headers [kfreebsd-i386 kfreebsd-amd64],
- gcc-4.0 [alpha], gcc-4.1 [!alpha], binutils (>= 2.16.1cvs20051109-1),
+ gcc-4.1, 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-i386 [amd64], libc6-dev-powerpc [ppc64], libc6-dev-sparc64 [sparc],
quilt
Added: glibc-package/branches/glibc-2.4/debian/patches/alpha/local-gcc4.1.diff
===================================================================
--- glibc-package/branches/glibc-2.4/debian/patches/alpha/local-gcc4.1.diff 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/branches/glibc-2.4/debian/patches/alpha/local-gcc4.1.diff 2006-05-30 20:17:07 UTC (rev 1590)
@@ -0,0 +1,51 @@
+2006-05-30 Falk Hueffner <falk@debian.org>
+
+ * sysdeps/unix/sysv/linux/alpha/ioperm.c: force the architecture
+ to ev6 in assembly code.
+
+{standard input}: Assembler messages:
+{standard input}:341: Error: macro requires $at register while noat in effect
+{standard input}:374: Error: macro requires $at register while noat in effect
+{standard input}:438: Error: macro requires $at register while noat in effect
+{standard input}:471: Error: macro requires $at register while noat in effect
+make[3]: *** [/tmp/buildd/glibc-2.3.6/build-tree/alpha-libc/misc/ioperm.o] Error 1
+
+Hrm. gcc puts .arch ev4 into the .s, and this overrides -mev6 for as.
+I cannot really think of anything better than
+
+--- sysdeps/unix/sysv/linux/alpha/ioperm.c 2001-07-06 06:56:13.000000000 +0200
++++ sysdeps/unix/sysv/linux/alpha/ioperm.c 2006-05-30 21:22:54.000000000 +0200
+@@ -173,13 +173,13 @@
+ static inline void
+ stb_mb(unsigned char val, unsigned long addr)
+ {
+- __asm__("stb %1,%0; mb" : "=m"(*(vucp)addr) : "r"(val));
++ __asm__(".arch ev6; stb %1,%0; mb" : "=m"(*(vucp)addr) : "r"(val));
+ }
+
+ static inline void
+ stw_mb(unsigned short val, unsigned long addr)
+ {
+- __asm__("stw %1,%0; mb" : "=m"(*(vusp)addr) : "r"(val));
++ __asm__("".arch ev6; stw %1,%0; mb" : "=m"(*(vusp)addr) : "r"(val));
+ }
+
+ static inline void
+@@ -351,7 +351,7 @@
+ unsigned long int addr = dense_port_to_cpu_addr (port);
+ unsigned char r;
+
+- __asm__ ("ldbu %0,%1" : "=r"(r) : "m"(*(vucp)addr));
++ __asm__ (".arch ev6; ldbu %0,%1" : "=r"(r) : "m"(*(vucp)addr));
+ return r;
+ }
+
+@@ -361,7 +361,7 @@
+ unsigned long int addr = dense_port_to_cpu_addr (port);
+ unsigned short r;
+
+- __asm__ ("ldwu %0,%1" : "=r"(r) : "m"(*(vusp)addr));
++ __asm__ (".arch ev6; ldwu %0,%1" : "=r"(r) : "m"(*(vusp)addr));
+ return r;
+ }
+
Modified: glibc-package/branches/glibc-2.4/debian/patches/series
===================================================================
--- glibc-package/branches/glibc-2.4/debian/patches/series 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/branches/glibc-2.4/debian/patches/series 2006-05-30 20:17:07 UTC (rev 1590)
@@ -43,6 +43,7 @@
localedata/local-all-no-archive.diff
#alpha/submitted-pic.diff -p0 # g: suspended
+alpha/local-gcc4.1.diff -p0
alpha/submitted-xstat.diff -p0
amd64/local-biarch.diff -p1
Modified: glibc-package/branches/glibc-2.4/debian/sysdeps/alpha.mk
===================================================================
--- glibc-package/branches/glibc-2.4/debian/sysdeps/alpha.mk 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/branches/glibc-2.4/debian/sysdeps/alpha.mk 2006-05-30 20:17:07 UTC (rev 1590)
@@ -4,10 +4,6 @@
# even if TIMEOUTSCALE is set - SIGALRM from the program is just ignored.
RUN_TESTSUITE = no
-# work around to build on alpha, due to gcc-4.1 generating bad instructions.
-CC = gcc-4.0
-BUILD_CC = gcc-4.0
-
# disabled for static linked pthread programs.
libc_extra_config_options = $(extra_config_options) --without-__thread --disable-sanity-checks
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/trunk/debian/changelog 2006-05-30 20:17:07 UTC (rev 1590)
@@ -2,6 +2,8 @@
* Don't do a udeb pass, it is still too buggy. (Closes: #369492)
* debian/control.in/main: build-depends on libc6-dev-sparc64 on sparc.
+ * Add patches/alpha/local-gcc4.1.diff (fix build with gcc-4.1) from
+ Falk Hueffner.
-- Aurelien Jarno <aurel32@debian.org> Tue, 30 May 2006 06:53:29 +0200
Added: glibc-package/trunk/debian/patches/alpha/local-gcc4.1.diff
===================================================================
--- glibc-package/trunk/debian/patches/alpha/local-gcc4.1.diff 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/trunk/debian/patches/alpha/local-gcc4.1.diff 2006-05-30 20:17:07 UTC (rev 1590)
@@ -0,0 +1,51 @@
+2006-05-30 Falk Hueffner <falk@debian.org>
+
+ * sysdeps/unix/sysv/linux/alpha/ioperm.c: force the architecture
+ to ev6 in assembly code.
+
+{standard input}: Assembler messages:
+{standard input}:341: Error: macro requires $at register while noat in effect
+{standard input}:374: Error: macro requires $at register while noat in effect
+{standard input}:438: Error: macro requires $at register while noat in effect
+{standard input}:471: Error: macro requires $at register while noat in effect
+make[3]: *** [/tmp/buildd/glibc-2.3.6/build-tree/alpha-libc/misc/ioperm.o] Error 1
+
+Hrm. gcc puts .arch ev4 into the .s, and this overrides -mev6 for as.
+I cannot really think of anything better than
+
+--- sysdeps/unix/sysv/linux/alpha/ioperm.c 2001-07-06 06:56:13.000000000 +0200
++++ sysdeps/unix/sysv/linux/alpha/ioperm.c 2006-05-30 21:22:54.000000000 +0200
+@@ -173,13 +173,13 @@
+ static inline void
+ stb_mb(unsigned char val, unsigned long addr)
+ {
+- __asm__("stb %1,%0; mb" : "=m"(*(vucp)addr) : "r"(val));
++ __asm__(".arch ev6; stb %1,%0; mb" : "=m"(*(vucp)addr) : "r"(val));
+ }
+
+ static inline void
+ stw_mb(unsigned short val, unsigned long addr)
+ {
+- __asm__("stw %1,%0; mb" : "=m"(*(vusp)addr) : "r"(val));
++ __asm__("".arch ev6; stw %1,%0; mb" : "=m"(*(vusp)addr) : "r"(val));
+ }
+
+ static inline void
+@@ -351,7 +351,7 @@
+ unsigned long int addr = dense_port_to_cpu_addr (port);
+ unsigned char r;
+
+- __asm__ ("ldbu %0,%1" : "=r"(r) : "m"(*(vucp)addr));
++ __asm__ (".arch ev6; ldbu %0,%1" : "=r"(r) : "m"(*(vucp)addr));
+ return r;
+ }
+
+@@ -361,7 +361,7 @@
+ unsigned long int addr = dense_port_to_cpu_addr (port);
+ unsigned short r;
+
+- __asm__ ("ldwu %0,%1" : "=r"(r) : "m"(*(vusp)addr));
++ __asm__ (".arch ev6; ldwu %0,%1" : "=r"(r) : "m"(*(vusp)addr));
+ return r;
+ }
+
Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series 2006-05-30 18:16:14 UTC (rev 1589)
+++ glibc-package/trunk/debian/patches/series 2006-05-30 20:17:07 UTC (rev 1590)
@@ -48,6 +48,7 @@
#alpha/submitted-pic.diff -p0 # g: suspended
alpha/cvs-gcc4-profile.diff -p0
+alpha/local-gcc4.1.diff -p0
alpha/submitted-xstat.diff -p0
amd64/local-biarch.diff -p1
Reply to: