Commit Graph

74 Commits

Author SHA1 Message Date
aszlig
c420de6b05
gobject-introspection: Fix patching shared objects
The gi-r-scanner is generating a list of shared libraries that are
referenced in the shared-library attribute of the <namespace/> element
of the GIR file. However, this attribute only contains the names of the
libraries and not the full store paths, like for example while preparing
to package libblockdev, the following items were included in the
shared-library attribute:

  /nix/store/...-libblockdev-1.3/lib/libblockdev.so.0
  libm.so.6
  libdmraid.so.1.0.0.rc16
  libbd_utils.so.0

Unfortunately, loading such a library without setting LD_LIBRARY_PATH is
going to fail finding libm.so.6 and libdmraid.so.1.0.0.rc16.

Now the first attempt at solving this was to put absolute paths of all
the libraries referenced in the shared-library attribute, but this also
led up to including paths of build-time shared objects into that
attribute:

  /nix/store/...-libblockdev-1.3/lib/libblockdev.so.0
  /nix/store/...-glibc-2.21/lib/libm.so.6
  /nix/store/...-dmraid-1.0.0.rc16/lib/libdmraid.so.1.0.0.rc16
  /tmp/nix-build-libblockdev-1.3.drv-0/.../utils/.libs/libbd_utils.so.0

This of course is not what we want, so the final solution is to only
use the absolute path whenever it is a Nix path and leave the library
name as-is if the path doesn't reside within the store, like this:

  /nix/store/...-libblockdev-1.3/lib/libblockdev.so.0
  /nix/store/...-glibc-2.21/lib/libm.so.6
  /nix/store/...-dmraid-1.0.0.rc16/lib/libdmraid.so.1.0.0.rc16
  libbd_utils.so.0

The downside of this approach is that if not even the output path of the
library is in LD_LIBRARY_PATH, even loading of libbd_utils.so.0 could
fail, so we need to patch the loader as well.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-01-22 22:46:02 +01:00
Vladimír Čunát
dd6912a95e gobject-introspection: auto-move *.gir into $dev 2015-10-28 11:59:42 +01:00
Tuomas Tynkkynen
8ec6f85c4e gobject-introspection: Don't delete $out/share/gobject-introspection-1.0/tests
Otherwise breaks pygobject3 compilation.
vcunat added comment. (Commit reordering changed this a bit.)
2015-10-28 10:22:15 +01:00
Vladimír Čunát
5227fb1dd5 Merge commit staging+systemd into closure-size
Many non-conflict problems weren't (fully) resolved in this commit yet.
2015-10-03 13:33:37 +02:00
Luca Bruno
6858ca17db gobject-introspection: 1.44.0 -> 1.46.0 2015-09-25 10:48:40 +02:00
Vladimír Čunát
0b216645bd gtk+ stack: leftover "major" updates 2015-06-07 09:22:13 +02:00
Vladimír Čunát
375bc8def7 Merge staging into closure-size 2015-05-05 11:49:03 +02:00
Luca Bruno
db3b86560f GNOME 3.16.1, closes #7357 2015-04-25 12:02:33 +02:00
Vladimír Čunát
bf414c9d4f Merge 'staging' into closure-size
- there were many easy merge conflicts
- cc-wrapper needed nontrivial changes

Many other problems might've been created by interaction of the branches,
but stdenv and a few other packages build fine now.
2015-04-18 11:22:20 +02:00
Luca Bruno
9d86b4683d gobject-introspection: add glib to propagatedBuldInputs 2014-12-08 16:21:01 +01:00
Vladimír Čunát
5cad555ab1 gtk3 stack: go back to gnome-3.12 branches for now 2014-11-14 23:32:28 +01:00
Vladimír Čunát
3ecd4dcf72 gtk3 stack libs: update all to gnome-3.14 branches
All NEWS look safe and relatively quiet.
2014-10-23 10:51:54 +02:00
Vladimír Čunát
abbc93f783 WIP: getting better 2014-08-30 19:11:52 +02:00
Luca Bruno
36bef2b267 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.
2014-08-14 23:16:51 +02:00
Vladimír Čunát
151ac5ab9e gtk+3 core stack: update to 3.12 2014-03-27 20:53:50 +01:00
Vladimír Čunát
cb8fff57c1 update gtk deps, on GNOME-3.10 branches now 2013-10-05 21:25:53 +02:00
Vladimír Čunát
7fbcc56260 add introspection into GTK libs (part of #517)
This is all work of Marc Weber <marco-oweber@gmx.de>, except for a few nitpicks.

Tested space blowup: IMHO negligible to headers and similar stuff,
e.g. the firefox closure (reported by du) grows from 560 to 579 MB.
Saving space should be handled separately,
e.g. we have the multiple-outputs branch.
2013-08-04 21:11:24 +02:00
Jason "Don" O'Conal
216d47be0c gobject-introspection: fix build on darwin
* add otool expression (add otool to build inputs)
* add libintlOrEmpty to build inputs
2013-07-03 22:03:48 +10:00
Vladimír Čunát
35b6068189 gobject-introspection: minor update 2013-01-29 14:55:14 +01:00
Eelco Dolstra
b7cadbb7d2 gobject-introspection: Update to 1.34.0 2012-09-27 16:17:06 -04:00
Eelco Dolstra
e59ef4302a * gobject-introspection updated to 0.10.8.
svn path=/nixpkgs/branches/kde-4.7/; revision=27635
2011-07-07 18:15:34 +00:00
Eelco Dolstra
bdafe406db * Update gobject-introspection.
svn path=/nixpkgs/branches/x-updates/; revision=25910
2011-02-11 17:27:16 +00:00
Yury G. Kudryashov
a309626c49 Fix a typo in gobject-introspection
svn path=/nixpkgs/trunk/; revision=21764
2010-05-13 15:57:37 +00:00
Yury G. Kudryashov
46bce5a789 Add gobject-introspection
svn path=/nixpkgs/trunk/; revision=21763
2010-05-13 15:56:04 +00:00