diff options
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/powerpc/Makefile | 9 | ||||
-rw-r--r-- | sysdeps/powerpc/bits/endian.h | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/pread.c | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/pread64.c | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/pwrite.c | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/pwrite64.c | 6 |
6 files changed, 30 insertions, 9 deletions
diff --git a/sysdeps/powerpc/Makefile b/sysdeps/powerpc/Makefile index a9922ff6b6..0f8860b1d0 100644 --- a/sysdeps/powerpc/Makefile +++ b/sysdeps/powerpc/Makefile @@ -8,16 +8,21 @@ endif # On PPC, -fpic works until the GOT contains 2^15 bytes, and possibly # more depending on how clever the linker is. Each GOT entry takes 4 bytes, -# so that's at least 8192 entries. Since libc only uses about 1200 entries, +# so that's at least 8192 entries. Since libc only uses about 2000 entries, # we want to use -fpic, because this generates fewer relocs. ifeq (yes,$(build-shared)) pic-ccflag = -fpic endif +ifeq ($(subdir),csu) # The initfini generation code doesn't work in the presence of -fPIC, so # we use -fpic instead which is much better. -ifeq ($(subdir),csu) CFLAGS-initfini.s = -g0 -fpic + +# There is no benefit to using sdata for these objects, and the user +# of the library should be able to control what goes into sdata. +CFLAGS-init.o = -G0 +CFLAGS-gmon-start.o = -G0 endif ifeq ($(subdir),string) diff --git a/sysdeps/powerpc/bits/endian.h b/sysdeps/powerpc/bits/endian.h index 9259da8039..d292ba9fdb 100644 --- a/sysdeps/powerpc/bits/endian.h +++ b/sysdeps/powerpc/bits/endian.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -24,13 +24,13 @@ #if defined __BIG_ENDIAN__ || defined _BIG_ENDIAN # if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN -# error Please fix sysdeps/powerpc/bits/endian.h (compiling bi-endian?). +# error Both BIG_ENDIAN and LITTLE_ENDIAN defined! # endif # define __BYTE_ORDER __BIG_ENDIAN #else # if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN # define __BYTE_ORDER __LITTLE_ENDIAN # else -# error Please fix sysdeps/powerpc/bits/endian.h. +# error Cannot determine current byte order. # endif #endif diff --git a/sysdeps/unix/sysv/linux/pread.c b/sysdeps/unix/sysv/linux/pread.c index eb0d301fa1..4d7a7c5ad7 100644 --- a/sysdeps/unix/sysv/linux/pread.c +++ b/sysdeps/unix/sysv/linux/pread.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -19,6 +19,9 @@ #include <errno.h> #include <unistd.h> +#include <sys/syscall.h> + +#ifdef __NR_pread extern ssize_t __syscall_pread64 (int fd, void *buf, size_t count, off_t offset_hi, off_t offset_lo); @@ -49,4 +52,5 @@ weak_alias (__pread, pread) #define __pread(fd, buf, count, offset) \ static internal_function __emulate_pread (fd, buf, count, offset) +#endif #include <sysdeps/posix/pread.c> diff --git a/sysdeps/unix/sysv/linux/pread64.c b/sysdeps/unix/sysv/linux/pread64.c index e2505dbaa4..bd600f17d4 100644 --- a/sysdeps/unix/sysv/linux/pread64.c +++ b/sysdeps/unix/sysv/linux/pread64.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -19,6 +19,9 @@ #include <errno.h> #include <unistd.h> +#include <sys/syscall.h> + +#ifdef __NR_pread extern ssize_t __syscall_pread64 (int fd, void *buf, size_t count, off_t offset_hi, off_t offset_lo); @@ -50,4 +53,5 @@ weak_alias (__pread64, pread64) #define __pread64(fd, buf, count, offset) \ static internal_function __emulate_pread64 (fd, buf, count, offset) +#endif #include <sysdeps/posix/pread64.c> diff --git a/sysdeps/unix/sysv/linux/pwrite.c b/sysdeps/unix/sysv/linux/pwrite.c index 9ab3259fc6..72b3cfba66 100644 --- a/sysdeps/unix/sysv/linux/pwrite.c +++ b/sysdeps/unix/sysv/linux/pwrite.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -19,6 +19,9 @@ #include <errno.h> #include <unistd.h> +#include <sys/syscall.h> + +#ifdef __NR_pwrite extern ssize_t __syscall_pwrite64 (int fd, const void *buf, size_t count, off_t offset_hi, off_t offset_lo); @@ -49,4 +52,5 @@ weak_alias (__pwrite, pwrite) #define __pwrite(fd, buf, count, offset) \ static internal_function __emulate_pwrite (fd, buf, count, offset) +#endif #include <sysdeps/posix/pwrite.c> diff --git a/sysdeps/unix/sysv/linux/pwrite64.c b/sysdeps/unix/sysv/linux/pwrite64.c index f2b4bcbe4e..70902b28b7 100644 --- a/sysdeps/unix/sysv/linux/pwrite64.c +++ b/sysdeps/unix/sysv/linux/pwrite64.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -19,6 +19,9 @@ #include <errno.h> #include <unistd.h> +#include <sys/syscall.h> + +#ifdef __NR_pwrite extern ssize_t __syscall_pwrite64 (int fd, const void *buf, size_t count, off_t offset_hi, off_t offset_lo); @@ -50,4 +53,5 @@ weak_alias (__pwrite64, pwrite64) #define __pwrite64(fd, buf, count, offset) \ static internal_function __emulate_pwrite64 (fd, buf, count, offset) +#endif #include <sysdeps/posix/pwrite64.c> |