From 5ce3737931bb411a8d167356d4d0287b53b0cbdc Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Wed, 12 Sep 2018 00:08:09 -0400 Subject: reduce spurious inclusion of libc.h libc.h was intended to be a header for access to global libc state and related interfaces, but ended up included all over the place because it was the way to get the weak_alias macro. most of the inclusions removed here are places where weak_alias was needed. a few were recently introduced for hidden. some go all the way back to when libc.h defined CANCELPT_BEGIN and _END, and all (wrongly implemented) cancellation points had to include it. remaining spurious users are mostly callers of the LOCK/UNLOCK macros and files that use the LFS64 macro to define the awful *64 aliases. in a few places, new inclusion of libc.h is added because several internal headers no longer implicitly include libc.h. declarations for __lockfile and __unlockfile are moved from libc.h to stdio_impl.h so that the latter does not need libc.h. putting them in libc.h made no sense at all, since the macros in stdio_impl.h are needed to use them correctly anyway. --- src/ldso/__dlsym.c | 1 - src/ldso/dladdr.c | 1 - src/ldso/dlclose.c | 1 - src/ldso/dlerror.c | 1 - src/ldso/dlinfo.c | 1 - src/ldso/dlopen.c | 1 - src/ldso/tlsdesc.c | 1 - 7 files changed, 7 deletions(-) (limited to 'src/ldso') diff --git a/src/ldso/__dlsym.c b/src/ldso/__dlsym.c index 012994a7..8ac0a334 100644 --- a/src/ldso/__dlsym.c +++ b/src/ldso/__dlsym.c @@ -1,6 +1,5 @@ #include #include "dynlink.h" -#include "libc.h" static void *stub_dlsym(void *restrict p, const char *restrict s, void *restrict ra) { diff --git a/src/ldso/dladdr.c b/src/ldso/dladdr.c index 659ab91e..e5c80206 100644 --- a/src/ldso/dladdr.c +++ b/src/ldso/dladdr.c @@ -1,6 +1,5 @@ #define _GNU_SOURCE #include -#include "libc.h" static int stub_dladdr(const void *addr, Dl_info *info) { diff --git a/src/ldso/dlclose.c b/src/ldso/dlclose.c index b839fe2f..e437422a 100644 --- a/src/ldso/dlclose.c +++ b/src/ldso/dlclose.c @@ -1,6 +1,5 @@ #include #include "dynlink.h" -#include "libc.h" int dlclose(void *p) { diff --git a/src/ldso/dlerror.c b/src/ldso/dlerror.c index 7e5ec23d..06ed8542 100644 --- a/src/ldso/dlerror.c +++ b/src/ldso/dlerror.c @@ -3,7 +3,6 @@ #include #include "pthread_impl.h" #include "dynlink.h" -#include "libc.h" char *dlerror() { diff --git a/src/ldso/dlinfo.c b/src/ldso/dlinfo.c index a8a5ad56..b55f5fe6 100644 --- a/src/ldso/dlinfo.c +++ b/src/ldso/dlinfo.c @@ -1,7 +1,6 @@ #define _GNU_SOURCE #include #include "dynlink.h" -#include "libc.h" int dlinfo(void *dso, int req, void *res) { diff --git a/src/ldso/dlopen.c b/src/ldso/dlopen.c index 9544741b..69372a22 100644 --- a/src/ldso/dlopen.c +++ b/src/ldso/dlopen.c @@ -1,6 +1,5 @@ #include #include "dynlink.h" -#include "libc.h" static void *stub_dlopen(const char *file, int mode) { diff --git a/src/ldso/tlsdesc.c b/src/ldso/tlsdesc.c index caf8dc08..49a1f18c 100644 --- a/src/ldso/tlsdesc.c +++ b/src/ldso/tlsdesc.c @@ -1,6 +1,5 @@ #include #include -#include "libc.h" ptrdiff_t __tlsdesc_static() { -- cgit v1.2.1