Remove __libc_creat function name.
authorJoseph Myers <joseph@codesourcery.com>
Thu, 30 Oct 2014 19:44:31 +0000 (19:44 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Thu, 30 Oct 2014 19:44:31 +0000 (19:44 +0000)
commitd4e157aaaead89474366f58fa57e035441a2bd8b
tree1763af19644312b12c733d2e71cf349d09765014
parent0c6891a0037dae32d512970690502227f856fa20
Remove __libc_creat function name.

glibc has lots of __libc_* function names that no longer serve any
purpose (are not used for any calls or exported at a public symbol
version).  This patch removes __libc_creat.  It has the effect of
creat becoming a strong symbol instead of a weak symbol in various
cases, but that's fine; in shared libraries it doesn't matter at all,
while for static linking the only other symbol sometimes defined in
the same object is creat64, and whenever creat64 is a reserved name so
is creat.

Other such cases of unnecessary __libc_* symbols are expected to be
dealt with in separate patches over time.

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

* include/fcntl.h (__libc_creat): Remove declaration.
* io/creat.c (__libc_creat): Rename to creat.
(creat): Do not define as alias.
* sysdeps/unix/sysv/linux/alpha/creat.c (creat64): Define as alias
of creat instead of __libc_creat.
* sysdeps/unix/sysv/linux/generic/creat.c (__libc_creat): Rename
to creat.
(creat): Do not define as alias.
[__WORDSIZE == 64] (creat64): Define as alias of creat instead of
__libc_creat.
* sysdeps/unix/sysv/linux/syscalls.list (creat): Do not define
__libc_creat name.
* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list (creat):
Likewise.
ChangeLog
include/fcntl.h
io/creat.c
sysdeps/unix/sysv/linux/alpha/creat.c
sysdeps/unix/sysv/linux/generic/creat.c
sysdeps/unix/sysv/linux/syscalls.list
sysdeps/unix/sysv/linux/wordsize-64/syscalls.list