This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.
Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi! When building with TLS capable binutils and without --without-tls, build fails with: mkdir /usr/src/build/128842-i686/BUILD/glibc-2.2.90/build-i686-linux2.4/setjmp ../sysdeps/i386/bsd-_setjmp.S:26:1: warning: "_SETJMP_H" redefined In file included from ../include/setjmp.h:2, from ../linuxthreads/descr.h:21, from ../linuxthreads/sysdeps/i386/tls.h:58, from ../sysdeps/unix/sysv/linux/i386/sysdep.h:27, from ../sysdeps/unix/sysv/linux/i386/i686/sysdep.h:24, from ../sysdeps/i386/bsd-_setjmp.S:24: ../setjmp/setjmp.h:24:1: warning: this is the location of the previous definition ... make -s -C stdio-common subdir_lib make[2]: Entering directory `/usr/src/build/128842-i686/BUILD/glibc-2.2.90/stdio-common' mkdir /usr/src/build/128842-i686/BUILD/glibc-2.2.90/build-i686-linux2.4/stdio-common /usr/bin/install: cannot remove `/usr/include/bits/stdio_lim.h': Permission denied make[2]: *** [/usr/include/bits/stdio_lim.h] Error 1 The problem is that while ASSEMBLER macro is defined when preprocessing/assembling .S -> .o*, it is not defined when computing dependencies, ie. .S -> .d, so the above warning and also s-proto.d includes in that case /usr/include/bits/stdio_lim.h dependency, which make tries to satisfy by installing a newer bits/stdio_lim.h on top of that (and when not building as root it fails to do so). The following patch seems to fix it, using both ASSEMBLER and __ASSEMBLER__ seems a) inconsistent b) ASSEMBLER only gives problems, while __ASSEMBLER__ is automatically defined by the compiler driver 2002-07-25 Jakub Jelinek <jakub@redhat.com> * config.h.in: Use __ASSEMBLER__ test macro not ASSEMBLER. * sysdeps/ia64/fpu/libm_support.h: Likewise. * sysdeps/i386/tls.h: Use __ASSEMBLER__ test macro not ASSEMBLER. * sysdeps/i386/pt-machine.h: Likewise. * sysdeps/i386/useldt.h: Likewise. --- libc/linuxthreads/sysdeps/i386/tls.h.jj Tue Jul 23 10:05:34 2002 +++ libc/linuxthreads/sysdeps/i386/tls.h Thu Jul 25 00:40:37 2002 @@ -22,7 +22,7 @@ # include <pt-machine.h> -#ifndef ASSEMBLER +#ifndef __ASSEMBLER__ # include <stddef.h> /* Type for the dtv. */ @@ -49,7 +49,7 @@ typedef struct /* Signal that TLS support is available. */ # define USE_TLS 1 -# ifndef ASSEMBLER +# ifndef __ASSEMBLER__ /* Get system call information. */ # include <sysdep.h> --- libc/linuxthreads/sysdeps/i386/pt-machine.h.jj Tue Jul 23 10:05:34 2002 +++ libc/linuxthreads/sysdeps/i386/pt-machine.h Thu Jul 25 00:40:24 2002 @@ -22,7 +22,7 @@ #ifndef _PT_MACHINE_H #define _PT_MACHINE_H 1 -#ifndef ASSEMBLER +#ifndef __ASSEMBLER__ #ifndef PT_EI # define PT_EI extern inline #endif @@ -103,6 +103,6 @@ compare_and_swap_is_available (void) Otherwise, it's a 486 or above and it has cmpxchg. */ return changed != 0; } -#endif /* ASSEMBLER */ +#endif /* __ASSEMBLER__ */ #endif /* pt-machine.h */ --- libc/linuxthreads/sysdeps/i386/useldt.h.jj Tue Jul 23 10:05:34 2002 +++ libc/linuxthreads/sysdeps/i386/useldt.h Thu Jul 25 00:40:55 2002 @@ -19,7 +19,7 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ifndef ASSEMBLER +#ifndef __ASSEMBLER__ #include <stddef.h> /* For offsetof. */ #include <stdlib.h> /* For abort(). */ --- libc/sysdeps/ia64/fpu/libm_support.h.jj Tue Jul 23 10:05:56 2002 +++ libc/sysdeps/ia64/fpu/libm_support.h Thu Jul 25 00:41:32 2002 @@ -49,7 +49,7 @@ // 12/07/2000 Added scalbn error_types values. // -#ifndef ASSEMBLER +#ifndef __ASSEMBLER__ #include <math.h> float __libm_frexp_4f( float x, int* exp); @@ -337,7 +337,7 @@ extern _LIB_VERSION_TYPE _LIB_VERSION; // This is a run-time variable and may effect // floating point behavior of the libm functions -#endif /* ASSEMBLER */ +#endif /* __ASSEMBLER__ */ /* Support for compatible assembler handling. */ #if !defined L && defined _LIBC --- libc/config.h.in.jj Tue Jul 23 10:05:28 2002 +++ libc/config.h.in Thu Jul 25 00:42:24 2002 @@ -1,4 +1,4 @@ -#if !defined ASSEMBLER && !defined _ISOMAC && !defined __OPTIMIZE__ +#if !defined __ASSEMBLER__ && !defined _ISOMAC && !defined __OPTIMIZE__ # error "glibc cannot be compiled without optimization" #endif Jakub
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |