summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorLuca Bruno <lucabru@src.gnome.org>2014-08-14 22:59:24 +0200
committerLuca Bruno <lucabru@src.gnome.org>2014-08-14 23:16:51 +0200
commit36bef2b26731a9580260fd24d18c90dbecd5eb22 (patch)
treebd8b332ec19dcf9e447761d38837961c952fe6b1 /pkgs/development
parentb83aceaecb7e2d5150a1ba62b9c4bed50dd7fb04 (diff)
downloadnixpkgs-36bef2b26731a9580260fd24d18c90dbecd5eb22.tar
nixpkgs-36bef2b26731a9580260fd24d18c90dbecd5eb22.tar.gz
nixpkgs-36bef2b26731a9580260fd24d18c90dbecd5eb22.tar.bz2
nixpkgs-36bef2b26731a9580260fd24d18c90dbecd5eb22.tar.lz
nixpkgs-36bef2b26731a9580260fd24d18c90dbecd5eb22.tar.xz
nixpkgs-36bef2b26731a9580260fd24d18c90dbecd5eb22.tar.zst
nixpkgs-36bef2b26731a9580260fd24d18c90dbecd5eb22.zip
gobject-introspection: refer to shlibs with absolute paths in typelibs
After this, LD_LIBRARY_PATH should not be required anymore.
The patch has been applied only for .la files, so there may
be some other cases missing.
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch25
-rw-r--r--pkgs/development/libraries/gobject-introspection/default.nix2
-rw-r--r--pkgs/development/tools/misc/d-feet/default.nix1
3 files changed, 27 insertions, 1 deletions
diff --git a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
new file mode 100644
index 00000000000..04bcc42a032
--- /dev/null
+++ b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
@@ -0,0 +1,25 @@
+--- ./giscanner/utils.py.orig	2014-08-14 22:05:05.055334080 +0200
++++ ./giscanner/utils.py	2014-08-14 22:05:24.687497334 +0200
+@@ -110,17 +110,11 @@
+     if dlname is None:
+         return None
+ 
+-    # Darwin uses absolute paths where possible; since the libtool files never
+-    # contain absolute paths, use the libdir field
+-    if platform.system() == 'Darwin':
+-        dlbasename = os.path.basename(dlname)
+-        libdir = _extract_libdir_field(la_file)
+-        if libdir is None:
+-            return dlbasename
+-        return libdir + '/' + dlbasename
+-    # From the comments in extract_libtool(), older libtools had
+-    # a path rather than the raw dlname
+-    return os.path.basename(dlname)
++    dlbasename = os.path.basename(dlname)
++    libdir = _extract_libdir_field(la_file)
++    if libdir is None:
++        return dlbasename
++    return libdir + '/' + dlbasename
+ 
+ 
+ def extract_libtool(la_file):
diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix
index 7686fb30838..4b7ec1f4116 100644
--- a/pkgs/development/libraries/gobject-introspection/default.nix
+++ b/pkgs/development/libraries/gobject-introspection/default.nix
@@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
 
   setupHook = ./setup-hook.sh;
 
+  patches = [ ./absolute_shlib_path.patch ];
+
   meta = with stdenv.lib; {
     description = "A middleware layer between C libraries and language bindings";
     homepage    = http://live.gnome.org/GObjectIntrospection;
diff --git a/pkgs/development/tools/misc/d-feet/default.nix b/pkgs/development/tools/misc/d-feet/default.nix
index 852c1b74219..df5fdbfab5a 100644
--- a/pkgs/development/tools/misc/d-feet/default.nix
+++ b/pkgs/development/tools/misc/d-feet/default.nix
@@ -26,7 +26,6 @@ stdenv.mkDerivation rec {
       wrapProgram $out/bin/d-feet \
         --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pygobject3})" \
         --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
-        --prefix LD_LIBRARY_PATH : "${gtk3}/lib:${atk}/lib:${libwnck3}/lib" \
         --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$out/share"
 
       rm $out/share/icons/hicolor/icon-theme.cache