Package: binutils Version: 2.16.1-2 Severity: important Tags: patch The current binutils can't compile the experimental glibc 2.3.5-2 with unstable gcc-3.4 (3.4.4-5) or unstable gcc-4.0 (4.0.1-2) on m68k:
make[3]: Entering directory `/home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/build-tree/glibc-2.3.5/intl' gcc-4.0 localealias.c -c -std=gnu99 -O2 -Wall -Winline -Wstrict-prototypes -Wwrite-strings -fstrict-aliasing -g -pipe -I../include -I. -I/home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/build-tree/m68k-libc/intl -I.. -I../libio -I/home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/build-tree/m68k-libc -I../sysdeps/m68k/elf -I../linuxthreads/sysdeps/unix/sysv/linux/m68k -I../linuxthreads/sysdeps/unix/sysv/linux -I../linuxthreads/sysdeps/pthread -I../sysdeps/pthread -I../linuxthreads/sysdeps/unix/sysv -I../linuxthreads/sysdeps/unix -I../linuxthreads/sysdeps/m68k -I../sysdeps/unix/sysv/linux/m68k -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/m68k/m68020 -I../sysdeps/m68k/fpu -I../sysdeps/m68k -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/ldbl-96 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -nostdinc -isystem /usr/lib/gcc/m68k-linux-gnu/4.0.1/include -isystem /home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/debian/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h -D'LOCALEDIR="/usr/share/locale"' -D'LOCALE_ALIAS_PATH="/usr/share/locale"' -o /home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/build-tree/m68k-libc/intl/localealias.o -MD -MP -MF /home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/build-tree/m68k-libc/intl/localealias.o.dt -MT /home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/build-tree/m68k-libc/intl/localealias.o {standard input}: Assembler messages: {standard input}:878: Error: junk at end of line, first unrecognized character is `,' make[3]: *** [/home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/build-tree/m68k-libc/intl/localealias.o] Error 1 make[3]: Leaving directory `/home/gotom/glibc/glibc_2.3.5-2.build4.0714.1/glibc-2.3.5/build-tree/glibc-2.3.5/intl' It worked with gcc-3.3, but not gcc-3.4 or gcc-4.0. The generated assembler code showed: .LFE66: .size _nl_expand_alias, .-_nl_expand_alias .local maxmap .comm maxmap,4,2 .local nmap (<= line 878) .comm nmap,4,2 .section __libc_freeres_ptrs #,"aw",@progbits (<= the actual problem) .align 2 .type map, @object .size map, 4 But the actual problem is line 881 has an invalid character `,' after # comment. This was discussed at the following threads: http://gcc.gnu.org/ml/gcc/2004-04/msg01251.html http://sources.redhat.com/ml/binutils/2004-04/msg00646.html I attached the patch for binutils 2.16.1-2 which fixed to build glibc on m68k again. Regards, -- gotom --- /dev/null 2005-04-09 20:28:28.000000000 +0900 +++ binutils-2.16.1/debian/patches/130_m68k_glibc.dpatch 2005-07-21 04:10:12.000000000 +0900 @@ -0,0 +1,60 @@ +#!/bin/sh -e +## 130_m68k_glibc.dpatch by GOTO Masanori <[EMAIL PROTECTED]> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: gas ignores unknown text after line comment character. + +if [ $# -ne 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in + -patch) patch $patch_opts -p0 < $0;; + -unpatch) patch $patch_opts -p0 -R < $0;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1;; +esac + +exit 0 + [EMAIL PROTECTED]@ +http://kegel.com/crosstool/crosstool-0.37/patches/binutils-2.15.91.0.2/binutils-skip-comments.patch + +2004-04-23 Andreas Schwab <[EMAIL PROTECTED]> + + * read.c (read_a_source_file): Ignore unknown text after line + comment character. Fix misleading comment. + +--- gas/read.c.org 2005-07-15 17:03:42.000000000 +0900 ++++ gas/read.c 2005-07-15 17:38:01.000000000 +0900 +@@ -975,10 +975,14 @@ read_a_source_file (char *name) + unsigned int new_length; + char *tmp_buf = 0; + +- bump_line_counters (); + s = input_line_pointer; + if (strncmp (s, "APP\n", 4)) +- continue; /* We ignore it */ ++ { ++ /* We ignore it */ ++ ignore_rest_of_line (); ++ continue; ++ } ++ bump_line_counters (); + s += 4; + + sb_new (&sbuf); +@@ -1077,7 +1081,7 @@ read_a_source_file (char *name) + continue; + #endif + input_line_pointer--; +- /* Report unknown char as ignored. */ ++ /* Report unknown char as error. */ + demand_empty_rest_of_line (); + } + --- binutils-2.16.1/debian/patches/00list.org 2005-07-21 04:05:41.000000000 +0900 +++ binutils-2.16.1/debian/patches/00list 2005-07-15 17:48:54.000000000 +0900 @@ -7,3 +7,4 @@ 117_mips_symbolic_link 118_arm_pass_all 120_mips_xgot_multigot_workaround +130_m68k_glibc -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]