[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r21353 - in /trunk: ./ libc/ libc/catgets/ libc/crypt/ libc/debug/ libc/dlfcn/ libc/elf/ libc/grp/ libc/iconv/ libc/iconvdat...
- To: commits@xxxxxxxxxx
- Subject: [Commits] r21353 - in /trunk: ./ libc/ libc/catgets/ libc/crypt/ libc/debug/ libc/dlfcn/ libc/elf/ libc/grp/ libc/iconv/ libc/iconvdat...
- From: joseph@xxxxxxxxxx
- Date: Thu, 25 Oct 2012 17:18:12 -0000
Author: joseph
Date: Thu Oct 25 17:18:12 2012
New Revision: 21353
Log:
Merge changes between r21108 and r21352 from /fsf/trunk.
Added:
trunk/libc/crypt/badsalttest.c
- copied unchanged from r21352, fsf/trunk/libc/crypt/badsalttest.c
trunk/libc/debug/test-stpcpy_chk-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/debug/test-stpcpy_chk-ifunc.c
trunk/libc/debug/test-strcpy_chk-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/debug/test-strcpy_chk-ifunc.c
trunk/libc/elf/tst-leaks1-static.c
- copied unchanged from r21352, fsf/trunk/libc/elf/tst-leaks1-static.c
trunk/libc/include/ifunc-impl-list.h
- copied unchanged from r21352, fsf/trunk/libc/include/ifunc-impl-list.h
trunk/libc/misc/ifunc-impl-list.c
- copied unchanged from r21352, fsf/trunk/libc/misc/ifunc-impl-list.c
trunk/libc/nptl/tst-cond25.c
- copied unchanged from r21352, fsf/trunk/libc/nptl/tst-cond25.c
trunk/libc/ports/sysdeps/hppa/nptl/shlib-versions
- copied unchanged from r21352, fsf/trunk/libc/ports/sysdeps/hppa/nptl/shlib-versions
trunk/libc/ports/sysdeps/hppa/nptl/tst-oddstacklimit.c
- copied unchanged from r21352, fsf/trunk/libc/ports/sysdeps/hppa/nptl/tst-oddstacklimit.c
trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c
- copied unchanged from r21352, fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c
trunk/libc/rt/clock-compat.c
- copied unchanged from r21352, fsf/trunk/libc/rt/clock-compat.c
trunk/libc/string/test-bcopy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-bcopy-ifunc.c
trunk/libc/string/test-bcopy.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-bcopy.c
trunk/libc/string/test-bzero-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-bzero-ifunc.c
trunk/libc/string/test-bzero.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-bzero.c
trunk/libc/string/test-memccpy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-memccpy-ifunc.c
trunk/libc/string/test-memchr-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-memchr-ifunc.c
trunk/libc/string/test-memcmp-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-memcmp-ifunc.c
trunk/libc/string/test-memcpy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-memcpy-ifunc.c
trunk/libc/string/test-memmem-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-memmem-ifunc.c
trunk/libc/string/test-memmove-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-memmove-ifunc.c
trunk/libc/string/test-mempcpy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-mempcpy-ifunc.c
trunk/libc/string/test-memset-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-memset-ifunc.c
trunk/libc/string/test-rawmemchr-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-rawmemchr-ifunc.c
trunk/libc/string/test-stpcpy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-stpcpy-ifunc.c
trunk/libc/string/test-stpncpy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-stpncpy-ifunc.c
trunk/libc/string/test-strcasecmp-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strcasecmp-ifunc.c
trunk/libc/string/test-strcasestr-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strcasestr-ifunc.c
trunk/libc/string/test-strcat-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strcat-ifunc.c
trunk/libc/string/test-strchr-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strchr-ifunc.c
trunk/libc/string/test-strchrnul-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strchrnul-ifunc.c
trunk/libc/string/test-strcmp-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strcmp-ifunc.c
trunk/libc/string/test-strcpy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strcpy-ifunc.c
trunk/libc/string/test-strcspn-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strcspn-ifunc.c
trunk/libc/string/test-strlen-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strlen-ifunc.c
trunk/libc/string/test-strncasecmp-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strncasecmp-ifunc.c
trunk/libc/string/test-strncat-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strncat-ifunc.c
trunk/libc/string/test-strncmp-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strncmp-ifunc.c
trunk/libc/string/test-strncpy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strncpy-ifunc.c
trunk/libc/string/test-strnlen-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strnlen-ifunc.c
trunk/libc/string/test-strpbrk-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strpbrk-ifunc.c
trunk/libc/string/test-strrchr-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strrchr-ifunc.c
trunk/libc/string/test-strspn-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strspn-ifunc.c
trunk/libc/string/test-strstr-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/string/test-strstr-ifunc.c
trunk/libc/sysdeps/generic/fips-private.h
- copied unchanged from r21352, fsf/trunk/libc/sysdeps/generic/fips-private.h
trunk/libc/sysdeps/i386/i686/multiarch/ifunc-impl-list.c
- copied unchanged from r21352, fsf/trunk/libc/sysdeps/i386/i686/multiarch/ifunc-impl-list.c
trunk/libc/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
- copied unchanged from r21352, fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
trunk/libc/sysdeps/unix/sysv/linux/fips-private.h
- copied unchanged from r21352, fsf/trunk/libc/sysdeps/unix/sysv/linux/fips-private.h
trunk/libc/sysdeps/x86_64/multiarch/ifunc-impl-list.c
- copied unchanged from r21352, fsf/trunk/libc/sysdeps/x86_64/multiarch/ifunc-impl-list.c
trunk/libc/wcsmbs/test-wcschr-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/wcsmbs/test-wcschr-ifunc.c
trunk/libc/wcsmbs/test-wcscmp-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/wcsmbs/test-wcscmp-ifunc.c
trunk/libc/wcsmbs/test-wcscpy-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/wcsmbs/test-wcscpy-ifunc.c
trunk/libc/wcsmbs/test-wcslen-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/wcsmbs/test-wcslen-ifunc.c
trunk/libc/wcsmbs/test-wcsrchr-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/wcsmbs/test-wcsrchr-ifunc.c
trunk/libc/wcsmbs/test-wmemcmp-ifunc.c
- copied unchanged from r21352, fsf/trunk/libc/wcsmbs/test-wmemcmp-ifunc.c
Removed:
trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/nptl/pt-initfini.c
trunk/libc/scripts/run-with-env.sh
Modified:
trunk/ (props changed)
trunk/libc/ChangeLog
trunk/libc/Makeconfig
trunk/libc/NEWS
trunk/libc/Rules
trunk/libc/catgets/Makefile
trunk/libc/config.h.in
trunk/libc/configure
trunk/libc/configure.in
trunk/libc/crypt/Makefile
trunk/libc/crypt/crypt-entry.c
trunk/libc/crypt/crypt-private.h
trunk/libc/crypt/crypt_util.c
trunk/libc/crypt/md5c-test.c
trunk/libc/debug/Makefile
trunk/libc/debug/test-stpcpy_chk.c
trunk/libc/debug/test-strcpy_chk.c
trunk/libc/dlfcn/Makefile
trunk/libc/elf/Makefile
trunk/libc/elf/dl-load.c
trunk/libc/elf/dl-open.c
trunk/libc/elf/tst-pathopt.sh
trunk/libc/elf/tst-rtld-load-self.sh
trunk/libc/grp/Makefile
trunk/libc/grp/tst_fgetgrent.sh
trunk/libc/iconv/Makefile
trunk/libc/iconvdata/Makefile
trunk/libc/iconvdata/run-iconv-test.sh
trunk/libc/iconvdata/tst-table.sh
trunk/libc/iconvdata/tst-tables.sh
trunk/libc/include/string.h
trunk/libc/include/time.h
trunk/libc/intl/Makefile
trunk/libc/intl/tst-gettext.sh
trunk/libc/intl/tst-gettext2.sh
trunk/libc/intl/tst-translit.sh
trunk/libc/io/Makefile
trunk/libc/io/fcntl.h
trunk/libc/io/ftwtest-sh
trunk/libc/libio/Makefile
trunk/libc/libio/fileops.c
trunk/libc/libio/freopen64.c
trunk/libc/libio/fseeko64.c
trunk/libc/libio/ftello64.c
trunk/libc/libio/iofgetpos64.c
trunk/libc/libio/iofopen64.c
trunk/libc/libio/iofsetpos64.c
trunk/libc/libio/libio.h
trunk/libc/libio/oldiofgetpos64.c
trunk/libc/libio/oldiofsetpos64.c
trunk/libc/localedata/ChangeLog
trunk/libc/localedata/Makefile
trunk/libc/localedata/locales/de_AT
trunk/libc/localedata/locales/mr_IN
trunk/libc/localedata/tst-fmon.sh
trunk/libc/localedata/tst-numeric.sh
trunk/libc/localedata/tst-rpmatch.sh
trunk/libc/malloc/Makefile
trunk/libc/malloc/tst-mtrace.sh
trunk/libc/manual/memory.texi
trunk/libc/math/Makefile
trunk/libc/math/libm-test.inc
trunk/libc/misc/Makefile
trunk/libc/misc/Versions
trunk/libc/nptl/ChangeLog
trunk/libc/nptl/Makefile
trunk/libc/nptl/sysdeps/pthread/pthread.h
trunk/libc/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
trunk/libc/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
trunk/libc/nptl/sysdeps/unix/sysv/linux/pthread-pi-defines.sym
trunk/libc/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
trunk/libc/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
trunk/libc/nptl/tst-cancel-wrappers.sh
trunk/libc/nptl/tst-oddstacklimit.c
trunk/libc/nptl/tst-tls6.sh
trunk/libc/nscd/Makefile
trunk/libc/ports/ChangeLog.alpha
trunk/libc/ports/ChangeLog.arm
trunk/libc/ports/ChangeLog.hppa
trunk/libc/ports/ChangeLog.ia64
trunk/libc/ports/ChangeLog.m68k
trunk/libc/ports/ChangeLog.mips
trunk/libc/ports/ChangeLog.powerpc
trunk/libc/ports/ChangeLog.tile
trunk/libc/ports/sysdeps/hppa/nptl/Makefile
trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h
trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread.h
trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/get_clockfreq.c
trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/fcntl.h
trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/nptl/c++-types.data (props changed)
trunk/libc/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/nptl/localplt.data (props changed)
trunk/libc/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/single/nptl/c++-types.data (props changed)
trunk/libc/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/single/nptl/localplt.data (props changed)
trunk/libc/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist
trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist
trunk/libc/posix/Makefile
trunk/libc/posix/globtest.sh
trunk/libc/posix/tst-getconf.sh
trunk/libc/posix/wordexp-tst.sh
trunk/libc/resolv/Makefile
trunk/libc/rt/Makefile
trunk/libc/rt/Versions
trunk/libc/rt/clock_getcpuclockid.c
trunk/libc/rt/clock_getres.c
trunk/libc/rt/clock_gettime.c
trunk/libc/rt/clock_nanosleep.c
trunk/libc/rt/clock_settime.c
trunk/libc/stdio-common/Makefile
trunk/libc/stdlib/Makefile
trunk/libc/string/Makefile
trunk/libc/string/memmem.c
trunk/libc/string/str-two-way.h
trunk/libc/string/test-memccpy.c
trunk/libc/string/test-memchr.c
trunk/libc/string/test-memcmp.c
trunk/libc/string/test-memcpy.c
trunk/libc/string/test-memmem.c
trunk/libc/string/test-memmove.c
trunk/libc/string/test-mempcpy.c
trunk/libc/string/test-memset.c
trunk/libc/string/test-rawmemchr.c
trunk/libc/string/test-stpcpy.c
trunk/libc/string/test-stpncpy.c
trunk/libc/string/test-strcasecmp.c
trunk/libc/string/test-strcasestr.c
trunk/libc/string/test-strcat.c
trunk/libc/string/test-strchr.c
trunk/libc/string/test-strcmp.c
trunk/libc/string/test-strcpy.c
trunk/libc/string/test-strcspn.c
trunk/libc/string/test-string.h
trunk/libc/string/test-strlen.c
trunk/libc/string/test-strncasecmp.c
trunk/libc/string/test-strncat.c
trunk/libc/string/test-strncmp.c
trunk/libc/string/test-strncpy.c
trunk/libc/string/test-strnlen.c
trunk/libc/string/test-strpbrk.c
trunk/libc/string/test-strrchr.c
trunk/libc/string/test-strspn.c
trunk/libc/string/test-strstr.c
trunk/libc/sysdeps/generic/_G_config.h
trunk/libc/sysdeps/i386/i686/multiarch/bcopy.S
trunk/libc/sysdeps/i386/i686/multiarch/bzero.S
trunk/libc/sysdeps/i386/i686/multiarch/memchr.S
trunk/libc/sysdeps/i386/i686/multiarch/memcmp.S
trunk/libc/sysdeps/i386/i686/multiarch/memcpy.S
trunk/libc/sysdeps/i386/i686/multiarch/memcpy_chk.S
trunk/libc/sysdeps/i386/i686/multiarch/memmove.S
trunk/libc/sysdeps/i386/i686/multiarch/memmove_chk.S
trunk/libc/sysdeps/i386/i686/multiarch/mempcpy.S
trunk/libc/sysdeps/i386/i686/multiarch/mempcpy_chk.S
trunk/libc/sysdeps/i386/i686/multiarch/memrchr.S
trunk/libc/sysdeps/i386/i686/multiarch/memset.S
trunk/libc/sysdeps/i386/i686/multiarch/memset_chk.S
trunk/libc/sysdeps/i386/i686/multiarch/rawmemchr.S
trunk/libc/sysdeps/i386/i686/multiarch/stpcpy.S
trunk/libc/sysdeps/i386/i686/multiarch/stpncpy.S
trunk/libc/sysdeps/i386/i686/multiarch/strcasecmp.S
trunk/libc/sysdeps/i386/i686/multiarch/strcasecmp_l.S
trunk/libc/sysdeps/i386/i686/multiarch/strcasestr-c.c
trunk/libc/sysdeps/i386/i686/multiarch/strcat.S
trunk/libc/sysdeps/i386/i686/multiarch/strchr.S
trunk/libc/sysdeps/i386/i686/multiarch/strcmp.S
trunk/libc/sysdeps/i386/i686/multiarch/strcpy.S
trunk/libc/sysdeps/i386/i686/multiarch/strcspn.S
trunk/libc/sysdeps/i386/i686/multiarch/strlen.S
trunk/libc/sysdeps/i386/i686/multiarch/strncase.S
trunk/libc/sysdeps/i386/i686/multiarch/strncase_l.S
trunk/libc/sysdeps/i386/i686/multiarch/strncat.S
trunk/libc/sysdeps/i386/i686/multiarch/strncmp.S
trunk/libc/sysdeps/i386/i686/multiarch/strncpy.S
trunk/libc/sysdeps/i386/i686/multiarch/strnlen.S
trunk/libc/sysdeps/i386/i686/multiarch/strpbrk.S
trunk/libc/sysdeps/i386/i686/multiarch/strrchr.S
trunk/libc/sysdeps/i386/i686/multiarch/strspn.S
trunk/libc/sysdeps/i386/i686/multiarch/strstr-c.c
trunk/libc/sysdeps/i386/i686/multiarch/wcschr.S
trunk/libc/sysdeps/i386/i686/multiarch/wcscmp.S
trunk/libc/sysdeps/i386/i686/multiarch/wcscpy.S
trunk/libc/sysdeps/i386/i686/multiarch/wcslen.S
trunk/libc/sysdeps/i386/i686/multiarch/wcsrchr.S
trunk/libc/sysdeps/i386/i686/multiarch/wmemcmp.S
trunk/libc/sysdeps/posix/clock_getres.c
trunk/libc/sysdeps/posix/opendir.c
trunk/libc/sysdeps/unix/clock_gettime.c
trunk/libc/sysdeps/unix/clock_nanosleep.c
trunk/libc/sysdeps/unix/clock_settime.c
trunk/libc/sysdeps/unix/sysv/linux/Makefile
trunk/libc/sysdeps/unix/sysv/linux/_G_config.h
trunk/libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c
trunk/libc/sysdeps/unix/sysv/linux/clock_nanosleep.c
trunk/libc/sysdeps/unix/sysv/linux/i386/get_clockfreq.c
trunk/libc/sysdeps/unix/sysv/linux/i386/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/powerpc/Makefile
trunk/libc/sysdeps/unix/sysv/linux/powerpc/get_clockfreq.c
trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/s390/bits/fcntl.h
trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/sh/bits/fcntl.h
trunk/libc/sysdeps/unix/sysv/linux/sh/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h
trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c
trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/x86/bits/fcntl.h
trunk/libc/sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist
trunk/libc/sysdeps/unix/sysv/linux/x86_64/x32/nptl/libc.abilist
trunk/libc/sysdeps/x86/bits/byteswap.h
trunk/libc/sysdeps/x86_64/multiarch/bcopy.S
trunk/libc/sysdeps/x86_64/multiarch/bzero.S
trunk/libc/sysdeps/x86_64/multiarch/memcmp.S
trunk/libc/sysdeps/x86_64/multiarch/memcpy.S
trunk/libc/sysdeps/x86_64/multiarch/memcpy_chk.S
trunk/libc/sysdeps/x86_64/multiarch/memmove.c
trunk/libc/sysdeps/x86_64/multiarch/memmove_chk.c
trunk/libc/sysdeps/x86_64/multiarch/mempcpy.S
trunk/libc/sysdeps/x86_64/multiarch/mempcpy_chk.S
trunk/libc/sysdeps/x86_64/multiarch/memset.S
trunk/libc/sysdeps/x86_64/multiarch/memset_chk.S
trunk/libc/sysdeps/x86_64/multiarch/rawmemchr.S
trunk/libc/sysdeps/x86_64/multiarch/stpcpy.S
trunk/libc/sysdeps/x86_64/multiarch/stpncpy.S
trunk/libc/sysdeps/x86_64/multiarch/strcasecmp_l.S
trunk/libc/sysdeps/x86_64/multiarch/strcasestr-c.c
trunk/libc/sysdeps/x86_64/multiarch/strcat.S
trunk/libc/sysdeps/x86_64/multiarch/strchr.S
trunk/libc/sysdeps/x86_64/multiarch/strcmp-sse42.S
trunk/libc/sysdeps/x86_64/multiarch/strcmp.S
trunk/libc/sysdeps/x86_64/multiarch/strcpy.S
trunk/libc/sysdeps/x86_64/multiarch/strcspn.S
trunk/libc/sysdeps/x86_64/multiarch/strlen.S
trunk/libc/sysdeps/x86_64/multiarch/strncase_l.S
trunk/libc/sysdeps/x86_64/multiarch/strncat.S
trunk/libc/sysdeps/x86_64/multiarch/strncmp.S
trunk/libc/sysdeps/x86_64/multiarch/strncpy.S
trunk/libc/sysdeps/x86_64/multiarch/strnlen.S
trunk/libc/sysdeps/x86_64/multiarch/strpbrk.S
trunk/libc/sysdeps/x86_64/multiarch/strrchr.S
trunk/libc/sysdeps/x86_64/multiarch/strspn.S
trunk/libc/sysdeps/x86_64/multiarch/strstr-c.c
trunk/libc/sysdeps/x86_64/multiarch/wcscpy.S
trunk/libc/sysdeps/x86_64/multiarch/wmemcmp.S
trunk/libc/wcsmbs/Makefile
Propchange: trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Oct 25 17:18:12 2012
@@ -1,1 +1,1 @@
-/fsf/trunk:15224-21108
+/fsf/trunk:15224-21352
Modified: trunk/libc/ChangeLog
==============================================================================
--- trunk/libc/ChangeLog (original)
+++ trunk/libc/ChangeLog Thu Oct 25 17:18:12 2012
@@ -1,3 +1,705 @@
+2012-10-24 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+ Jim Blandy <jimb@xxxxxxxxxxxxxxxx>
+
+ * Makeconfig (test-wrapper): New variable,
+ (test-wrapper-env): Likewise.
+ [$(cross-compiling) = yes && $(test-wrapper) != ""]
+ (run-built-tests): Define to yes.
+ (run-program-prefix): Use $(test-wrapper).
+ (built-program-cmd): Likewise.
+ * Rules (make-test-out): Use $(test-wrapper-env) and
+ $(host-built-program-cmd).
+ * elf/Makefile ($(objpfx)order.out): Use $(test-wrapper).
+ ($(objpfx)tst-pathopt.out): Pass $(test-wrapper-env) to
+ tst-pathopt.sh.
+ ($(objpfx)tst-rtld-load-self.out): Pass $(test-wrapper) and
+ $(test-wrapper-env) to tst-rtld-load-self.sh.
+ ($(objpfx)order2.out): Use $(test-wrapper).
+ ($(objpfx)tst-initorder.out): Likewise.
+ ($(objpfx)tst-initorder2.out): Likewise.
+ ($(objpfx)tst-unused-dep.out): Use $(test-wrapper-env).
+ * elf/tst-pathopt.sh (run_program_prefix): Remove unused variable.
+ (test_wrapper_env): New variable. Use it to run ld.so.
+ * elf/tst-rtld-load-self.sh (test_wrapper): New variable.
+ Use it to run ld.so.
+ (test_wrapper_env): Likewise.
+ * iconvdata/Makefile ($(objpfx)iconv-test.out): Pass
+ $(test-wrapper) to run-iconv-test.sh.
+ * iconvdata/run-iconv-test.sh (test_wrapper): New variable.
+ (ICONV): Use $test_wrapper.
+ * posix/Makefile ($(objpfx)globtest.out): Pass
+ $(run-via-rtld-prefix), $(test-wrapper) and $(test-wrapper-env) to
+ globtest.sh, not $(run-program-prefix).
+ * posix/globtest.sh (run_via_rtld_prefix): New variable.
+ (test_wrapper): Likewise.
+ (test_wrapper_env): Likewise. Use it to run globtest with HOME
+ set together with run_via_rtld_prefix.
+ (run_program_prefix): Define in terms of test_wrapper and
+ run_via_rtld_prefix.
+
+2012-10-24 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * nscd/Makefile ($(objpfx)nscd): Remove librt dependency.
+ * posix/Makefile ($(objpfx)tst-regex, $(objpfx)tst-regex2):
+ Targets removed.
+
+ [BZ #14743]
+ * include/time.h: Remove librt_hidden_proto (clock_gettime).
+ Declare __clock_getres, __clock_gettime, __clock_settime,
+ __clock_nanosleep, and __clock_getcpuclockid.
+ * rt/clock_gettime.c: Define __clock_gettime as an alias.
+ Remove librt_hidden_def (clock_gettime).
+ * sysdeps/unix/clock_gettime.c: Likewise.
+ * rt/clock_getcpuclockid.c: Define __clock_getcpuclockid as an alias.
+ * sysdeps/unix/sysv/linux/clock_getcpuclockid.c: Likewise.
+ * rt/clock_getres.c: Define __clock_getres as an alias.
+ * sysdeps/posix/clock_getres.c: Likewise.
+ * rt/clock_settime.c: Define __clock_settime as an alias.
+ * sysdeps/unix/clock_settime.c: Likewise.
+ * rt/clock_nanosleep.c: Define __clock_nanosleep as an alias.
+ * sysdeps/unix/clock_nanosleep.c: Likewise.
+ * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
+ * rt/clock-compat.c: New file.
+ * rt/Makefile (librt-routines): Add clock-compat and move
+ $(clock-routines) to ...
+ (routines): ... here, new variable.
+ * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines):
+ Don't add get_clockfreq here.
+ * rt/Versions (libc: GLIBC_2.17): New version set.
+ Add clock_* symbols here.
+ (libc: GLIBC_PRIVATE): New version set. Add __clock_* symbols here.
+ * sysdeps/unix/sysv/linux/i386/nptl/libc.abilist
+ (GLIBC_2.17): Add clock_* symbols.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/sh/nptl/libc.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist:
+ Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist:
+ Likewise.
+ * sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/x86_64/x32/nptl/libc.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist: Likewise.
+ * NEWS: Mention the move.
+
+ * sysdeps/unix/sysv/linux/i386/get_clockfreq.c (__get_clockfreq):
+ Use __open, __read, __close rather than their public counterparts.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c
+ (__get_clockfreq_via_cpuinfo): Likewise.
+ (__get_clockfreq_via_proc_openprom): Likewise, and __getdirentries.
+ (__get_clockfreq_via_dev_openprom): Likewise, and __ioctl.
+
+ * config.h.in (HAVE_IFUNC): New #undef.
+ * configure.in: Define it if libc_cv_ld_gnu_indirect_function
+ was successful.
+ * configure: Regenerated.
+
+2012-10-24 Mike Frysinger <vapier@xxxxxxxxxx>
+
+ * configure.in: Move READELF check to start of file.
+ (libc_cv_ld_gnu_indirect_function): Change to a link test. Rename from
+ libc_cv_asm_gnu_indirect_function in the process.
+ * configure: Regenerated.
+
+2012-10-24 Mike Frysinger <vapier@xxxxxxxxxx>
+
+ * configure.in (libc_cv_gcc_static_libgcc): Drop -q flag to grep and
+ send the output to /dev/null.
+ (libc_cv_cc_with_libunwind): Likewise.
+ (libc_cv_as_noexecstack): Likewise.
+ * configure: Regenerate.
+
+2012-10-24 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * io/ftwtest-sh (tmp): Define to ${objpfx}io, not using `pwd`.
+
+ * posix/globtest.sh (TMPDIR): Do not set.
+ (testdir): Define using ${common_objpfx}posix not $TMPDIR.
+ (testout): Likewise.
+
+2012-10-24 Andreas Jaeger <aj@xxxxxxx>
+
+ * io/fcntl.h: Always define mode_t, off_t, pid_t and use these
+ types for creat, creat64, lockf, posix_fadvise, posix_fallocate.
+ [__USE_LARGEFILE64 && !__off64_t_defined]: Define off64_t.
+ [__USE_LARGEFILE64]: Use off64_t in declaration of lock64,
+ posix_fadvise64, posix_fallocate64.
+
+ * sysdeps/unix/sysv/linux/x86/bits/fcntl.h (F_GETLK, F_SETLK)
+ (F_SETLKW) [__x86_64]: Remove, provided by <bits/fcntl-linux.h>.
+ (F_GETLK, F_SETLK, F_SETLKW) [!__USE_FILE_OFFSET64 && !__x86_64__]:
+ Likewise.
+ (F_GETLK, F_SETLK, F_SETLKW) [__USE_FILE_OFFSET64 && ! __x86_64__]:
+ Likewise.
+ (F_GETLK64, F_SETLK64, F_SETLKW64) [!__x86_64__]: Likewise.
+
+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_GETLK, F_SETLK)
+ (F_SETLKW) [__USE_FILE_OFFSET64]: Remove, provided by
+ <bits/fcntl-linux.h>.
+ (F_GETLK64, F_SETLK64, F_SETLKW64) [__WORDSIZE == 64]: Likewise.
+
+ * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_DUPFD, F_GETFD)
+ (F_SETFD, F_GETFL, F_SETFL): Remove, provided by <bits/fcntl-linux.h>.
+ (F_GETLK, F_SETLK, F_SETLKW) [__WORDSIZE == 64]: Likewise.
+ (F_GETLK, F_SETLK, F_SETLKW, F_GETLK64, F_SETLK64, F_SETLKW64)
+ [__WORDSIZE != 64]: Likewise.
+
+2012-10-23 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * Makeconfig (run-built-tests): New variable.
+ * Rules [$(cross-compiling) = yes]: Change condition to
+ [$(run-built-tests) = no].
+ * catgets/Makefile [$(cross-compiling) != yes]: Change condition
+ to [$(run-built-tests) = yes].
+ * elf/Makefile [$(cross-compiling) = no]: Likewise
+ * grp/Makefile [$(cross-compiling) = no]: Likewise.
+ * iconv/Makefile [$(cross-compiling) != yes]: Likewise.
+ * iconvdata/Makefile [$(cross-compiling) = no]: Likewise.
+ * intl/Makefile [$(cross-compiling) = no]: Likewise.
+ * io/Makefile [$(cross-compiling) = no]: Likewise.
+ * libio/Makefile [$(cross-compiling) = no]: Likewise.
+ * malloc/Makefile [$(cross-compiling) = no]: Likewise.
+ * misc/Makefile [$(cross-compiling) = no]: Likewise.
+ * posix/Makefile [$(cross-compiling) = no]: Likewise.
+ * resolv/Makefile [$(cross-compiling) = no]: Likewise.
+ * stdio-common/Makefile [$(cross-compiling) = no]: Likewise.
+ * stdlib/Makefile [$(cross-compiling) = no]: Likewise.
+ * string/Makefile [$(cross-compiling) = no]: Likewise.
+
+ * posix/Makefile ($(objpfx)globtest.out): Pass
+ $(run-program-prefix) to globtest.sh, not $(elf-objpfx) and
+ $(rtld-installed-name).
+ * posix/globtest.sh (elf_objpfx): Remove variable.
+ (rtld_installed_name): Likewise.
+ (library_path): Likewise.
+ (run_program_prefix): New variable. Use for running globtest
+ binary.
+
+2012-10-23 Jim Blandy <jimb@xxxxxxxxxxxxxxxx>
+ Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * Makeconfig (host-built-program-cmd): New variable.
+ * elf/Makefile (tst-stackguard1-ARGS): Use
+ $(host-built-program-cmd).
+ * posix/Makefile (tst-exec-ARGS): Use $(host-built-program-cmd).
+ (tst-spawn-ARGS): Likewise.
+ * rt/Makefile (tst-mqueue7-ARGS): Use $(host-built-program-cmd).
+
+2012-10-23 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+ Jim Blandy <jimb@xxxxxxxxxxxxxxxx>
+
+ * Makeconfig (run-via-rtld-prefix): New variable.
+ (run-program-prefix): Define in terms of $(run-via-rtld-prefix).
+ (built-program-cmd): Likewise.
+
+2012-10-22 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/bits/fcntl-linux.h (O_RSYNC): Define to
+ __O_RSYNC if it exists, otherwise to O_SYNC.
+
+2012-10-22 Jim Blandy <jimb@xxxxxxxxxxxxxxxx>
+ Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * iconvdata/run-iconv-test.sh: Redirect iconv stdin in loops from
+ /dev/null.
+ * iconvdata/tst-tables.sh: Redirect tst-table.sh stdin in loop
+ from /dev/null
+ * posix/tst-getconf.sh: Redirect getconf stdin in loop from
+ /dev/null.
+
+2012-10-22 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (__O_LARGEFILE):
+ Define always.
+ * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (__O_LARGEFILE): Likewise.
+
+ * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
+ bits/fcntl-linux.h.
+
+ * sysdeps/unix/sysv/linux/bits/fcntl-linux.h (F_GETLK, F_SETLK)
+ (F_SETLKW) [!F_GETLK]: Define values for [!__USE_FILE_OFFSET64].
+
+ * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_LARGEFILE): Rename
+ to __O_LARGEFILE.
+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_LARGEFILE): Rename
+ to __O_LARGEFILE.
+
+2012-10-21 Jim Blandy <jimb@xxxxxxxxxxxxxxxx>
+ Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * config.make.in (NM): New variable.
+
+2012-10-21 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Remove all
+ definitions and declarations that are provided by
+ <bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.
+
+2012-10-20 H.J. Lu <hongjiu.lu@xxxxxxxxx>
+
+ [BZ #14683]
+ * elf/Makefile (tests-static): Add tst-leaks1-static.
+ (tests): Also depend on $(objpfx)tst-leaks1-static-mem.
+ ($(objpfx)tst-leaks1-static): New rule.
+ ($(objpfx)tst-leaks1-static-mem): Likewise.
+ (tst-leaks1-static-ENV): New macro.
+ * elf/dl-open.c (dl_open_worker): Check the main application
+ only if SHARED is defined.
+ * elf/tst-leaks1-static.c: New file.
+
+2012-10-20 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/bits/fcntl-linux.h: New file, contains
+ generic values for Linux.
+ * sysdeps/unix/sysv/linux/x86/bits/fcntl.h: Remove all definitions
+ and declarations that are provided by <bits/fcntl-linux.h> and
+ include <bits/fcntl-linux.h>.
+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
+
+2012-10-20 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * io/fcntl.h: Move include of <bits/types.h> to the top and
+ include it unconditionally.
+
+2012-10-20 H.J. Lu <hongjiu.lu@xxxxxxxxx>
+
+ * wcsmbs/Makefile (tests-ifunc): New variable.
+ (tests): Add $(tests-ifunc).
+ * wcsmbs/test-wcschr-ifunc.c: New file.
+ * wcsmbs/test-wcscmp-ifunc.c: Likewise.
+ * wcsmbs/test-wcscpy-ifunc.c: Likewise.
+ * wcsmbs/test-wcslen-ifunc.c: Likewise.
+ * wcsmbs/test-wcsrchr-ifunc.c: Likewise.
+ * wcsmbs/test-wmemcmp-ifunc.c: Likewise.
+
+ * string/Makefile (tests-ifunc): New variable.
+ (tests): Add $(tests-ifunc).
+ * string/test-memccpy.c (TEST_NAME): New macro.
+ * string/test-memchr.c (TEST_NAME): Likewise.
+ * string/test-memcmp.c (TEST_NAME): Likewise.
+ * string/test-memcpy.c (TEST_NAME): Likewise.
+ * string/test-memmem.c (TEST_NAME): Likewise.
+ * string/test-memmove.c (TEST_NAME): Likewise.
+ * string/test-memset.c (TEST_NAME): Likewise.
+ * string/test-rawmemchr.c (TEST_NAME): Likewise.
+ * string/test-stpcpy.c (TEST_NAME): Likewise.
+ * string/test-stpncpy.c (TEST_NAME): Likewise.
+ * string/test-strcasecmp.c (TEST_NAME): Likewise.
+ * string/test-strcasestr.c (TEST_NAME): Likewise.
+ * string/test-strcat.c (TEST_NAME): Likewise.
+ * string/test-strchr.c (TEST_NAME): Likewise.
+ * string/test-strcmp.c(TEST_NAME): Likewise.
+ * string/test-strcpy.c (TEST_NAME): Likewise.
+ * string/test-strcspn.c (TEST_NAME): Likewise.
+ * string/test-strlen.c (TEST_NAME): Likewise.
+ * string/test-strncasecmp.c (TEST_NAME): Likewise.
+ * string/test-strncmp.c (TEST_NAME): Likewise.
+ * string/test-strncpy.c (TEST_NAME): Likewise.
+ * string/test-strnlen.c (TEST_NAME): Likewise.
+ * string/test-strpbrk.c (TEST_NAME): Likewise.
+ * string/test-strrchr.c (TEST_NAME): Likewise.
+ * string/test-strspn.c (TEST_NAME): Likewise.
+ * string/test-strstr.c (TEST_NAME): Likewise.
+ * string/test-bcopy-ifunc.c: New file.
+ * string/test-bzero-ifunc.c: Likewise.
+ * string/test-memccpy-ifunc.c: Likewise.
+ * string/test-memchr-ifunc.c: Likewise.
+ * string/test-memcmp-ifunc.c: Likewise.
+ * string/test-memcpy-ifunc.c: Likewise.
+ * string/test-memmem-ifunc.c: Likewise.
+ * string/test-memmove-ifunc.c: Likewise.
+ * string/test-mempcpy-ifunc.c: Likewise.
+ * string/test-memset-ifunc.c: Likewise.
+ * string/test-rawmemchr-ifunc.c: Likewise.
+ * string/test-stpcpy-ifunc.c: Likewise.
+ * string/test-stpncpy-ifunc.c: Likewise.
+ * string/test-strcasecmp-ifunc.c: Likewise.
+ * string/test-strcasestr-ifunc.c: Likewise.
+ * string/test-strcat-ifunc.c: Likewise.
+ * string/test-strchr-ifunc.c: Likewise.
+ * string/test-strchrnul-ifunc.c: Likewise.
+ * string/test-strcmp-ifunc.c: Likewise.
+ * string/test-strcpy-ifunc.c: Likewise.
+ * string/test-strcspn-ifunc.c: Likewise.
+ * string/test-strlen-ifunc.c: Likewise.
+ * string/test-strncasecmp-ifunc.c: Likewise.
+ * string/test-strncat-ifunc.c: Likewise.
+ * string/test-strncmp-ifunc.c: Likewise.
+ * string/test-strncpy-ifunc.c: Likewise.
+ * string/test-strnlen-ifunc.c: Likewise.
+ * string/test-strpbrk-ifunc.c: Likewise.
+ * string/test-strrchr-ifunc.c: Likewise.
+ * string/test-strspn-ifunc.c: Likewise.
+ * string/test-strstr-ifunc.c: Likewise.
+
+ * debug/Makefile (tests-ifunc): New variable.
+ (tests): Add $(tests-ifunc).
+ * debug/test-stpcpy_chk.c (TEST_NAME): New macro.
+ * debug/test-strcpy_chk.c (TEST_NAME): Likewise.
+ * debug/test-stpcpy_chk-ifunc.c: New file.
+ * debug/test-strcpy_chk-ifunc.c: Likewise.
+
+2012-10-20 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
+
+ [BZ #13601]
+ * elf/dl-load.c (open_verify): Retry read if the entire ELF
+ header is not read in.
+
+2012-10-19 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * io/Makefile ($(objpfx)ftwtest.out): Depend on ftwtest-sh. Pass
+ script to $(SHELL) as $<. Pass $(common-objpfx) to script
+ directly. Pass built executable to script as
+ $(built-program-cmd).
+ * io/ftwtest-sh (ldso): Remove variable. Run ftwtest directly as
+ $testprogram without using LD_LIBRARY_PATH and $ldso.
+
+ * grp/Makefile ($(objpfx)tst_fgetgrent.out): Pass
+ $(run-program-prefix) to tst_fgetgrent.sh, not $(elf-objpfx) and
+ $(rtld-installed-name).
+ * grp/tst_fgetgrent.sh (elf_objpfx): Remove variable.
+ (rtld_installed_name): Likewise.
+ (library_path): Likewise.
+ (run_program_prefix): New variable. Use it to run tst_fgetgrent.
+ * iconvdata/Makefile ($(objpfx)tst-tables.out): Pass
+ $(run-program-prefix) to tst-tables.sh.
+ * iconvdata/tst-table.sh (run_program_prefix): New variable. Use
+ it to run tst-table-from and tst-table-to.
+ * iconvdata/tst-tables.sh (run_program_prefix): New variable.
+ Pass it to tst-table.sh.
+ * intl/Makefile ($(objpfx)tst-gettext.out): Pass
+ $(run-program-prefix) to tst-gettext.sh.
+ ($(objpfx)tst-translit.out): Pass $(run-program-prefix) to
+ tst-translit.sh.
+ ($(objpfx)tst-gettext2.out): Pass $(run-program-prefix) to
+ tst-gettext2.sh.
+ * intl/tst-gettext.sh (run_program_prefix): New variable. Use it
+ to run tst-gettext.
+ * intl/tst-gettext2.sh (run_program_prefix): New variable. Use it
+ to run tst-gettext2.
+ * intl/tst-translit.sh (run_program_prefix): New variable. Use it
+ to run tst-translit.
+ * malloc/Makefile ($(objpfx)tst-mtrace.out): Pass
+ $(run-program-prefix) to tst-mtrace.sh.
+ * malloc/tst-mtrace.sh (run_program_prefix): New variable. Use it
+ to run tst-mtrace.
+ * posix/Makefile ($(objpfx)wordexp-tst.out): Pass
+ $(run-program-prefix) to wordexp-tst.sh, not $(elf-objpfx) and
+ $(rtld-installed-name).
+ * posix/wordexp-tst.sh (elf_objpfx): Remove variable.
+ (rtld_installed_name): Likewise.
+ (run_program_prefix): New variable. Use it to run wordexp-test.
+
+ * Makeconfig (ARCH): Remove all definitions.
+ (machine): Likewise.
+ [ARCH]: Remove conditional code.
+ [!objdir]: Give error.
+ [!objdir] (objpfx): Remove.
+ [!objdir] (common-objpfx): Likewise.
+ [!objdir] (common-objdir): Likewise.
+ * configure.in (config_makefile): Remove. Hardcode Makefile in
+ AC_CONFIG_FILES call.
+ * configure: Regenerated.
+
+ [BZ #13888]
+ * io/ftwtest-sh (tmp): Set to use the working directory, not /tmp
+ or TMPDIR.
+ (testout): Likewise.
+
+ * posix/Makefile ($(objpfx)tst-getconf.out): Pass
+ $(built-program-cmd) to tst-getconf.sh, not $(elf-objpfx) and
+ $(rtld-installed-name).
+ * posix/tst-getconf.sh (elf_objpfx): Remove variable.
+ (rtld_installed_name): Likwise.
+ (runit): Remove function.
+ (run_getconf): New variable, Use it for running getconf binary.
+
+2012-10-18 H.J. Lu <hongjiu.lu@xxxxxxxxx>
+
+ [BZ #14716]
+ * string/test-memmem.c (check_result): New function.
+ (do_one_test): Use it.
+ (check1): New function.
+ (test_main): Use it.
+
+2012-10-18 Markus Trippelsdorf <markus@xxxxxxxxxxxxxxx>
+
+ * math/Makefile: Comment on slow compilation of test-tgmath2.c.
+
+2012-10-18 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/generic/_G_config.h (_G_OPEN64): Remove.
+ (_G_LSEEK64): Likewise.
+ (_G_MMAP64): Likewise.
+ (_G_FSTAT64): Likewise.
+ * sysdeps/unix/sysv/linux/_G_config.h (_G_OPEN64): Remove.
+ (_G_LSEEK64): Likewise.
+ (_G_MMAP64): Likewise.
+ (_G_FSTAT64): Likewise.
+ * libio/fileops.c (mmap_remap_check) [_G_MMAP64]: Make code
+ unconditional. Call __mmap64 directly.
+ (mmap_remap_check) [!_G_MMAP64]: Remove conditional code.
+ (mmap_remap_check) [_G_LSEEK64]: Make code unconditional. Call
+ __lseek64 directly.
+ (mmap_remap_check) [!_G_LSEEK64]: Remove conditional code.
+ (decide_maybe_mmap) [_G_MMAP64]: Make code unconditional. Call
+ __mmap64 directly.
+ (decide_maybe_mmap) [!_G_MMAP64]: Remove conditional code.
+ (decide_maybe_mmap) [_G_LSEEK64]: Make code unconditional. Call
+ __lseek64 directly.
+ (decide_maybe_mmap) [!_G_LSEEK64]: Remove conditional code.
+ (_IO_file_sync_mmap) [_G_LSEEK64]: Make code unconditional. Call
+ __lseek64 directly.
+ (_IO_file_sync_mmap) [!_G_LSEEK64]: Remove conditional code.
+ (_IO_file_seek) [_G_LSEEK64]: Make code unconditional. Call
+ __lseek64 directly.
+ (_IO_file_seek) [!_G_LSEEK64]: Remove conditional code.
+ (_IO_file_stat) [_G_FSTAT64]: Make code unconditional. Call
+ __fxstat64 directly.
+ (_IO_file_stat) [!_G_FSTAT64]: Remove conditional code.
+ * libio/freopen64.c (freopen64) [_G_OPEN64]: Make code
+ unconditional.
+ (freopen64) [!_G_OPEN64]: Remove conditional code.
+ * libio/fseeko64.c (fseeko64) [_G_LSEEK64]: Make code
+ unconditional.
+ (fseeko64) [!_G_LSEEK64]: Remove conditional code.
+ * libio/ftello64.c (ftello64) [_G_LSEEK64]: Make code
+ unconditional.
+ (ftello64) [!_G_LSEEK64]: Remove conditional code.
+ * libio/iofgetpos64.c (_IO_new_fgetpos64) [_G_LSEEK64]: Make code
+ unconditional.
+ (_IO_new_fgetpos64) [!_G_LSEEK64]: Remove conditional code.
+ * libio/iofopen64.c (_IO_fopen64) [_G_OPEN64]: Make code
+ unconditional.
+ (_IO_fopen64) [!_G_OPEN64]: Remove conditional code.
+ * libio/iofsetpos64.c (_IO_new_fsetpos64) [_G_LSEEK64]: Make code
+ unconditional.
+ (_IO_new_fsetpos64) [!_G_LSEEK64]: Remove conditional code.
+ * libio/oldiofgetpos64.c (_IO_old_fgetpos64) [_G_LSEEK64]: Make code
+ unconditional.
+ (_IO_old_fgetpos64) [!_G_LSEEK64]: Remove conditional code.
+ * libio/oldiofsetpos64.c (_IO_old_fsetpos64) [_G_LSEEK64]: Make code
+ unconditional.
+ (_IO_old_fsetpos64) [!_G_LSEEK64]: Remove conditional code.
+
+2012-10-18 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
+
+ [BZ #12140]
+ * manual/memory.texi (Malloc Tunable Parameters): Add note
+ about free list pointers overwriting some perturb bytes.
+ Wording suggested by Roland McGrath.
+
+2012-10-17 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * math/libm-test.inc (gamma_test): Do not call feclearexcept.
+ (lgamma_test): Likewise.
+ (tgamma_test): Likewise.
+
+2012-10-16 Florian Weimer <fweimer@xxxxxxxxxx>
+
+ [BZ #14700]
+ * sysdeps/posix/opendir.c (MAX_DIR_BUFFER_SIZE): New constant.
+ (__alloc_dir): Limit buffer to MAX_DIR_BUFFER_SIZE.
+
+2012-10-16 Maxim Kuvyrkov <maxim@xxxxxxxxxxxxxxxx>
+
+ * NEWS: Mention BZ #14716.
+ * string/str-two-way.h (two_way_short_needle): Fix thinko introduced
+ when removing AVAILABLE1_USES_J macro.
+
+2012-10-12 H.J. Lu <hongjiu.lu@xxxxxxxxx>
+
+ * sysdeps/x86/bits/byteswap.h: Include <bits/types.h>.
+ (__bswap_64): __uint64_t for unsigned 64-bit int.
+
+2012-10-12 Andreas Schwab <schwab@xxxxxxxxxxxxxx>
+
+ * include/string.h (memmem): Declare libc hidden alias.
+ * string/memmem.c (memmem): Define libc hidden alias.
+ * sysdeps/unix/sysv/linux/powerpc/get_clockfreq.c: Use __open,
+ __read, __close instead of open, read, close.
+
+2012-10-11 H.J. Lu <hongjiu.lu@xxxxxxxxx>
+
+ * sysdeps/x86_64/multiarch/ifunc-impl-list.c: New file.
+ * sysdeps/x86_64/multiarch/memcmp.S (__memcmp_sse2): Make it
+ global and hidden.
+ * sysdeps/x86_64/multiarch/memcpy.S (__memcpy_sse2): Likewise.
+ * sysdeps/x86_64/multiarch/mempcpy.S (__mempcpy_sse2): Likewise.
+ * sysdeps/x86_64/multiarch/rawmemchr.S (__rawmemchr_sse42):
+ Likewise.
+ (__rawmemchr_sse2): Likewise.
+ * sysdeps/x86_64/multiarch/strcat.S (STRCAT_SSE2): Likewise.
+ * sysdeps/x86_64/multiarch/strchr.S (__strchr_sse42): Likewise.
+ (__strchr_sse2): Likewise.
+ * sysdeps/x86_64/multiarch/strcmp-sse42.S (STRCMP_SSE42): Likewise.
+ * sysdeps/x86_64/multiarch/strcmp.S (STRCMP_SSE2): Likewise.
+ (__strcasecmp_sse2): Likewise.
+ (__strncasecmp_sse2): Likewise.
+ * sysdeps/x86_64/multiarch/strcpy.S (STRCPY_SSE2): Likewise.
+ * sysdeps/x86_64/multiarch/strlen.S (__strlen_sse2): Likewise.
+ * sysdeps/x86_64/multiarch/strnlen.S (__strnlen_sse2): Likewise.
+ * sysdeps/x86_64/multiarch/strrchr.S (__strrchr_sse42): Likewise.
+ (__strrchr_sse2): Likewise.
+ * sysdeps/x86_64/multiarch/memcmp.S: Add comments for
+ ifunc-impl-list.c.
+ * sysdeps/x86_64/multiarch/memcpy.S: Likewise.
+ * sysdeps/x86_64/multiarch/memcpy_chk.S: Likewise.
+ * sysdeps/x86_64/multiarch/memmove.c: Likewise.
+ * sysdeps/x86_64/multiarch/memmove_chk.c: Likewise.
+ * sysdeps/x86_64/multiarch/mempcpy.S: Likewise.
+ * sysdeps/x86_64/multiarch/mempcpy_chk.S: Likewise.
+ * sysdeps/x86_64/multiarch/memset.S: Likewise.
+ * sysdeps/x86_64/multiarch/memset_chk.S: Likewise.
+ * sysdeps/x86_64/multiarch/rawmemchr.S: Likewise.
+ * sysdeps/x86_64/multiarch/stpcpy.S: Likewise.
+ * sysdeps/x86_64/multiarch/stpncpy.S: Likewise.
+ * sysdeps/x86_64/multiarch/strcasecmp_l.S: Likewise.
+ * sysdeps/x86_64/multiarch/strcasestr-c.c: Likewise.
+ * sysdeps/x86_64/multiarch/strcat.S: Likewise.
+ * sysdeps/x86_64/multiarch/strchr.S: Likewise.
+ * sysdeps/x86_64/multiarch/strcmp.S: Likewise.
+ * sysdeps/x86_64/multiarch/strcpy.S: Likewise.
+ * sysdeps/x86_64/multiarch/strcspn.S: Likewise.
+ * sysdeps/x86_64/multiarch/strlen.S: Likewise.
+ * sysdeps/x86_64/multiarch/strncase_l.S: Likewise.
+ * sysdeps/x86_64/multiarch/strncat.S: Likewise.
+ * sysdeps/x86_64/multiarch/strncmp.S: Likewise.
+ * sysdeps/x86_64/multiarch/strncpy.S: Likewise.
+ * sysdeps/x86_64/multiarch/strnlen.S: Likewise.
+ * sysdeps/x86_64/multiarch/strpbrk.S: Likewise.
+ * sysdeps/x86_64/multiarch/strrchr.S: Likewise.
+ * sysdeps/x86_64/multiarch/strspn.S: Likewise.
+ * sysdeps/x86_64/multiarch/strstr-c.c: Likewise.
+ * sysdeps/x86_64/multiarch/wcscpy.S: Likewise.
+ * sysdeps/x86_64/multiarch/wmemcmp.S: Likewise.
+
+ * sysdeps/i386/i686/multiarch/bcopy.S (__bcopy_ia32): Make it
+ global and hidden.
+ * sysdeps/i386/i686/multiarch/bzero.S (__bzero_ia32): Likewise.
+ * sysdeps/i386/i686/multiarch/memcmp.S (__memcmp_ia32): Likewise.
+ * sysdeps/i386/i686/multiarch/memcpy.S (__memcpy_ia32): Likewise.
+ * sysdeps/i386/i686/multiarch/memmove.S (__memmove_ia32):
+ Likewise.
+ * sysdeps/i386/i686/multiarch/mempcpy.S (__mempcpy_ia32):
+ Likewise.
+ * sysdeps/i386/i686/multiarch/strcat.S (STRCAT_IA32): Likewise.
+ * sysdeps/i386/i686/multiarch/strcmp.S (__STRCMP_IA32): Likewise.
+ * sysdeps/i386/i686/multiarch/strcpy.S (STRCPY_IA32): Likewise.
+ * sysdeps/i386/i686/multiarch/bcopy.S: Add comments for
+ ifunc-impl-list.c.
+ * sysdeps/i386/i686/multiarch/bzero.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memchr.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memcmp.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memcpy.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memcpy_chk.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memmove.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memmove_chk.S: Likewise.
+ * sysdeps/i386/i686/multiarch/mempcpy.S: Likewise.
+ * sysdeps/i386/i686/multiarch/mempcpy_chk.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memrchr.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memset.S: Likewise.
+ * sysdeps/i386/i686/multiarch/memset_chk.S: Likewise.
+ * sysdeps/i386/i686/multiarch/rawmemchr.S: Likewise.
+ * sysdeps/i386/i686/multiarch/stpcpy.S: Likewise.
+ * sysdeps/i386/i686/multiarch/stpncpy.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strcasecmp.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strcasecmp_l.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strcasestr-c.c: Likewise.
+ * sysdeps/i386/i686/multiarch/strcat.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strchr.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strcmp.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strcpy.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strcspn.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strlen.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strncase.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strncase_l.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strncat.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strncmp.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strncpy.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strnlen.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strpbrk.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strrchr.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strspn.S: Likewise.
+ * sysdeps/i386/i686/multiarch/strstr-c.c: Likewise.
+ * sysdeps/i386/i686/multiarch/wcschr.S: Likewise.
+ * sysdeps/i386/i686/multiarch/wcscmp.S: Likewise.
+ * sysdeps/i386/i686/multiarch/wcscpy.S: Likewise.
+ * sysdeps/i386/i686/multiarch/wcslen.S: Likewise.
+ * sysdeps/i386/i686/multiarch/wcsrchr.S: Likewise.
+ * sysdeps/i386/i686/multiarch/wmemcmp.S: Likewise.
+ * sysdeps/i386/i686/multiarch/ifunc-impl-list.c: New file.
+
+ * Rules [$(multi-arch) = no] (tests): Filter out $(tests-ifunc).
+ [$(multi-arch) = no] (xtests): Filter out $(xtests-ifunc).
+ * include/ifunc-impl-list.h: New file.
+ * misc/ifunc-impl-list.c: Likewise.
+ * misc/Makefile (routines): Add ifunc-impl-list.
+ * misc/Versions (GLIBC_PRIVATE): Add __libc_ifunc_impl_list.
+ * string/test-string.h: Include <ifunc-impl-list.h>.
+ [TEST_IFUNC && TEST_NAME] (func_list, func_count, impl_count,
+ impl_array): New variables.
+ (FOR_EACH_IMPL): Support func_list if TEST_IFUNC and TEST_NAME
+ are defined.
+ (test_init): Call __libc_ifunc_impl_list to initialize
+ func_list if TEST_IFUNC and TEST_NAME are defined.
+
+ * string/Makefile (strop-tests): Add bcopy and bzero.
+ * string/test-bcopy.c: New file.
+ * string/test-bzero.c: Likewise.
+ * string/test-memmove.c: Support bcopy test if TEST_BCOPY is
+ defined.
+ * string/test-memset.c: Support bzero test if TEST_BZERO is
+ defined.
+ * sysdeps/x86_64/multiarch/bcopy.S (bcopy): Jump to
+ __libc_memmove.
+ * sysdeps/x86_64/multiarch/bzero.S (__bzero): Jump to
+ __libc_memset.
+ * sysdeps/x86_64/multiarch/memset.S (__libc_memset): New alias
+ of memset.
+
+2012-10-10 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * configure.in: Run $CXX, not cc1plus, to locate C++ headers.
+ * configure: Regenerated.
+
+ * Makeconfig (+link-static-before-libc): Don't include
+ $(link-static-libc).
+
+ * libio/libio.h (_IO_pos_t): Remove.
+
+2012-10-10 Alexandre Oliva <aoliva@xxxxxxxxxx>
+
+ * NEWS: Add note about FIPS mode. Wording suggested by Roland
+ McGrath.
+
+2012-10-10 Alexandre Oliva <aoliva@xxxxxxxxxx>
+
+ * crypt/crypt-entry.c: Include fips-private.h.
+ (__crypt_r, __crypt): Disable MD5 and DES if FIPS is enabled.
+ * crypt/md5c-test.c (main): Tolerate disabled MD5.
+ * sysdeps/unix/sysv/linux/fips-private.h: New file.
+ * sysdeps/generic/fips-private.h: New file, dummy fallback.
+
+2012-10-10 Alexandre Oliva <aoliva@xxxxxxxxxx>
+
+ * crypt/crypt-private.h: Include stdbool.h.
+ (_ufc_setup_salt_r): Return bool.
+ * crypt/crypt-entry.c: Include errno.h.
+ (__crypt_r): Return NULL with EINVAL for bad salt.
+ * crypt/crypt_util.c (bad_for_salt): New.
+ (_ufc_setup_salt_r): Check that salt is long enough and within
+ the specified alphabet.
+ * crypt/badsalttest.c: New file.
+ * crypt/Makefile (tests): Add it.
+ ($(objpfx)badsalttest): New.
+
+2012-10-09 Maxim Kuvyrkov <maxim@xxxxxxxxxxxxxxxx>
+
+ * NEWS: Add entry for BZ #14602.
+
2012-10-09 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
* math/gen-libm-test.pl (parse_args): Handle comparison macros as
Modified: trunk/libc/Makeconfig
==============================================================================
--- trunk/libc/Makeconfig (original)
+++ trunk/libc/Makeconfig Thu Oct 25 17:18:12 2012
@@ -31,31 +31,6 @@
ifdef subdir
.. := ../
-endif
-
-# If config.make exists, the source directory was configured,
-# so don't try to be clever and find another directory to build in.
-ifneq (,$(wildcard $(..)config.make))
-ARCH =
-machine =
-else # Not configured.
-ifndef ARCH
-ifdef machine
-ARCH = $(machine)
-endif # machine
-endif # ARCH
-endif # config.make
-
-# Directory for object files and libc.a. If this is not defined, the
-# object files live in the subdirectories where their sources live, and
-# libc.a lives in the parent directory (this probably doesn't work any
-# more).
-ifdef ARCH
-ifeq ($(filter /%,$(ARCH)),)
-objdir := $(..)$(ARCH)
-else
-objdir = $(ARCH)
-endif
endif
# $(common-objdir) is the place to put objects and
@@ -65,15 +40,7 @@
common-objpfx = $(objdir)/
common-objdir = $(objdir)
else
-objpfx :=
-ifdef ..
-common-objpfx = $(..)
-common-objdir = ..
-else
-# This is a kludge. make wizards might grok.
-common-objpfx = sysdeps/../
-common-objdir = .
-endif
+objdir must be defined by the build-directory Makefile.
endif
# Root of the sysdeps tree.
@@ -434,7 +401,7 @@
$(start-installed-name))\
$(+preinit) $(link-extra-libs-static) \
$(common-objpfx)libc% $(+postinit),$^) \
- $(link-extra-libs-static) $(link-libc-static)
+ $(link-extra-libs-static)
+link-static-after-libc = $(+postctorT) $(+postinit)
+link-static = $(+link-static-before-libc) $(link-libc-static) \
$(+link-static-after-libc)
@@ -597,6 +564,27 @@
csu-objpfx = $(common-objpfx)csu/
elf-objpfx = $(common-objpfx)elf/
+# A command that, prepended to the name and arguments of a program,
+# and run on the build system, causes that program with those
+# arguments to be run on the host for which the library is built.
+ifndef test-wrapper
+test-wrapper = $(cross-test-wrapper)
+endif
+# Likewise, but the name of the program is preceded by
+# <variable>=<value> assignments for environment variables.
+ifndef test-wrapper-env
+test-wrapper-env = $(test-wrapper) env
+endif
+
+# Whether to run test programs built for the library's host system.
+ifndef run-built-tests
+ifeq (yes|,$(cross-compiling)|$(test-wrapper))
+run-built-tests = no
+else
+run-built-tests = yes
+endif
+endif
+
# How to run a program we just linked with our library.
# The program binary is assumed to be $(word 2,$^).
built-program-file = $(dir $(word 2,$^))$(notdir $(word 2,$^))
@@ -606,8 +594,11 @@
$(subst $(empty) ,:,$(strip $(patsubst -Wl$(comma)-rpath-link=%, %,\
$(filter -Wl$(comma)-rpath-link=%,\
$(sysdep-LDFLAGS)))))
-# Never use $(run-via-rtld-prefix) for the statically-linked %-bp test
-# programs, or for tests listed in tests-static or xtests-static.
+# $(run-via-rtld-prefix) is a command that, when prepended to the name
+# of a program built with the newly built library, produces a command
+# that, executed on the host for which the library is built, runs that
+# program. For the statically-linked %-bp test programs, and for
+# tests listed in tests-static or xtests-static, it is empty.
run-via-rtld-prefix = \
$(if $(strip $(filter $(notdir $(built-program-file)), \
$(tests-static) $(xtests-static)) \
@@ -617,14 +608,22 @@
else
run-via-rtld-prefix =
endif
-run-program-prefix = $(cross-test-wrapper) $($*-WRAPPER) \
- $(run-via-rtld-prefix)
-built-program-cmd = $(cross-test-wrapper) $($*-WRAPPER) \
+# $(run-via-rtld-prefix) is a command that, when prepended to the name
+# of a program built with the newly built library, produces a command
+# that, executed on the build system on which "make" is run, runs that
+# program.
+run-program-prefix = $(test-wrapper) $(run-via-rtld-prefix)
+# $(built-program-cmd) is a command that, executed on the build system
+# on which "make" is run, runs the newly built program that is the
+# second dependency of the makefile target in which
+# $(built-program-cmd) is used.
+built-program-cmd = $(test-wrapper) \
$(run-via-rtld-prefix) $(built-program-file)
-
-# Same as built-program-cmd, but without the cross-test-wrapper. Used
-# to run programs from the test machine, as in nptl/tst-cancel7.
-local-built-program-cmd = $(run-via-rtld-prefix) $(built-program-file)
+# $(host-built-program-cmd) is a command that, executed on the host
+# for which the library is built, runs the newly built program that is
+# the second dependency of the makefile target in which
+# $(host-built-program-cmd) is used.
+host-built-program-cmd = $(run-via-rtld-prefix) $(built-program-file)
ifndef LD
LD := ld -X
Modified: trunk/libc/NEWS
==============================================================================
--- trunk/libc/NEWS (original)
+++ trunk/libc/NEWS Thu Oct 25 17:18:12 2012
@@ -10,13 +10,14 @@
* The following bugs are resolved with this release:
1349, 3479, 5044, 5298, 5400, 6530, 6778, 6808, 9685, 9914, 10014, 10038,
- 10631, 11438, 11607, 13412, 13542, 13629, 13679, 13696, 13717, 13741,
- 13939, 13966, 14042, 14090, 14150, 14151, 14154, 14157, 14166, 14173,
- 14195, 14237, 14251, 14252, 14283, 14298, 14303, 14307, 14328, 14331,
- 14336, 14337, 14347, 14349, 14376, 14417, 14459, 14476, 14477, 14505,
- 14510, 14516, 14518, 14519, 14530, 14532, 14538, 14543, 14544, 14545,
- 14557, 14562, 14568, 14576, 14579, 14583, 14587, 14621, 14638, 14645,
- 14648, 14660, 14661.
+ 10631, 11438, 11607, 12140, 13412, 13542, 13601, 13629, 13679, 13696,
+ 13717, 13741, 13939, 13966, 14042, 14090, 14150, 14151, 14154, 14157,
+ 14166, 14173, 14195, 14237, 14251, 14252, 14283, 14298, 14303, 14307,
+ 14328, 14331, 14336, 14337, 14347, 14349, 14376, 14417, 14459, 14476,
+ 14477, 14505, 14510, 14516, 14518, 14519, 14530, 14532, 14538, 14543,
+ 14544, 14545, 14557, 14562, 14568, 14576, 14579, 14583, 14587, 14602,
+ 14621, 14638, 14645, 14648, 14652, 14660, 14661, 14683, 14694, 14716,
+ 14743.
* Support for STT_GNU_IFUNC symbols added for s390 and s390x.
Optimized versions of memcpy, memset, and memcmp added for System z10 and
@@ -48,6 +49,19 @@
the tty file descriptor in /dev/pts or /dev if /proc is not available. This
allows creation of chroots without the procfs mounted on /proc.
+* The `crypt' function now fails if passed salt bytes that violate the
+ specification for those values. On Linux, the `crypt' function will
+ consult /proc/sys/crypto/fips_enabled to determine if "FIPS mode" is
+ enabled, and fail on encrypted strings using the MD5 or DES algorithm
+ when the mode is enabled.
+
+* The `clock_*' suite of functions (declared in <time.h>) is now available
+ directly in the main C library. Previously it was necessary to link with
+ -lrt to use these functions. This change has the effect that a
+ single-threaded program that uses a function such as `clock_gettime' (and
+ is not linked with -lrt) will no longer implicitly load the pthreads
+ library at runtime and so will not suffer the overheads associated with
+ multi-thread support in other code such as the C++ runtime library.
Version 2.16
@@ -75,7 +89,7 @@
14043, 14044, 14048, 14049, 14050, 14053, 14055, 14059, 14064, 14075,
14080, 14083, 14103, 14104, 14109, 14112, 14117, 14122, 14123, 14134,
14153, 14183, 14188, 14199, 14210, 14218, 14229, 14241, 14273, 14277,
- 14278,
+ 14278.
* Support for the x32 ABI on x86-64 added. The x32 target is selected by
configuring glibc with:
Modified: trunk/libc/Rules
==============================================================================
--- trunk/libc/Rules (original)
+++ trunk/libc/Rules Thu Oct 25 17:18:12 2012
@@ -84,22 +84,27 @@
# This makes all the auxiliary and test programs.
.PHONY: others tests
+ifeq ($(multi-arch),no)
+tests := $(filter-out $(tests-ifunc), $(tests))
+xtests := $(filter-out $(xtests-ifunc), $(xtests))
+endif
+
ifeq ($(build-programs),yes)
others: $(addprefix $(objpfx),$(others) $(sysdep-others) $(extra-objs))
else
others: $(addprefix $(objpfx),$(extra-objs))
endif
-# eglibc: ifeq ($(cross-compiling),yes)
-# eglibc: tests: $(addprefix $(objpfx),$(tests) $(test-srcs))
-# eglibc: xtests: tests
-# eglibc: else
+ifeq ($(run-built-tests),no)
+tests: $(addprefix $(objpfx),$(tests) $(test-srcs))
+xtests: tests
+else
ifeq ($(build-bounded),yes)
tests-bp.out = $(tests:%=$(objpfx)%-bp.out)
xtests-bp.out = $(xtests:%=$(objpfx)%-bp.out)
endif
tests: $(tests:%=$(objpfx)%.out) $(tests-bp.out)
xtests: tests $(xtests:%=$(objpfx)%.out) $(xtests-bp.out)
-# eglibc: endif
+endif
ifeq ($(build-programs),yes)
binaries-all-notests = $(others) $(sysdep-others)
@@ -175,8 +180,9 @@
# These are the implicit rules for making test outputs
# from the test programs and whatever input files are present.
-make-test-out = GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \
- $($*-ENV) $(built-program-cmd) $($*-ARGS)
+make-test-out = $(test-wrapper-env) \
+ GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \
+ $($*-ENV) $(host-built-program-cmd) $($*-ARGS)
$(objpfx)%-bp.out: %.input $(objpfx)%-bp
$(make-test-out) > $@ < $(word 1,$^)
$(objpfx)%.out: %.input $(objpfx)%
Modified: trunk/libc/catgets/Makefile
==============================================================================
--- trunk/libc/catgets/Makefile (original)
+++ trunk/libc/catgets/Makefile Thu Oct 25 17:18:12 2012
@@ -52,7 +52,7 @@
tst-catgets-ENV = NLSPATH="$(objpfx)%l/%N.cat" LANG=de
-# eglibc: ifneq ($(cross-compiling),yes)
+ifeq ($(run-built-tests),yes)
ifeq (y,$(OPTION_EGLIBC_CATGETS))
tests: $(objpfx)de/libc.cat $(objpfx)test1.cat $(objpfx)test2.cat \
$(objpfx)test-gencat.out
@@ -84,4 +84,4 @@
$(objpfx)sample.SJIS.cat: sample.SJIS $(objpfx)gencat
GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \
$(built-program-cmd) -H $(objpfx)test-gencat.h < $(word 1,$^) > $@
-# eglibc: endif
+endif
Modified: trunk/libc/config.h.in
==============================================================================
--- trunk/libc/config.h.in (original)
+++ trunk/libc/config.h.in Thu Oct 25 17:18:12 2012
@@ -185,6 +185,9 @@
/* Define if the dynamic linker should consult an ld.so.cache file. */
#undef USE_LDCONFIG
+
+/* Define if STT_GNU_IFUNC support actually works. */
+#undef HAVE_IFUNC
/*
*/
Modified: trunk/libc/configure
==============================================================================
--- trunk/libc/configure (original)
+++ trunk/libc/configure Thu Oct 25 17:18:12 2012
@@ -630,7 +630,6 @@
CXX_SYSINCLUDES
SYSINCLUDES
AUTOCONF
-READELF
AWK
SED
MAKEINFO
@@ -668,6 +667,7 @@
use_default_link
sysheaders
with_fp
+READELF
ac_ct_CXX
CXXFLAGS
CXX
@@ -3405,6 +3405,98 @@
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}readelf", so it can be a program name with args.
+set dummy ${ac_tool_prefix}readelf; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_READELF+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$READELF"; then
+ ac_cv_prog_READELF="$READELF" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_READELF="${ac_tool_prefix}readelf"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+READELF=$ac_cv_prog_READELF
+if test -n "$READELF"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF" >&5
+$as_echo "$READELF" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_READELF"; then
+ ac_ct_READELF=$READELF
+ # Extract the first word of "readelf", so it can be a program name with args.
+set dummy readelf; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_READELF+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_READELF"; then
+ ac_cv_prog_ac_ct_READELF="$ac_ct_READELF" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_READELF="readelf"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_READELF=$ac_cv_prog_ac_ct_READELF
+if test -n "$ac_ct_READELF"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_READELF" >&5
+$as_echo "$ac_ct_READELF" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_READELF" = x; then
+ READELF="false"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ READELF=$ac_ct_READELF
+ fi
+else
+ READELF="$ac_cv_prog_READELF"
+fi
+
if test "`cd $srcdir; /bin/pwd`" = "`/bin/pwd`"; then
as_fn_error $? "you must configure in a separate build directory" "$LINENO" 5
@@ -4119,25 +4211,36 @@
fi
-# For the multi-arch option we need support in the assembler.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for assembler gnu_indirect_function symbol type support" >&5
-$as_echo_n "checking for assembler gnu_indirect_function symbol type support... " >&6; }
-if ${libc_cv_asm_gnu_indirect_function+:} false; then :
+# For the multi-arch option we need support in the assembler & linker.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for assembler and linker STT_GNU_IFUNC support" >&5
+$as_echo_n "checking for assembler and linker STT_GNU_IFUNC support... " >&6; }
+if ${libc_cv_ld_gnu_indirect_function+:} false; then :
$as_echo_n "(cached) " >&6
else
cat > conftest.s <<EOF
.type foo,%gnu_indirect_function
+foo:
+.globl _start
+_start:
+.globl __start
+__start:
+.data
+.long foo
EOF
-if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5;
-then
- libc_cv_asm_gnu_indirect_function=yes
-else
- libc_cv_asm_gnu_indirect_function=no
+libc_cv_ld_gnu_indirect_function=no
+if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
+ -nostartfiles -nostdlib \
+ -o conftest conftest.s 1>&5 2>&5; then
+ # Do a link to see if the backend supports IFUNC relocs.
+ $READELF -r conftest 1>&5
+ LC_ALL=C $READELF -r conftest | grep 'no relocations' >/dev/null || {
+ libc_cv_ld_gnu_indirect_function=yes
+ }
fi
rm -f conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_asm_gnu_indirect_function" >&5
-$as_echo "$libc_cv_asm_gnu_indirect_function" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_ld_gnu_indirect_function" >&5
+$as_echo "$libc_cv_ld_gnu_indirect_function" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether .text pseudo-op must be used" >&5
$as_echo_n "checking whether .text pseudo-op must be used... " >&6; }
@@ -4167,7 +4270,7 @@
$as_echo "yes" >&6; }
fi
-if test x"$libc_cv_asm_gnu_indirect_function" != xyes; then
+if test x"$libc_cv_ld_gnu_indirect_function" != xyes; then
if test x"$multi_arch" = xyes; then
as_fn_error $? "--enable-multi-arch support requires assembler and linker support" "$LINENO" 5
else
@@ -5157,98 +5260,6 @@
if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}readelf", so it can be a program name with args.
-set dummy ${ac_tool_prefix}readelf; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_READELF+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$READELF"; then
- ac_cv_prog_READELF="$READELF" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_READELF="${ac_tool_prefix}readelf"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-READELF=$ac_cv_prog_READELF
-if test -n "$READELF"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF" >&5
-$as_echo "$READELF" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_READELF"; then
- ac_ct_READELF=$READELF
- # Extract the first word of "readelf", so it can be a program name with args.
-set dummy readelf; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_READELF+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_READELF"; then
- ac_cv_prog_ac_ct_READELF="$ac_ct_READELF" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_READELF="readelf"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_READELF=$ac_cv_prog_ac_ct_READELF
-if test -n "$ac_ct_READELF"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_READELF" >&5
-$as_echo "$ac_ct_READELF" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_READELF" = x; then
- READELF="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- READELF=$ac_ct_READELF
- fi
-else
- READELF="$ac_cv_prog_READELF"
-fi
-
-if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}nm", so it can be a program name with args.
set dummy ${ac_tool_prefix}nm; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -5433,10 +5444,9 @@
-isystem `echo $sysheaders | sed 's/:/ -isystem /g'`"
if test -n "$CXX"; then
CXX_SYSINCLUDES=
- cxxversion=`$CXX -dumpversion 2>&5` &&
cxxmachine=`$CXX -dumpmachine 2>&5` &&
- cxxplus=`$CXX -print-prog-name=cc1plus`
- cxxheaders=`$cxxplus -v /dev/null 2>&1 | sed -n '/ \//{p;q;}' | sed 's/ //'`
+ cxxheaders=`$CXX -v -S -x c++ /dev/null -o /dev/null 2>&1 \
+ | sed -n -e '1,/#include/d' -e '/^ \//{p;q;}' | sed 's/ //'`
test "x$cxxheaders" != x && test "x$i" != "x$cxxheaders" &&
CXX_SYSINCLUDES="$CXX_SYSINCLUDES -isystem $cxxheaders \
-isystem $cxxheaders/$cxxmachine -isystem $cxxheaders/backward"
@@ -5476,7 +5486,7 @@
if ${libc_cv_gcc_static_libgcc+:} false; then :
$as_echo_n "(cached) " >&6
else
- if $CC -v -static-libgcc 2>&1 | grep -q 'unrecognized option.*static-libgcc'; then
+ if $CC -v -static-libgcc 2>&1 | grep 'unrecognized option.*static-libgcc' >/dev/null; then
libc_cv_gcc_static_libgcc=
else
libc_cv_gcc_static_libgcc=-static-libgcc
@@ -6235,7 +6245,7 @@
int main (void) { return 0; }
EOF
if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static -o conftest \
- conftest.c -v 2>&1 >/dev/null | grep -q " -lunwind "; then
+ conftest.c -v 2>&1 >/dev/null | grep ' -lunwind ' >/dev/null; then
libc_cv_cc_with_libunwind=yes
else
libc_cv_cc_with_libunwind=no
@@ -6466,7 +6476,7 @@
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; } \
- && grep -q .note.GNU-stack conftest.s \
+ && grep .note.GNU-stack conftest.s >/dev/null \
&& { ac_try='${CC-cc} $ASFLAGS -Wa,--noexecstack
-c -o conftest.o conftest.s 1>&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
@@ -7541,6 +7551,13 @@
fi
+# A sysdeps configure fragment can reset this if IFUNC is not actually
+# usable even though the assembler knows how to generate the symbol type.
+if test x"$libc_cv_ld_gnu_indirect_function" = xyes; then
+ $as_echo "#define HAVE_IFUNC 1" >>confdefs.h
+
+fi
+
# This is far from the AC_ARG_ENABLE that sets it so that a sysdeps
# configure fragment can override the value to prevent this AC_DEFINE.
@@ -7625,18 +7642,12 @@
-if test "`(cd $srcdir; pwd)`" = "`pwd`"; then
- config_makefile=
-else
- config_makefile=Makefile
-fi
-
VERSION=`sed -n -e 's/^#define VERSION "\([^"]*\)"/\1/p' < $srcdir/version.h`
RELEASE=`sed -n -e 's/^#define RELEASE "\([^"]*\)"/\1/p' < $srcdir/version.h`
-ac_config_files="$ac_config_files config.make ${config_makefile}"
+ac_config_files="$ac_config_files config.make Makefile"
ac_config_commands="$ac_config_commands default"
@@ -8355,7 +8366,7 @@
case $ac_config_target in
"config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
"config.make") CONFIG_FILES="$CONFIG_FILES config.make" ;;
- "${config_makefile}") CONFIG_FILES="$CONFIG_FILES ${config_makefile}" ;;
+ "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
Modified: trunk/libc/configure.in
==============================================================================
--- trunk/libc/configure.in (original)
+++ trunk/libc/configure.in Thu Oct 25 17:18:12 2012
@@ -23,6 +23,7 @@
AC_PROG_CPP
# We need the C++ compiler only for testing.
AC_PROG_CXX
+AC_CHECK_TOOL(READELF, readelf, false)
if test "`cd $srcdir; /bin/pwd`" = "`/bin/pwd`"; then
AC_MSG_ERROR([you must configure in a separate build directory])
@@ -571,17 +572,28 @@
AC_DEFINE(USE_REGPARMS)
fi
-# For the multi-arch option we need support in the assembler.
-AC_CACHE_CHECK([for assembler gnu_indirect_function symbol type support],
- libc_cv_asm_gnu_indirect_function, [dnl
+# For the multi-arch option we need support in the assembler & linker.
+AC_CACHE_CHECK([for assembler and linker STT_GNU_IFUNC support],
+ libc_cv_ld_gnu_indirect_function, [dnl
cat > conftest.s <<EOF
.type foo,%gnu_indirect_function
-EOF
-if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD;
-then
- libc_cv_asm_gnu_indirect_function=yes
-else
- libc_cv_asm_gnu_indirect_function=no
+foo:
+.globl _start
+_start:
+.globl __start
+__start:
+.data
+.long foo
+EOF
+libc_cv_ld_gnu_indirect_function=no
+if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
+ -nostartfiles -nostdlib \
+ -o conftest conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
+ # Do a link to see if the backend supports IFUNC relocs.
+ $READELF -r conftest 1>&AS_MESSAGE_LOG_FD
+ LC_ALL=C $READELF -r conftest | grep 'no relocations' >/dev/null || {
+ libc_cv_ld_gnu_indirect_function=yes
+ }
fi
rm -f conftest*])
@@ -601,7 +613,7 @@
AC_MSG_RESULT(yes)
fi
-if test x"$libc_cv_asm_gnu_indirect_function" != xyes; then
+if test x"$libc_cv_ld_gnu_indirect_function" != xyes; then
if test x"$multi_arch" = xyes; then
AC_MSG_ERROR([--enable-multi-arch support requires assembler and linker support])
else
@@ -958,7 +970,6 @@
[GNU Awk[^0-9]*\([0-9][0-9.]*\)],
[[3-9].*], critic_missing="$critic_missing gawk")
-AC_CHECK_TOOL(READELF, readelf, false)
AC_CHECK_TOOL(NM, nm, false)
AC_CHECK_PROGS(AUTOCONF, autoconf, no)
@@ -1001,10 +1012,9 @@
-isystem `echo $sysheaders | sed 's/:/ -isystem /g'`"
if test -n "$CXX"; then
CXX_SYSINCLUDES=
- cxxversion=`$CXX -dumpversion 2>&AS_MESSAGE_LOG_FD` &&
cxxmachine=`$CXX -dumpmachine 2>&AS_MESSAGE_LOG_FD` &&
- cxxplus=`$CXX -print-prog-name=cc1plus`
- cxxheaders=`$cxxplus -v /dev/null 2>&1 | sed -n '/ \//{p;q;}' | sed 's/ //'`
+ cxxheaders=`$CXX -v -S -x c++ /dev/null -o /dev/null 2>&1 \
+ | sed -n -e '1,/#include/d' -e '/^ \//{p;q;}' | sed 's/ //'`
test "x$cxxheaders" != x && test "x$i" != "x$cxxheaders" &&
CXX_SYSINCLUDES="$CXX_SYSINCLUDES -isystem $cxxheaders \
-isystem $cxxheaders/$cxxmachine -isystem $cxxheaders/backward"
@@ -1040,7 +1050,7 @@
fi
AC_CACHE_CHECK(whether GCC supports -static-libgcc, libc_cv_gcc_static_libgcc, [dnl
-if $CC -v -static-libgcc 2>&1 | grep -q 'unrecognized option.*static-libgcc'; then
+if $CC -v -static-libgcc 2>&1 | grep 'unrecognized option.*static-libgcc' >/dev/null; then
libc_cv_gcc_static_libgcc=
else
libc_cv_gcc_static_libgcc=-static-libgcc
@@ -1410,7 +1420,7 @@
int main (void) { return 0; }
EOF
if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static -o conftest \
- conftest.c -v 2>&1 >/dev/null | grep -q " -lunwind "; then
+ conftest.c -v 2>&1 >/dev/null | grep ' -lunwind ' >/dev/null; then
libc_cv_cc_with_libunwind=yes
else
libc_cv_cc_with_libunwind=no
@@ -1560,7 +1570,7 @@
EOF
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS
-S -o conftest.s conftest.c 1>&AS_MESSAGE_LOG_FD]) \
- && grep -q .note.GNU-stack conftest.s \
+ && grep .note.GNU-stack conftest.s >/dev/null \
&& AC_TRY_COMMAND([${CC-cc} $ASFLAGS -Wa,--noexecstack
-c -o conftest.o conftest.s 1>&AS_MESSAGE_LOG_FD])
then
@@ -2146,6 +2156,12 @@
fi
AC_SUBST(libc_cv_gcc_unwind_find_fde)
+# A sysdeps configure fragment can reset this if IFUNC is not actually
+# usable even though the assembler knows how to generate the symbol type.
+if test x"$libc_cv_ld_gnu_indirect_function" = xyes; then
+ AC_DEFINE(HAVE_IFUNC)
+fi
+
# This is far from the AC_ARG_ENABLE that sets it so that a sysdeps
# configure fragment can override the value to prevent this AC_DEFINE.
AC_SUBST(use_nscd)
@@ -2219,18 +2235,12 @@
dnl See sysdeps/mach/configure.in for this variable.
AC_SUBST(mach_interface_list)
-if test "`(cd $srcdir; pwd)`" = "`pwd`"; then
- config_makefile=
-else
- config_makefile=Makefile
-fi
-
VERSION=`sed -n -e 's/^#define VERSION "\([^"]*\)"/\1/p' < $srcdir/version.h`
RELEASE=`sed -n -e 's/^#define RELEASE "\([^"]*\)"/\1/p' < $srcdir/version.h`
AC_SUBST(VERSION)
AC_SUBST(RELEASE)
-AC_CONFIG_FILES([config.make ${config_makefile}])
+AC_CONFIG_FILES([config.make Makefile])
AC_CONFIG_COMMANDS([default],[[
case $CONFIG_FILES in *config.make*)
echo "$config_vars" >> config.make;;
Modified: trunk/libc/crypt/Makefile
==============================================================================
--- trunk/libc/crypt/Makefile (original)
+++ trunk/libc/crypt/Makefile Thu Oct 25 17:18:12 2012
@@ -31,7 +31,7 @@
libcrypt-routines-$(OPTION_EGLIBC_CRYPT_UFC) := crypt_util crypt
libcrypt-routines += $(libcrypt-routines-y)
-tests-$(OPTION_EGLIBC_CRYPT) := md5c-test sha256c-test sha512c-test
+tests-$(OPTION_EGLIBC_CRYPT) := md5c-test sha256c-test sha512c-test badsalttest
tests-$(OPTION_EGLIBC_CRYPT_UFC) += cert
include ../Makeconfig
Modified: trunk/libc/crypt/crypt-entry.c
==============================================================================
--- trunk/libc/crypt/crypt-entry.c (original)
+++ trunk/libc/crypt/crypt-entry.c Thu Oct 25 17:18:12 2012
@@ -29,6 +29,7 @@
#include <string.h>
#include <gnu/option-groups.h>
#include <errno.h>
+#include <fips-private.h>
#ifndef STATIC
#define STATIC static
@@ -95,8 +96,16 @@
#ifdef _LIBC
/* Try to find out whether we have to use MD5 encryption replacement. */
if (strncmp (md5_salt_prefix, salt, sizeof (md5_salt_prefix) - 1) == 0)
- return __md5_crypt_r (key, salt, (char *) data,
- sizeof (struct crypt_data));
+ {
+ /* FIPS rules out MD5 password encryption. */
+ if (fips_enabled_p ())
+ {
+ __set_errno (EPERM);
+ return NULL;
+ }
+ return __md5_crypt_r (key, salt, (char *) data,
+ sizeof (struct crypt_data));
+ }
/* Try to find out whether we have to use SHA256 encryption replacement. */
if (strncmp (sha256_salt_prefix, salt, sizeof (sha256_salt_prefix) - 1) == 0)
@@ -113,7 +122,18 @@
/*
* Hack DES tables according to salt
*/
- _ufc_setup_salt_r (salt, data);
+ if (!_ufc_setup_salt_r (salt, data))
+ {
+ __set_errno (EINVAL);
+ return NULL;
+ }
+
+ /* FIPS rules out DES password encryption. */
+ if (fips_enabled_p ())
+ {
+ __set_errno (EPERM);
+ return NULL;
+ }
/*
* Setup key schedule
@@ -152,7 +172,9 @@
{
#ifdef _LIBC
/* Try to find out whether we have to use MD5 encryption replacement. */
- if (strncmp (md5_salt_prefix, salt, sizeof (md5_salt_prefix) - 1) == 0)
+ if (strncmp (md5_salt_prefix, salt, sizeof (md5_salt_prefix) - 1) == 0
+ /* Let __crypt_r deal with the error code if FIPS is enabled. */
+ && !fips_enabled_p ())
return __md5_crypt (key, salt);
/* Try to find out whether we have to use SHA256 encryption replacement. */
Modified: trunk/libc/crypt/crypt-private.h
==============================================================================
--- trunk/libc/crypt/crypt-private.h (original)
+++ trunk/libc/crypt/crypt-private.h Thu Oct 25 17:18:12 2012
@@ -26,6 +26,7 @@
#define CRYPT_PRIVATE_H 1
#include <features.h>
+#include <stdbool.h>
/* crypt.c */
extern void _ufc_doit_r (ufc_long itr, struct crypt_data * __restrict __data,
@@ -36,7 +37,7 @@
extern void __init_des_r (struct crypt_data * __restrict __data);
extern void __init_des (void);
-extern void _ufc_setup_salt_r (const char *s,
+extern bool _ufc_setup_salt_r (const char *s,
struct crypt_data * __restrict __data);
extern void _ufc_mk_keytab_r (const char *key,
struct crypt_data * __restrict __data);
Modified: trunk/libc/crypt/crypt_util.c
==============================================================================
--- trunk/libc/crypt/crypt_util.c (original)
+++ trunk/libc/crypt/crypt_util.c Thu Oct 25 17:18:12 2012
@@ -596,23 +596,55 @@
#endif
/*
+ * Return false iff C is in the specified alphabet for crypt salt.
+ */
+
+static bool
+bad_for_salt (char c)
+{
+ switch (c)
+ {
+ case '0' ... '9':
+ case 'A' ... 'Z':
+ case 'a' ... 'z':
+ case '.': case '/':
+ return false;
+
+ default:
+ return true;
+ }
+}
+
+/*
* Setup the unit for a new salt
* Hopefully we'll not see a new salt in each crypt call.
- */
-
-void
+ * Return false if an unexpected character was found in s[0] or s[1].
+ */
+
+bool
_ufc_setup_salt_r(s, __data)
const char *s;
struct crypt_data * __restrict __data;
{
ufc_long i, j, saltbits;
+ char s0, s1;
if(__data->initialized == 0)
__init_des_r(__data);
- if(s[0] == __data->current_salt[0] && s[1] == __data->current_salt[1])
- return;
- __data->current_salt[0] = s[0]; __data->current_salt[1] = s[1];
+ s0 = s[0];
+ if(bad_for_salt (s0))
+ return false;
+
+ s1 = s[1];
+ if(bad_for_salt (s1))
+ return false;
+
+ if(s0 == __data->current_salt[0] && s1 == __data->current_salt[1])
+ return true;
+
+ __data->current_salt[0] = s0;
+ __data->current_salt[1] = s1;
/*
* This is the only crypt change to DES:
@@ -646,6 +678,8 @@
shuffle_sb((LONGG)__data->sb3, __data->current_saltbits ^ saltbits);
__data->current_saltbits = saltbits;
+
+ return true;
}
void
Modified: trunk/libc/crypt/md5c-test.c
==============================================================================
--- trunk/libc/crypt/md5c-test.c (original)
+++ trunk/libc/crypt/md5c-test.c Thu Oct 25 17:18:12 2012
@@ -9,7 +9,10 @@
int result = 0;
cp = crypt ("Hello world!", salt);
- result |= strcmp ("$1$saltstri$YMyguxXMBpd2TEZ.vS/3q1", cp);
+
+ /* MD5 is disabled in FIPS mode. */
+ if (cp)
+ result |= strcmp ("$1$saltstri$YMyguxXMBpd2TEZ.vS/3q1", cp);
return result;
}
Modified: trunk/libc/debug/Makefile
==============================================================================
--- trunk/libc/debug/Makefile (original)
+++ trunk/libc/debug/Makefile Thu Oct 25 17:18:12 2012
@@ -148,6 +148,9 @@
tests += tst-chk4 tst-chk5 tst-chk6 tst-lfschk4 tst-lfschk5 tst-lfschk6
endif
+tests-ifunc := $(stpcpy_chk strcpy_chk:%=test-%-ifunc)
+tests += $(tests-ifunc)
+
extra-libs = libSegFault libpcprofile
extra-libs-others = $(extra-libs)
Modified: trunk/libc/debug/test-stpcpy_chk.c
==============================================================================
--- trunk/libc/debug/test-stpcpy_chk.c (original)
+++ trunk/libc/debug/test-stpcpy_chk.c Thu Oct 25 17:18:12 2012
@@ -1,5 +1,5 @@
/* Test and measure stpcpy checking functions.
- Copyright (C) 1999, 2002, 2004 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@xxxxxxxxxx>, 1999.
@@ -19,6 +19,7 @@
#define STRCPY_RESULT(dst, len) ((dst) + (len))
#define TEST_MAIN
+#define TEST_NAME "stpcpy_chk"
#include "../string/test-string.h"
extern void __attribute__ ((noreturn)) __chk_fail (void);
Modified: trunk/libc/debug/test-strcpy_chk.c
==============================================================================
--- trunk/libc/debug/test-strcpy_chk.c (original)
+++ trunk/libc/debug/test-strcpy_chk.c Thu Oct 25 17:18:12 2012
@@ -1,5 +1,5 @@
/* Test and measure __strcpy_chk functions.
- Copyright (C) 1999, 2002, 2003, 2004 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@xxxxxxxxxx>, 1999.
@@ -20,6 +20,7 @@
#ifndef STRCPY_RESULT
# define STRCPY_RESULT(dst, len) dst
# define TEST_MAIN
+# define TEST_NAME "strcpy_chk"
# include "../string/test-string.h"
extern void __attribute__ ((noreturn)) __chk_fail (void);
Modified: trunk/libc/dlfcn/Makefile
==============================================================================
--- trunk/libc/dlfcn/Makefile (original)
+++ trunk/libc/dlfcn/Makefile Thu Oct 25 17:18:12 2012
@@ -54,10 +54,8 @@
tests += tststatic tststatic2
tests-static += tststatic tststatic2
modules-names += modstatic modstatic2
-tststatic-ENV = EGLIBC_TEST_LD_LIBRARY_PATH=$(objpfx):$(common-objpfx):$(common-objpfx)elf
-tststatic-WRAPPER = $(..)scripts/run-with-env.sh
-tststatic2-ENV = EGLIBC_TEST_LD_LIBRARY_PATH=$(objpfx):$(common-objpfx):$(common-objpfx)elf
-tststatic2-WRAPPER = $(..)scripts/run-with-env.sh
+tststatic-ENV = LD_LIBRARY_PATH=$(objpfx):$(common-objpfx):$(common-objpfx)elf
+tststatic2-ENV = LD_LIBRARY_PATH=$(objpfx):$(common-objpfx):$(common-objpfx)elf
endif
extra-test-objs += $(modules-names:=.os)
Modified: trunk/libc/elf/Makefile
==============================================================================
--- trunk/libc/elf/Makefile (original)
+++ trunk/libc/elf/Makefile Thu Oct 25 17:18:12 2012
@@ -122,12 +122,12 @@
ifeq (yes,$(have-initfini-array))
tests += tst-array1 tst-array2 tst-array3 tst-array4 tst-array5
endif
-tests-static = tst-tls1-static tst-tls2-static tst-stackguard1-static
+tests-static = tst-tls1-static tst-tls2-static tst-stackguard1-static \
+ tst-leaks1-static
ifeq (yes,$(build-shared))
tests-static += tst-tls9-static
tst-tls9-static-ENV = \
- EGLIBC_TEST_LD_LIBRARY_PATH=$(objpfx):$(common-objpfx):$(common-objpfx)dlfcn
-tst-tls9-static-WRAPPER = $(..)scripts/run-with-env.sh
+ LD_LIBRARY_PATH=$(objpfx):$(common-objpfx):$(common-objpfx)dlfcn
endif
ifeq (yes,$(have-initfini-array))
tests-static += tst-array1-static tst-array5-static
@@ -164,9 +164,10 @@
endif
endif
endif
-# ifeq ($(cross-compiling),no)
-tests: $(objpfx)tst-leaks1-mem $(objpfx)noload-mem
-# endif
+ifeq ($(run-built-tests),yes)
+tests: $(objpfx)tst-leaks1-mem $(objpfx)tst-leaks1-static-mem \
+ $(objpfx)noload-mem
+endif
tlsmod17a-suffixes = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
tlsmod18a-suffixes = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
tlsmod17a-modules = $(addprefix tst-tlsmod17a, $(tlsmod17a-suffixes))
@@ -442,9 +443,9 @@
generated += $(addsuffix .so,$(strip $(modules-names)))
ifeq (yes,$(build-shared))
-# eglibc: ifeq ($(cross-compiling),no)
+ifeq ($(run-built-tests),yes)
tests: $(objpfx)tst-pathopt.out $(objpfx)tst-rtld-load-self.out
-# eglibc: endif
+endif
endif
$(objpfx)testobj1.so: $(libdl)
@@ -610,8 +611,7 @@
LDFLAGS-preloadtest = -rdynamic
$(objpfx)preloadtest.out: $(preloadtest-preloads:%=$(objpfx)%.so)
preloadtest-ENV = \
- EGLIBC_TEST_LD_PRELOAD=$(subst $(empty) ,:,$(strip $(preloadtest-preloads:=.so)))
-preloadtest-WRAPPER = $(..)scripts/run-with-env.sh
+ LD_PRELOAD=$(subst $(empty) ,:,$(strip $(preloadtest-preloads:=.so)))
$(objpfx)loadfail: $(libdl)
LDFLAGS-loadfail = -rdynamic
@@ -649,7 +649,7 @@
$(objpfx)order: $(addprefix $(objpfx),dep4.so dep3.so dep2.so dep1.so)
$(objpfx)order.out: $(objpfx)order
- $(cross-test-wrapper) \
+ $(test-wrapper) \
$(elf-objpfx)$(rtld-installed-name) \
--library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \
$(objpfx)order > $@
@@ -657,8 +657,7 @@
$(objpfx)vismain: $(addprefix $(objpfx),vismod1.so vismod2.so)
$(objpfx)vismain.out: $(addprefix $(objpfx),vismod3.so)
-vismain-ENV = EGLIBC_TEST_LD_PRELOAD=$(addprefix $(objpfx),vismod3.so)
-vismain-WRAPPER = $(..)scripts/run-with-env.sh
+vismain-ENV = LD_PRELOAD=$(addprefix $(objpfx),vismod3.so)
$(objpfx)noload: $(objpfx)testobj1.so $(common-objpfx)dlfcn/libdl.so
LDFLAGS-noload = -rdynamic $(no-as-needed)
@@ -717,11 +716,10 @@
$(objpfx)tst-pathopt: $(libdl)
$(objpfx)tst-pathopt.out: tst-pathopt.sh $(objpfx)tst-pathopt \
$(objpfx)pathoptobj.so
- $(SHELL) $< $(common-objpfx) "$(cross-test-wrapper)" \
- $(..)scripts/run-with-env.sh
+ $(SHELL) $< $(common-objpfx) '$(test-wrapper-env)'
$(objpfx)tst-rtld-load-self.out: tst-rtld-load-self.sh $(objpfx)ld.so
- $(SHELL) $^ "$(cross-test-wrapper)" $(..)scripts/run-with-env.sh > $@
+ $(SHELL) $^ '$(test-wrapper)' '$(test-wrapper-env)' > $@
$(objpfx)initfirst: $(libdl)
$(objpfx)initfirst.out: $(objpfx)firstobj.so
@@ -1011,38 +1009,31 @@
$(objpfx)tst-dlmopen3.out: $(objpfx)tst-dlmopen1mod.so
$(objpfx)tst-audit1.out: $(objpfx)tst-auditmod1.so
-tst-audit1-ENV = EGLIBC_TEST_LD_AUDIT=$(objpfx)tst-auditmod1.so
-tst-audit1-WRAPPER = $(..)scripts/run-with-env.sh
+tst-audit1-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so
$(objpfx)tst-audit2.out: $(objpfx)tst-auditmod1.so
-tst-audit2-ENV = EGLIBC_TEST_LD_AUDIT=$(objpfx)tst-auditmod1.so
-tst-audit2-WRAPPER = $(..)scripts/run-with-env.sh
+tst-audit2-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so
$(objpfx)tst-audit3: $(objpfx)tst-auditmod3a.so
$(objpfx)tst-audit3.out: $(objpfx)tst-auditmod3b.so
-tst-audit3-ENV = EGLIBC_TEST_LD_AUDIT=$(objpfx)tst-auditmod3b.so
-tst-audit3-WRAPPER = $(..)scripts/run-with-env.sh
+tst-audit3-ENV = LD_AUDIT=$(objpfx)tst-auditmod3b.so
$(objpfx)tst-audit4: $(objpfx)tst-auditmod4a.so
$(objpfx)tst-audit4.out: $(objpfx)tst-auditmod4b.so
-tst-audit4-ENV = EGLIBC_TEST_LD_AUDIT=$(objpfx)tst-auditmod4b.so
-tst-audit4-WRAPPER = $(..)scripts/run-with-env.sh
+tst-audit4-ENV = LD_AUDIT=$(objpfx)tst-auditmod4b.so
$(objpfx)tst-audit5: $(objpfx)tst-auditmod5a.so
$(objpfx)tst-audit5.out: $(objpfx)tst-auditmod5b.so
-tst-audit5-ENV = EGLIBC_TEST_LD_AUDIT=$(objpfx)tst-auditmod5b.so
-tst-audit5-WRAPPER = $(..)scripts/run-with-env.sh
+tst-audit5-ENV = LD_AUDIT=$(objpfx)tst-auditmod5b.so
$(objpfx)tst-audit6: $(objpfx)tst-auditmod6a.so
$(objpfx)tst-audit6.out: $(objpfx)tst-auditmod6b.so \
$(objpfx)tst-auditmod6c.so
-tst-audit6-ENV = EGLIBC_TEST_LD_AUDIT=$(objpfx)tst-auditmod6b.so:$(objpfx)tst-auditmod6c.so
-tst-audit6-WRAPPER = $(..)scripts/run-with-env.sh
+tst-audit6-ENV = LD_AUDIT=$(objpfx)tst-auditmod6b.so:$(objpfx)tst-auditmod6c.so
$(objpfx)tst-audit7: $(objpfx)tst-auditmod7a.so
$(objpfx)tst-audit7.out: $(objpfx)tst-auditmod7b.so
-tst-audit7-ENV = EGLIBC_TEST_LD_AUDIT=$(objpfx)tst-auditmod7b.so
-tst-audit7-WRAPPER = $(..)scripts/run-with-env.sh
+tst-audit7-ENV = LD_AUDIT=$(objpfx)tst-auditmod7b.so
$(objpfx)tst-global1: $(libdl)
$(objpfx)tst-global1.out: $(objpfx)testobj6.so $(objpfx)testobj2.so
@@ -1050,7 +1041,7 @@
$(objpfx)order2: $(libdl)
$(objpfx)order2.out: $(objpfx)order2 $(objpfx)order2mod1.so \
$(objpfx)order2mod2.so
- $(cross-test-wrapper) \
+ $(test-wrapper) \
$(elf-objpfx)$(rtld-installed-name) \
--library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \
$(objpfx)order2 > $@
@@ -1062,14 +1053,19 @@
LDFLAGS-order2mod1.so = $(no-as-needed)
LDFLAGS-order2mod2.so = $(no-as-needed)
-tst-stackguard1-ARGS = --command "$(local-built-program-cmd) --child"
+tst-stackguard1-ARGS = --command "$(host-built-program-cmd) --child"
tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child"
$(objpfx)tst-leaks1: $(libdl)
$(objpfx)tst-leaks1-mem: $(objpfx)tst-leaks1.out
$(common-objpfx)malloc/mtrace $(objpfx)tst-leaks1.mtrace > $@
+$(objpfx)tst-leaks1-static: $(common-objpfx)dlfcn/libdl.a
+$(objpfx)tst-leaks1-static-mem: $(objpfx)tst-leaks1-static.out
+ $(common-objpfx)malloc/mtrace $(objpfx)tst-leaks1-static.mtrace > $@
+
tst-leaks1-ENV = MALLOC_TRACE=$(objpfx)tst-leaks1.mtrace
+tst-leaks1-static-ENV = MALLOC_TRACE=$(objpfx)tst-leaks1-static.mtrace
$(objpfx)tst-addr1: $(libdl)
@@ -1140,7 +1136,7 @@
$(objpfx)tst-unique4: $(objpfx)tst-unique4lib.so
$(objpfx)tst-initorder.out: $(objpfx)tst-initorder
- $(cross-test-wrapper) \
+ $(test-wrapper) \
$(elf-objpfx)${rtld-installed-name} \
--library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \
$< > $@
@@ -1162,7 +1158,7 @@
include $(o-iterator)
$(objpfx)tst-initorder2.out: $(objpfx)tst-initorder2
- $(cross-test-wrapper) \
+ $(test-wrapper) \
$(elf-objpfx)${rtld-installed-name} \
--library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \
$< > $@
@@ -1187,16 +1183,15 @@
$(objpfx)tst-relsort1.out: $(objpfx)tst-relsort1mod1.so \
$(objpfx)tst-relsort1mod2.so
-# ifeq ($(cross-compiling),no)
+ifeq ($(run-built-tests),yes)
tests: $(objpfx)tst-unused-dep.out
-# endif
+endif
$(objpfx)tst-unused-dep.out: $(objpfx)testobj1.so
- EGLIBC_TEST_LD_TRACE_LOADED_OBJECTS=1 \
- EGLIBC_TEST_LD_DEBUG=unused \
- EGLIBC_TEST_LD_PRELOAD= \
- $(cross-test-wrapper) \
- $(..)scripts/run-with-env.sh \
+ $(test-wrapper-env) \
+ LD_TRACE_LOADED_OBJECTS=1 \
+ LD_DEBUG=unused \
+ LD_PRELOAD= \
$(elf-objpfx)${rtld-installed-name} \
--library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \
$< > $@
Modified: trunk/libc/elf/dl-load.c
==============================================================================
--- trunk/libc/elf/dl-load.c (original)
+++ trunk/libc/elf/dl-load.c Thu Oct 25 17:18:12 2012
@@ -1726,10 +1726,20 @@
/* We successfully openened the file. Now verify it is a file
we can use. */
__set_errno (0);
- fbp->len = __libc_read (fd, fbp->buf, sizeof (fbp->buf));
+ fbp->len = 0;
+ assert (sizeof (fbp->buf) > sizeof (ElfW(Ehdr)));
+ /* Read in the header. */
+ do
+ {
+ ssize_t retlen = __libc_read (fd, fbp->buf + fbp->len,
+ sizeof (fbp->buf) - fbp->len);
+ if (retlen <= 0)
+ break;
+ fbp->len += retlen;
+ }
+ while (__builtin_expect (fbp->len < sizeof (ElfW(Ehdr)), 0));
/* This is where the ELF header is loaded. */
- assert (sizeof (fbp->buf) > sizeof (ElfW(Ehdr)));
ehdr = (ElfW(Ehdr) *) fbp->buf;
/* Now run the tests. */
Modified: trunk/libc/elf/dl-open.c
==============================================================================
--- trunk/libc/elf/dl-open.c (original)
+++ trunk/libc/elf/dl-open.c Thu Oct 25 17:18:12 2012
@@ -189,9 +189,11 @@
{
const void *caller_dlopen = args->caller_dlopen;
+#ifdef SHARED
/* We have to find out from which object the caller is calling.
By default we assume this is the main application. */
call_map = GL(dl_ns)[LM_ID_BASE]._ns_loaded;
+#endif
struct link_map *l;
for (Lmid_t ns = 0; ns < GL(dl_nns); ++ns)
Modified: trunk/libc/elf/tst-pathopt.sh
==============================================================================
--- trunk/libc/elf/tst-pathopt.sh (original)
+++ trunk/libc/elf/tst-pathopt.sh Thu Oct 25 17:18:12 2012
@@ -20,8 +20,7 @@
set -e
common_objpfx=$1
-cross_test_wrapper="$2"
-run_with_env="$3"
+test_wrapper_env=$2
test -e ${common_objpfx}elf/will-be-empty &&
rm -fr ${common_objpfx}elf/will-be-empty
@@ -30,10 +29,10 @@
cp ${common_objpfx}elf/pathoptobj.so ${common_objpfx}elf/for-renamed/renamed.so
+${test_wrapper_env} \
LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \
-LC_ALL=C EGLIBC_TEST_LD_LIBRARY_PATH=${common_objpfx}elf/will-be-empty:${common_objpfx}elf/for-renamed:${common_objpfx}.:${common_objpfx}dlfcn \
- ${cross_test_wrapper} ${run_with_env} ${common_objpfx}elf/ld.so \
- ${common_objpfx}elf/tst-pathopt \
+LC_ALL=C LD_LIBRARY_PATH=${common_objpfx}elf/will-be-empty:${common_objpfx}elf/for-renamed:${common_objpfx}.:${common_objpfx}dlfcn \
+ ${common_objpfx}elf/ld.so ${common_objpfx}elf/tst-pathopt \
> ${common_objpfx}elf/tst-pathopt.out
exit $?
Modified: trunk/libc/elf/tst-rtld-load-self.sh
==============================================================================
--- trunk/libc/elf/tst-rtld-load-self.sh (original)
+++ trunk/libc/elf/tst-rtld-load-self.sh Thu Oct 25 17:18:12 2012
@@ -21,27 +21,27 @@
set -e
rtld=$1
-cross_test_wrapper="$2"
-run_with_env="$3"
+test_wrapper=$2
+test_wrapper_env=$3
result=0
echo '# normal mode'
-${cross_test_wrapper} $rtld $rtld 2>&1 && rc=0 || rc=$?
+${test_wrapper} $rtld $rtld 2>&1 && rc=0 || rc=$?
echo "# exit status $rc"
test $rc -le 127 || result=1
echo '# list mode'
-${cross_test_wrapper} $rtld --list $rtld 2>&1 && rc=0 || rc=$?
+${test_wrapper} $rtld --list $rtld 2>&1 && rc=0 || rc=$?
echo "# exit status $rc"
test $rc -eq 0 || result=1
echo '# verify mode'
-${cross_test_wrapper} $rtld --verify $rtld 2>&1 && rc=0 || rc=$?
+${test_wrapper} $rtld --verify $rtld 2>&1 && rc=0 || rc=$?
echo "# exit status $rc"
test $rc -eq 2 || result=1
echo '# trace mode'
-EGLIBC_LD_TRACE_LOADED_OBJECTS=1 ${cross_test_wrapper} ${run_with_env} \
+${test_wrapper_env} LD_TRACE_LOADED_OBJECTS=1 \
$rtld $rtld 2>&1 && rc=0 || rc=$?
echo "# exit status $rc"
test $rc -eq 0 || result=1
Modified: trunk/libc/grp/Makefile
==============================================================================
--- trunk/libc/grp/Makefile (original)
+++ trunk/libc/grp/Makefile Thu Oct 25 17:18:12 2012
@@ -55,13 +55,12 @@
endif
-# eglibc: ifeq (no,$(cross-compiling))
+ifeq ($(run-built-tests),yes)
# tst_fgetgrent currently only works with shared libraries
ifeq (yes,$(build-shared))
tests: $(objpfx)tst_fgetgrent.out
$(objpfx)tst_fgetgrent.out: tst_fgetgrent.sh $(objpfx)tst_fgetgrent
- $(SHELL) $< $(common-objpfx) $(elf-objpfx) \
- $(rtld-installed-name) "$(cross-test-wrapper)"
+ $(SHELL) $< $(common-objpfx) '$(run-program-prefix)'
endif
-# eglibc: endif
+endif
Modified: trunk/libc/grp/tst_fgetgrent.sh
==============================================================================
--- trunk/libc/grp/tst_fgetgrent.sh (original)
+++ trunk/libc/grp/tst_fgetgrent.sh Thu Oct 25 17:18:12 2012
@@ -20,29 +20,22 @@
set -e
common_objpfx=$1; shift
-elf_objpfx=$1; shift
-rtld_installed_name=$1; shift
-cross_test_wrapper="$1"; shift
+run_program_prefix=$1; shift
testout=${common_objpfx}/grp/tst_fgetgrent.out
-library_path=${common_objpfx}
result=0
-${cross_test_wrapper} \
-${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \
+${run_program_prefix} \
${common_objpfx}grp/tst_fgetgrent 0 > ${testout} || result=1
-${cross_test_wrapper} \
-${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \
+${run_program_prefix} \
${common_objpfx}grp/tst_fgetgrent 1 >> ${testout} || result=1
-${cross_test_wrapper} \
-${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \
+${run_program_prefix} \
${common_objpfx}grp/tst_fgetgrent 2 >> ${testout} || result=1
-${cross_test_wrapper} \
-${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \
+${run_program_prefix} \
${common_objpfx}grp/tst_fgetgrent 3 >> ${testout} || result=1
exit $result
Modified: trunk/libc/iconv/Makefile
==============================================================================
--- trunk/libc/iconv/Makefile (original)
+++ trunk/libc/iconv/Makefile Thu Oct 25 17:18:12 2012
@@ -74,9 +74,9 @@
$(objpfx)iconv_prog: $(iconv_prog-modules:%=$(objpfx)%.o)
$(objpfx)iconvconfig: $(iconvconfig-modules:%=$(objpfx)%.o)
-# eglibc: ifneq ($(cross-compiling),yes)
+ifeq ($(run-built-tests),yes)
xtests: test-iconvconfig
-# eglibc: endif
+endif
.PHONY: test-iconvconfig
test-iconvconfig: /dev/null $(objpfx)iconvconfig
Modified: trunk/libc/iconvdata/Makefile
==============================================================================
--- trunk/libc/iconvdata/Makefile (original)
+++ trunk/libc/iconvdata/Makefile Thu Oct 25 17:18:12 2012
@@ -271,14 +271,14 @@
include ../Rules
-# eglibc: ifeq (no,$(cross-compiling))
+ifeq ($(run-built-tests),yes)
ifeq (yes,$(build-shared))
tests: $(objpfx)iconv-test.out $(objpfx)tst-tables.out
ifneq (no,$(PERL))
tests: $(objpfx)mtrace-tst-loading
endif
endif
-# eglibc: endif
+endif
tst-loading-ENV = MALLOC_TRACE=$(objpfx)tst-loading.mtrace
$(objpfx)mtrace-tst-loading: $(objpfx)tst-loading.out
@@ -303,13 +303,13 @@
$(objpfx)iconv-test.out: run-iconv-test.sh $(objpfx)gconv-modules \
$(addprefix $(objpfx),$(modules.so)) \
$(common-objdir)/iconv/iconv_prog TESTS
- $(SHELL) $< $(common-objdir) '$(cross-test-wrapper)' > $@
+ $(SHELL) $< $(common-objdir) '$(test-wrapper)' > $@
$(objpfx)tst-tables.out: tst-tables.sh $(objpfx)gconv-modules \
$(addprefix $(objpfx),$(modules.so)) \
$(objpfx)tst-table-from $(objpfx)tst-table-to
$(SHELL) $< $(common-objpfx) $(common-objpfx)iconvdata/ \
[... 7787 lines stripped ...]
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits