diff options
author | Florian Weimer <fweimer@redhat.com> | 2020-12-04 09:13:43 +0100 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2020-12-04 09:16:41 +0100 |
commit | b44ac4f4c7a8bbe5eaa2701aa9452eaf2c96e1dd (patch) | |
tree | 39c5fa6ec9ab24d282c75bb31e15fca0f584e27d /sysdeps/generic/ldconfig.h | |
parent | 73b6e50a22dea9ae6144beaaa675d2ac62c281ca (diff) | |
download | glibc-b44ac4f4c7a8bbe5eaa2701aa9452eaf2c96e1dd.tar glibc-b44ac4f4c7a8bbe5eaa2701aa9452eaf2c96e1dd.tar.gz glibc-b44ac4f4c7a8bbe5eaa2701aa9452eaf2c96e1dd.tar.bz2 glibc-b44ac4f4c7a8bbe5eaa2701aa9452eaf2c96e1dd.zip |
elf: Process glibc-hwcaps subdirectories in ldconfig
Libraries from these subdirectories are added to the cache
with a special hwcap bit DL_CACHE_HWCAP_EXTENSION, so that
they are ignored by older dynamic loaders.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'sysdeps/generic/ldconfig.h')
-rw-r--r-- | sysdeps/generic/ldconfig.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/sysdeps/generic/ldconfig.h b/sysdeps/generic/ldconfig.h index cfec9d4668..1ad1528890 100644 --- a/sysdeps/generic/ldconfig.h +++ b/sysdeps/generic/ldconfig.h @@ -57,8 +57,22 @@ extern void init_cache (void); extern void save_cache (const char *cache_name); -extern void add_to_cache (const char *path, const char *lib, int flags, - unsigned int osversion, uint64_t hwcap); +struct glibc_hwcaps_subdirectory; + +/* Return a struct describing the subdirectory for NAME. Reuse an + existing struct if it exists. */ +struct glibc_hwcaps_subdirectory *new_glibc_hwcaps_subdirectory + (const char *name); + +/* Returns the name that was specified when + add_glibc_hwcaps_subdirectory was called. */ +const char *glibc_hwcaps_subdirectory_name + (const struct glibc_hwcaps_subdirectory *); + +extern void add_to_cache (const char *path, const char *filename, + const char *soname, + int flags, unsigned int osversion, uint64_t hwcap, + struct glibc_hwcaps_subdirectory *); extern void init_aux_cache (void); |