Commit Graph

258 Commits

Author SHA1 Message Date
Florian Weimer
daa3fc9bff rt: Move generic implementation from sysdeps/pthread to rt
The pthread-based implementation is the generic one.  Replacing
the stubs makes it clear that they do not have to be adjusted for
the libpthread move.

Result of:

    git mv -f sysdeps/pthread/aio_misc.h sysdeps/generic/
    git mv sysdeps/pthread/timer_routines.c sysdeps/htl/
    git mv -f sysdeps/pthread/{aio,lio,timer}_*.c rt/

Followed by manual adjustment of the #include paths in
sysdeps/unix/sysv/linux/wordsize-64, and a move of the version
definitions formerly in sysdeps/pthread/Versions.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-06-22 09:50:45 +02:00
Florian Weimer
ae830b2d9f rt: Move shm_unlink into libc
This function has no dependency on libpthread, so the move is also
applied to Hurd.

The symbol was moved using scripts/move-symbol-to-libc.py.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-06-21 08:25:15 +02:00
Florian Weimer
c6e7ec2f12 rt: Move shm_open into libc
This function has no dependency on libpthread, so the move is also
applied to Hurd.

To avoid localplt failures, use __open64_nocancel instead of
pthread_setcancelstate and open.

The symbol was moved using scripts/move-symbol-to-libc.py.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-06-21 08:25:15 +02:00
Florian Weimer
a749a00fb5 rt: Replace generic stub of shm_unlink with the posix version
Result of: git mv -f sysdeps/posix/shm_unlink.c rt
and manual removal of the _POSIX_MAPPED_FILES preprocessor condition.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-06-21 08:25:15 +02:00
Florian Weimer
b7a0bfbd2f rt: Replace generic stub of shm_open with the posix version
Result of: git mv -f sysdeps/posix/shm_open.c rt
and manual removal of the _POSIX_MAPPED_FILES preprocessor condition.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-06-21 08:25:15 +02:00
Florian Weimer
a2014d311b Fix librt-routines-var issues for !PTHREAD_IN_LIBC
The variable name was incorrect, and the existing librt-routines
variable needs to be augmented (not assigned) in rt/Makefile.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-06-21 08:25:15 +02:00
Florian Weimer
f6b6e14869 rt: Lexicographically sort Versions file; librt-routines in Makefile
Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-06-21 08:25:15 +02:00
Adhemerval Zanella
088d3291ef y2038: Add test coverage
It is enabled through a new rule, tests-y2038, which is built only
when the ABI supports the comapt 64-bit time_t (defined by the
header time64-compat.h, which also enables the creation of the
symbol Version for Linux).  It means the tests are not built
for ABI which already provide default 64-bit time_t.

The new rule already adds the required LFS and 64-bit time_t
compiler flags.

The current coverage is:

  * libc:
    - adjtime                       tst-adjtime-time64
    - adjtimex                      tst-adjtimex-time64
    - clock_adjtime                 tst-clock_adjtime-time64
    - clock_getres                  tst-clock-time64, tst-cpuclock1-time64
    - clock_gettime                 tst-clock-time64, tst-clock2-time64,
				    tst-cpuclock1-time64
    - clock_nanosleep               tst-clock_nanosleep-time64,
				    tst-cpuclock1-time64
    - clock_settime                 tst-clock2-time64
    - cnd_timedwait                 tst-cnd-timedwait-time64
    - ctime                         tst-ctime-time64
    - ctime_r                       tst-ctime-time64
    - difftime                      tst-difftime-time64
    - fstat                         tst-stat-time64
    - fstatat                       tst-stat-time64
    - futimens                      tst-futimens-time64
    - futimes                       tst-futimes-time64
    - futimesat                     tst-futimesat-time64
    - fts_*                         tst-fts-time64
    - getitimer                     tst-itimer-timer64
    - getrusage
    - gettimeofday                  tst-clock_nanosleep-time64
    - glob / globfree               tst-gnuglob64-time64
    - gmtime                        tst-gmtime-time64
    - gmtime_r                      tst-gmtime-time64
    - lstat                         tst-stat-time64
    - localtime                     tst-y2039-time64
    - localtime_t                   tst-y2039-time64
    - lutimes                       tst-lutimes-time64
    - mktime                        tst-mktime4-time64
    - mq_timedreceive               tst-mqueue{1248}-time64
    - mq_timedsend                  tst-mqueue{1248}-time64
    - msgctl                        test-sysvmsg-time64
    - mtx_timedlock                 tst-mtx-timedlock-time64
    - nanosleep                     tst-cpuclock{12}-time64,
				    tst-mqueue8-time64, tst-clock-time64
    - nftw / ftw                    ftwtest-time64
    - ntp_adjtime                   tst-ntp_adjtime-time64
    - ntp_gettime                   tst-ntp_gettime-time64
    - ntp_gettimex                  tst-ntp_gettimex-time64
    - ppoll                         tst-ppoll-time64
    - pselect                       tst-pselect-time64
    - pthread_clockjoin_np          tst-join14-time64
    - pthread_cond_clockwait        tst-cond11-time64
    - pthread_cond_timedwait        tst-abstime-time64
    - pthread_mutex_clocklock       tst-abstime-time64
    - pthread_mutex_timedlock       tst-abstime-time64
    - pthread_rwlock_clockrdlock    tst-abstime-time64, tst-rwlock14-time64
    - pthread_rwlock_clockwrlock    tst-abstime-time64, tst-rwlock14-time64
    - pthread_rwlock_timedrdlock    tst-abstime-time64, tst-rwlock14-time64
    - pthread_rwlock_timedwrlock    tst-abstime-time64, tst-rwlock14-time64
    - pthread_timedjoin_np          tst-join14-time64
    - recvmmsg                      tst-cancel4_2-time64
    - sched_rr_get_interval         tst-sched_rr_get_interval-time64
    - select                        tst-select-time64
    - sem_clockwait                 tst-sem5-time64
    - sem_timedwait                 tst-sem5-time64
    - semctl                        test-sysvsem-time64
    - semtimedop                    test-sysvsem-time64
    - setitimer                     tst-mqueue2-time64, tst-itimer-timer64
    - settimeofday                  tst-settimeofday-time64
    - shmctl                        test-sysvshm-time64
    - sigtimedwait                  tst-sigtimedwait-time64
    - stat                          tst-stat-time64
    - thrd_sleep                    tst-thrd-sleep-time64
    - time                          tst-mqueue{1248}-time64
    - timegm                        tst-timegm-time64
    - timer_gettime                 tst-timer4-time64
    - timer_settime                 tst-timer4-time64
    - timerfd_gettime               tst-timerfd-time64
    - timerfd_settime               tst-timerfd-time64
    - timespec_get                  tst-timespec_get-time64
    - timespec_getres               tst-timespec_getres-time64
    - utime                         tst-utime-time64
    - utimensat                     tst-utimensat-time64
    - utimes                        tst-utimes-time64
    - wait3                         tst-wait3-time64
    - wait4                         tst-wait4-time64

  * librt:
    - aio_suspend                   tst-aio6-time64
    - mq_timedreceive               tst-mqueue{1248}-time64
    - mq_timedsend                  tst-mqueue{1248}-time64
    - timer_gettime                 tst-timer4-time64
    - timer_settime                 tst-timer4-time64

  * libanl:
    - gai_suspend

Reviewed-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-06-15 10:42:11 -03:00
Adhemerval Zanella
47f24c21ee y2038: Add support for 64-bit time on legacy ABIs
A new build flag, _TIME_BITS, enables the usage of the newer 64-bit
time symbols for legacy ABI (where 32-bit time_t is default).  The 64
bit time support is only enabled if LFS (_FILE_OFFSET_BITS=64) is
also used.

Different than LFS support, the y2038 symbols are added only for the
required ABIs (armhf, csky, hppa, i386, m68k, microblaze, mips32,
mips64-n32, nios2, powerpc32, sparc32, s390-32, and sh).  The ABIs with
64-bit time support are unchanged, both for symbol and types
redirection.

On Linux the full 64-bit time support requires a minimum of kernel
version v5.1.  Otherwise, the 32-bit fallbacks are used and might
results in error with overflow return code (EOVERFLOW).

The i686-gnu does not yet support 64-bit time.

This patch exports following rediretions to support 64-bit time:

  * libc:
    adjtime
    adjtimex
    clock_adjtime
    clock_getres
    clock_gettime
    clock_nanosleep
    clock_settime
    cnd_timedwait
    ctime
    ctime_r
    difftime
    fstat
    fstatat
    futimens
    futimes
    futimesat
    getitimer
    getrusage
    gettimeofday
    gmtime
    gmtime_r
    localtime
    localtime_r
    lstat_time
    lutimes
    mktime
    msgctl
    mtx_timedlock
    nanosleep
    nanosleep
    ntp_gettime
    ntp_gettimex
    ppoll
    pselec
    pselect
    pthread_clockjoin_np
    pthread_cond_clockwait
    pthread_cond_timedwait
    pthread_mutex_clocklock
    pthread_mutex_timedlock
    pthread_rwlock_clockrdlock
    pthread_rwlock_clockwrlock
    pthread_rwlock_timedrdlock
    pthread_rwlock_timedwrlock
    pthread_timedjoin_np
    recvmmsg
    sched_rr_get_interval
    select
    sem_clockwait
    semctl
    semtimedop
    sem_timedwait
    setitimer
    settimeofday
    shmctl
    sigtimedwait
    stat
    thrd_sleep
    time
    timegm
    timerfd_gettime
    timerfd_settime
    timespec_get
    utime
    utimensat
    utimes
    utimes
    wait3
    wait4

  * librt:
    aio_suspend
    mq_timedreceive
    mq_timedsend
    timer_gettime
    timer_settime

  * libanl:
    gai_suspend

Reviewed-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-06-15 10:42:11 -03:00
Florian Weimer
ce0b7961ae nptl: Consolidate async cancel enable/disable implementation in libc
Previously, the source file nptl/cancellation.c was compiled multiple
times, for libc, libpthread, librt.  This commit switches to a single
implementation, with new __pthread_enable_asynccancel@@GLIBC_PRIVATE,
__pthread_disable_asynccancel@@GLIBC_PRIVATE exports.

The almost-unused CANCEL_ASYNC and CANCEL_RESET macros are replaced
by LIBC_CANCEL_ASYNC and LIBC_CANCEL_ASYNC macros.  They call the
__pthread_* functions unconditionally now.  The macros are still
needed because shared code uses them; Hurd has different definitions.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2021-05-05 17:19:32 +02:00
Florian Weimer
ad201afe5c Add pthread-in-libc, libpthread-routines-var, librt-routines-var
These make variables can be used to add routines to different
libraries for the Hurd and Linux builds.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-05-03 08:13:32 +02:00
Paul Eggert
2b778ceb40 Update copyright dates with scripts/update-copyrights
I used these shell commands:

../glibc/scripts/update-copyrights $PWD/../gnulib/build-aux/update-copyright
(cd ../glibc && git commit -am"[this commit message]")

and then ignored the output, which consisted lines saying "FOO: warning:
copyright statement not found" for each of 6694 files FOO.
I then removed trailing white space from benchtests/bench-pthread-locks.c
and iconvdata/tst-iconv-big5-hkscs-to-2ucs4.c, to work around this
diagnostic from Savannah:
remote: *** pre-commit check failed ...
remote: *** error: lines with trailing whitespace found
remote: error: hook declined to update refs/heads/master
2021-01-02 12:17:34 -08:00
Jonny Grant
0e6ee9c143 rt: Fix typos in comments in <aio.h> 2020-10-19 10:55:00 +02:00
H.J. Lu
9030377480 shm tests: Append PID to names passed to shm_open [BZ #26737]
Append PID to names passed to shm_open in shm tests to avoid random

FAIL: rt/tst-shm-cancel
FAIL: rt/tst-shm

due to the same name passed to shm_open and shm_unlink when more than
one "make check" running in parallel on the same machine.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2020-10-15 13:51:15 -07:00
Adhemerval Zanella
27d83441a2 Block all signals on timer_create thread (BZ#10815)
The behavior of the signal mask on threads created by timer_create
for SIGEV_THREAD timers are implementation-defined and glibc explicit
unblocks all signals before calling the user-defined function.

This behavior, although not incorrect standard-wise, opens a race if a
program using a blocked rt-signal plus sigwaitinfo (and without an
installed signal handler for the rt-signal) receives a signal while
executing the used-defined function for SIGEV_THREAD.

A better alternative discussed in bug report is to rather block all
signals (besides the internal ones not available to application
usage).

This patch fixes this issue by only unblocking SIGSETXID (used on
set*uid function) and SIGCANCEL (used for thread cancellation).

Checked on x86_64-linux-gnu and i686-linux-gnu.
2020-02-19 13:46:31 -03:00
Joseph Myers
d614a75396 Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
Adhemerval Zanella
b2b3b7598a Set the expects flags to clock_nanosleep
It moves the missing CFLAGS from rt/Makefile to time/Makefile missing
from 7b5af2d8f2 (Finish move of clock_* functions to libc. [BZ #24959]).

Checked on powerpc64le-linux-gnu.

	* rt/Makefile (CFLAGS-clock_nanosleep.c): Move to ...
	* time/Makefile (CFLAGS-clock_nanosleep.c): ... here.
2019-09-25 16:28:45 -07:00
Paul Eggert
5a82c74822 Prefer https to http for gnu.org and fsf.org URLs
Also, change sources.redhat.com to sourceware.org.
This patch was automatically generated by running the following shell
script, which uses GNU sed, and which avoids modifying files imported
from upstream:

sed -ri '
  s,(http|ftp)(://(.*\.)?(gnu|fsf|sourceware)\.org($|[^.]|\.[^a-z])),https\2,g
  s,(http|ftp)(://(.*\.)?)sources\.redhat\.com($|[^.]|\.[^a-z]),https\2sourceware.org\4,g
' \
  $(find $(git ls-files) -prune -type f \
      ! -name '*.po' \
      ! -name 'ChangeLog*' \
      ! -path COPYING ! -path COPYING.LIB \
      ! -path manual/fdl-1.3.texi ! -path manual/lgpl-2.1.texi \
      ! -path manual/texinfo.tex ! -path scripts/config.guess \
      ! -path scripts/config.sub ! -path scripts/install-sh \
      ! -path scripts/mkinstalldirs ! -path scripts/move-if-change \
      ! -path INSTALL ! -path  locale/programs/charmap-kw.h \
      ! -path po/libc.pot ! -path sysdeps/gnu/errlist.c \
      ! '(' -name configure \
            -execdir test -f configure.ac -o -f configure.in ';' ')' \
      ! '(' -name preconfigure \
            -execdir test -f preconfigure.ac ';' ')' \
      -print)

and then by running 'make dist-prepare' to regenerate files built
from the altered files, and then executing the following to cleanup:

  chmod a+x sysdeps/unix/sysv/linux/riscv/configure
  # Omit irrelevant whitespace and comment-only changes,
  # perhaps from a slightly-different Autoconf version.
  git checkout -f \
    sysdeps/csky/configure \
    sysdeps/hppa/configure \
    sysdeps/riscv/configure \
    sysdeps/unix/sysv/linux/csky/configure
  # Omit changes that caused a pre-commit check to fail like this:
  # remote: *** error: sysdeps/powerpc/powerpc64/ppc-mcount.S: trailing lines
  git checkout -f \
    sysdeps/powerpc/powerpc64/ppc-mcount.S \
    sysdeps/unix/sysv/linux/s390/s390-64/syscall.S
  # Omit change that caused a pre-commit check to fail like this:
  # remote: *** error: sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: last line does not end in newline
  git checkout -f sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S
2019-09-07 02:43:31 -07:00
Zack Weinberg
7b5af2d8f2 Finish move of clock_* functions to libc. [BZ #24959]
In glibc 2.17, the functions clock_getcpuclockid, clock_getres,
clock_gettime, clock_nanosleep, and clock_settime were moved from
librt.so to libc.so, leaving compatibility stubs behind.  Now that the
dynamic linker no longer insists on finding versioned symbols in the
same library that originally defined them, we do not need the stubs
anymore, and this means we don't need GLIBC_PRIVATE __-prefix aliases
for most of the functions anymore either.  (clock_gettime still needs
one.)  For ports added before 2.17, libc.so needs to provide two
symbol versions for each, the default at GLIBC_2.17 plus a compat
version matching what librt had.

While I'm at it, move the clock_*.c files and their tests from rt/ to
time/.
2019-09-04 14:39:38 +02:00
Adhemerval Zanella
6e8ba7fd57 Remove __get_clockfreq
With clock_getres, clock_gettime, and clock_settime refactor to remove the
generic CLOCK_PROCESS_CPUTIME_ID and CLOCK_THREAD_CPUTIME_ID support through
hp-timing, there is no usage of internal __get_clockfreq.  This patch removes
both generic and Linux implementation..

Checked with a build against aarch64-linux-gnu, i686-linux-gnu, ia64-linux-gnu,
sparc64-linux-gnu, powerpc-linux-gnu-power4.

	* include/libc-internal.h (__get_clockfreq): Remove prototype.
	* rt/Makefile (clock-routines): Remove get_clockfreq.
	* rt/get_clockfreq.c: Remove file.
	* sysdeps/unix/sysv/linux/i386/get_clockfreq.c: Likewise.
	* sysdeps/unix/sysv/linux/ia64/get_clockfreq.c: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/get_clockfreq.c: Move code to ...
	* sysdeps/unix/sysv/linux/powerpc/get_timebase_freq.c: ... here.
2019-03-22 16:52:29 -03:00
Florian Weimer
f289e656ec rt: Turn forwards from librt to libc into compat symbols [BZ #24194]
As the  result of commit 6e6249d0b4
("BZ#14743: Move clock_* symbols from librt to libc."), in glibc 2.17,
clock_gettime, clock_getres, clock_settime, clock_getcpuclockid,
clock_nanosleep were added to libc, and the file rt/clock-compat.c
was added with forwarders to the actual implementations in libc.
These forwarders were wrapped in

#if SHLIB_COMPAT (librt, GLIBC_2_2, GLIBC_2_17)

so that they are not present for newer architectures (such as
powerpc64le) with a 2.17 or later ABI baseline.  But the forwarders
were not marked as compatibility symbols.  As a result, on older
architectures, historic configure checks such as

AC_CHECK_LIB(rt, clock_gettime)

still cause linking against librt, even though this is completely
unnecessary.  It also creates a needless porting hazard because
architectures behave differently when it comes to symbol availability.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
2019-02-08 10:43:17 +01:00
Joseph Myers
04277e02d7 Update copyright dates with scripts/update-copyrights.
* All files with FSF copyright notices: Update copyright dates
	using scripts/update-copyrights.
	* locale/programs/charmap-kw.h: Regenerated.
	* locale/programs/locfile-kw.h: Likewise.
2019-01-01 00:11:28 +00:00
Andreas Schwab
ce5a7de6cd Don't reduce test timeout to less than default
This removes all overrides of TIMEOUT that are less than or equal to the
default timeout.
2018-10-17 09:34:13 +02:00
Samuel Thibault
33574c17ee hurd: Add hurd thread library
Contributed by

Agustina Arzille <avarzille@riseup.net>
Amos Jeffries <squid3@treenet.co.nz>
David Michael <fedora.dm0@gmail.com>
Marco Gerards <marco@gnu.org>
Marcus Brinkmann <marcus@gnu.org>
Neal H. Walfield <neal@gnu.org>
Pino Toscano <toscano.pino@tiscali.it>
Richard Braun <rbraun@sceen.net>
Roland McGrath <roland@gnu.org>
Samuel Thibault <samuel.thibault@ens-lyon.org>
Thomas DiModica <ricinwich@yahoo.com>
Thomas Schwinge <tschwinge@gnu.org>

	* htl: New directory.
	* sysdeps/htl: New directory.
	* sysdeps/hurd/htl: New directory.
	* sysdeps/i386/htl: New directory.
	* sysdeps/mach/htl: New directory.
	* sysdeps/mach/hurd/htl: New directory.
	* sysdeps/mach/hurd/i386/htl: New directory.
	* nscd/Depend, resolv/Depend, rt/Depend: Add htl dependency.
	* sysdeps/mach/hurd/i386/Implies: Add mach/hurd/i386/htl imply.
	* sysdeps/mach/hurd/i386/libpthread.abilist: New file.
2018-04-02 01:44:14 +02:00
Joseph Myers
688903eb3e Update copyright dates with scripts/update-copyrights.
* All files with FSF copyright notices: Update copyright dates
	using scripts/update-copyrights.
	* locale/programs/charmap-kw.h: Regenerated.
	* locale/programs/locfile-kw.h: Likewise.
2018-01-01 00:32:25 +00:00
H.J. Lu
36975e8e7e Replace = with += in CFLAGS-xxx.c/CPPFLAGS-xxx.c
Replace = with += in CFLAGS-xxx.c and CPPFLAGS-xxx.c to allow Makefile
under sysdeps to define CFLAGS-xx.c and CPPFLAGS-xxx.c.

	* argp/Makefile (CFLAGS-argp-help.c): Replace = with +=.
	(CFLAGS-argp-parse.c): Likewise.
	(CFLAGS-argp-fmtstream.c): Likewise.
	* crypt/Makefile (CPPFLAGS-sha256-crypt.c): Likewise.
	(CPPFLAGS-sha512-crypt.c): Likewise.
	(CPPFLAGS-md5-crypt.c): Likewise.
	* debug/Makefile (CFLAGS-stack_chk_fail.c): Likewise.
	(CFLAGS-stack_chk_fail_local.c): Likewise.
	(CFLAGS-backtrace.c): Likewise.
	(CFLAGS-sprintf_chk.c): Likewise.
	(CFLAGS-snprintf_chk.c): Likewise.
	(CFLAGS-vsprintf_chk.c): Likewise.
	(CFLAGS-vsnprintf_chk.c): Likewise.
	(CFLAGS-asprintf_chk.c): Likewise.
	(CFLAGS-vasprintf_chk.c): Likewise.
	(CFLAGS-obprintf_chk.c): Likewise.
	(CFLAGS-dprintf_chk.c): Likewise.
	(CFLAGS-vdprintf_chk.c): Likewise.
	(CFLAGS-printf_chk.c): Likewise.
	(CFLAGS-fprintf_chk.c): Likewise.
	(CFLAGS-vprintf_chk.c): Likewise.
	(CFLAGS-vfprintf_chk.c): Likewise.
	(CFLAGS-gets_chk.c): Likewise.
	(CFLAGS-fgets_chk.c): Likewise.
	(CFLAGS-fgets_u_chk.c): Likewise.
	(CFLAGS-fread_chk.c): Likewise.
	(CFLAGS-fread_u_chk.c): Likewise.
	(CFLAGS-swprintf_chk.c): Likewise.
	(CFLAGS-vswprintf_chk.c): Likewise.
	(CFLAGS-wprintf_chk.c): Likewise.
	(CFLAGS-fwprintf_chk.c): Likewise.
	(CFLAGS-vwprintf_chk.c): Likewise.
	(CFLAGS-vfwprintf_chk.c): Likewise.
	(CFLAGS-fgetws_chk.c): Likewise.
	(CFLAGS-fgetws_u_chk.c): Likewise.
	(CFLAGS-read_chk.c): Likewise.
	(CFLAGS-pread_chk.c): Likewise.
	(CFLAGS-pread64_chk.c): Likewise.
	(CFLAGS-recv_chk.c): Likewise.
	(CFLAGS-recvfrom_chk.c): Likewise.
	(CFLAGS-tst-longjmp_chk.c): Likewise.
	(CPPFLAGS-tst-longjmp_chk.c): Likewise.
	(CFLAGS-tst-longjmp_chk2.c): Likewise.
	(CPPFLAGS-tst-longjmp_chk2.c): Likewise.
	(CFLAGS-tst-longjmp_chk3.c): Likewise.
	(CPPFLAGS-tst-longjmp_chk3.c): Likewise.
	(CFLAGS-tst-chk1.c): Likewise.
	(CFLAGS-tst-chk2.c): Likewise.
	(CFLAGS-tst-chk3.c): Likewise.
	(CFLAGS-tst-chk4.cc): Likewise.
	(CFLAGS-tst-chk5.cc): Likewise.
	(CFLAGS-tst-chk6.cc): Likewise.
	(CFLAGS-tst-lfschk1.c): Likewise.
	(CFLAGS-tst-lfschk2.c): Likewise.
	(CFLAGS-tst-lfschk3.c): Likewise.
	(CFLAGS-tst-lfschk4.cc): Likewise.
	(CFLAGS-tst-lfschk5.cc): Likewise.
	(CFLAGS-tst-lfschk6.cc): Likewise.
	(CFLAGS-tst-ssp-1.c): Likewise.
	* dirent/Makefile (CFLAGS-scandir.c): Likewise.
	(CFLAGS-scandir64.c): Likewise.
	(CFLAGS-scandir-tail.c): Likewise.
	(CFLAGS-scandir64-tail.c): Likewise.
	* elf/Makefile (CPPFLAGS-dl-tunables.c): Likewise.
	(CFLAGS-dl-tunables.c): Likewise.
	(CFLAGS-dl-runtime.c): Likewise.
	(CFLAGS-dl-lookup.c): Likewise.
	(CFLAGS-dl-iterate-phdr.c): Likewise.
	(CFLAGS-vismain.c): Likewise.
	(CFLAGS-tst-linkall-static.c): Likewise.
	(CFLAGS-tst-linkall-static.c): Likewise.
	(CPPFLAGS-dl-load.c): Likewise.
	(CFLAGS-ldconfig.c): Likewise.
	(CFLAGS-dl-cache.c): Likewise.
	(CFLAGS-cache.c): Likewise.
	(CFLAGS-rtld.c): Likewise.
	(CFLAGS-multiload.c): Likewise.
	(CFLAGS-filtmod1.c): Likewise.
	(CFLAGS-tst-align.c): Likewise.
	(CFLAGS-tst-align2.c): Likewise.
	(CFLAGS-tst-alignmod.c): Likewise.
	(CFLAGS-tst-alignmod2.c): Likewise.
	(CPPFLAGS-tst-execstack.c): Likewise.
	(CFLAGS-tst-ptrguard1-static.c): Likewise.
	(CFLAGS-tst-latepthreadmod.c): Likewise.
	* grp/Makefile (CFLAGS-getgrgid_r.c): Likewise.
	(CFLAGS-getgrnam_r.c): Likewise.
	(CFLAGS-getgrent_r.c): Likewise.
	(CFLAGS-getgrent.c): Likewise.
	(CFLAGS-fgetgrent.c): Likewise.
	(CFLAGS-fgetgrent_r.c): Likewise.
	(CFLAGS-putgrent.c): Likewise.
	(CFLAGS-initgroups.c): Likewise.
	(CFLAGS-getgrgid.c): Likewise.
	* gshadow/Makefile (CFLAGS-getsgent_r.c): Likewise.
	(CFLAGS-getsgent.c): Likewise.
	(CFLAGS-fgetsgent.c): Likewise.
	(CFLAGS-fgetsgent_r.c): Likewise.
	(CFLAGS-putsgent.c): Likewise.
	(CFLAGS-getsgnam.c): Likewise.
	(CFLAGS-getsgnam_r.c): Likewise.
	* iconv/Makefile (CFLAGS-iconv_prog.c): Likewise.
	(CFLAGS-iconv_charmap.c): Likewise.
	(CFLAGS-dummy-repertoire.c): Likewise.
	(CFLAGS-charmap.c): Likewise.
	(CFLAGS-linereader.c): Likewise.
	(CFLAGS-simple-hash.c): Likewise.
	(CFLAGS-gconv_conf.c): Likewise.
	(CFLAGS-iconvconfig.c): Likewise.
	* inet/Makefile (CFLAGS-gethstbyad_r.c): Likewise.
	(CFLAGS-gethstbyad.c): Likewise.
	(CFLAGS-gethstbynm_r.c): Likewise.
	(CFLAGS-gethstbynm.c): Likewise.
	(CFLAGS-gethstbynm2_r.c): Likewise.
	(CFLAGS-gethstbynm2.c): Likewise.
	(CFLAGS-gethstent_r.c): Likewise.
	(CFLAGS-gethstent.c): Likewise.
	(CFLAGS-rcmd.c): Likewise.
	(CFLAGS-getnetbynm_r.c): Likewise.
	(CFLAGS-getnetbynm.c): Likewise.
	(CFLAGS-getnetbyad_r.c): Likewise.
	(CFLAGS-getnetbyad.c): Likewise.
	(CFLAGS-getnetent_r.c): Likewise.
	(CFLAGS-getnetent.c): Likewise.
	(CFLAGS-getaliasent_r.c): Likewise.
	(CFLAGS-getaliasent.c): Likewise.
	(CFLAGS-getrpcent_r.c): Likewise.
	(CFLAGS-getrpcent.c): Likewise.
	(CFLAGS-getservent_r.c): Likewise.
	(CFLAGS-getservent.c): Likewise.
	(CFLAGS-getprtent_r.c): Likewise.
	(CFLAGS-getprtent.c): Likewise.
	(CFLAGS-either_ntoh.c): Likewise.
	(CFLAGS-either_hton.c): Likewise.
	(CFLAGS-getnetgrent.c): Likewise.
	(CFLAGS-getnetgrent_r.c): Likewise.
	(CFLAGS-tst-checks-posix.c): Likewise.
	(CFLAGS-tst-sockaddr.c): Likewise.
	* intl/Makefile (CFLAGS-tst-gettext.c): Likewise.
	(CFLAGS-tst-translit.c): Likewise.
	(CFLAGS-tst-gettext2.c): Likewise.
	(CFLAGS-tst-codeset.c): Likewise.
	(CFLAGS-tst-gettext3.c): Likewise.
	(CFLAGS-tst-gettext4.c): Likewise.
	(CFLAGS-tst-gettext5.c): Likewise.
	(CFLAGS-tst-gettext6.c): Likewise.
	* io/Makefile (CFLAGS-open.c): Likewise.
	(CFLAGS-open64.c): Likewise.
	(CFLAGS-creat.c): Likewise.
	(CFLAGS-creat64.c): Likewise.
	(CFLAGS-fcntl.c): Likewise.
	(CFLAGS-poll.c): Likewise.
	(CFLAGS-ppoll.c): Likewise.
	(CFLAGS-lockf.c): Likewise.
	(CFLAGS-statfs.c): Likewise.
	(CFLAGS-fstatfs.c): Likewise.
	(CFLAGS-statvfs.c): Likewise.
	(CFLAGS-fstatvfs.c): Likewise.
	(CFLAGS-fts.c): Likewise.
	(CFLAGS-fts64.c): Likewise.
	(CFLAGS-ftw.c): Likewise.
	(CFLAGS-ftw64.c): Likewise.
	(CFLAGS-lockf.c): Likewise.
	(CFLAGS-posix_fallocate.c): Likewise.
	(CFLAGS-posix_fallocate64.c): Likewise.
	(CFLAGS-fallocate.c): Likewise.
	(CFLAGS-fallocate64.c): Likewise.
	(CFLAGS-read.c): Likewise.
	(CFLAGS-write.c): Likewise.
	(CFLAGS-test-stat.c): Likewise.
	(CFLAGS-test-lfs.c): Likewise.
	* libio/Makefile (CFLAGS-fileops.c): Likewise.
	(CFLAGS-fputc.c): Likewise.
	(CFLAGS-fputwc.c): Likewise.
	(CFLAGS-freopen64.c): Likewise.
	(CFLAGS-freopen.c): Likewise.
	(CFLAGS-fseek.c): Likewise.
	(CFLAGS-fseeko64.c): Likewise.
	(CFLAGS-fseeko.c): Likewise.
	(CFLAGS-ftello64.c): Likewise.
	(CFLAGS-ftello.c): Likewise.
	(CFLAGS-fwide.c): Likewise.
	(CFLAGS-genops.c): Likewise.
	(CFLAGS-getc.c): Likewise.
	(CFLAGS-getchar.c): Likewise.
	(CFLAGS-getwc.c): Likewise.
	(CFLAGS-getwchar.c): Likewise.
	(CFLAGS-iofclose.c): Likewise.
	(CFLAGS-iofflush.c): Likewise.
	(CFLAGS-iofgetpos64.c): Likewise.
	(CFLAGS-iofgetpos.c): Likewise.
	(CFLAGS-iofgets.c): Likewise.
	(CFLAGS-iofgetws.c): Likewise.
	(CFLAGS-iofputs.c): Likewise.
	(CFLAGS-iofputws.c): Likewise.
	(CFLAGS-iofread.c): Likewise.
	(CFLAGS-iofsetpos64.c): Likewise.
	(CFLAGS-iofsetpos.c): Likewise.
	(CFLAGS-ioftell.c): Likewise.
	(CFLAGS-iofwrite.c): Likewise.
	(CFLAGS-iogetdelim.c): Likewise.
	(CFLAGS-iogetline.c): Likewise.
	(CFLAGS-iogets.c): Likewise.
	(CFLAGS-iogetwline.c): Likewise.
	(CFLAGS-ioputs.c): Likewise.
	(CFLAGS-ioseekoff.c): Likewise.
	(CFLAGS-ioseekpos.c): Likewise.
	(CFLAGS-iosetbuffer.c): Likewise.
	(CFLAGS-iosetvbuf.c): Likewise.
	(CFLAGS-ioungetc.c): Likewise.
	(CFLAGS-ioungetwc.c): Likewise.
	(CFLAGS-oldfileops.c): Likewise.
	(CFLAGS-oldiofclose.c): Likewise.
	(CFLAGS-oldiofgetpos64.c): Likewise.
	(CFLAGS-oldiofgetpos.c): Likewise.
	(CFLAGS-oldiofsetpos64.c): Likewise.
	(CFLAGS-oldiofsetpos.c): Likewise.
	(CFLAGS-peekc.c): Likewise.
	(CFLAGS-putc.c): Likewise.
	(CFLAGS-putchar.c): Likewise.
	(CFLAGS-putwc.c): Likewise.
	(CFLAGS-putwchar.c): Likewise.
	(CFLAGS-rewind.c): Likewise.
	(CFLAGS-wfileops.c): Likewise.
	(CFLAGS-wgenops.c): Likewise.
	(CFLAGS-oldiofopen.c): Likewise.
	(CFLAGS-iofopen.c): Likewise.
	(CFLAGS-iofopen64.c): Likewise.
	(CFLAGS-oldtmpfile.c): Likewise.
	(CFLAGS-tst_putwc.c): Likewise.
	* locale/Makefile (CFLAGS-md5.c): Likewise.
	(CFLAGS-charmap.c): Likewise.
	(CFLAGS-locfile.c): Likewise.
	(CFLAGS-charmap-dir.c): Likewise.
	* login/Makefile (CFLAGS-grantpt.c): Likewise.
	(CFLAGS-getpt.c): Likewise.
	(CFLAGS-pt_chown.c): Likewise.
	* malloc/Makefile (CFLAGS-mcheck-init.c): Likewise.
	(CFLAGS-obstack.c): Likewise.
	* math/Makefile (CFLAGS-test-tgmath3.c): Likewise.
	(CFLAGS-test-double-vlen4-wrappers.c): Likewise.
	(CFLAGS-test-double-vlen8-wrappers.c): Likewise.
	(CFLAGS-test-float-vlen8-wrappers.c): Likewise.
	(CFLAGS-test-float-vlen16-wrappers.c): Likewise.
	(CFLAGS-test-tgmath.c): Likewise.
	(CFLAGS-test-tgmath2.c): Likewise.
	(CFLAGS-test-tgmath-ret.c): Likewise.
	(CFLAGS-test-powl.c): Likewise.
	(CFLAGS-test-snan.c): Likewise.
	(CFLAGS-test-signgam-finite.c): Likewise.
	(CFLAGS-test-signgam-finite-c99.c): Likewise.
	(CFLAGS-test-signgam-finite-c11.c): Likewise.
	(CFLAGS-test-signgam-uchar.c): Likewise.
	(CFLAGS-test-signgam-uchar-init.c): Likewise.
	(CFLAGS-test-signgam-uchar-static.c): Likewise.
	(CFLAGS-test-signgam-uchar-init-static.c): Likewise.
	(CFLAGS-test-signgam-uint.c): Likewise.
	(CFLAGS-test-signgam-uint-init.c): Likewise.
	(CFLAGS-test-signgam-uint-static.c): Likewise.
	(CFLAGS-test-signgam-uint-init-static.c): Likewise.
	(CFLAGS-test-signgam-ullong.c): Likewise.
	(CFLAGS-test-signgam-ullong-init.c): Likewise.
	(CFLAGS-test-signgam-ullong-static.c): Likewise.
	(CFLAGS-test-signgam-ullong-init-static.c): Likewise.
	(CFLAGS-test-math-cxx11.cc): Likewise.
	(CFLAGS-test-math-isinff.cc): Likewise.
	(CFLAGS-test-math-iszero.cc): Likewise.
	(CFLAGS-test-math-issignaling.cc): Likewise.
	(CFLAGS-test-math-iscanonical.cc): Likewise.
	(CFLAGS-test-iszero-excess-precision.c): Likewise.
	(CFLAGS-test-iseqsig-excess-precision.c): Likewise.
	(CFLAGS-test-flt-eval-method.c): Likewise.
	(CFLAGS-test-fe-snans-always-signal.c): Likewise.
	(CFLAGS-test-finite-macros.c): Likewise.
	* misc/Makefile (CFLAGS-select.c): Likewise.
	(CFLAGS-tsearch.c): Likewise.
	(CFLAGS-lsearch.c): Likewise.
	(CFLAGS-pselect.c): Likewise.
	(CFLAGS-readv.c): Likewise.
	(CFLAGS-writev.c): Likewise.
	(CFLAGS-preadv.c): Likewise.
	(CFLAGS-preadv64.c): Likewise.
	(CFLAGS-pwritev.c): Likewise.
	(CFLAGS-pwritev64.c): Likewise.
	(CFLAGS-preadv2.c): Likewise.
	(CFLAGS-preadv64v2.c): Likewise.
	(CFLAGS-pwritev2.c): Likewise.
	(CFLAGS-pwritev64v2.c): Likewise.
	(CFLAGS-usleep.c): Likewise.
	(CFLAGS-syslog.c): Likewise.
	(CFLAGS-error.c): Likewise.
	(CFLAGS-getpass.c): Likewise.
	(CFLAGS-mkstemp.c): Likewise.
	(CFLAGS-mkstemp64.c): Likewise.
	(CFLAGS-getsysstats.c): Likewise.
	(CFLAGS-getusershell.c): Likewise.
	(CFLAGS-err.c): Likewise.
	(CFLAGS-tst-tsearch.c): Likewise.
	(CFLAGS-msync.c): Likewise.
	(CFLAGS-fdatasync.c): Likewise.
	(CFLAGS-fsync.c): Likewise.
	* nptl/Makefile (CFLAGS-nptl-init.c): Likewise.
	(CFLAGS-unwind.c): Likewise.
	(CFLAGS-unwind-forcedunwind.c): Likewise.
	(CFLAGS-pthread_cancel.c): Likewise.
	(CFLAGS-pthread_setcancelstate.c): Likewise.
	(CFLAGS-pthread_setcanceltype.c): Likewise.
	(CFLAGS-cancellation.c): Likewise.
	(CFLAGS-libc-cancellation.c): Likewise.
	(CFLAGS-pthread_exit.c): Likewise.
	(CFLAGS-forward.c): Likewise.
	(CFLAGS-pthread_testcancel.c): Likewise.
	(CFLAGS-pthread_join.c): Likewise.
	(CFLAGS-pthread_timedjoin.c): Likewise.
	(CFLAGS-pthread_once.c): Likewise.
	(CFLAGS-pthread_cond_wait.c): Likewise.
	(CFLAGS-sem_wait.c): Likewise.
	(CFLAGS-sem_timedwait.c): Likewise.
	(CFLAGS-fcntl.c): Likewise.
	(CFLAGS-lockf.c): Likewise.
	(CFLAGS-pread.c): Likewise.
	(CFLAGS-pread64.c): Likewise.
	(CFLAGS-pwrite.c): Likewise.
	(CFLAGS-pwrite64.c): Likewise.
	(CFLAGS-wait.c): Likewise.
	(CFLAGS-waitpid.c): Likewise.
	(CFLAGS-sigwait.c): Likewise.
	(CFLAGS-msgrcv.c): Likewise.
	(CFLAGS-msgsnd.c): Likewise.
	(CFLAGS-tcdrain.c): Likewise.
	(CFLAGS-open.c): Likewise.
	(CFLAGS-open64.c): Likewise.
	(CFLAGS-pause.c): Likewise.
	(CFLAGS-recv.c): Likewise.
	(CFLAGS-send.c): Likewise.
	(CFLAGS-accept.c): Likewise.
	(CFLAGS-sendto.c): Likewise.
	(CFLAGS-connect.c): Likewise.
	(CFLAGS-recvfrom.c): Likewise.
	(CFLAGS-recvmsg.c): Likewise.
	(CFLAGS-sendmsg.c): Likewise.
	(CFLAGS-close.c): Likewise.
	(CFLAGS-read.c): Likewise.
	(CFLAGS-write.c): Likewise.
	(CFLAGS-nanosleep.c): Likewise.
	(CFLAGS-sigsuspend.c): Likewise.
	(CFLAGS-msync.c): Likewise.
	(CFLAGS-fdatasync.c): Likewise.
	(CFLAGS-fsync.c): Likewise.
	(CFLAGS-pt-system.c): Likewise.
	(CFLAGS-tst-cleanup2.c): Likewise.
	(CFLAGS-tst-cleanupx2.c): Likewise.
	(CFLAGS-flockfile.c): Likewise.
	(CFLAGS-ftrylockfile.c): Likewise.
	(CFLAGS-funlockfile.c): Likewise.
	(CFLAGS-tst-initializers1.c): Likewise.
	(CFLAGS-tst-initializers1-c89.c): Likewise.
	(CFLAGS-tst-initializers1-c99.c): Likewise.
	(CFLAGS-tst-initializers1-c11.c): Likewise.
	(CFLAGS-tst-initializers1-gnu89.c): Likewise.
	(CFLAGS-tst-initializers1-gnu99.c): Likewise.
	(CFLAGS-tst-initializers1-gnu11.c): Likewise.
	* nscd/Makefile (CFLAGS-nscd_getpw_r.c): Likewise.
	(CFLAGS-nscd_getgr_r.c): Likewise.
	(CFLAGS-nscd_gethst_r.c): Likewise.
	(CFLAGS-nscd_getai.c): Likewise.
	(CFLAGS-nscd_initgroups.c): Likewise.
	* posix/Makefile (CFLAGS-getaddrinfo.c): Likewise.
	(CFLAGS-pause.c): Likewise.
	(CFLAGS-pread.c): Likewise.
	(CFLAGS-pread64.c): Likewise.
	(CFLAGS-pwrite.c): Likewise.
	(CFLAGS-pwrite64.c): Likewise.
	(CFLAGS-sleep.c): Likewise.
	(CFLAGS-wait.c): Likewise.
	(CFLAGS-waitid.c): Likewise.
	(CFLAGS-waitpid.c): Likewise.
	(CFLAGS-getopt.c): Likewise.
	(CFLAGS-wordexp.c): Likewise.
	(CFLAGS-sysconf.c): Likewise.
	(CFLAGS-pathconf.c): Likewise.
	(CFLAGS-fpathconf.c): Likewise.
	(CFLAGS-spawn.c): Likewise.
	(CFLAGS-spawnp.c): Likewise.
	(CFLAGS-spawni.c): Likewise.
	(CFLAGS-glob.c): Likewise.
	(CFLAGS-glob64.c): Likewise.
	(CFLAGS-getconf.c): Likewise.
	(CFLAGS-nanosleep.c): Likewise.
	* pwd/Makefile (CFLAGS-getpwent_r.c): Likewise.
	(CFLAGS-getpwent.c): Likewise.
	(CFLAGS-getpw.c): Likewise.
	(CFLAGS-fgetpwent_r.c): Likewise.
	* resolv/Makefile (CFLAGS-res_hconf.c): Likewise.
	* rt/Makefile (CFLAGS-aio_suspend.c): Likewise.
	(CFLAGS-mq_timedreceive.c): Likewise.
	(CFLAGS-mq_timedsend.c): Likewise.
	(CFLAGS-clock_nanosleep.c): Likewise.
	(CFLAGS-librt-cancellation.c): Likewise.
	* shadow/Makefile (CFLAGS-getspent_r.c): Likewise.
	(CFLAGS-getspent.c): Likewise.
	(CFLAGS-fgetspent.c): Likewise.
	(CFLAGS-fgetspent_r.c): Likewise.
	(CFLAGS-putspent.c): Likewise.
	(CFLAGS-getspnam.c): Likewise.
	(CFLAGS-getspnam_r.c): Likewise.
	* signal/Makefile (CFLAGS-sigpause.c): Likewise.
	(CFLAGS-sigsuspend.c): Likewise.
	(CFLAGS-sigtimedwait.c): Likewise.
	(CFLAGS-sigwait.c): Likewise.
	(CFLAGS-sigwaitinfo.c): Likewise.
	(CFLAGS-sigreturn.c): Likewise.
	* stdio-common/Makefile (CFLAGS-vfprintf.c): Likewise.
	(CFLAGS-vfwprintf.c): Likewise.
	(CFLAGS-tmpfile.c): Likewise.
	(CFLAGS-tmpfile64.c): Likewise.
	(CFLAGS-tempname.c): Likewise.
	(CFLAGS-psignal.c): Likewise.
	(CFLAGS-vprintf.c): Likewise.
	(CFLAGS-cuserid.c): Likewise.
	(CFLAGS-errlist.c): Likewise.
	(CFLAGS-siglist.c): Likewise.
	(CFLAGS-scanf15.c): Likewise.
	(CFLAGS-scanf17.c): Likewise.
	* stdlib/Makefile (CFLAGS-bsearch.c): Likewise.
	(CFLAGS-msort.c): Likewise.
	(CFLAGS-qsort.c): Likewise.
	(CFLAGS-system.c): Likewise.
	(CFLAGS-fmtmsg.c): Likewise.
	(CFLAGS-strfmon.c): Likewise.
	(CFLAGS-strfmon_l.c): Likewise.
	(CFLAGS-strfromd.c): Likewise.
	(CFLAGS-strfromf.c): Likewise.
	(CFLAGS-strfroml.c): Likewise.
	(CFLAGS-tst-bsearch.c): Likewise.
	(CFLAGS-tst-qsort.c): Likewise.
	(CFLAGS-tst-makecontext2.c): Likewise.
	* sunrpc/Makefile (CFLAGS-xbootparam_prot.c): Likewise.
	(CFLAGS-xnlm_prot.c): Likewise.
	(CFLAGS-xrstat.c): Likewise.
	(CFLAGS-xyppasswd.c): Likewise.
	(CFLAGS-xklm_prot.c): Likewise.
	(CFLAGS-xrex.c): Likewise.
	(CFLAGS-xsm_inter.c): Likewise.
	(CFLAGS-xmount.c): Likewise.
	(CFLAGS-xrusers.c): Likewise.
	(CFLAGS-xspray.c): Likewise.
	(CFLAGS-xnfs_prot.c): Likewise.
	(CFLAGS-xrquota.c): Likewise.
	(CFLAGS-xkey_prot.c): Likewise.
	(CFLAGS-auth_unix.c): Likewise.
	(CFLAGS-key_call.c): Likewise.
	(CFLAGS-pmap_rmt.c): Likewise.
	(CFLAGS-clnt_perr.c): Likewise.
	(CFLAGS-openchild.c): Likewise.
	* sysvipc/Makefile (CFLAGS-msgrcv.c): Likewise.
	(CFLAGS-msgsnd.c): Likewise.
	* termios/Makefile (CFLAGS-tcdrain.c): Likewise.
	* time/Makefile (CFLAGS-tzfile.c): Likewise.
	(CFLAGS-tzset.c): Likewise.
	(CFLAGS-getdate.c): Likewise.
	(CFLAGS-test_time.c): Likewise.
	(CPPFLAGS-tst-tzname.c): Likewise.
	* timezone/Makefile (CFLAGS-zdump.c): Likewise.
	(CFLAGS-zic.c): Likewise.
	* wcsmbs/Makefile (CFLAGS-wcwidth.c): Likewise.
	(CFLAGS-wcswidth.c): Likewise.
	(CFLAGS-wcstol.c): Likewise.
	(CFLAGS-wcstoul.c): Likewise.
	(CFLAGS-wcstoll.c): Likewise.
	(CFLAGS-wcstoull.c): Likewise.
	(CFLAGS-wcstod.c): Likewise.
	(CFLAGS-wcstold.c): Likewise.
	(CFLAGS-wcstof128.c): Likewise.
	(CFLAGS-wcstof.c): Likewise.
	(CFLAGS-wcstol_l.c): Likewise.
	(CFLAGS-wcstoul_l.c): Likewise.
	(CFLAGS-wcstoll_l.c): Likewise.
	(CFLAGS-wcstoull_l.c): Likewise.
	(CFLAGS-wcstod_l.c): Likewise.
	(CFLAGS-wcstold_l.c): Likewise.
	(CFLAGS-wcstof128_l.c): Likewise.
	(CFLAGS-wcstof_l.c): Likewise.
	(CPPFLAGS-tst-wchar-h.c): Likewise.
	(CPPFLAGS-wcstold_l.c): Likewise.

Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
2017-12-11 13:11:33 -08:00
Florian Weimer
dab0eecef6 aio: Remove internal_function function attribute 2017-08-31 15:59:06 +02:00
Zack Weinberg
a992f506ff Remove __need macros from signal.h.
The types affected are __sig_atomic_t, sig_atomic_t, __sigset_t,
sigset_t, sigval_t, sigevent_t, and siginfo_t. __sig_atomic_t is a
scalar, so it's now directly available from bits/types.h.  The others
get bits/types/ headers.

Side effects include: There have been small changes to which
non-signal headers expose which subset of the signal-related types.
A couple of architectures' nested siginfo_t fields had to be renamed
to prevent undesired macro expansion.  Internal code that wants to
manipulate signal masks must now include <sigsetops.h> (which is not
installed) and should be aware that __sigaddset, __sigandset,
__sigdelset, __sigemptyset, and __sigorset no longer return a value
(unlike the public API).  Relatedly, the public signal.h no longer
declares any of those functions.  The obsolete sigmask() macro no
longer has a system-specific definition -- in the cases where it
matters, it didn't work anyway.

New Linux architectures should create bits/siginfo-arch.h and/or
bits/siginfo-consts-arch.h to customize their siginfo_t, rather than
duplicating everything in bits/siginfo.h (which no longer exists).
Add new __SI_* macros if necessary.  Ports to other operating systems
are strongly encouraged to generalize this scheme further.

	* bits/sigevent-consts.h
	* bits/siginfo-consts.h
	* bits/types/__sigset_t.h
	* bits/types/sigevent_t.h
	* bits/types/siginfo_t.h
	* sysdeps/unix/sysv/linux/bits/sigevent-consts.h
	* sysdeps/unix/sysv/linux/bits/siginfo-consts.h
	* sysdeps/unix/sysv/linux/bits/types/__sigset_t.h
	* sysdeps/unix/sysv/linux/bits/types/sigevent_t.h
	* sysdeps/unix/sysv/linux/bits/types/siginfo_t.h:
	New system-dependent bits headers.

	* sysdeps/unix/sysv/linux/bits/siginfo-arch.h
	* sysdeps/unix/sysv/linux/bits/siginfo-consts-arch.h
	* sysdeps/unix/sysv/linux/ia64/bits/siginfo-arch.h
	* sysdeps/unix/sysv/linux/ia64/bits/siginfo-consts-arch.h
	* sysdeps/unix/sysv/linux/mips/bits/siginfo-arch.h
	* sysdeps/unix/sysv/linux/sparc/bits/siginfo-arch.h
	* sysdeps/unix/sysv/linux/tile/bits/siginfo-arch.h
	* sysdeps/unix/sysv/linux/tile/bits/siginfo-consts-arch.h
	* sysdeps/unix/sysv/linux/x86/bits/siginfo-arch.h:
	New Linux-only system-dependent bits headers.

	* signal/bits/types/sig_atomic_t.h
	* signal/bits/types/sigset_t.h
	* signal/bits/types/sigval_t.h:
	New non-system-dependent bits headers.

	* sysdeps/generic/sigsetops.h
	* sysdeps/unix/sysv/linux/sigsetops.h:
	New internal headers.

	* include/bits/types/sig_atomic_t.h
	* include/bits/types/sigset_t.h
	* include/bits/types/sigval_t.h:
	New wrappers.

	* signal/sigsetops.h
	* bits/siginfo.h
	* bits/sigset.h
	* sysdeps/unix/sysv/linux/bits/siginfo.h
	* sysdeps/unix/sysv/linux/bits/sigset.h
	* sysdeps/unix/sysv/linux/ia64/bits/siginfo.h
	* sysdeps/unix/sysv/linux/mips/bits/siginfo.h
	* sysdeps/unix/sysv/linux/s390/bits/siginfo.h
	* sysdeps/unix/sysv/linux/sparc/bits/siginfo.h
	* sysdeps/unix/sysv/linux/tile/bits/siginfo.h
	* sysdeps/unix/sysv/linux/x86/bits/siginfo.h:
	Deleted.

	* signal/Makefile, sysdeps/unix/sysv/linux/Makefile:
	Update lists of installed headers.

	* posix/bits/types.h: Define __sig_atomic_t here.
	* signal/signal.h: Use the new bits headers; no need to handle
	__need_sig_atomic_t nor __need_sigset_t.  Don't use __sigmask
	to define sigmask.
	* include/signal.h: No need to handle __need_sig_atomic_t
	nor __need_sigset_t.  Don't define __sigemptyset.

	* io/sys/poll.h, setjmp/setjmp.h
	* sysdeps/arm/sys/ucontext.h, sysdeps/generic/sys/ucontext.h
	* sysdeps/i386/sys/ucontext.h, sysdeps/m68k/sys/ucontext.h
	* sysdeps/mach/hurd/i386/bits/sigcontext.h
	* sysdeps/mips/sys/ucontext.h, sysdeps/powerpc/novmxsetjmp.h
	* sysdeps/pthread/bits/sigthread.h
	* sysdeps/unix/sysv/linux/hppa/sys/ucontext.h
	* sysdeps/unix/sysv/linux/m68k/sys/ucontext.h
	* sysdeps/unix/sysv/linux/mips/sys/ucontext.h
	* sysdeps/unix/sysv/linux/nios2/sys/ucontext.h
	* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h
	* sysdeps/unix/sysv/linux/s390/sys/ucontext.h
	* sysdeps/unix/sysv/linux/sh/sys/ucontext.h
	* sysdeps/unix/sysv/linux/sparc/sys/ucontext.h
	* sysdeps/unix/sysv/linux/tile/sys/ucontext.h
	* sysdeps/unix/sysv/linux/x86/sys/ucontext.h:
	Use bits/types/__sigset_t.h.

	* misc/sys/select.h, posix/spawn.h
	* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h
	* sysdeps/unix/sysv/linux/sys/epoll.h
	* sysdeps/unix/sysv/linux/sys/signalfd.h:
	Use bits/types/sigset_t.h.

	* resolv/netdb.h, rt/mqueue.h: Use bits/types/sigevent_t.h.
	* rt/aio.h: Use bits/types/sigevent_t.h and bits/sigevent-consts.h.
	* socket/sys/socket.h: Don't include bits/sigset.h.

	* login/utmp_file.c, shadow/lckpwdf.c, signal/sigandset.c
	* signal/sigisempty.c, stdlib/abort.c, sysdeps/posix/profil.c
	* sysdeps/posix/sigignore.c, sysdeps/posix/sigintr.c
	* sysdeps/posix/signal.c, sysdeps/posix/sigset.c
	* sysdeps/posix/sprofil.c, sysdeps/posix/sysv_signal.c
	* sysdeps/unix/sysv/linux/nptl-signals.h:
	Include sigsetops.h.

	* signal/sigaddset.c, signal/sigandset.c, signal/sigdelset.c
	* signal/sigorset.c, stdlib/abort.c, sysdeps/posix/sigignore.c
	* sysdeps/posix/signal.c, sysdeps/posix/sigset.c:
	__sigaddset, __sigandset, __sigdelset, __sigemptyset, __sigorset
	now return no value.

	* signal/sigaddset.c, signal/sigdelset.c, signal/sigismem.c
	Include <errno.h>, <signal.h>, and <sigsetops.h> instead of
	"sigsetops.h".

	* signal/sigsetops.c: Explicitly define __sigismember,
	__sigaddset, and __sigdelset as compatibility symbols.

	* signal/Versions: Correct commentary on __sigpause,
	__sigaddset, __sigdelset, __sigismember.

	* inet/rcmd.c: Include sigsetops.h.  Convert old code using
	__sigblock/__sigsetmask to use __sigprocmask and friends.
2017-05-20 19:04:43 -04:00
Adhemerval Zanella
332e01c627 posix: Consolidate Linux mq_timedsend syscall
This patch consolidates the mq_timedsend Linux syscall generation
on sysdeps/unix/sysv/linux/mq_timedsend.c.  It basically removes it
from architecture auto-generation list.

Checked on i686-linux-gnu, x86_64-linux-gnu, x86_64-linux-gnux32,
arch64-linux-gnu, arm-linux-gnueabihf, powerpc64le-linux-gnu,
sparc64-linux-gnu, and sparcv9-linux-gnu.

	* rt/Makefile (CFLAGS-mq_timedsend.c): New flag.
	* sysdeps/unix/sysv/linux/mq_timedsend.c: New file.
	* sysdeps/unix/sysv/linux/syscalls.list (mq_timedsend): Remove from
	auto-generation list.
2017-05-18 18:06:47 -03:00
Adhemerval Zanella
a5fdd30597 posix: Consolidate Linux mq_timedreceive syscall
This patch consolidates the mq_timedreceive Linux syscall generation
on sysdeps/unix/sysv/linux/mq_timedreceive.c.  It basically removes it
from architecture auto-generation list.

Checked on i686-linux-gnu, x86_64-linux-gnu, x86_64-linux-gnux32,
arch64-linux-gnu, arm-linux-gnueabihf, powerpc64le-linux-gnu,
sparc64-linux-gnu, and sparcv9-linux-gnu.

	* rt/Makefile (CFLAGS-mq_timedreceive.c): New flag.
	* sysdeps/unix/sysv/linux/mq_timedreceive.c: New file.
	* sysdeps/unix/sysv/linux/syscalls.list (mq_timedreceive): Remove
	from auto-generation list.
2017-05-18 18:06:47 -03:00
Zack Weinberg
71223d6880 One more obvious missing #include in the testsuite.
* rt/tst-mqueue4.c: Include stdint.h.
2017-02-19 10:29:34 -05:00
Joseph Myers
bfff8b1bec Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
Florian Weimer
c23de0aacb support: Introduce new subdirectory for test infrastructure
The new test driver in <support/test-driver.c> has feature parity with
the old one.  The main difference is that its hooking mechanism is
based on functions and function pointers instead of macros.  This
commit also implements a new environment variable, TEST_COREDUMPS,
which disables the code which disables coredumps (that is, it enables
them if the invocation environment has not disabled them).

<test-skeleton.c> defines wrapper functions so that it is possible to
use existing macros with the new-style hook functionality.

This commit changes only a few test cases to the new test driver, to
make sure that it works as expected.
2016-12-09 08:18:27 +01:00
Stefan Liebler
98ac7b7c85 Use libc_ifunc macro for clock_* symbols in librt.
This patch uses the libc_ifunc macro to create already existing ifunc functions
clock_getres, clock_gettime, clock_settime, clock_getcpuclockid and
clock_nanosleep. If HAVE_IFUNC is defined, the macro COMPAT_REDIRECT uses
the libc_ifunc macro.
Furthermore some whitespace damage is cleaned.

ChangeLog:

	* rt/clock-compat.c (COMPAT_REDIRECT): Use libc_ifunc macro.
2016-10-07 10:12:47 +02:00
Zack Weinberg
05b68e14b1 Installed-header hygiene (BZ#20366): time.h types.
Many headers are expected to expose a subset of the type definitions
in time.h.  time.h has a whole bunch of messy logic for conditionally
defining some its types and structs, but, as best I can tell, this
has never worked 100%.  In particular, __need_timespec is ineffective
if _TIME_H has already been defined, which means that if you compile

  #include <time.h>
  #include <sched.h>

with e.g. -fsyntax-only -std=c89 -Wall -Wsystem-headers, you will get

In file included from test.c:2:0:
/usr/include/sched.h:74:57: warning: "struct timespec" declared inside
  parameter list will not be visible outside of this definition or declaration
 extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __THROW;
                                                         ^~~~~~~~

And if you want to _use_ sched_rr_get_interval in a TU compiled that
way, you're hosed.

This patch replaces all of that with small bits/types/TYPE.h headers
as introduced earlier.  time.h and bits/time.h are now *much* simpler,
and a lot of other headers are slightly simpler.

	* time/time.h, bits/time.h, sysdeps/unix/sysv/linux/bits/time.h:
	Remove all logic conditional on __need macros.  Move all the
	conditionally defined types to their own headers...
	* time/bits/types/clock_t.h: Define clock_t here.
	* time/bits/types/clockid_t.h: Define clockid_t here.
	* time/bits/types/struct_itimerspec.h: Define struct itimerspec here.
	* time/bits/types/struct_timespec.h: Define struct timespec here.
	* time/bits/types/struct_timeval.h: Define struct timeval here.
	* time/bits/types/struct_tm.h: Define struct tm here.
	* time/bits/types/time_t.h: Define time_t here.
	* time/bits/types/timer_t.h: Define timer_t here.
	* time/Makefile: Install the new headers.

	* bits/resource.h, io/fcntl.h, io/sys/poll.h, io/sys/stat.h
	* io/utime.h, misc/sys/select.h, posix/sched.h, posix/sys/times.h
	* posix/sys/types.h, resolv/netdb.h, rt/aio.h, rt/mqueue.h
	* signal/signal.h, pthread/semaphore.h, sysdeps/nptl/pthread.h
	* sysdeps/unix/sysv/linux/alpha/bits/resource.h
	* sysdeps/unix/sysv/linux/alpha/sys/acct.h
	* sysdeps/unix/sysv/linux/bits/resource.h
	* sysdeps/unix/sysv/linux/bits/timex.h
	* sysdeps/unix/sysv/linux/mips/bits/resource.h
	* sysdeps/unix/sysv/linux/net/ppp_defs.h
	* sysdeps/unix/sysv/linux/sparc/bits/resource.h
	* sysdeps/unix/sysv/linux/sys/acct.h
	* sysdeps/unix/sysv/linux/sys/timerfd.h
	* sysvipc/sys/msg.h, sysvipc/sys/sem.h, sysvipc/sys/shm.h
	* time/sys/time.h, time/sys/timeb.h
	Use the new bits/types headers.

	* include/time.h: Remove __need logic.
	* include/bits/time.h
	* include/bits/types/clock_t.h, include/bits/types/clockid_t.h
	* include/bits/types/time_t.h, include/bits/types/timer_t.h
	* include/bits/types/struct_itimerspec.h
	* include/bits/types/struct_timespec.h
	* include/bits/types/struct_timeval.h
	* include/bits/types/struct_tm.h:
	New wrapper headers.
2016-09-23 08:43:56 -04:00
Adhemerval Zanella
fbc994921b rt: Set shm_open as a non cancellation point (BZ #18243)
This patch changes shm_open to not act as a cancellation point.
Cancellation is disable at start and reenable in function exit.
It fixes BZ #18243.

Tested on x86_64 and i686.

	[BZ #18243]
	* rt/Makefile (test): Add tst-shm-cancel.
	* rt/tst-shm-cancel.c: New file.
	* sysdeps/posix/shm_open.c: Disable asynchronous cancellation.
2016-09-15 11:15:14 -03:00
Paul Pluzhnikov
0677af20bb Fix rt/tst-aio64.c as well, and mention login/tst-utmp.c in ChangeLog
(it was fixed in previous commit).
2016-06-11 14:59:27 -07:00
Paul Pluzhnikov
850c67606e 2016-06-11 Paul Pluzhnikov <ppluzhnikov@google.com>
[BZ #19670]
	[BZ #19672]

	* io/test-lfs.c (do_prepare): Use xmalloc.
	* io/tst-fcntl.c (do_prepare): Likewise.
	* libio/tst-fopenloc.c (do_bz17916): Likewise.
	* libio/tst-mmap2-eofsync.c (do_prepare): Likewise.
	* posix/tst-exec.c (do_prepare): Likewise.
	* posix/tst-pathconf.c (prepare): Likewise.
	* posix/tst-spawn.c (do_prepare): Likewise.
	* posix/tst-truncate.c (do_prepare): Likewise.
	* rt/tst-aio.c (do_prepare): Likewise.
2016-06-11 14:50:16 -07:00
Samuel Thibault
35fbb341f8 Fix hurd build
* sysdeps/mach/hurd/openat.c (__openat): Add missing ellipsis.
	* resolv/gai_sigqueue.c (__gai_sigqueue): Add missing internal_function
	qualifier.
	* /rt/aio_sigqueue.c (__aio_sigqueue): Add missing attribute_hidden
	internal_function qualifiers.
2016-03-16 13:57:57 +01:00
Paul E. Murphy
a3e5b4feeb Fix race in tst-mqueue5
The check is done on line 117 by a thread spawned
from do_child(), forked from do_test().  This test
generates a signal in the forked process.

Either thread may handle the signal, and on ppc,
it happens to be done on do_child, on the thread
which is not doing the check on line 117.

This exposes a race condition whereby the test
incorrectly fails as the signal is caught during
or after the check.

This is mitigated by ensuring the signal is blocked
in the child thread while thread is running.
2016-01-15 16:53:08 -02:00
Joseph Myers
f7a9f785e5 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
Joseph Myers
9d46370ca3 Convert 703 function definitions to prototype style.
This automatically-generated patch converts 703 function definitions
in glibc from old-style K&R to prototype-style.

This conversion is deliberately simplistic, excluding any tricky cases
as even a patch covering only simple cases is still very large.
Currently excluded are: sysdeps files (to improve test coverage for
the initial patch); files containing assertions (to avoid line number
changes so that generated libraries can be compared); any cases where
the generated function declaration would involve lines over 79
characters and so need to be wrapped; any cases with array parameters
or other cases where parameter declarators don't end with the
parameter name; any other cases that my script didn't parse.

I didn't try to make the ChangeLog generation indicate when function
definitions are conditional; it just lists the functions changed
without regard to that.

Tested for x86_64 and x86 (testsuite, and that installed stripped
shared libraries are unchanged by the patch).

	* crypt/cert.c (good_bye): Convert to prototype-style function
	definition.
	(get8): Likewise.
	(put8): Likewise.
	* crypt/crypt-entry.c (crypt): Likewise.
	(__fcrypt): Likewise.
	* crypt/crypt_util.c (_ufc_prbits): Likewise.
	(_ufc_set_bits): Likewise.
	(_ufc_clearmem): Likewise.
	(__init_des_r): Likewise.
	(shuffle_sb): Likewise.
	(shuffle_sb): Likewise.
	(_ufc_setup_salt_r): Likewise.
	(_ufc_mk_keytab_r): Likewise.
	(_ufc_dofinalperm_r): Likewise.
	(encrypt): Likewise.
	(__setkey_r): Likewise.
	(setkey): Likewise.
	* crypt/md5.c (md5_init_ctx): Likewise.
	(md5_read_ctx): Likewise.
	(md5_finish_ctx): Likewise.
	(md5_stream): Likewise.
	(md5_buffer): Likewise.
	(md5_process_bytes): Likewise.
	* crypt/sha256.c (__sha256_init_ctx): Likewise.
	(__sha256_finish_ctx): Likewise.
	(__sha256_process_bytes): Likewise.
	* crypt/sha512.c (__sha512_init_ctx): Likewise.
	(__sha512_finish_ctx): Likewise.
	(__sha512_process_bytes): Likewise.
	* ctype/isctype.c (__isctype): Likewise.
	* debug/backtrace.c (__backtrace): Likewise.
	* debug/backtracesymsfd.c (__backtrace_symbols_fd): Likewise.
	* debug/fgets_chk.c (__fgets_chk): Likewise.
	* debug/fgets_u_chk.c (__fgets_unlocked_chk): Likewise.
	* debug/memcpy_chk.c (__memcpy_chk): Likewise.
	* debug/memmove_chk.c (MEMMOVE_CHK): Likewise.
	* debug/mempcpy_chk.c (__mempcpy_chk): Likewise.
	* debug/memset_chk.c (__memset_chk): Likewise.
	* debug/strcat_chk.c (__strcat_chk): Likewise.
	* debug/strncat_chk.c (__strncat_chk): Likewise.
	* debug/strncpy_chk.c (__strncpy_chk): Likewise.
	* debug/vsprintf_chk.c (_IO_str_chk_overflow): Likewise.
	* dirent/dirfd.c (dirfd): Likewise.
	* dirent/getdents.c (__getdirentries): Likewise.
	* dirent/getdents64.c (getdirentries64): Likewise.
	* dirent/rewinddir.c (__rewinddir): Likewise.
	* dirent/seekdir.c (seekdir): Likewise.
	* dirent/telldir.c (telldir): Likewise.
	* elf/sln.c (makesymlinks): Likewise.
	(makesymlink): Likewise.
	* gmon/gmon.c (__moncontrol): Likewise.
	(__monstartup): Likewise.
	(write_hist): Likewise.
	(write_call_graph): Likewise.
	(write_bb_counts): Likewise.
	* grp/setgroups.c (setgroups): Likewise.
	* inet/inet_lnaof.c (inet_lnaof): Likewise.
	* inet/inet_net.c (inet_network): Likewise.
	* inet/inet_netof.c (inet_netof): Likewise.
	* inet/rcmd.c (rresvport_af): Likewise.
	(rresvport): Likewise.
	* io/access.c (__access): Likewise.
	* io/chdir.c (__chdir): Likewise.
	* io/chmod.c (__chmod): Likewise.
	* io/chown.c (__chown): Likewise.
	* io/close.c (__close): Likewise.
	* io/creat.c (creat): Likewise.
	* io/creat64.c (creat64): Likewise.
	* io/dup.c (__dup): Likewise.
	* io/dup2.c (__dup2): Likewise.
	* io/dup3.c (__dup3): Likewise.
	* io/euidaccess.c (__euidaccess): Likewise.
	* io/faccessat.c (faccessat): Likewise.
	* io/fchmod.c (__fchmod): Likewise.
	* io/fchmodat.c (fchmodat): Likewise.
	* io/fchown.c (__fchown): Likewise.
	* io/fchownat.c (fchownat): Likewise.
	* io/fcntl.c (__fcntl): Likewise.
	* io/flock.c (__flock): Likewise.
	* io/fts.c (fts_load): Likewise.
	(fts_close): Likewise.
	(fts_read): Likewise.
	(fts_set): Likewise.
	(fts_children): Likewise.
	(fts_build): Likewise.
	(fts_stat): Likewise.
	(fts_sort): Likewise.
	(fts_alloc): Likewise.
	(fts_lfree): Likewise.
	(fts_palloc): Likewise.
	(fts_padjust): Likewise.
	(fts_maxarglen): Likewise.
	(fts_safe_changedir): Likewise.
	* io/getwd.c (getwd): Likewise.
	* io/isatty.c (__isatty): Likewise.
	* io/lchown.c (__lchown): Likewise.
	* io/link.c (__link): Likewise.
	* io/linkat.c (linkat): Likewise.
	* io/lseek.c (__libc_lseek): Likewise.
	* io/mkdir.c (__mkdir): Likewise.
	* io/mkdirat.c (mkdirat): Likewise.
	* io/mkfifo.c (mkfifo): Likewise.
	* io/mkfifoat.c (mkfifoat): Likewise.
	* io/open.c (__libc_open): Likewise.
	* io/open64.c (__libc_open64): Likewise.
	* io/readlink.c (__readlink): Likewise.
	* io/readlinkat.c (readlinkat): Likewise.
	* io/rmdir.c (__rmdir): Likewise.
	* io/symlink.c (__symlink): Likewise.
	* io/symlinkat.c (symlinkat): Likewise.
	* io/ttyname.c (ttyname): Likewise.
	* io/ttyname_r.c (__ttyname_r): Likewise.
	* io/umask.c (__umask): Likewise.
	* io/unlink.c (__unlink): Likewise.
	* io/unlinkat.c (unlinkat): Likewise.
	* io/utime.c (utime): Likewise.
	* libio/clearerr.c (clearerr): Likewise.
	* libio/clearerr_u.c (clearerr_unlocked): Likewise.
	* libio/feof.c (_IO_feof): Likewise.
	* libio/feof_u.c (feof_unlocked): Likewise.
	* libio/ferror.c (_IO_ferror): Likewise.
	* libio/ferror_u.c (ferror_unlocked): Likewise.
	* libio/filedoalloc.c (_IO_file_doallocate): Likewise.
	* libio/fileno.c (__fileno): Likewise.
	* libio/fputc.c (fputc): Likewise.
	* libio/fputc_u.c (fputc_unlocked): Likewise.
	* libio/fputwc.c (fputwc): Likewise.
	* libio/fputwc_u.c (fputwc_unlocked): Likewise.
	* libio/freopen.c (freopen): Likewise.
	* libio/freopen64.c (freopen64): Likewise.
	* libio/fseek.c (fseek): Likewise.
	* libio/fseeko.c (fseeko): Likewise.
	* libio/fseeko64.c (fseeko64): Likewise.
	* libio/ftello.c (__ftello): Likewise.
	* libio/ftello64.c (ftello64): Likewise.
	* libio/fwide.c (fwide): Likewise.
	* libio/genops.c (_IO_un_link): Likewise.
	(_IO_link_in): Likewise.
	(_IO_least_marker): Likewise.
	(_IO_switch_to_main_get_area): Likewise.
	(_IO_switch_to_backup_area): Likewise.
	(_IO_switch_to_get_mode): Likewise.
	(_IO_free_backup_area): Likewise.
	(_IO_switch_to_put_mode): Likewise.
	(__overflow): Likewise.
	(__underflow): Likewise.
	(__uflow): Likewise.
	(_IO_setb): Likewise.
	(_IO_doallocbuf): Likewise.
	(_IO_default_underflow): Likewise.
	(_IO_default_uflow): Likewise.
	(_IO_default_xsputn): Likewise.
	(_IO_sgetn): Likewise.
	(_IO_default_xsgetn): Likewise.
	(_IO_sync): Likewise.
	(_IO_default_setbuf): Likewise.
	(_IO_default_seekpos): Likewise.
	(_IO_default_doallocate): Likewise.
	(_IO_init): Likewise.
	(_IO_old_init): Likewise.
	(_IO_default_sync): Likewise.
	(_IO_default_finish): Likewise.
	(_IO_default_seekoff): Likewise.
	(_IO_sputbackc): Likewise.
	(_IO_sungetc): Likewise.
	(_IO_set_column): Likewise.
	(_IO_set_column): Likewise.
	(_IO_adjust_column): Likewise.
	(_IO_get_column): Likewise.
	(_IO_init_marker): Likewise.
	(_IO_remove_marker): Likewise.
	(_IO_marker_difference): Likewise.
	(_IO_marker_delta): Likewise.
	(_IO_seekmark): Likewise.
	(_IO_unsave_markers): Likewise.
	(_IO_nobackup_pbackfail): Likewise.
	(_IO_default_pbackfail): Likewise.
	(_IO_default_seek): Likewise.
	(_IO_default_stat): Likewise.
	(_IO_default_read): Likewise.
	(_IO_default_write): Likewise.
	(_IO_default_showmanyc): Likewise.
	(_IO_default_imbue): Likewise.
	(_IO_iter_next): Likewise.
	(_IO_iter_file): Likewise.
	* libio/getc.c (_IO_getc): Likewise.
	* libio/getwc.c (_IO_getwc): Likewise.
	* libio/iofclose.c (_IO_new_fclose): Likewise.
	* libio/iofdopen.c (_IO_new_fdopen): Likewise.
	* libio/iofflush.c (_IO_fflush): Likewise.
	* libio/iofflush_u.c (__fflush_unlocked): Likewise.
	* libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
	* libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
	* libio/iofgets.c (_IO_fgets): Likewise.
	* libio/iofgets_u.c (__fgets_unlocked): Likewise.
	* libio/iofgetws.c (fgetws): Likewise.
	* libio/iofgetws_u.c (fgetws_unlocked): Likewise.
	* libio/iofopen64.c (_IO_fopen64): Likewise.
	* libio/iofopncook.c (_IO_cookie_read): Likewise.
	(_IO_cookie_write): Likewise.
	(_IO_cookie_seek): Likewise.
	(_IO_cookie_close): Likewise.
	(_IO_cookie_seekoff): Likewise.
	(_IO_old_cookie_seek): Likewise.
	* libio/iofputs.c (_IO_fputs): Likewise.
	* libio/iofputs_u.c (__fputs_unlocked): Likewise.
	* libio/iofputws.c (fputws): Likewise.
	* libio/iofputws_u.c (fputws_unlocked): Likewise.
	* libio/iofread.c (_IO_fread): Likewise.
	* libio/iofread_u.c (__fread_unlocked): Likewise.
	* libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
	* libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
	* libio/ioftell.c (_IO_ftell): Likewise.
	* libio/iofwrite.c (_IO_fwrite): Likewise.
	* libio/iogetdelim.c (_IO_getdelim): Likewise.
	* libio/iogets.c (_IO_gets): Likewise.
	* libio/iopadn.c (_IO_padn): Likewise.
	* libio/iopopen.c (_IO_new_proc_open): Likewise.
	(_IO_new_popen): Likewise.
	(_IO_new_proc_close): Likewise.
	* libio/ioputs.c (_IO_puts): Likewise.
	* libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
	(_IO_seekoff): Likewise.
	* libio/ioseekpos.c (_IO_seekpos_unlocked): Likewise.
	(_IO_seekpos): Likewise.
	* libio/iosetbuffer.c (_IO_setbuffer): Likewise.
	* libio/iosetvbuf.c (_IO_setvbuf): Likewise.
	* libio/ioungetc.c (_IO_ungetc): Likewise.
	* libio/ioungetwc.c (ungetwc): Likewise.
	* libio/iovdprintf.c (_IO_vdprintf): Likewise.
	* libio/iovsscanf.c (_IO_vsscanf): Likewise.
	* libio/iowpadn.c (_IO_wpadn): Likewise.
	* libio/libc_fatal.c (__libc_fatal): Likewise.
	* libio/memstream.c (__open_memstream): Likewise.
	(_IO_mem_sync): Likewise.
	(_IO_mem_finish): Likewise.
	* libio/oldfileops.c (_IO_old_file_init): Likewise.
	(_IO_old_file_close_it): Likewise.
	(_IO_old_file_finish): Likewise.
	(_IO_old_file_fopen): Likewise.
	(_IO_old_file_attach): Likewise.
	(_IO_old_file_setbuf): Likewise.
	(_IO_old_do_write): Likewise.
	(old_do_write): Likewise.
	(_IO_old_file_underflow): Likewise.
	(_IO_old_file_overflow): Likewise.
	(_IO_old_file_sync): Likewise.
	(_IO_old_file_seekoff): Likewise.
	(_IO_old_file_write): Likewise.
	(_IO_old_file_xsputn): Likewise.
	* libio/oldiofclose.c (_IO_old_fclose): Likewise.
	* libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
	* libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
	* libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
	* libio/oldiofopen.c (_IO_old_fopen): Likewise.
	* libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
	* libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
	* libio/oldiopopen.c (_IO_old_proc_open): Likewise.
	(_IO_old_popen): Likewise.
	(_IO_old_proc_close): Likewise.
	* libio/oldpclose.c (__old_pclose): Likewise.
	* libio/pclose.c (__new_pclose): Likewise.
	* libio/peekc.c (_IO_peekc_locked): Likewise.
	* libio/putc.c (_IO_putc): Likewise.
	* libio/putc_u.c (putc_unlocked): Likewise.
	* libio/putchar.c (putchar): Likewise.
	* libio/putchar_u.c (putchar_unlocked): Likewise.
	* libio/putwc.c (putwc): Likewise.
	* libio/putwc_u.c (putwc_unlocked): Likewise.
	* libio/putwchar.c (putwchar): Likewise.
	* libio/putwchar_u.c (putwchar_unlocked): Likewise.
	* libio/rewind.c (rewind): Likewise.
	* libio/setbuf.c (setbuf): Likewise.
	* libio/setlinebuf.c (setlinebuf): Likewise.
	* libio/vasprintf.c (_IO_vasprintf): Likewise.
	* libio/vscanf.c (_IO_vscanf): Likewise.
	* libio/vsnprintf.c (_IO_strn_overflow): Likewise.
	* libio/vswprintf.c (_IO_wstrn_overflow): Likewise.
	* libio/wfiledoalloc.c (_IO_wfile_doallocate): Likewise.
	* libio/wgenops.c (_IO_least_wmarker): Likewise.
	(_IO_switch_to_main_wget_area): Likewise.
	(_IO_switch_to_wbackup_area): Likewise.
	(_IO_wsetb): Likewise.
	(_IO_wdefault_pbackfail): Likewise.
	(_IO_wdefault_finish): Likewise.
	(_IO_wdefault_uflow): Likewise.
	(__woverflow): Likewise.
	(__wuflow): Likewise.
	(__wunderflow): Likewise.
	(_IO_wdefault_xsputn): Likewise.
	(_IO_wdefault_xsgetn): Likewise.
	(_IO_wdoallocbuf): Likewise.
	(_IO_wdefault_doallocate): Likewise.
	(_IO_switch_to_wget_mode): Likewise.
	(_IO_free_wbackup_area): Likewise.
	(_IO_switch_to_wput_mode): Likewise.
	(_IO_sputbackwc): Likewise.
	(_IO_sungetwc): Likewise.
	(_IO_adjust_wcolumn): Likewise.
	(_IO_init_wmarker): Likewise.
	(_IO_wmarker_delta): Likewise.
	(_IO_seekwmark): Likewise.
	(_IO_unsave_wmarkers): Likewise.
	* libio/wmemstream.c (open_wmemstream): Likewise.
	(_IO_wmem_sync): Likewise.
	(_IO_wmem_finish): Likewise.
	* locale/nl_langinfo.c (nl_langinfo): Likewise.
	* locale/nl_langinfo_l.c (__nl_langinfo_l): Likewise.
	* locale/programs/simple-hash.c (init_hash): Likewise.
	(delete_hash): Likewise.
	(insert_entry): Likewise.
	(set_entry): Likewise.
	(next_prime): Likewise.
	(is_prime): Likewise.
	* locale/programs/xmalloc.c (fixup_null_alloc): Likewise.
	(xmalloc): Likewise.
	(xrealloc): Likewise.
	* locale/programs/xstrdup.c (xstrdup): Likewise.
	* localedata/collate-test.c (xstrcoll): Likewise.
	* localedata/xfrm-test.c (xstrcmp): Likewise.
	* login/getlogin_r.c (__getlogin_r): Likewise.
	* login/getpt.c (__posix_openpt): Likewise.
	* login/login_tty.c (login_tty): Likewise.
	* login/setlogin.c (setlogin): Likewise.
	* mach/msg-destroy.c (__mach_msg_destroy): Likewise.
	(mach_msg_destroy_port): Likewise.
	(mach_msg_destroy_memory): Likewise.
	* malloc/mcheck.c (flood): Likewise.
	* misc/acct.c (acct): Likewise.
	* misc/brk.c (__brk): Likewise.
	* misc/chflags.c (chflags): Likewise.
	* misc/chroot.c (chroot): Likewise.
	* misc/fchflags.c (fchflags): Likewise.
	* misc/fstab.c (getfsspec): Likewise.
	(getfsfile): Likewise.
	* misc/fsync.c (fsync): Likewise.
	* misc/ftruncate.c (__ftruncate): Likewise.
	* misc/ftruncate64.c (__ftruncate64): Likewise.
	* misc/getdomain.c (getdomainname): Likewise.
	(getdomainname): Likewise.
	* misc/gethostname.c (__gethostname): Likewise.
	* misc/getpass.c (getpass): Likewise.
	* misc/getttyent.c (skip): Likewise.
	(value): Likewise.
	* misc/gtty.c (gtty): Likewise.
	* misc/hsearch.c (hsearch): Likewise.
	(hcreate): Likewise.
	* misc/hsearch_r.c (__hcreate_r): Likewise.
	(__hdestroy_r): Likewise.
	* misc/ioctl.c (__ioctl): Likewise.
	* misc/mkdtemp.c (mkdtemp): Likewise.
	* misc/mkostemp.c (mkostemp): Likewise.
	* misc/mkostemp64.c (mkostemp64): Likewise.
	* misc/mkostemps.c (mkostemps): Likewise.
	* misc/mkostemps64.c (mkostemps64): Likewise.
	* misc/mkstemp.c (mkstemp): Likewise.
	* misc/mkstemp64.c (mkstemp64): Likewise.
	* misc/mkstemps.c (mkstemps): Likewise.
	* misc/mkstemps64.c (mkstemps64): Likewise.
	* misc/mktemp.c (__mktemp): Likewise.
	* misc/preadv.c (preadv): Likewise.
	* misc/preadv64.c (preadv64): Likewise.
	* misc/pwritev.c (pwritev): Likewise.
	* misc/pwritev64.c (pwritev64): Likewise.
	* misc/readv.c (__readv): Likewise.
	* misc/revoke.c (revoke): Likewise.
	* misc/setdomain.c (setdomainname): Likewise.
	* misc/setegid.c (setegid): Likewise.
	* misc/seteuid.c (seteuid): Likewise.
	* misc/sethostid.c (sethostid): Likewise.
	* misc/sethostname.c (sethostname): Likewise.
	* misc/setregid.c (__setregid): Likewise.
	* misc/setreuid.c (__setreuid): Likewise.
	* misc/sstk.c (sstk): Likewise.
	* misc/stty.c (stty): Likewise.
	* misc/syscall.c (syscall): Likewise.
	* misc/syslog.c (setlogmask): Likewise.
	* misc/truncate.c (__truncate): Likewise.
	* misc/truncate64.c (truncate64): Likewise.
	* misc/ualarm.c (ualarm): Likewise.
	* misc/usleep.c (usleep): Likewise.
	* misc/ustat.c (ustat): Likewise.
	* misc/writev.c (__writev): Likewise.
	* nptl/cleanup_compat.c (_pthread_cleanup_pop): Likewise.
	* nptl/old_pthread_cond_broadcast.c
	(__pthread_cond_broadcast_2_0): Likewise.
	* nptl/old_pthread_cond_destroy.c (__pthread_cond_destroy_2_0):
	Likewise.
	* nptl/old_pthread_cond_signal.c (__pthread_cond_signal_2_0):
	Likewise.
	* nptl/old_pthread_cond_wait.c (__pthread_cond_wait_2_0):
	Likewise.
	* nptl/pt-raise.c (raise): Likewise.
	* nptl/pthread_barrier_destroy.c (pthread_barrier_destroy):
	Likewise.
	* nptl/pthread_barrier_wait.c (__pthread_barrier_wait): Likewise.
	* nptl/pthread_barrierattr_destroy.c
	(pthread_barrierattr_destroy): Likewise.
	* nptl/pthread_barrierattr_init.c (pthread_barrierattr_init):
	Likewise.
	* nptl/pthread_barrierattr_setpshared.c
	(pthread_barrierattr_setpshared): Likewise.
	* nptl/pthread_cond_broadcast.c (__pthread_cond_broadcast):
	Likewise.
	* nptl/pthread_cond_destroy.c (__pthread_cond_destroy): Likewise.
	* nptl/pthread_cond_init.c (__pthread_cond_init): Likewise.
	* nptl/pthread_cond_signal.c (__pthread_cond_signal): Likewise.
	* nptl/pthread_condattr_destroy.c (__pthread_condattr_destroy):
	Likewise.
	* nptl/pthread_condattr_getclock.c (pthread_condattr_getclock):
	Likewise.
	* nptl/pthread_condattr_getpshared.c
	(pthread_condattr_getpshared): Likewise.
	* nptl/pthread_condattr_init.c (__pthread_condattr_init):
	Likewise.
	* nptl/pthread_condattr_setpshared.c
	(pthread_condattr_setpshared): Likewise.
	* nptl/pthread_detach.c (pthread_detach): Likewise.
	* nptl/pthread_equal.c (__pthread_equal): Likewise.
	* nptl/pthread_getcpuclockid.c (pthread_getcpuclockid): Likewise.
	* nptl/pthread_getspecific.c (__pthread_getspecific): Likewise.
	* nptl/pthread_key_delete.c (pthread_key_delete): Likewise.
	* nptl/pthread_mutex_consistent.c (pthread_mutex_consistent):
	Likewise.
	* nptl/pthread_mutex_destroy.c (__pthread_mutex_destroy):
	Likewise.
	* nptl/pthread_mutex_getprioceiling.c
	(pthread_mutex_getprioceiling): Likewise.
	* nptl/pthread_mutexattr_destroy.c (__pthread_mutexattr_destroy):
	Likewise.
	* nptl/pthread_mutexattr_getprotocol.c
	(pthread_mutexattr_getprotocol): Likewise.
	* nptl/pthread_mutexattr_getpshared.c
	(pthread_mutexattr_getpshared): Likewise.
	* nptl/pthread_mutexattr_getrobust.c
	(pthread_mutexattr_getrobust): Likewise.
	* nptl/pthread_mutexattr_gettype.c (pthread_mutexattr_gettype):
	Likewise.
	* nptl/pthread_mutexattr_init.c (__pthread_mutexattr_init):
	Likewise.
	* nptl/pthread_mutexattr_setprioceiling.c
	(pthread_mutexattr_setprioceiling): Likewise.
	* nptl/pthread_mutexattr_setprotocol.c
	(pthread_mutexattr_setprotocol): Likewise.
	* nptl/pthread_mutexattr_setpshared.c
	(pthread_mutexattr_setpshared): Likewise.
	* nptl/pthread_mutexattr_setrobust.c
	(pthread_mutexattr_setrobust): Likewise.
	* nptl/pthread_mutexattr_settype.c (__pthread_mutexattr_settype):
	Likewise.
	* nptl/pthread_rwlock_destroy.c (__pthread_rwlock_destroy):
	Likewise.
	* nptl/pthread_rwlockattr_destroy.c (pthread_rwlockattr_destroy):
	Likewise.
	* nptl/pthread_rwlockattr_getkind_np.c
	(pthread_rwlockattr_getkind_np): Likewise.
	* nptl/pthread_rwlockattr_getpshared.c
	(pthread_rwlockattr_getpshared): Likewise.
	* nptl/pthread_rwlockattr_init.c (pthread_rwlockattr_init):
	Likewise.
	* nptl/pthread_rwlockattr_setkind_np.c
	(pthread_rwlockattr_setkind_np): Likewise.
	* nptl/pthread_rwlockattr_setpshared.c
	(pthread_rwlockattr_setpshared): Likewise.
	* nptl/pthread_setcancelstate.c (__pthread_setcancelstate):
	Likewise.
	* nptl/pthread_setcanceltype.c (__pthread_setcanceltype):
	Likewise.
	* nptl/pthread_setconcurrency.c (pthread_setconcurrency):
	Likewise.
	* nptl/pthread_setschedprio.c (pthread_setschedprio): Likewise.
	* nptl/pthread_setspecific.c (__pthread_setspecific): Likewise.
	* nptl/pthread_spin_destroy.c (pthread_spin_destroy): Likewise.
	* nptl/pthread_tryjoin.c (pthread_tryjoin_np): Likewise.
	* nptl/sem_close.c (sem_close): Likewise.
	* nptl/sem_destroy.c (__new_sem_destroy): Likewise.
	* nptl/sem_init.c (__old_sem_init): Likewise.
	* nptl/sigaction.c (__sigaction): Likewise.
	* nptl/unregister-atfork.c (__unregister_atfork): Likewise.
	* posix/_exit.c (_exit): Likewise.
	* posix/alarm.c (alarm): Likewise.
	* posix/confstr.c (confstr): Likewise.
	* posix/fpathconf.c (__fpathconf): Likewise.
	* posix/getgroups.c (__getgroups): Likewise.
	* posix/getpgid.c (__getpgid): Likewise.
	* posix/group_member.c (__group_member): Likewise.
	* posix/pathconf.c (__pathconf): Likewise.
	* posix/sched_getaffinity.c (sched_getaffinity): Likewise.
	* posix/sched_setaffinity.c (sched_setaffinity): Likewise.
	* posix/setgid.c (__setgid): Likewise.
	* posix/setpgid.c (__setpgid): Likewise.
	* posix/setuid.c (__setuid): Likewise.
	* posix/sleep.c (__sleep): Likewise.
	* posix/sysconf.c (__sysconf): Likewise.
	* posix/times.c (__times): Likewise.
	* posix/uname.c (__uname): Likewise.
	* posix/waitid.c (__waitid): Likewise.
	* pwd/getpw.c (__getpw): Likewise.
	* resolv/base64.c (b64_pton): Likewise.
	* resolv/gai_sigqueue.c (__gai_sigqueue): Likewise.
	* resolv/gethnamaddr.c (Dprintf): Likewise.
	(gethostbyname): Likewise.
	(gethostbyname2): Likewise.
	(gethostbyaddr): Likewise.
	(_sethtent): Likewise.
	(_gethtbyname): Likewise.
	(_gethtbyname2): Likewise.
	(_gethtbyaddr): Likewise.
	(map_v4v6_address): Likewise.
	(map_v4v6_hostent): Likewise.
	(addrsort): Likewise.
	(ht_sethostent): Likewise.
	(ht_gethostbyname): Likewise.
	(ht_gethostbyaddr): Likewise.
	* resolv/inet_net_ntop.c (inet_net_ntop): Likewise.
	(inet_net_ntop_ipv4): Likewise.
	* resolv/inet_neta.c (inet_neta): Likewise.
	* resolv/inet_ntop.c (inet_ntop): Likewise.
	(inet_ntop4): Likewise.
	(inet_ntop6): Likewise.
	* resolv/inet_pton.c (__inet_pton): Likewise.
	(inet_pton4): Likewise.
	(inet_pton6): Likewise.
	* resolv/res_debug.c (loc_aton): Likewise.
	(loc_ntoa): Likewise.
	* resource/getpriority.c (__getpriority): Likewise.
	* resource/getrusage.c (__getrusage): Likewise.
	* resource/nice.c (nice): Likewise.
	* resource/setpriority.c (__setpriority): Likewise.
	* resource/setrlimit64.c (setrlimit64): Likewise.
	* resource/vlimit.c (vlimit): Likewise.
	* resource/vtimes.c (vtimes): Likewise.
	* rt/aio_error.c (aio_error): Likewise.
	* rt/aio_return.c (aio_return): Likewise.
	* rt/aio_sigqueue.c (__aio_sigqueue): Likewise.
	* signal/kill.c (__kill): Likewise.
	* signal/killpg.c (killpg): Likewise.
	* signal/raise.c (raise): Likewise.
	* signal/sigaction.c (__sigaction): Likewise.
	* signal/sigaddset.c (sigaddset): Likewise.
	* signal/sigaltstack.c (sigaltstack): Likewise.
	* signal/sigandset.c (sigandset): Likewise.
	* signal/sigblock.c (__sigblock): Likewise.
	* signal/sigdelset.c (sigdelset): Likewise.
	* signal/sigempty.c (sigemptyset): Likewise.
	* signal/sigfillset.c (sigfillset): Likewise.
	* signal/sighold.c (sighold): Likewise.
	* signal/sigignore.c (sigignore): Likewise.
	* signal/sigintr.c (siginterrupt): Likewise.
	* signal/sigisempty.c (sigisemptyset): Likewise.
	* signal/sigismem.c (sigismember): Likewise.
	* signal/signal.c (signal): Likewise.
	* signal/sigorset.c (sigorset): Likewise.
	* signal/sigpause.c (__sigpause): Likewise.
	* signal/sigpending.c (sigpending): Likewise.
	* signal/sigprocmask.c (__sigprocmask): Likewise.
	* signal/sigrelse.c (sigrelse): Likewise.
	* signal/sigreturn.c (__sigreturn): Likewise.
	* signal/sigset.c (sigset): Likewise.
	* signal/sigsetmask.c (__sigsetmask): Likewise.
	* signal/sigstack.c (sigstack): Likewise.
	* signal/sigsuspend.c (__sigsuspend): Likewise.
	* signal/sigvec.c (sigvec_wrapper_handler): Likewise.
	* signal/sysv_signal.c (__sysv_signal): Likewise.
	* socket/accept.c (accept): Likewise.
	* socket/accept4.c (__libc_accept4): Likewise.
	* socket/bind.c (__bind): Likewise.
	* socket/connect.c (__connect): Likewise.
	* socket/getpeername.c (getpeername): Likewise.
	* socket/getsockname.c (__getsockname): Likewise.
	* socket/getsockopt.c (getsockopt): Likewise.
	* socket/listen.c (__listen): Likewise.
	* socket/recv.c (__recv): Likewise.
	* socket/recvmsg.c (__recvmsg): Likewise.
	* socket/send.c (__send): Likewise.
	* socket/sendmsg.c (__sendmsg): Likewise.
	* socket/shutdown.c (shutdown): Likewise.
	* socket/sockatmark.c (sockatmark): Likewise.
	* socket/socket.c (__socket): Likewise.
	* stdio-common/ctermid.c (ctermid): Likewise.
	* stdio-common/cuserid.c (cuserid): Likewise.
	* stdio-common/printf-prs.c (parse_printf_format): Likewise.
	* stdio-common/remove.c (remove): Likewise.
	* stdio-common/rename.c (rename): Likewise.
	* stdio-common/renameat.c (renameat): Likewise.
	* stdio-common/tempname.c (__gen_tempname): Likewise.
	* stdio-common/xbug.c (InitBuffer): Likewise.
	(AppendToBuffer): Likewise.
	(ReadFile): Likewise.
	* stdlib/a64l.c (a64l): Likewise.
	* stdlib/drand48_r.c (drand48_r): Likewise.
	* stdlib/getcontext.c (getcontext): Likewise.
	* stdlib/getenv.c (getenv): Likewise.
	* stdlib/l64a.c (l64a): Likewise.
	* stdlib/llabs.c (llabs): Likewise.
	* stdlib/lldiv.c (lldiv): Likewise.
	* stdlib/lrand48_r.c (lrand48_r): Likewise.
	* stdlib/mrand48_r.c (mrand48_r): Likewise.
	* stdlib/putenv.c (putenv): Likewise.
	* stdlib/random.c (__srandom): Likewise.
	(__initstate): Likewise.
	(__setstate): Likewise.
	* stdlib/random_r.c (__srandom_r): Likewise.
	(__setstate_r): Likewise.
	(__random_r): Likewise.
	* stdlib/secure-getenv.c (__libc_secure_getenv): Likewise.
	* stdlib/setcontext.c (setcontext): Likewise.
	* stdlib/setenv.c (setenv): Likewise.
	(unsetenv): Likewise.
	* stdlib/srand48.c (srand48): Likewise.
	* stdlib/srand48_r.c (__srand48_r): Likewise.
	* stdlib/swapcontext.c (swapcontext): Likewise.
	* stdlib/system.c (__libc_system): Likewise.
	* stdlib/tst-strtod.c (expand): Likewise.
	* stdlib/tst-strtol.c (expand): Likewise.
	* stdlib/tst-strtoll.c (expand): Likewise.
	* streams/fattach.c (fattach): Likewise.
	* streams/fdetach.c (fdetach): Likewise.
	* streams/getmsg.c (getmsg): Likewise.
	* streams/isastream.c (isastream): Likewise.
	* string/ffs.c (__ffs): Likewise.
	* string/ffsll.c (ffsll): Likewise.
	* string/memcmp.c (memcmp_common_alignment): Likewise.
	(memcmp_not_common_alignment): Likewise.
	(MEMCMP): Likewise.
	* string/memcpy.c (memcpy): Likewise.
	* string/memmove.c (MEMMOVE): Likewise.
	* string/memset.c (memset): Likewise.
	* string/rawmemchr.c (RAWMEMCHR): Likewise.
	* string/strchrnul.c (STRCHRNUL): Likewise.
	* string/strerror.c (strerror): Likewise.
	* string/strndup.c (__strndup): Likewise.
	* string/strverscmp.c (__strverscmp): Likewise.
	* sunrpc/clnt_raw.c (clntraw_freeres): Likewise.
	* sunrpc/clnt_tcp.c (clnttcp_geterr): Likewise.
	(clnttcp_freeres): Likewise.
	* sunrpc/clnt_unix.c (clntunix_freeres): Likewise.
	* sunrpc/pmap_prot.c (xdr_pmap): Likewise.
	* sunrpc/pmap_prot2.c (xdr_pmaplist): Likewise.
	* sunrpc/pmap_rmt.c (xdr_rmtcallres): Likewise.
	* sunrpc/rpc_prot.c (xdr_replymsg): Likewise.
	(xdr_callhdr): Likewise.
	* sunrpc/rpcinfo.c (udpping): Likewise.
	(tcpping): Likewise.
	(pstatus): Likewise.
	(pmapdump): Likewise.
	(brdcst): Likewise.
	(deletereg): Likewise.
	(getprognum): Likewise.
	(getvers): Likewise.
	(get_inet_address): Likewise.
	* sunrpc/svc_raw.c (svcraw_recv): Likewise.
	* sunrpc/svc_udp.c (svcudp_create): Likewise.
	(svcudp_stat): Likewise.
	(svcudp_recv): Likewise.
	(svcudp_reply): Likewise.
	(svcudp_getargs): Likewise.
	(svcudp_freeargs): Likewise.
	(svcudp_destroy): Likewise.
	* sunrpc/xdr.c (xdr_bytes): Likewise.
	(xdr_netobj): Likewise.
	(xdr_string): Likewise.
	(xdr_wrapstring): Likewise.
	* sunrpc/xdr_float.c (xdr_float): Likewise.
	(xdr_double): Likewise.
	* sunrpc/xdr_mem.c (xdrmem_setpos): Likewise.
	* sunrpc/xdr_ref.c (xdr_pointer): Likewise.
	* sysvipc/ftok.c (ftok): Likewise.
	* sysvipc/msgctl.c (msgctl): Likewise.
	* sysvipc/msgget.c (msgget): Likewise.
	* sysvipc/msgrcv.c (msgrcv): Likewise.
	* sysvipc/msgsnd.c (msgsnd): Likewise.
	* sysvipc/semget.c (semget): Likewise.
	* sysvipc/semop.c (semop): Likewise.
	* sysvipc/shmat.c (shmat): Likewise.
	* sysvipc/shmctl.c (shmctl): Likewise.
	* sysvipc/shmdt.c (shmdt): Likewise.
	* sysvipc/shmget.c (shmget): Likewise.
	* termios/cfmakeraw.c (cfmakeraw): Likewise.
	* termios/speed.c (cfgetospeed): Likewise.
	(cfgetispeed): Likewise.
	(cfsetospeed): Likewise.
	(cfsetispeed): Likewise.
	* termios/tcflow.c (tcflow): Likewise.
	* termios/tcflush.c (tcflush): Likewise.
	* termios/tcgetattr.c (__tcgetattr): Likewise.
	* termios/tcgetpgrp.c (tcgetpgrp): Likewise.
	* termios/tcgetsid.c (tcgetsid): Likewise.
	* termios/tcsendbrk.c (tcsendbreak): Likewise.
	* termios/tcsetpgrp.c (tcsetpgrp): Likewise.
	* time/adjtime.c (__adjtime): Likewise.
	* time/dysize.c (dysize): Likewise.
	* time/ftime.c (ftime): Likewise.
	* time/getitimer.c (__getitimer): Likewise.
	* time/gettimeofday.c (__gettimeofday): Likewise.
	* time/gmtime.c (__gmtime_r): Likewise.
	(gmtime): Likewise.
	* time/localtime.c (__localtime_r): Likewise.
	(localtime): Likewise.
	* time/offtime.c (__offtime): Likewise.
	* time/settimeofday.c (__settimeofday): Likewise.
	* time/stime.c (stime): Likewise.
	* time/strftime_l.c (tm_diff): Likewise.
	(iso_week_days): Likewise.
	* time/strptime.c (strptime): Likewise.
	* time/time.c (time): Likewise.
	* time/timespec_get.c (timespec_get): Likewise.
	* time/tzset.c (tzset_internal): Likewise.
	(compute_change): Likewise.
	(__tz_compute): Likewise.
	* wcsmbs/btowc.c (__btowc): Likewise.
	* wcsmbs/mbrlen.c (__mbrlen): Likewise.
	* wcsmbs/mbsinit.c (__mbsinit): Likewise.
	* wcsmbs/mbsrtowcs.c (__mbsrtowcs): Likewise.
	* wcsmbs/wcpcpy.c (__wcpcpy): Likewise.
	* wcsmbs/wcpncpy.c (__wcpncpy): Likewise.
	* wcsmbs/wcscat.c (__wcscat): Likewise.
	* wcsmbs/wcschrnul.c (__wcschrnul): Likewise.
	* wcsmbs/wcscmp.c (WCSCMP): Likewise.
	* wcsmbs/wcscpy.c (WCSCPY): Likewise.
	* wcsmbs/wcscspn.c (wcscspn): Likewise.
	* wcsmbs/wcsdup.c (wcsdup): Likewise.
	* wcsmbs/wcslen.c (__wcslen): Likewise.
	* wcsmbs/wcsncat.c (WCSNCAT): Likewise.
	* wcsmbs/wcsncmp.c (WCSNCMP): Likewise.
	* wcsmbs/wcsncpy.c (__wcsncpy): Likewise.
	* wcsmbs/wcsnlen.c (__wcsnlen): Likewise.
	* wcsmbs/wcspbrk.c (wcspbrk): Likewise.
	* wcsmbs/wcsrchr.c (WCSRCHR): Likewise.
	* wcsmbs/wcsspn.c (wcsspn): Likewise.
	* wcsmbs/wcsstr.c (wcsstr): Likewise.
	* wcsmbs/wcstok.c (wcstok): Likewise.
	* wcsmbs/wctob.c (wctob): Likewise.
	* wcsmbs/wmemchr.c (__wmemchr): Likewise.
	* wcsmbs/wmemcmp.c (WMEMCMP): Likewise.
	* wcsmbs/wmemcpy.c (__wmemcpy): Likewise.
	* wcsmbs/wmemmove.c (__wmemmove): Likewise.
	* wcsmbs/wmempcpy.c (__wmempcpy): Likewise.
	* wcsmbs/wmemset.c (__wmemset): Likewise.
	* wctype/wcfuncs.c (__towlower): Likewise.
	(__towupper): Likewise.
2015-10-16 20:21:49 +00:00
Joseph Myers
cf1455657e Do not leave files behind in /tmp from testing.
I noticed that glibc testsuite runs left several files behind in /tmp
(or TMPDIR, if different).  The problem was testcases that generate a
template for mkstemp / mkstemp64, ending with XXXXXX, then pass that
template to add_temp_file before calling mkstemp / mkstemp64, meaning
that the template ending with XXXXXX is stored in the list of
temporary files to delete (add_temp_file uses strdup so that the
original string doesn't need to stay live), not the actual filename as
determined by mkstemp / mkstemp64.  This patch fixes those tests to
call add_temp_file later.

Tested for x86_64 (that the files are no longer left behind by a
testsuite run and the modified tests still pass).

	* io/test-lfs.c (do_prepare): Do not call add_temp_file until
	after mkstemp64.
	* login/tst-utmp.c (do_prepare): Likewise.
	* rt/tst-aio.c (do_prepare): Likewise.
	* rt/tst-aio64.c (do_prepare): Likewise.
2015-10-15 22:29:06 +00:00
Joseph Myers
dfa2d21450 Fix mq_receive, mq_send mq_timed* namespace (bug 18545).
mq_receive calls mq_timedreceive, and mq_send calls mq_timedsend.  But
mq_receive and mq_send were in POSIX by 1996, while mq_timed* were
added in the 2001 edition of POSIX.  This patch fixes this by making
mq_timed* into weak aliases for __mq_timed* and calling the
__mq_timed* names.

Tested for x86_64 and x86 (testsuite, and that disassembly of
installed shared libraries is unchanged by the patch).

	[BZ #18545]
	* rt/mq_timedreceive.c (mq_timedreceive): Rename to
	__mq_timedreceive and define as alias of __mq_timedreceive.  Use
	hidden_weak.
	* rt/mq_timedsend.c (mq_timedsend): Rename to __mq_timedsend and
	define as alias of __mq_timedsend.  Use hidden_weak.
	* sysdeps/unix/sysv/linux/syscalls.list (mq_timedsend): Use
	__mq_timedsend as strong name.
	(mq_timedreceive): Use __mq_timedreceive as strong name.
	* include/mqueue.h (__mq_timedsend): Declare.  Use hidden_proto.
	(__mq_timedreceive): Likewise.
	* sysdeps/unix/sysv/linux/mq_receive.c (mq_receive): Call
	__mq_timedreceive instead of mq_timedreceive.
	* sysdeps/unix/sysv/linux/mq_send.c (mq_send): Call __mq_timedsend
	instead of mq_timedsend.
	* conform/Makefile (test-xfail-UNIX98/mqueue.h/linknamespace):
	Remove variable.
2015-06-17 20:19:04 +00:00
Roland McGrath
2cfe32bc05 Conditionalize some test code for SIGRTMIN, SA_SIGINFO. 2015-03-04 15:14:56 -08:00
Roland McGrath
f50ad78b91 Don't set unused field in rt/tst-timer2. 2015-02-06 12:30:38 -08:00
Joseph Myers
b168057aaa Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
H.J. Lu
5d619de461 Replace %ld/%lu with %jd/%ju and cast to intmax_t/uintmax_t 2014-12-30 08:07:50 -08:00
Arjun Shankar
29955b5d96 Modify several tests to use test-skeleton.c
This patch modifies several test cases to use test-skeleton.c.
It was generated by a bash script written for this purpose and
thus excludes several other tests which I deemed worth a visual
inspection before making the change.

I intend to follow up with individual patches to the tests
skipped by the script.

The script itself resides at http://git.io/WODAmg and should
reproduce this very patch when run against master.

ChangeLog:

2014-10-30  Arjun Shankar  <arjun.is@lostca.se>

	* catgets/test-gencat.c: Use test-skeleton.c.
	* catgets/tst-catgets.c: Likewise.
	* csu/tst-empty.c: Likewise.
	* elf/tst-audit2.c: Likewise.
	* elf/tst-global1.c: Likewise.
	* elf/tst-pathopt.c: Likewise.
	* elf/tst-piemod1.c: Likewise.
	* elf/tst-tls10.c: Likewise.
	* elf/tst-tls11.c: Likewise.
	* elf/tst-tls12.c: Likewise.
	* gnulib/tst-gcc.c: Likewise.
	* iconvdata/tst-e2big.c: Likewise.
	* iconvdata/tst-loading.c: Likewise.
	* iconv/tst-iconv1.c: Likewise.
	* iconv/tst-iconv2.c: Likewise.
	* inet/test-inet6_opt.c: Likewise.
	* inet/tst-gethnm.c: Likewise.
	* inet/tst-network.c: Likewise.
	* inet/tst-ntoa.c: Likewise.
	* intl/tst-codeset.c: Likewise.
	* intl/tst-gettext2.c: Likewise.
	* intl/tst-gettext3.c: Likewise.
	* intl/tst-ngettext.c: Likewise.
	* intl/tst-translit.c: Likewise.
	* io/test-stat.c: Likewise.
	* libio/test-fmemopen.c: Likewise.
	* libio/tst-freopen.c: Likewise.
	* libio/tst-sscanf.c: Likewise.
	* libio/tst-ungetwc1.c: Likewise.
	* libio/tst-ungetwc2.c: Likewise.
	* libio/tst-widetext.c: Likewise.
	* localedata/tst-ctype.c: Likewise.
	* localedata/tst-digits.c: Likewise.
	* localedata/tst-leaks.c: Likewise.
	* localedata/tst-mbswcs1.c: Likewise.
	* localedata/tst-mbswcs2.c: Likewise.
	* localedata/tst-mbswcs3.c: Likewise.
	* localedata/tst-mbswcs4.c: Likewise.
	* localedata/tst-mbswcs5.c: Likewise.
	* localedata/tst-setlocale.c: Likewise.
	* localedata/tst-trans.c: Likewise.
	* localedata/tst-wctype.c: Likewise.
	* localedata/tst-xlocale1.c: Likewise.
	* login/tst-grantpt.c: Likewise.
	* malloc/tst-calloc.c: Likewise.
	* malloc/tst-malloc.c: Likewise.
	* malloc/tst-mallocstate.c: Likewise.
	* malloc/tst-mcheck.c: Likewise.
	* malloc/tst-mtrace.c: Likewise.
	* malloc/tst-obstack.c: Likewise.
	* math/atest-exp2.c: Likewise.
	* math/atest-exp.c: Likewise.
	* math/atest-sincos.c: Likewise.
	* math/test-matherr.c: Likewise.
	* math/test-misc.c: Likewise.
	* math/test-powl.c: Likewise.
	* math/tst-definitions.c: Likewise.
	* misc/tst-dirname.c: Likewise.
	* misc/tst-efgcvt.c: Likewise.
	* misc/tst-fdset.c: Likewise.
	* misc/tst-hsearch.c: Likewise.
	* misc/tst-mntent2.c: Likewise.
	* nptl/tst-sem7.c: Likewise.
	* nptl/tst-sem8.c: Likewise.
	* nptl/tst-sem9.c: Likewise.
	* nss/test-netdb.c: Likewise.
	* posix/tst-fnmatch.c: Likewise.
	* posix/tst-getlogin.c: Likewise.
	* posix/tst-gnuglob.c: Likewise.
	* posix/tst-mmap.c: Likewise.
	* pwd/tst-getpw.c: Likewise.
	* resolv/tst-inet_ntop.c: Likewise.
	* rt/tst-timer.c: Likewise.
	* stdio-common/test-fseek.c: Likewise.
	* stdio-common/test-popen.c: Likewise.
	* stdio-common/test-vfprintf.c: Likewise.
	* stdio-common/tst-cookie.c: Likewise.
	* stdio-common/tst-fileno.c: Likewise.
	* stdio-common/tst-gets.c: Likewise.
	* stdio-common/tst-obprintf.c: Likewise.
	* stdio-common/tst-perror.c: Likewise.
	* stdio-common/tst-sprintf2.c: Likewise.
	* stdio-common/tst-sprintf3.c: Likewise.
	* stdio-common/tst-sprintf.c: Likewise.
	* stdio-common/tst-swprintf.c: Likewise.
	* stdio-common/tst-tmpnam.c: Likewise.
	* stdio-common/tst-unbputc.c: Likewise.
	* stdio-common/tst-wc-printf.c: Likewise.
	* stdlib/tst-environ.c: Likewise.
	* stdlib/tst-fmtmsg.c: Likewise.
	* stdlib/tst-limits.c: Likewise.
	* stdlib/tst-rand48-2.c: Likewise.
	* stdlib/tst-rand48.c: Likewise.
	* stdlib/tst-random2.c: Likewise.
	* stdlib/tst-random.c: Likewise.
	* stdlib/tst-strtol.c: Likewise.
	* stdlib/tst-strtoll.c: Likewise.
	* stdlib/tst-tls-atexit.c: Likewise.
	* stdlib/tst-xpg-basename.c: Likewise.
	* string/test-ffs.c: Likewise.
	* string/tst-bswap.c: Likewise.
	* string/tst-inlcall.c: Likewise.
	* string/tst-strtok.c: Likewise.
	* string/tst-strxfrm.c: Likewise.
	* sysdeps/x86_64/tst-audit10.c: Likewise.
	* sysdeps/x86_64/tst-audit3.c: Likewise.
	* sysdeps/x86_64/tst-audit4.c: Likewise.
	* sysdeps/x86_64/tst-audit5.c: Likewise.
	* time/tst-ftime_l.c: Likewise.
	* time/tst-getdate.c: Likewise.
	* time/tst-mktime3.c: Likewise.
	* time/tst-mktime.c: Likewise.
	* time/tst-posixtz.c: Likewise.
	* time/tst-strptime2.c: Likewise.
	* time/tst-strptime3.c: Likewise.
	* wcsmbs/tst-btowc.c: Likewise.
	* wcsmbs/tst-mbrtowc.c: Likewise.
	* wcsmbs/tst-mbsrtowcs.c: Likewise.
	* wcsmbs/tst-wchar-h.c: Likewise.
	* wcsmbs/tst-wcpncpy.c: Likewise.
	* wcsmbs/tst-wcrtomb.c: Likewise.
	* wcsmbs/tst-wcsnlen.c: Likewise.
	* wcsmbs/tst-wcstof.c: Likewise.
2014-11-05 15:24:08 +05:30
Andreas Schwab
6c9578a24b Fix -Wundef warning for HAVE_IFUNC 2014-07-31 17:05:19 +02:00
Joseph Myers
bb7d033799 Don't mention linuxthreads in Depend files.
I noticed that some of the Depend files, used to determine the
subdirectory build order in sysd-sorted, still mentioned linuxthreads,
although it hasn't been supported for many years.  This patch removes
those references.  In the case of nscd, it substitutes an nptl
reference, since I believe there is a fact a thread library dependence
there; the others already mentioned nptl.

Note that I am not at all confident in the completeness of these
Depend files.

Note also that references to linuxthreads remain in a comment in
sysdeps/unix/sysv/linux/ia64/Versions, and in manual/maint.texi,
manual/signal.texi and scripts/documented.sh.

Tested x86_64 that the installed shared libraries are unchanged by the
patch (as is sysd-sorted).

	* nscd/Depend (linuxthreads): Remove.
	(nptl): Add.
	* resolv/Depend (linuxthreads): Remove.
	* rt/Depend (linuxthreads): Remove.
2014-05-21 16:53:11 +00:00
Joseph Myers
a5f891ac8d Consistently include Makeconfig after defining subdir.
In <https://sourceware.org/ml/libc-alpha/2014-01/msg00196.html> I
noted it was necessary to add includes of Makeconfig early in various
subdirectory makefiles for the tests-special variable settings added
by that patch to be conditional on configuration information.  No-one
commented on the general question there of whether Makeconfig should
always be included immediately after the definition of subdir.

This patch implements that early inclusion of Makeconfig in each
directory (which is a lot easier than consistent placement of includes
of Rules).  Includes are added if needed, or moved up if already
present.  Subdirectory "all:" targets are removed, since Makeconfig
provides one.

There is potential for further cleanups I haven't done.  Rules and
Makerules have code such as

ifneq   "$(findstring env,$(origin headers))" ""
headers :=
endif

to override to empty any value of various variables that came from the
environment.  I think there is a case for Makeconfig setting all the
subdirectory variables (other than subdir) to empty to ensure no
outside value is going to take effect if a subdirectory fails to
define a variable.  (A list of such variables, possibly out of date
and incomplete, is in manual/maint.texi.)  Rules and Makerules would
give errors if Makeconfig hadn't already been included, instead of
including it themselves.  The special code to override values coming
from the environment would then be obsolete and could be removed.

Tested x86_64, including that installed binaries are identical before
and after the patch.

	* argp/Makefile: Include Makeconfig immediately after defining
	subdir.
	* assert/Makefile: Likewise.
	* benchtests/Makefile: Likewise.
	* catgets/Makefile: Likewise.
	* conform/Makefile: Likewise.
	* crypt/Makefile: Likewise.
	* csu/Makefile: Likewise.
	(all): Remove target.
	* ctype/Makefile: Include Makeconfig immediately after defining
	subdir.
	* debug/Makefile: Likewise.
	* dirent/Makefile: Likewise.
	* dlfcn/Makefile: Likewise.
	* gmon/Makefile: Likewise.
	* gnulib/Makefile: Likewise.
	* grp/Makefile: Likewise.
	* gshadow/Makefile: Likewise.
	* hesiod/Makefile: Likewise.
	* hurd/Makefile: Likewise.
	(all): Remove target.
	* iconvdata/Makefile: Include Makeconfig immediately after
	defining subdir.
	* inet/Makefile: Likewise.
	* intl/Makefile: Likewise.
	* io/Makefile: Likewise.
	* libio/Makefile: Likewise.
	(all): Remove target.
	* locale/Makefile: Include Makeconfig immediately after defining
	subdir.
	* login/Makefile: Likewise.
	* mach/Makefile: Likewise.
	(all): Remove target.
	* malloc/Makefile: Include Makeconfig immediately after defining
	subdir.
	(all): Remove target.
	* manual/Makefile: Include Makeconfig immediately after defining
	subdir.
	* math/Makefile: Likewise.
	* misc/Makefile: Likewise.
	* nis/Makefile: Likewise.
	* nss/Makefile: Likewise.
	* po/Makefile: Likewise.
	(all): Remove target.
	* posix/Makefile: Include Makeconfig immediately after defining
	subdir.
	* pwd/Makefile: Likewise.
	* resolv/Makefile: Likewise.
	* resource/Makefile: Likewise.
	* rt/Makefile: Likewise.
	* setjmp/Makefile: Likewise.
	* shadow/Makefile: Likewise.
	* signal/Makefile: Likewise.
	* socket/Makefile: Likewise.
	* soft-fp/Makefile: Likewise.
	* stdio-common/Makefile: Likewise.
	* stdlib/Makefile: Likewise.
	* streams/Makefile: Likewise.
	* string/Makefile: Likewise.
	* sunrpc/Makefile: Likewise.
	(all): Remove target.
	* sysvipc/Makefile: Include Makeconfig immediately after defining
	subdir.
	* termios/Makefile: Likewise.
	* time/Makefile: Likewise.
	* timezone/Makefile: Likewise.
	(all): Remove target.
	* wcsmbs/Makefile: Include Makeconfig immediately after defining
	subdir.
	* wctype/Makefile: Likewise.

libidn/ChangeLog:
	* Makefile: Include Makeconfig immediately after defining subdir.

localedata/ChangeLog:
	* Makefile: Include Makeconfig immediately after defining subdir.
	(all): Remove target.

nptl/ChangeLog:
	* Makefile: Include Makeconfig immediately after defining subdir.

nptl_db/ChangeLog:
	* Makefile: Include Makeconfig immediately after defining subdir.
2014-02-26 23:12:03 +00:00
Allan McRae
d4697bc93d Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
Ondřej Bílka
b20de2c3d9 Properly handle shm_open validation. Fixes bug 16274. 2013-12-03 20:16:33 +01:00
Ondřej Bílka
d1d9eaf478 Use __glibc_reserved instead __unused. 2013-11-26 12:32:28 +01:00
Ondřej Bílka
5d30d85329 Restrict shm_open and shm_unlink to SHMDIR. Fixes bugs 14752 and 15763. 2013-10-31 13:59:01 +01:00
Siddhesh Poyarekar
89fb683558 Fix symbol definitions for __clock_* functions
__clock_gettime and other __clock_* functions could result in an extra
PLT reference within libc.so if it actually gets used.  None of the
code currently uses them, which is why this probably went unnoticed.
2013-06-11 11:11:11 +05:30
Joseph Myers
fab7ce3f5b Link extra-libs consistently with libc and ld.so. 2013-05-31 16:16:33 +00:00
Roland McGrath
e913141d5f Don't test O_RDONLY case in tst-aio7. 2013-04-16 12:11:26 -07:00
Joseph Myers
daaa7713e9 Remove bounded-pointers build system support. 2013-02-15 15:07:54 +00:00
H.J. Lu
740b3dbee8 Add --enable-hardcoded-path-in-tests configure option 2013-01-11 07:14:18 -08:00
Joseph Myers
568035b787 Update copyright notices with scripts/update-copyrights. 2013-01-02 19:05:09 +00:00
Thomas Schwinge
b830319d49 [BZ #157] Remove include/stub-tag.h for good. 2012-11-04 19:59:40 +01:00
Thomas Schwinge
cbc818d0ee Correct checking for mmap failure. 2012-11-01 00:23:09 +01:00
Roland McGrath
6e6249d0b4 BZ#14743: Move clock_* symbols from librt to libc. 2012-10-24 14:50:46 -07:00
Jim Blandy
166bca2480 Add and use $(host-built-program-cmd). 2012-10-23 22:49:59 +00:00
Pino Toscano
c39bc8b825 Include <pthread.h> where needed. 2012-09-28 01:08:17 +02:00
Roland McGrath
7c99b50ae4 Fix stub clock_nanosleep #include. 2012-08-15 15:35:16 -07:00
Marek Polacek
5ac3ea17df Fix attributes for fortify functions. 2012-04-29 15:34:20 +02:00
Paul Pluzhnikov
3ff4252677 2012-03-23 Daniel Jacobowitz <dmj@google.com>
Paul Pluzhnikov  <ppluzhnikov@google.com>

	[BZ #6528]
	* grp/Makefile (otherlibs): Don't set it.
	* inet/Makefile (otherlibs): Likewise.
	* login/Makefile (otherlibs): Likewise.
	* nscd/Makefile (otherlibs): Likewise.
	* posix/Makefile (otherlibs): Likewise.
	* pwd/Makefile (otherlibs): Likewise.
	* rt/Makefile (otherlibs): Likewise.
	* sunrpc/Makefile (otherlibs): Likewise.
	* nss/Makefile (otherlibs): Likewise.
	Add libnss_files to routines and static-only-routines.
	($(objpfx)getent): Remove rule.
	* resolv/Makefile: Add libnss_dns and libresolv to routines and
	static-only-routines.
2012-03-23 09:47:03 -07:00
Thomas Schwinge
82d86f2844 Fix struct timespec normalization (as used in many other places). 2012-03-08 11:49:43 +01:00
Ulrich Drepper
a4300c7a4d Remove distribute variable from Makefiles 2012-03-07 05:17:13 -05:00
Roland McGrath
84ad622bbf Add missing fcntl.h include in some aio tests. 2012-02-27 13:58:42 -08:00
Ulrich Drepper
d94a467080 Add first fixes for conformtest for POSIX2008 2012-02-26 21:32:56 -05:00
Ulrich Drepper
4efeffc1d5 Fix up POSIX testing in conformtest 2012-02-26 13:17:27 -05:00
Thomas Schwinge
fb779be7b3 A bit of testsuite cleanup. 2012-02-10 12:18:48 +01:00
Paul Eggert
59ba27a63a Replace FSF snail mail address with URLs. 2012-02-09 23:18:22 +00:00
Ulrich Drepper
a784e50247 Remove pre-ISO C support
No more __const.
2012-01-07 23:57:22 -05:00
Ulrich Drepper
0269750ca6 Remove non-ELF support 2012-01-07 20:30:26 -05:00
Jakub Jelinek
f16846a5f2 Fix <bits/mqueue2.h> for C++ 2011-06-04 14:21:45 -04:00
Ulrich Drepper
3a50811c2f * rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.
* rt/Makefile (headers): Add bits/mqueue2.h.
	* rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2,
	optimizing with GCC and __va_arg_pack_len is defined.
	* rt/bits/mqueue2.h: New file.
	* rt/mq_open.c (__mq_open): Renamed from mq_open.
	(mq_open): New strong_alias.
	(__mq_open_2): New function.
	* sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open.
	(mq_open): New strong_alias.
	(__mq_open_2): New function.
	* debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE.
	* Versions.def (librt): Add GLIBC_2.7 version.
	* debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def.
	* include/stdio.h (__fortify_fail): Add libc_hidden_proto.

	* misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define.
	* io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len
	is defined rather than when not C++.
	* io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias,
	__openat64_alias): New redirects.
	(__open_too_many_args, __open_missing_mode, __open64_too_many_args,
	__open64_missing_mode, __openat_too_many_args, __openat_missing_mode,
	__openat64_too_many_args, __openat64_missing_mode): New __errordecls.
	(open, open64, openat, openat64): Rewrite as __extern_always_inline
	functions instead of function-like macros.
2007-09-15 22:35:27 +00:00
Ulrich Drepper
2fb2066712 * rt/aio.h: Add __nonnull attributes. 2007-08-03 18:48:05 +00:00
Jakub Jelinek
754980e493 * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
numbers.
2007-08-03  Jakub Jelinek  <jakub@redhat.com>

	* rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
	numbers.
2007-08-03 09:51:21 +00:00
Ulrich Drepper
177f96e833 Change const to __const and add nonnull attributes. 2007-08-02 21:28:20 +00:00
Ulrich Drepper
701666b77d * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
void **.
	* nss/nsswitch.h (service_user): Use void * type for KNOWN field.

	* nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
	char * to avoid warning.
	* nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.

	* timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.

	* locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
	allocate_arrays): Cast second argument to charmap_find_symbol
	to char * to avoid warnings.

	* locale/programs/repertoire.c (repertoire_new_char): Change
	from_nr, to_nr and cnt to unsigned long, adjust printf format
	string.

	* locale/programs/ld-collate.c (insert_value, handle_ellipsis):
	Cast second argument to new_element to char * to avoid warnings.

	* locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.

	* intl/gettextP.h (struct loaded_domain): Change plural to const
	struct expression *.
	* intl/plural-eval.c (plural_eval): Change first argument to
	const struct expression *.
	* intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
	argument to const struct expression **.
	* intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
	prototypes.
	* intl/loadmsgcat (_nl_unload_domain): Cast away const
	in call to __gettext_free_exp.

	* posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
	unitialized wstring/wpattern var warnings.

	* posix/runtests.c (struct a_test): Make data field const char *.

	* stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
	vars if not LDBL_MANT_DIG >= 106.

	* stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.

	* stdio-common/vfprintf.c (vfprintf): Cast first arugment to
	__find_specmb to avoid warning.

	* rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.

	* debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
	to avoid warnings.

	* sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
	initializer.

	* sysdeps/unix/clock_gettime.c (clock_gettime): Only define
	tv var when it will be actually used.

	* sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
	to avoid warnings.
2007-07-28 20:36:21 +00:00
Ulrich Drepper
eb4b098a99 * rt/tst-shm.c: Use fstat64 instead of fstat. 2007-05-19 03:30:44 +00:00
Ulrich Drepper
30aa57851a [BZ #2526, BZ #3138, BZ #3143]
2006-09-12  Jakub Jelinek  <jakub@redhat.com>
	[BZ #2526]
	* README.libm: Fix a thinko in sqrt algorithm description.

	[BZ #3143]
	* manual/string.texi (argz_delete): Fix prototype.
	Patch by <alpt@freaknet.org>.

2006-08-26  Joseph Myers  <joseph@codesourcery.com>

	[BZ #3138]
	* io/test-lfs.c (do_prepare): Give name_len type size_t.
	* io/tst-fcntl.c (do_prepare): Likewise.
	* posix/tst-exec.c (do_prepare): Likewise.
	* posix/tst-preadwrite.c (do_prepare): Likewise.
	* posix/tst-spawn.c (do_prepare): Likewise.
	* posix/tst-truncate.c (do_prepare): Likewise.
	* rt/tst-aio.c (do_prepare): Likewise.
	* rt/tst-aio64.c (do_prepare): Likewise.
	* stdlib/test-canon2.c (do_prepare): Give test_dir_len type
	size_t.
2006-09-12 11:44:01 +00:00
Ulrich Drepper
f1762c0c4b [BZ #2978]
2006-08-03  Ulrich Drepper  <drepper@redhat.com>
	* rt/Makefile (tests): Add tst-clock2.
	* rt/tst-clock2.c: New file.

	[BZ #2978]
	* resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
	function and its parameters and pass it to new thread.
	(__gai_notify): Add support for alternative waiting for completion.
	* resolv/gai_suspend.c (gai_suspend): Add support for alternative
	waiting for completion.
	* resolv/getaddrinfo_a.c: Likewise.
	* resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
	waiting for completion is used.
	* resolv/gai_misc.c: Allow overwriting code to start helper thread.
	* resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
	* resolv/gai_error.c: Likewise.
	* resolv/gai_sigqueue.c: Likewise.

	* hurd/getdport.c (__detdport): Don't return EBADF; instead set
	errno to EBADF and return MACH_PORT_NULL.
	* posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
2006-08-03 08:17:20 +00:00
Ulrich Drepper
b957e86420 * rt/Makefile (tests): Add tst-aio9 and tst-aio10.
* rt/tst-aio10.c: New file.
2006-01-06 04:13:26 +00:00
Ulrich Drepper
679d83bac2 * sysdeps/pthread/aio_misc.h [!DONT_USE_BOOTSTRAP_MAP]
(struct waitlist): Don't add cond.
	* sysdeps/pthread/aio_notify.c [!DONT_USE_BOOTSTRAP_MAP]
	(__aio_notify): Use AIO_MISC_NOTIFY instead of pthread_cond_signal.
	* sysdeps/pthread/aio_suspend.c [!DONT_USE_BOOTSTRAP_MAP]: Don't
	use condvar, use AIO_MISC_WAIT.
	* sysdeps/pthread/lio_listio.c: Likewise.
	* rt/Makefile (tests): Add aio_suspend.
	* rt/tst-aio9.c: New file.
2006-01-06 03:08:04 +00:00
Ulrich Drepper
22347a8b23 The thread is now supposed to be created. 2006-01-05 22:42:01 +00:00
Ulrich Drepper
0af5b6adb1 (do_test): aio_offset should be initialized, too. 2006-01-05 00:26:42 +00:00
Ulrich Drepper
9759bbf188 * sysdeps/powerpc/powerpc32/sysdep.h (ENTRY, EALIGN): Add cfi_startproc
directive to ENTRY macros.
	(END): Add cfi_endproc directive to END macro.
	* sysdeps/powerpc/powerpc64/sysdep.h (ENTRY, EALIGN): Add cfi_startproc
	directive to ENTRY macros.
	(END, END_GEN_TB): Add cfi_endproc directive to END macros.
	* sysdeps/powerpc/powerpc32/dl-start.S: Remove ENTRY()s for
	_dl_start_user and _dl_main_dispatch.
	* sysdeps/powerpc/powerpc32/fpu/fprrest.S: Use END macro.
	* sysdeps/powerpc/powerpc32/fpu/fprsave.S: Use Likewise.
	* sysdeps/powerpc/powerpc32/gprrest0.S: Likewise.
	* sysdeps/powerpc/powerpc32/gprrest1.S: Likewise.
	* sysdeps/powerpc/powerpc32/gprsave0.S: Likewise.
	* sysdeps/powerpc/powerpc32/gprsave1.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Remove redundant
	cfi_startproc and cfi_endproc.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Likewise.

2006-01-04  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/pthread/aio_misc.h (struct waitlist): Add result member.
	* sysdeps/pthread/aio_notify.c (__aio_notify): For synchronous waiters,
	failed I/O, and a result pointer, set value to -1.
	* sysdeps/pthread/aio_suspend.c: Initialize result pointer to NULL.
	* sysdeps/pthread/lio_listio.c: For LIO_WAIT, point result pointer in
	wait list to local variable result.  If nonzero afterwards, set errno
	to EIO.  For LIO_NOWAIT set result to NULL.
	* rt/Makefile (tests): Add tst-aio8.
	* rt/tst-aio8.c: New file.
2006-01-04 20:05:05 +00:00
Ulrich Drepper
4da28a490b Test for lio_listio returning an error for LIO_WAIT if an IO request failed. 2006-01-04 19:34:40 +00:00
Ulrich Drepper
6d3aff23e2 lio_listio should emit an event for each individual request in
addition to the global event.
	* sysdeps/pthread/lio_listio.c (lio_listio): Renamed to
	lio_listio_internal.  Remove mode parameter check.  Only set sigevent
	type ti SIGEV_NONE if LIO_NO_INDIVIDUAL_EVENT is set.
	(__lio_listio_21): New function.  Compatiblity version which sets
	LIO_NO_INDIVIDUAL_EVENT before calling lio_listio_internal.
	(__lio_listio_item_notify): New function.
	* sysdeps/pthread/lio_listio64.c: Define __lio_listio_21 and
	__lio_listio_item_notify macros.
	* sysdeps/pthread/Versions: New file.
	* rt/tst-aio2.c: Adjust test for new semantics of lio_listio.
	* include/aio.h: Define LIO_NO_INDIVIDUAL_EVENT.
	* Versions.def: Add GLIBC_2.4 for librt.

	* rt/Versions: Whitespace fix.
	* sysdeps/pthread/aio_misc.c: Likewise.
2006-01-03 23:19:03 +00:00
Roland McGrath
8f480b4bc2 * elf/cache.c: Use <> rather than "" #includes.
* elf/chroot_canon.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* elf/readlib.c: Likewise.
	* elf/rtld.c: Likewise.
	* gmon/mcount.c: Likewise.
	* hurd/hurdfault.c: Likewise.
	* hurd/hurdsig.c: Likewise.
	* hurd/report-wait.c: Likewise.
	* hurd/sigunwind.c: Likewise.
	* mach/setup-thread.c: Likewise.
	* rt/aio_read64.c: Likewise.
	* rt/aio_sigqueue.c: Likewise.
	* rt/aio_write64.c: Likewise.
	* soft-fp/soft-fp.h: Likewise.
	* stdio-common/tmpfile64.c: Likewise.
	* sysdeps/mach/hurd/fork.c: Likewise.
	* sysdeps/mach/hurd/hppa/trampoline.c: Likewise.
	* sysdeps/mach/hurd/i386/trampoline.c: Likewise.
	* sysdeps/mach/hurd/mips/trampoline.c: Likewise.
	* sysdeps/mach/hurd/powerpc/trampoline.c: Likewise.
	* sysdeps/posix/sprofil.c: Likewise.
	* sysdeps/pthread/aio_cancel.c: Likewise.
	* sysdeps/pthread/aio_fsync.c: Likewise.
	* sysdeps/pthread/aio_read64.c: Likewise.
	* sysdeps/pthread/aio_read.c: Likewise.
	* sysdeps/pthread/aio_suspend.c: Likewise.
	* sysdeps/pthread/aio_write64.c: Likewise.
	* sysdeps/pthread/aio_write.c: Likewise.
	* sysdeps/pthread/lio_listio64.c: Likewise.
	* sysdeps/pthread/lio_listio.c: Likewise.
	* sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
	* sysdeps/unix/sysv/tcflow.c: Likewise.
2005-12-21 22:16:34 +00:00
Ulrich Drepper
9d13fb2413 Moved to csu/errno-loc.c. 2005-12-14 15:06:39 +00:00
Ulrich Drepper
b6ab06cef4 2005-12-13 Ulrich Drepper <drepper@redhat.com> 2005-12-14 08:43:25 +00:00
Ulrich Drepper
a877d33e8e Cleanups. 2005-10-23 20:38:06 +00:00
Roland McGrath
b3af1a245b * manual/install.texi (Installation): Don't mention linuxthreads.
(Configuring and compiling): Don't use linuxthreads as example.

	* sysdeps/unix/sysv/linux/configure.in: Check for nptl add-on only,
	not linuxthreads.
	* sysdeps/unix/sysv/linux/configure: Regenerated.
	* resolv/Depend: Add nptl.
	* rt/Depend: Likewise.

	* linuxthreads, linuxthreads_db: Directories removed (preserved in
	ports repository).
2005-07-03 04:40:53 +00:00