nixpkgs/pkgs/development/libraries/glibc/dont-use-system-ld-so-cache.patch
2021-07-06 16:02:15 +02:00

64 lines
2.1 KiB
Diff

diff --git a/elf/Makefile b/elf/Makefile
index 5d666b1b..a5017e9c 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -669,14 +669,14 @@ $(objpfx)sln: $(sln-modules:%=$(objpfx)%.o)
$(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o)
-SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
-CFLAGS-ldconfig.c += $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \
+PREFIX-FLAGS := -D'PREFIX="$(prefix)"'
+CFLAGS-ldconfig.c += $(PREFIX-FLAGS) -D'LIBDIR="$(libdir)"' \
-D'SLIBDIR="$(slibdir)"'
libof-ldconfig = ldconfig
-CFLAGS-dl-cache.c += $(SYSCONF-FLAGS)
-CFLAGS-cache.c += $(SYSCONF-FLAGS)
-CFLAGS-rtld.c += $(SYSCONF-FLAGS)
-CFLAGS-dl-usage.c += $(SYSCONF-FLAGS) \
+CFLAGS-dl-cache.c += $(PREFIX-FLAGS)
+CFLAGS-cache.c += $(PREFIX-FLAGS)
+CFLAGS-rtld.c += $(PREFIX-FLAGS)
+CFLAGS-dl-usage.c += $(PREFIX-FLAGS) \
-D'RTLD="$(rtlddir)/$(rtld-installed-name)"'
cpp-srcs-left := $(all-rtld-routines:=.os)
diff --git a/elf/dl-diagnostics.c b/elf/dl-diagnostics.c
index bef224b3..8e166b12 100644
--- a/elf/dl-diagnostics.c
+++ b/elf/dl-diagnostics.c
@@ -205,7 +205,7 @@ print_paths (void)
{
_dl_diagnostics_print_labeled_string ("path.prefix", PREFIX);
_dl_diagnostics_print_labeled_string ("path.rtld", RTLD);
- _dl_diagnostics_print_labeled_string ("path.sysconfdir", SYSCONFDIR);
+ _dl_diagnostics_print_labeled_string ("path.sysconfdir", PREFIX "/etc");
unsigned int index = 0;
static const char *system_dirs = SYSTEM_DIRS "\0";
diff --git a/elf/ldconfig.c b/elf/ldconfig.c
index 28ed637a..6f07b79a 100644
--- a/elf/ldconfig.c
+++ b/elf/ldconfig.c
@@ -57,7 +57,7 @@
#define TLS_HWCAP_BIT 63
#ifndef LD_SO_CONF
-# define LD_SO_CONF SYSCONFDIR "/ld.so.conf"
+# define LD_SO_CONF PREFIX "/etc/ld.so.conf"
#endif
/* Get libc version number. */
diff --git a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h
index 964d50a4..2224d651 100644
--- a/sysdeps/generic/dl-cache.h
+++ b/sysdeps/generic/dl-cache.h
@@ -35,7 +35,7 @@
#endif
#ifndef LD_SO_CACHE
-# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache"
+# define LD_SO_CACHE PREFIX "/etc/ld.so.cache"
#endif
#ifndef add_system_dir