gobject-introspection: use lddtree instead of objdump as ldd wrapper
the wrong path was used in gir files because the format of objdump is different from ldd so the regex in gobject-introspection doesn't work https://gitlab.gnome.org/GNOME/gobject-introspection/-/blob/main/giscanner/shlibs.py#L42-57 <namespace name="GLib" shared-library="/nix/store/pak6rr8wdnbwa1iq2ldvg8pa8zahl3r1-gobject-introspection-aarch64-unknown-linux-gnu-1.72.0/lib/libgobject-2.0.so.0,/nix/store/pak6rr8wdnbwa1iq2ldvg8pa8zahl3r1-gobject-introspection-aarch64-unknown-linux-gnu-1.72.0/lib/libglib-2.0.so.0" objdump gobject-introspection> NEEDED libgmodule-2.0.so.0 gobject-introspection> NEEDED libglib-2.0.so.0 ldd gobject-introspection> libgmodule-2.0.so.0 => /nix/store/ngm1wbwms13c2crsvrah2ypfj0b2yii5-glib-2.73.2/lib/libgmodule-2.0.so.0 (0x00007ffff7d6e000) gobject-introspection> libglib-2.0.so.0 => /nix/store/ngm1wbwms13c2crsvrah2ypfj0b2yii5-glib-2.73.2/lib/libglib-2.0.so.0 (0x00007ffff7c32000)
This commit is contained in:
parent
ab783bb492
commit
740ebffd5a
@ -103,7 +103,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
isExecutable = true;
|
||||
src = ./wrappers/g-ir-scanner-lddwrapper.sh;
|
||||
inherit (buildPackages) bash;
|
||||
buildobjdump = "${buildPackages.stdenv.cc.bintools}/bin/objdump";
|
||||
buildlddtree = "${buildPackages.pax-utils}/bin/lddtree";
|
||||
}}"
|
||||
"-Dgi_cross_use_prebuilt_gi=true"
|
||||
"-Dgi_cross_binary_wrapper=${stdenv.hostPlatform.emulator buildPackages}"
|
||||
|
@ -27,7 +27,7 @@ in
|
||||
export bash="${buildPackages.bash}"
|
||||
export emulator=${lib.escapeShellArg (stdenv.targetPlatform.emulator buildPackages)}
|
||||
export emulatorwrapper="$dev/bin/g-ir-scanner-qemuwrapper"
|
||||
export buildobjdump="${buildPackages.stdenv.cc.bintools}/bin/objdump"
|
||||
export buildlddtree="${buildPackages.pax-utils}/bin/lddtree"
|
||||
|
||||
export targetgir="${lib.getDev (targetPackages.gobject-introspection-unwrapped.override argsForTarget)}"
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#! @bash@/bin/bash
|
||||
# shellcheck shell=bash
|
||||
|
||||
exec @buildobjdump@ -p "$@"
|
||||
exec @buildlddtree@ "$@"
|
||||
|
Loading…
Reference in New Issue
Block a user