Bart De VOS pointed out that removing absolute paths from the libc linker scripts is plainly wrong.
It dates from dawn ages of the original crosstool code, and is not well explained. At that time, binutils might not understand the sysroot stuff, and it was necessary to remove absolute paths in that case.
/trunk/scripts/build/libc/glibc.sh | 14 2 12 0 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)
1 2008-06-07 Mike Frysinger <vapier@gentoo.org>
3 * sysdeps/unix/sysv/linux/alpha/sys/user.h: Copy page.h definitions
4 from the kernel header to sys/user.h and remove the #include of
7 --- a/sysdeps/unix/sysv/linux/alpha/sys/user.h
8 +++ b/sysdeps/unix/sysv/linux/alpha/sys/user.h
10 only. Don't read too much into it. Don't use it for anything other
11 than gdb/strace unless you know what you are doing. */
13 -#include <asm/page.h>
17 @@ -41,6 +40,9 @@ struct user
18 char u_comm[32]; /* user command name */
21 +#define PAGE_SHIFT 13
22 +#define PAGE_SIZE (1 << PAGE_SHIFT)
23 +#define PAGE_MASK (~(PAGE_SIZE-1))
24 #define NBPG PAGE_SIZE
26 #define HOST_TEXT_START_ADDR (u.start_code)