25608d640a
* distro/packages/base.scm (glibc): Apply `glibc-no-ld-so-cache.patch'. (glibc-final): Inherit GLIBC's inputs. * distro/packages/patches/glibc-no-ld-so-cache.patch: New file. * Makefile.am (dist_patch_DATA): Add it.
54 lines
1.9 KiB
Diff
54 lines
1.9 KiB
Diff
Disable attempts to use the system-wide /etc/ld.so.cache. This is
|
|
required on LFS distros to avoid loading the distro's libc.so instead
|
|
of ours.
|
|
|
|
Patch from Nixpkgs. Idea by Eelco Dolstra, initial patch by Jack
|
|
Cummings, minor fixups by Shea Levy.
|
|
|
|
diff -Naur glibc-2.13-orig/elf/ldconfig.c glibc-2.13/elf/ldconfig.c
|
|
--- glibc-2.13-orig/elf/ldconfig.c 2011-01-17 23:34:07.000000000 -0500
|
|
+++ glibc-2.13/elf/ldconfig.c 2012-04-10 23:28:45.957492340 -0400
|
|
@@ -51,7 +51,7 @@
|
|
#endif
|
|
|
|
#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. */
|
|
|
|
--- glibc-2.16.0/elf/Makefile 2012-06-30 21:12:34.000000000 +0200
|
|
+++ glibc-2.16.0/elf/Makefile 2012-11-12 23:52:21.000000000 +0100
|
|
@@ -415,12 +415,12 @@ $(objpfx)ldconfig: $(ldconfig-modules:%=
|
|
|
|
$(objpfx)pldd: $(pldd-modules:%=$(objpfx)%.o)
|
|
|
|
-SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
|
|
-CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \
|
|
+PREFIX-FLAGS := -D'PREFIX="$(sysconfdir)"'
|
|
+CFLAGS-ldconfig.c = $(PREFIX-FLAGS) -D'LIBDIR="$(libdir)"' \
|
|
-D'SLIBDIR="$(slibdir)"' -DIS_IN_ldconfig=1
|
|
-CFLAGS-dl-cache.c = $(SYSCONF-FLAGS)
|
|
-CFLAGS-cache.c = $(SYSCONF-FLAGS)
|
|
-CFLAGS-rtld.c = $(SYSCONF-FLAGS)
|
|
+CFLAGS-dl-cache.c = $(PREFIX-FLAGS)
|
|
+CFLAGS-cache.c = $(PREFIX-FLAGS)
|
|
+CFLAGS-rtld.c = $(PREFIX-FLAGS)
|
|
|
|
CPPFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),\
|
|
-DNOT_IN_libc=1 -DIS_IN_rtld=1 -DIN_LIB=rtld)
|
|
|
|
diff -Naur glibc-2.13-orig/sysdeps/generic/dl-cache.h glibc-2.13/sysdeps/generic/dl-cache.h
|
|
--- glibc-2.13-orig/sysdeps/generic/dl-cache.h 2011-01-17 23:34:07.000000000 -0500
|
|
+++ glibc-2.13/sysdeps/generic/dl-cache.h 2012-04-10 23:28:20.077488815 -0400
|
|
@@ -29,7 +29,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
|