* Makeconfig (sysdeps-srcdirs): New variable.
(sysdeps-add-ons-srcdirs): Use it.
* csu/Makefile (all-Banner-files): Use it.
* Makefile (dist-selector): New variable.
(glibc-%.tar rule): Use it. Make $(dist-separate) tarballs
contain one version-named directory.
($(all-subdirs-targets)): Use it in place of -C option.
* Rules: Use $(..) instead of ../ if it's already defined.
* Makeconfig (subdir-srcdirs): New variable.
* csu/Makefile (all-Banner-files): Use it.
* configure.in (--enable-add-ons): Set to "yes" by default.
Handle absolute add-on directory names when looking for configure
fragments. Also look for sysdeps/*/preconfigure fragments in add-ons.
Require add-on configure to set $libc_add_on_canonical, use
that in $add_ons_sfx. Substitute add_on_subdirs with computed list
of subdir names each add-on configure set in libc_add_on_subdirs.
* configure: Regenerated.
* Makefile (%/preconfigure: %/preconfigure.in): New pattern rule.
* config.make.in (add-on-subdirs): New substituted variable.
* Makeconfig (all-subdirs): Include $(add-on-subdirs).
Remove $(add-ons), $(sysdep-subdirs).
Don't filter out $(sysdep-inhibit-subdirs).
($(common-objpfx)sysd-dirs): Target removed. Don't include it.
($(common-objpfx)sysd-sorted): Rewritten to feed Depend and Subdirs
files together to gen-sorted.awk, and $(subdirs) via -v.
(subdirs): Remove magic reordering for mach and hurd.
* scripts/gen-sorted.awk: Use subdirs from command line.
Process Subdirs and Depend files directly.
Let Subdirs files use "first dir" and "inhibit dir".
Always move elf to the end of the list.
* hurd/Depend: New file.
* sysdeps/mach/Subdirs: Use "first mach".
* Makefile (dist-separate): Remove linuxthreads.
(dist-separate-linuxthreads): Variable removed.
(glibc-%.tar rule): Use $(sysdeps-add-ons).
* Makerules ($(common-objpfx)Versions.v.i): Use $(subdirs),
not $(all-subdirs).
(sysdep-makefiles): Use $(sysdirs).
(sysdirs): Remove export.
($(+sysdir_pfx)sysd-rules): Handle absolute directory names in
$(config-sysdirs).
(+sysdir_pfx): Variable removed.
(sysd-rules): Use $(common-objpfx) in place of it.
(sysdirs): Variable moved to ...
* Makeconfig (sysdirs): ... here.
Handle absolute directory names in $(config-sysdirs).
(full_config_sysdirs): Variable removed.
* csu/Makefile: Use $(sysdirs) in vpath directive.
* math/Makefile (ulps-file): Use $(sysdirs).
* sysdeps/gnu/Makefile (errlist-c): Likewise.
($(objpfx)errlist-compat.c): Likewise.
* Makeconfig (all-Subdirs-files): Likewise.
($(common-objpfx)config.status): Likewise.
* configure.in (sysnames): Handle absolute add-on directory names.
(sysdeps_add_ons): New variable, AC_SUBST it.
Compute which add-ons contributed sysdeps directories.
* configure: Regenerated.
* config.make.in (sysdeps-add-ons): New substituted variable.
* Makerules (+sysdep_dirs, +sysdep-includes): Variables moved ...
* Makeconfig: ... to here.
(+sysdep_dirs): Append $(sysdeps-add-ons) here.
(+includes): Remove $(objpfx) include, already in $(+sysdep_dirs).
Remove $(includes).
(sysdep-makeconfigs): Use $(+sysdep_dirs).
($(common-objpfx)shlib-versions.v.i): Likewise.
* Makeconfig: Remove hair to set Makeconfig-add-on.
* sysdeps/unix/Makefile (sysdirs): Remove export.
(asm_CPP): Variable removed.
($(common-objpfx)sysd-syscalls): Pass them directly for the script.
* sysdeps/posix/Makefile: New file.
* Makerules (L_tmpnam, TMP_MAX, L_ctermid, L_cuserid): Set non-posix
values here with ?=.
* stdlib/gen-mpn-copy: File removed.
* stdlib/Makefile (distribute): Remove it.
* configure.in: Don't grok --with-gmp.
* configure: Regenerated.
* configure.in (libc_cv_idn): Don't check it; libidn/configure does it.
* configure: Regenerated.
* bare: Directory removed, saved in ports repository.
2003-05-28 Ulrich Drepper <drepper@redhat.com>
* include/libc-symbols.h: Define hidden attribute for real also if
LIBC_NONSHARED is defined. Patch by Jakub Jelinek.
* csu/Makefile: Add rules to build Scrt1.o.
* sysdeps/i386/elf/start.S: Make code compilable with SHARED.
pattern rule. The implicit rule could be ruled out when $(objpfx)
didn't exist at the time of its consideration (ugh!).
* Makerules (+make-deps): Fix target matching.
Use $(sed-remove-dotdot).
Add comment.
(atomic_decrement_and_test): Add comment.
2003-03-22 Jakub Jelinek <jakub@redhat.com>
* include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
(atomic_compare_and_exchange_bool_acq): Add comment. Don't use
__oldval variable in the macro, since it might be macro argument.
(atomic_decrement_if_positive): Initialize __memp, remove setting
of non-existent variable.
(atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
* sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
using atomic_compare_and_exchange_val_acq.
(atomic_decrement_if_positive, atomic_bit_test_set): Define.
* sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
Renamed from...
(__arch_compare_and_exchange_bool_8_acq): ... this.
(__arch_compare_and_exchange_val_16_acq): Renamed from...
(__arch_compare_and_exchange_bool_16_acq): ... this.
(__arch_compare_and_exchange_val_32_acq): Return old value. Renamed
from...
(__arch_compare_and_exchange_bool_32_acq): ... this.
(__arch_compare_and_exchange_val_64_acq): Return old value. Renamed
from...
(__arch_compare_and_exchange_bool_64_acq): ... this.
(__arch_compare_and_exchange_val_32_acq): Use __typeof for local
variables types instead of assuming int.
Change prefix of local variables to __arch.
* sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
Remove.
(atomic_compare_and_exchange_val_acq,
atomic_compare_and_exchange_bool_acq): Define.
* csu/tst-atomic.c: New test.
* csu/tst-atomic-long.c: New test.
* csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
* malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
* sysdeps/s390/Versions: Add trailing newline.
* sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
2002-12-31 Ulrich Drepper <drepper@redhat.com>
* string/string-inlines.c: Define __memcpy_g and __strchr_g macros
to avoid using the exported symbols. Define aliases with the
original names separately.
* include/time.h: Add libc_hidden_proto for __strftime_l.
* include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
* time/strftime.c: Always use libc_hidden_def if _LIBC.
* libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
* libio/fileops.c: Add libc_hidden_def for _IO_file_open.
* malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
tr_break.
* csu/Makefile (routines): Add dso_handle.
* csu/dso_handle.c: New file.
* csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
(CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
Turn off PIC for compiling this file.
the beginning of generated target commands.
* csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
dependencies for these in case implicit rule search skipped the
nonexistent source directory.
* sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
files with $(object-suffixes) as targets too.
* Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
and a target for it using $(make-target-directory).
* Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
* sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
* sysdeps/generic/bits/pthreadtypes.h: ... here.
changed from [USE_TLS && HAVE___THREAD].
* sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
* sysdeps/x86_64/dl-machine.h
(elf_machine_type_class, elf_machine_rela): Likewise.
* sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
Likewise.
* include/link.h (struct link_map): Remove member l_tls_tp_initialized.
* elf/rtld.c (_dl_start_final, dl_main): Don't use it.
(_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
* sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
instead of ___tls_get_addr.
(___tls_get_addr_internal): Add attribute_hidden to decl.
* sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
_dl_error_catch_tsd.
* elf/rtld.c (startup_error_tsd): New function.
(dl_main): Point _dl_error_catch_tsd at that.
* elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
use new function pointer instead.
* elf/dl-tsd.c: New file.
* elf/Makefile (routines): Add it.
2002-10-07 Roland McGrath <roland@redhat.com>
* elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
writev if it's available. Otherwise if [RTLD_PRIVATE_ERRNO] then
take _dl_load_lock around calling __writev.
* sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
(INLINE_SYSCALL): Use that.
* sysdeps/generic/dl-sysdep.h: New file.
* sysdeps/mach/hurd/dl-sysdep.h: New file.
* sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
* include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
[RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
access it directly.
* elf/dl-minimal.c (__errno_location): Removed.
* sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
Use GOTOFF access for errno.
* sysdeps/unix/sysv/linux/i386/sysdep.h
[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
* sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
Use PC-relative access for errno.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h
[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
* include/tls.h: New file.
(USE___THREAD): New macro.
Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
libc or libpthread.
* sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
changed from [USE_TLS && HAVE___THREAD].
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
* sysdeps/unix/i386/sysdep.S: Likewise.
* sysdeps/unix/x86_64/sysdep.S: Likewise.
* include/errno.h: Likewise.
* include/netdb.h: Likewise.
* include/resolv.h: Likewise.
* sysdeps/generic/errno.c: New file.
* csu/Makefile (aux): New variable, list errno.
* sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
* sysdeps/unix/alpha/sysdep.S: Likewise.
* sysdeps/generic/start.c: Likewise.
* sysdeps/unix/start.c: Likewise.
* sysdeps/unix/arm/start.c: Likewise.
* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
* sysdeps/unix/sparc/start.c: Likewise.
* sysdeps/unix/sysv/irix4/start.c: Likewise.
* sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
* manual/search.texi (Tree Search Function, Hash Search Function):
Mention search.h clearly.
2002-10-05 Roland McGrath <roland@redhat.com>
* elf/dl-fxstat64.c: File removed.
* elf/dl-xstat64.c: File removed.
* elf/Makefile (rtld-routines): Remove them.
* sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
Instead, use strong_alias instead of versioned_symbol in the
!SHLIB_COMPAT case.
* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
* sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
* include/shlib-compat.h
(SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
[! NOT_IN_libc] (IS_IN_libc): Define it.
* cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
* elf/Makefile (CPPFLAGS-.os): Likewise.
* sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
Return the status instead of calling exit.
* Makeconfig (CFLAGS): Prepend -std=gnu99.
* Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
Remove superfluous rm command, whose @ plus make bugs hid
all these commands from the make output.
* include/stubs-prologue.h: New file. Give #error under #ifdef _LIBC.
* Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
Use that file's contents instead of literal echo's for the prologue.
* include/features.h: Include <gnu/stubs.h> unconditionally.
* include/gnu/stubs.h: New file.
2002-09-30 Roland McGrath <roland@redhat.com>
* elf/rtld-Rules: New file.
* elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
$(objpfx)rtld-libc.a): New targets.
(generated): Add them.
(reloc-link): Remove -o $@ from the variable.
($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
(distribute): Add rtld-Rules.
(CPPFLAGS-.os): Define this instead of CFLAGS-.os.
* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
(common-mostlyclean, common-clean): Clean up rtld-* files.
* sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
2002-08-15 Ulrich Drepper <drepper@redhat.com>
* csu/Makefile: Define elide-routines.os not static-only-routines.
* include/sched.h (__clone): Add varargs at the end.
* elf/rtld.c (_dl_start): All TLS_INIT_TP to fail and stop in that
case.
(TLS_INIT_HELPER): If defined use it.
* sysdeps/generic/libc-tls.c (TLS_INIT_HELPER): Likewise.
* locale/loadarchive.c (archfname): Add missing slash.
* sysdeps/generic/strtold.c (__strtold_internal): Add libc_hidden_def.
* wcsmbs/wcstold.c (__wcstold_internal): Add libc_hidden_def.
2002-07-23 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/libc-tls.c: New file.
* csu/Makefile (routines): Add libc-tls.
(static-only-routines): Add libc-tls.
* elf/dl-support.c (_dl_phdr): New variable.
(_dl_phnum): New variable.
(_dl_aux_init): Initialize _dl_phdr and _dl_phnum from aux vector.
* sysdeps/generic/libc-start.c (__libc_start_main): Reorganize code
for !SHARED. First look through auxiliary vector. If TLS always
call __pthread_initialize_minimal.
* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Make sure size argument
in mmap call is never zero.
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
static pattern rule also that also covers
$(objpx)g$(static-start-installed-name).
[$(start-installed-name) != $(static-start-installed-name)]
(extra-objs, omit-deps, install-lib): Add
$(static-start-installed-name) and g$(static-start-installed-name).
* sysdeps/mach/hurd/i386/Makefile: Don't add crt0.o to those here;
just setting static-start-installed-name is now sufficient.
(extra-objs): Add static-start.o here.
(CFLAGS-initfini.s): Remove obsolete variable.
* sysdeps/mach/hurd/i386/Makeconfig: New file.
Define static-start-installed-name here.
* Makeconfig: Include existing $(full_config_sysdirs:=/Makeconfig).
* Make-dist (+sysdep-tsrcs): Look for Makeconfig files.
* Makerules ($(+sysdir_pfx)sysd-Makefile): Remove this target and
associated hair. Instead, just use $(wildcard ...) in the include.
* configure.in (critic_missing, aux_missing): Collect in these vars
the names of the missing programs, and include them in the error msgs.
* configure: Regenerated.
2001-03-12 Jakub Jelinek <jakub@redhat.com>
* csu/Makefile (abi-tag.h): Define OS and version separately, allow
version to be overriden from config.h.
* csu/abi-note.S: Use OS and version separately, include config.h.
* elf/dl-load.c (_dl_osversion): New.
(_dl_map_object_from_fd): Kill some warnings.
(open_verify): Check .note.ABI-tag of the library if present.
* elf/Makefile (CPPFLAGS-dl-load.c): Add -I$(csu-objpfx).
* elf/cache.c (struct cache_entry): Add osversion.
(print_entry): Print osversion.
(print_cache): Pass osversion to it.
(compare): Sort according to osversion.
(save_cache): Set osversion.
(add_to_cache): Add osversion argument.
* sysdeps/generic/ldconfig.h (add_to_cache, process_file,
process_elf_file): Add osversion argument.
* elf/readlib.c (process_file): Likewise.
* sysdeps/generic/readelflib.c (process_elf_file): Likewise.
* sysdeps/unix/sysv/linux/ia64/readelflib.c (process_elf_file,
process_elf32_file, process_elf64_file): Likewise.
* sysdeps/unix/sysv/linux/i386/readelflib.c (process_elf_file,
process_elf32_file, process_elf64_file): Likewise.
* sysdeps/unix/sysv/linux/sparc/readelflib.c (process_elf_file,
process_elf32_file, process_elf64_file): Likewise.
* elf/ldconfig.c (manual_link): Pass it.
(search_dir): Issue diagnostic if two libs with the same soname in
the same directory have different .note.ABI-tag. Record osversion in
dlib_entry and use it from there.
(struct lib_entry): Remove.
(struct dlib_entry): Add osversion.
* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Check
osversion.
* sysdeps/generic/dl-cache.h (struct file_entry_new): Replace __unused
field with osversion.
* sysdeps/generic/ldsodefs.h (_dl_osversion): Declare.
* sysdeps/unix/sysv/linux/init-first.c: Include ldsodefs.h.
* sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Save kernel
version in _dl_osversion.
* sysdeps/unix/sysv/linux/configure.in: Define __ABI_TAG_VERSION.
* Makerules (build-shlib-helper, build-module-helper): New.
(build-shlib, build-module-helper): Make sure .note.ABI-tag comes
early.
* config.h.in (__ABI_TAG_VERSION): Add.
* elf/dl-minimal.c (__strtoul_internal): Set endptr on return.
* sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
Handle LD_ASSUME_KERNEL.
* sysdeps/unix/sysv/linux/dl-librecon.h: New.
link-extra-libs-bounded): New variables.
(built-program-cmd): Omit $(run-program-prefix) for static BP tests.
* Makerules (do-tests-clean, common-mostlyclean): Remove BP test files.
* Rules (tests-bp.out): New variable.
(tests): Conditionally add BP tests.
(binaries-bounded): Add variable and associated rule.
* csu/Makefile [build-bounded] (extra-objs, install-lib):
Move conditional stuff after place where condition is defined.
* csu/Makefile (extra-objs, omit-deps, install-lib): Add
BP-flavored startup object.
($(objpfx)b$(start-installed-name)): New rule.
* include/libc-symbols.h (symbol_set_declare): Change type
of `__start_##set' and `__stop_##set' to pointer-to-function.
(symbol_set_declare): Change type of `set' to array of
pointer-to-function.
* include/set-hooks.h (RUN_HOOK): Change type of `ptr' to
pointer-to-function.
* Makeconfig: Add missing comment.
* csu/Makefile (extra-objs, omit-deps, install-lib): Add
BP-flavored startup object.
($(objpfx)b$(start-installed-name)): New rule.
* include/libc-symbols.h (symbol_set_declare): Change type
of `__start_##set' and `__stop_##set' to pointer-to-function.
(symbol_set_declare): Change type of `set' to array of
pointer-to-function.
* include/set-hooks.h (RUN_HOOK): Change type of `ptr' to
pointer-to-function.
2000-05-07 H.J. Lu <hjl@gnu.org>
* csu/initfini.c: Moved to ....
* sysdeps/generic/initfini.c: ...here.
* csu/Makefile (initfini.c): Set vpath to $(full_config_sysdirs).
unnecessarily.
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_STAT64_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL,
__ASSUME_NEW_GETRLIMIT_SYSCALL): Define on powerpc for kernels >=
2.3.35.
* sysdeps/unix/sysv/linux/powerpc/bits/resource.h: New file.
* sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/powerpc/setrlimit64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add
s_fstat64, s_ftruncate64, s_lstat64, s_mmap2, s_stat64,
s_truncate64.
* sysdeps/unix/sysv/linux/powerpc/truncate64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/Versions: New file.
* sysdeps/unix/sysv/linux/powerpc/brk.S [!PIC]: Don't access
__curbrk off the small data area register. Reported by
Andrew Haley <aph@pasanda.cygnus.co.uk>.
2000-01-27 Geoff Keating <geoffk@cygnus.com>
* csu/Makefile ($(objpfx)version-info.h): Don't use echo -n
unnecessarily.
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_STAT64_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL,
__ASSUME_NEW_GETRLIMIT_SYSCALL): Define on powerpc for kernels >=
2.3.35.
* sysdeps/unix/sysv/linux/powerpc/bits/resource.h: New file.
* sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/powerpc/setrlimit64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add
s_fstat64, s_ftruncate64, s_lstat64, s_mmap2, s_stat64,
s_truncate64.
* sysdeps/unix/sysv/linux/powerpc/truncate64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/Versions: New file.
* sysdeps/unix/sysv/linux/powerpc/brk.S [!PIC]: Don't access
__curbrk off the small data area register. Reported by
Andrew Haley <aph@pasanda.cygnus.co.uk>.