about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorIan-Woo Kim <ianwookim@gmail.com>2014-02-19 01:44:33 +0100
committerVladimír Čunát <vcunat@gmail.com>2014-02-28 16:39:12 +0100
commit05068ac554f92c2d588c39aa2df970abd0e765e8 (patch)
tree058380e4a9382e632d1a7247f2a8a6f6d8e3ecd4 /pkgs
parenta78f47917ab9d0a6eda034dc47f96d30a2555815 (diff)
downloadnixlib-05068ac554f92c2d588c39aa2df970abd0e765e8.tar
nixlib-05068ac554f92c2d588c39aa2df970abd0e765e8.tar.gz
nixlib-05068ac554f92c2d588c39aa2df970abd0e765e8.tar.bz2
nixlib-05068ac554f92c2d588c39aa2df970abd0e765e8.tar.lz
nixlib-05068ac554f92c2d588c39aa2df970abd0e765e8.tar.xz
nixlib-05068ac554f92c2d588c39aa2df970abd0e765e8.tar.zst
nixlib-05068ac554f92c2d588c39aa2df970abd0e765e8.zip
glibc: do not use system ld.so.preload (close #1788)
Modified according to the PR comment.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/libraries/glibc/2.19/common.nix3
-rw-r--r--pkgs/development/libraries/glibc/2.19/dont-use-system-ld-so-preload.patch12
2 files changed, 15 insertions, 0 deletions
diff --git a/pkgs/development/libraries/glibc/2.19/common.nix b/pkgs/development/libraries/glibc/2.19/common.nix
index 07baefa92810..6823e4d9f66f 100644
--- a/pkgs/development/libraries/glibc/2.19/common.nix
+++ b/pkgs/development/libraries/glibc/2.19/common.nix
@@ -44,6 +44,9 @@ stdenv.mkDerivation ({
       /* Don't use /etc/ld.so.cache, for non-NixOS systems.  */
       ./dont-use-system-ld-so-cache.patch
 
+      /* Don't use /etc/ld.so.preload, but /etc/ld-nix.so.preload.  */
+      ./dont-use-system-ld-so-preload.patch
+
       /* Add blowfish password hashing support.  This is needed for
          compatibility with old NixOS installations (since NixOS used
          to default to blowfish). */
diff --git a/pkgs/development/libraries/glibc/2.19/dont-use-system-ld-so-preload.patch b/pkgs/development/libraries/glibc/2.19/dont-use-system-ld-so-preload.patch
new file mode 100644
index 000000000000..fabb6c3ec5e1
--- /dev/null
+++ b/pkgs/development/libraries/glibc/2.19/dont-use-system-ld-so-preload.patch
@@ -0,0 +1,12 @@
+diff -rupN a/elf/rtld.c b/elf/rtld.c
+--- a/elf/rtld.c	2013-08-11 00:52:55.000000001 +0200
++++ b/elf/rtld.c	2014-02-18 13:56:19.000000001 +0100
+@@ -1639,7 +1639,7 @@ ERROR: ld.so: object '%s' cannot be load
+      open().  So we do this first.  If it succeeds we do almost twice
+      the work but this does not matter, since it is not for production
+      use.  */
+-  static const char preload_file[] = "/etc/ld.so.preload";
++  static const char preload_file[] = "/etc/ld-nix.so.preload";
+   if (__builtin_expect (__access (preload_file, R_OK) == 0, 0))
+     {
+       /* Read the contents of the file.  */