This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

sparc32/sysdep.h and gcc-3.1


Hi,

When building glibc-2.2.5 for sparc with gcc-3.1 I get a build error

sparc-linux-gcc ../sysdeps/sparc/sparc32/__longjmp.S -c  -I../include -I. -I/backup/cross-build/build-glibc-sparc/setjmp -I.. -I../libio  -I/backup/cross-build/build-glibc-sparc -I../sysdeps/sparc/sparc32/elf -I../linuxthreads/sysdeps/unix/sysv/linux/sparc -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/sparc/sparc32 -I../linuxthreads/sysdeps/sparc -I../sysdeps/unix/sysv/linux/sparc/sparc32 -I../sysdeps/unix/sysv/linux/sparc -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/sparc -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/sparc/sparc32/fpu -I../sysdeps/sparc/sparc32 -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/sparc/sparc32/soft-fp -I../sysdeps/sparc/fpu -I../sysdeps/sparc -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic  -nostdinc -isystem /cross/sparc-linux-tools/lib/gcc-lib/sparc-linux/3.1/include -isystem /cross/sparc-linux/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h     -DASSEMBLER -D__ASSEMBLY__  -o /backup/cross-build/build-glibc-sparc/setjmp/__longjmp.o
../sysdeps/sparc/sparc32/__longjmp.S: Assembler messages:
../sysdeps/sparc/sparc32/__longjmp.S:41: Error: Illegal operands
../sysdeps/sparc/sparc32/__longjmp.S:43: Error: Illegal operands
../sysdeps/sparc/sparc32/__longjmp.S:48: Error: unknown pseudo-op: `.'
../sysdeps/sparc/sparc32/__longjmp.S:50: Error: Illegal operands
../sysdeps/sparc/sparc32/__longjmp.S:52: Error: Illegal operands
../sysdeps/sparc/sparc32/__longjmp.S:55: Error: unknown pseudo-op: `.'
../sysdeps/sparc/sparc32/__longjmp.S:72: Error: unknown pseudo-op: `.'
../sysdeps/sparc/sparc32/__longjmp.S:76: Error: unknown pseudo-op: `.'
make[2]: *** [/backup/cross-build/build-glibc-sparc/setjmp/__longjmp.o] Fehler 1
make[2]: Leaving directory `/packages2/glibc-2.2.5/setjmp'

Apparently "cpp0 -lang-asm" now leaves spaces around ## in place, if the token
on the left or right of it is a lone dot (not a valid C identifier). Hard to
say that it's a bug in the gcc-3.1 cpp, because -lang-asm is a gcc extension.
The fix is just to remove the spaces.


2002-06-05  Bruno Haible  <bruno@clisp.org>

	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (LOC): Remove spaces.

--- glibc-2.2.5/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h.bak	2001-07-06 06:56:21.000000000 +0200
+++ glibc-2.2.5/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h	2002-06-05 23:14:40.000000000 +0200
@@ -48,7 +48,7 @@
 #define END(name) \
 	.size name, . - name
 
-#define LOC(name)  . ## L ## name
+#define LOC(name)  .##L##name
 
 #ifdef PIC
 #define SYSCALL_ERROR_HANDLER					\

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]