From c375149dd1f50507457e922f8a101c597efb284b Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 13 May 2024 11:33:43 +0200 Subject: [PATCH] glib: disable introspection for cross-endian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit /nix/store/xxgjhia4jhnx9910vb7iw1cm9l6qwfd4-qemu-8.2.3/bin/qemu-ppc64: error while loading shared libraries: /build/glib-2.80.0/build/glib/libglib-2.0.so.0: ELF file data encoding not little-endian Command '['/nix/store/054wr9piy48ww123yn2pcbkcsnvlx3fg-gobject-introspection-wrapped-1.80.1-dev/bin/g-ir-scanner-qemuwrapper', '/build/glib-2.80.0/build/tmp-introspectiyhf5flt/GLib-2.0', '--introspect-dump=/build/glib-2.80.0/build/tmp-introspectiyhf5flt/functions.txt,/build/glib-2.80.0/build/tmp-introspectiyhf5flt/dump.xml']' returned non-zero exit status 127. I don't have a suitable environment for testing whether it's broken big→little, but it seems likely. Link: https://github.com/NixOS/nixpkgs/pull/309309#issuecomment-2100785761 Fixes: 98d8d1e58762 ("glib: enable introspection on cross") --- pkgs/development/libraries/glib/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index d5202e113764..70d24842a86e 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -23,7 +23,10 @@ , testers , gobject-introspection , mesonEmulatorHook -, withIntrospection ? stdenv.hostPlatform.emulatorAvailable buildPackages && lib.meta.availableOn stdenv.hostPlatform gobject-introspection +, withIntrospection ? + stdenv.hostPlatform.emulatorAvailable buildPackages && + lib.meta.availableOn stdenv.hostPlatform gobject-introspection && + stdenv.hostPlatform.isLittleEndian == stdenv.buildPlatform.isLittleEndian }: assert stdenv.isLinux -> util-linuxMinimal != null;