Commit graph

120 commits

Author SHA1 Message Date
Martin Weinelt 9e7f9a402b
python310Packages.mako: Normalize attribute, pname, dirname 2023-02-19 21:36:02 +01:00
John Ericson 81655d432d gobject-introspection: Add meta.pkgConfigModules and test 2023-02-11 11:03:01 -05:00
Guillaume Girol 33afbf39f6 treewide: switch to nativeCheckInputs
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
2023-01-21 12:00:00 +00:00
figsoda ec8cb34358 treewide: fix typos 2022-12-17 19:39:44 -05:00
Artturin 40d493c5fb gobject-introspection: use overrideAttrs in the wrapper
this way we preserve all the attributes

gobject-introspection: use buildCommand and eval fixupPhase
2022-11-22 16:06:52 +02:00
Artturin 3fda065c6a gobject-introspection: inherit meta in the wrapper
meta isn't in drvAttrs because its a "passthru" attribute
2022-11-21 19:51:50 +02:00
Artturin b2f9cd34e7 gobject-introspection: use wrapper.nix for the native package too
so we can propagate the dev output

during the build of i3ipc-glib with strictDeps enabled i noticed that
gobject-introspection was not being detected and it was due to
gobject-introspection path not being in the PKG_CONFIG_PATH variable

this commit makes gobject-introspection get detected when build==host
2022-11-09 20:58:38 +02:00
Jan Tojnar aa925d554f gobject-introspection: 1.73.1 → 1.74.0
https://gitlab.gnome.org/GNOME/gobject-introspection/-/compare/1.73.1...1.74.0

Changelog-Reviewed-By: Jan Tojnar <jtojnar@gmail.com>
2022-10-11 18:52:26 +02:00
Jan Tojnar 554584ccae gobject-introspection: 1.73.0 → 1.73.1
https://gitlab.gnome.org/GNOME/gobject-introspection/-/compare/1.73.0...1.73.1

Changelog-Reviewed-By: Jan Tojnar <jtojnar@gmail.com>
2022-10-11 18:52:22 +02:00
Jan Tojnar feda72e7d8 gobject-introspection: 1.72.0 → 1.73.0
https://gitlab.gnome.org/GNOME/gobject-introspection/-/compare/1.72.0...1.73.0

Changelog-Reviewed-By: Jan Tojnar <jtojnar@gmail.com>
2022-10-11 18:52:07 +02:00
Artturin 740ebffd5a 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)
2022-09-07 21:24:08 +03:00
Artturin 8f40fcbb4c gobject-introspection: propagate self/targetself to avoid having to add gobject-introspection to buildInputs
i should probably move to use the wrapper when host != build and do the
canExecute things inside the wrapper.nix

then i could use gobject-introspection-unwrapped in it even when
host == build

void also adds gobject-introspection to makeDepends when its gir build
helper is used
2022-09-01 19:46:57 +03:00
Artturin 3d1f96e1b4 gobject-introspection: enable strictDeps and improve cross conditional
the flags defined in it are required if the hostPlatform can't be executed
2022-09-01 01:20:49 +03:00
Artturi acd53be25f
Merge pull request #185097 from Artturin/gobjectfunfixes 2022-09-01 00:45:58 +03:00
Jan Tojnar a42926f2fe gobject-introspection: enable building doctool 2022-08-31 12:35:40 +02:00
Artturin 267ef1f2de gobject-introspection: wrapper: add .libs to LD_LIBRARY_PATH for emulator
fixes issues like
libdbusmenu-gtk3-aarch64-unknown-linux-gnu> /build/libdbusmenu-16.04.0/libdbusmenu-gtk/tmp-introspect2jhtiwwn/.libs/DbusmenuGtk3-0.4:
error while loading shared libraries: libdbusmenu-glib.so.4: cannot open shared object file: No such file or directory
in non-meson builds

i think the reason we need this in all non-meson builds is because of ./pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch

see: https://github.com/void-linux/void-packages/blob/master/srcpkgs/gobject-introspection/files/g-ir-scanner-qemuwrapper
c5a14f39a6/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.72.0.bb (L74)
2022-08-30 20:13:55 +03:00
Artturin da1ea54ad8 gobject-introspection: use objdump -p instead of prelink-rtld
Commit msg of 767e0880d4
> gobject-introspection: replace prelink-rtld with objdump -p
>
> g-i internally processes the output with regexes, and seems
> happy with what objdump is printing. It only needs to resolve
> the library name as passed to the linker to the library file name.
> Also recursive resolution (that ldd is doing and objdump is not)
> is not necessary.

Additional context section of https://github.com/NixOS/nixpkgs/issues/183071
> prelink is dropped by openembedded, support for prelink is removed from glibc,
> and itself is effectively abandoned by the upstream (yocto project).
> I think we may as well drop it rather than fix it.
> However gobject-introspection now relies on it as a runtime linker for use in cross compilation, we have to find an alternative.
2022-07-28 00:09:35 +03:00
Artturin 6789222b1c Merge branch 'master' into staging-next 2022-07-22 18:23:16 +03:00
Artturin d2e484dba2 gobject-introspection: fix .override when the wrapper is in use 2022-07-22 06:21:40 +03:00
Artturin e8ecd00e46 gobject-introspection: override pkg-config variables in a setup hook
instead of substituteInPlace

fixes gtk2 because it needs g_ir_scanner to be a path
2022-07-14 07:14:41 +03:00
Artturin eb829035c9 gobject-introspection: do not propagate target gobject-introspection in wrapper
broke modemmanager and some of its deps

libqmi-aarch64-unknown-linux-gnu>   GISCAN   Qmi-1.0.gir
libqmi-aarch64-unknown-linux-gnu> /build/libqmi-1.30.8/src/libqmi-glib/tmp-introspect2d8e4td2/.libs/Qmi-1.0: error while loading shared libraries: libqmi-glib.so.5: cannot open shared object file: No such file or directory
libqmi-aarch64-unknown-linux-gnu> Command '['/nix/store/wr4mjr9gadvwz6c88fgz4ldzn21sxkpz-qemu-7.0.0/bin/qemu-aarch64', '/build/libqmi-1.30.8/src/libqmi-glib/tmp-introspect2d8e4td2/.libs/Qmi-1.0', '--introspect-dump=/build/libqmi-1.30.8/src/libqmi-glib/tmp-introspect2d8e4td2/functions.txt,/build/libqmi-1.30.8/src/libqmi-glib/tmp-introspect2d8e4td2/dump.xml']' returned non-zero exit status 127.
libqmi-aarch64-unknown-linux-gnu> make[4]: *** [/nix/store/jwpcacx8sd4vj0ckk5wxrzn2iwcpp35s-gobject-introspection-aarch64-unknown-linux-gnu-1.72.0-dev/share/gobject-introspection-1.0/Makefile.introspection:156: Qmi-1.0.gir] Error 1
2022-07-12 15:10:40 +03:00
Artturin 71cbf3b809 gobject-introspection: use targetOffset to look for libraries for target
fixes it finding the build and target gobject-introspection when it should only find the
target gobject-introspection
2022-07-07 21:18:23 +03:00
Artturin a83d2f7c91 gobject-introspection: cross improvements
gobject-introspection: copy $dev/share/gobj.../tests when cross-compiling

gobject-introspection: add giscanner-ignore-error-return-codes-from-ldd-wrapper patch

polkit-aarch64-unknown-linux-gnu> [102/104] Generating src/polkitagent/PolkitAgent-1.0.gir with a custom command
polkit-aarch64-unknown-linux-gnu> FAILED: src/polkitagent/PolkitAgent-1.0.gir
polkit-aarch64-unknown-linux-gnu> <storepath>-gobject-introspection-wrapped-1.72.0-dev/bin/g-ir-scanner --no-libtool --namespace=PolkitAgent --nsversion=1.0 --warn-all --output src/polkitagent/PolkitAgent-1.0.gir --c-include=polkitagent/polkitagent.h -
D_POLKIT_AGENT_COMPILATION -D_POLKIT_COMPILATION -I/build/source/src/polkitagent -I/build/source/build/src/polkitagent -I/build/source/. -I/build/source/build/. -I/build/source/src/. -I/build/source/build/src/. --filelist=/build/source/build/src/polkitagent/libpolkit-agent-1.so.0.0.0
.p/PolkitAgent_1.0_gir_filelist --include=Gio-2.0 --include-uninstalled=src/polkit/Polkit-1.0.gir --pkg-export=polkit-agent-1 --cflags-begin -DHAVE_CONFIG_H -I/build/source/. -I/build/source/build/. -I/build/source/src/. -I/build/source/build/src/. -I/nix/store/lqncny8acp6hkclsgbfnrb
65i9hscsmn-expat-aarch64-unknown-linux-gnu-2.4.8-dev/include -I<storepath>-glib-aarch64-unknown-linux-gnu-2.72.2-dev/include/gio-unix-2.0 -I<storepath>-glib-aarch64-unknown-linux-gnu-2.72.2-dev/include -I/nix/store/qm1wa
x4c7sgf5h3b6dhspxb5miayjyc9-glib-aarch64-unknown-linux-gnu-2.72.2-dev/include/glib-2.0 -I<storepath>-glib-aarch64-unknown-linux-gnu-2.72.2/lib/glib-2.0/include -I<storepath>-gobject-introspection-aarch64-unknown-linux-gn
u-1.72.0-dev/include/gobject-introspection-1.0 --cflags-end --add-include-path=<storepath>-gobject-introspection-aarch64-unknown-linux-gnu-1.72.0-dev/share/gir-1.0 --add-include-path=/build/source/build/src/polkit -L/build/source/build/src/polkitagent
--library polkit-agent-1 -L/build/source/build/src/polkit -L<storepath>-expat-aarch64-unknown-linux-gnu-2.4.8/lib --extra-library=expat -L<storepath>-glib-aarch64-unknown-linux-gnu-2.72.2/lib --extra-library=gio-2.0 --ex
tra-library=gobject-2.0 --extra-library=glib-2.0 -L<storepath>-gobject-introspection-aarch64-unknown-linux-gnu-1.72.0/lib --extra-library=girepository-1.0 --sources-top-dirs /build/source/subprojects/ --sources-top-dirs /build/source/build/subprojects/
polkit-aarch64-unknown-linux-gnu> g-ir-scanner: link: aarch64-unknown-linux-gnu-gcc -o /build/source/build/tmp-introspectzp2ldkyk/PolkitAgent-1.0 /build/source/build/tmp-introspectzp2ldkyk/PolkitAgent-1.0.o -L. -Wl,-rpath,. -Wl,--no-as-needed -L/build/source/build/src/polkitagent -Wl
,-rpath,/build/source/build/src/polkitagent -L/build/source/build/src/polkit -Wl,-rpath,/build/source/build/src/polkit -L<storepath>-expat-aarch64-unknown-linux-gnu-2.4.8/lib -Wl,-rpath,<storepath>-expat-aarch64-unknown-
linux-gnu-2.4.8/lib -L<storepath>-glib-aarch64-unknown-linux-gnu-2.72.2/lib -Wl,-rpath,<storepath>-glib-aarch64-unknown-linux-gnu-2.72.2/lib -L<storepath>-gobject-introspection-aarch64-unk
nown-linux-gnu-1.72.0/lib -Wl,-rpath,<storepath>-gobject-introspection-aarch64-unknown-linux-gnu-1.72.0/lib -lpolkit-agent-1 -lexpat -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lgirepository-1.0 -L<storepath>-glib-aarch64-unknow
n-linux-gnu-2.72.2/lib -lgio-2.0 -lgobject-2.0 -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0
polkit-aarch64-unknown-linux-gnu> Traceback (most recent call last):
polkit-aarch64-unknown-linux-gnu>   File "<storepath>-gobject-introspection-wrapped-1.72.0-dev/bin/.g-ir-scanner-wrapped", line 99, in <module>
polkit-aarch64-unknown-linux-gnu>     sys.exit(scanner_main(sys.argv))
polkit-aarch64-unknown-linux-gnu>   File "<storepath>-gobject-introspection-wrapped-1.72.0/lib/gobject-introspection/giscanner/scannermain.py", line 646, in scanner_main
polkit-aarch64-unknown-linux-gnu>     shlibs = create_binary(transformer, options, args)
polkit-aarch64-unknown-linux-gnu>   File "<storepath>-gobject-introspection-wrapped-1.72.0/lib/gobject-introspection/giscanner/scannermain.py", line 471, in create_binary
polkit-aarch64-unknown-linux-gnu>     shlibs = resolve_shlibs(options, binary, options.libraries)
polkit-aarch64-unknown-linux-gnu>   File "<storepath>-gobject-introspection-wrapped-1.72.0/lib/gobject-introspection/giscanner/shlibs.py", line 179, in resolve_shlibs
polkit-aarch64-unknown-linux-gnu>     _resolve_non_libtool(options, binary, non_libtool))
polkit-aarch64-unknown-linux-gnu>   File "<storepath>-gobject-introspection-wrapped-1.72.0/lib/go
bject-introspection/giscanner/shlibs.py", line 112, in _resolve_non_libtool
polkit-aarch64-unknown-linux-gnu>     output = subprocess.check_output(args)
polkit-aarch64-unknown-linux-gnu>   File "<storepath>-python3-3.10.5/lib/python3.10/subprocess.py", line 420, in check_output
polkit-aarch64-unknown-linux-gnu>     return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
polkit-aarch64-unknown-linux-gnu>   File "<storepath>-python3-3.10.5/lib/python3.10/subprocess.py", line 524, in run
polkit-aarch64-unknown-linux-gnu>     raise CalledProcessError(retcode, process.args,
polkit-aarch64-unknown-linux-gnu> subprocess.CalledProcessError: Command '['<storepath>-prelink-unstable-2019-06-24/bin/prelink-rtld', '/build/source/build/tmp-introspectzp2ldkyk/PolkitAgent-1.0']' returned non-zero exit status 127.
polkit-aarch64-unknown-linux-gnu> [103/104] Generating src/polkit/Polkit-1.0.typelib with a custom command
polkit-aarch64-unknown-linux-gnu> ninja: build stopped: subcommand failed.

exit status 127

gobject-introspection: this should fix pkgsMusl pkgsStatic

by not putting `/nix/store/iw35xj69w190w7vw17l8mac8srg0vpyz-gobject-introspection-static-x86_64-unknown-linux-musl-1.72.0.drv`

in their dependency tree when gobject-introspection is in
nativeBuildInputs ex .#pkgsStatic.libjxl

gobject-introspection: pc file: use binaries from path instead of a abs path to them

fixes issues in networkmanager and some other packages
```
gi._error.GError: g-invoke-error-quark: Could not locate g_option_error_quark: /nix/store/...-glib-aarch64-unknown-linux-gnu-2.72.2/lib/libglib-2.0.so.0:
cannot open shared object file: No such file or directory (1)
```

see comment

gobject-introspection: propagate gobject-introspection-unwrapped in wrapper

with this it is no longer needed to put gobject-introspection in
buildInputs in addition to nativeBuildInputs
2022-07-07 21:18:23 +03:00
Artturin 944781be23 gobject-introspection: revert patch to ignore return codes from ldd
we may not need this so reverting for now
2022-06-11 04:51:18 +03:00
Artturin 41f8722078 gobject-introspection: add artturin as maintainer 2022-06-11 04:51:18 +03:00
Artturin 79d349b087 gobject-introspection: support cross-compilation
used the following as references

https://github.com/void-linux/void-packages/blob/master/srcpkgs/gobject-introspection

and

https://git.busybox.net/buildroot/tree/package/gobject-introspection

thanks void and buildroot
2022-06-11 04:51:18 +03:00
Jan Tojnar 82632f000e gobject-introspection: 1.71.0 → 1.72.0
https://gitlab.gnome.org/GNOME/gobject-introspection/-/compare/1.71.0...1.72.0
2022-03-25 15:02:41 +01:00
Jan Tojnar 533adf2e55 gobject-introspection: 1.70.0 → 1.71.0
https://gitlab.gnome.org/GNOME/gobject-introspection/-/compare/1.70.0...1.71.0
2022-03-25 15:01:22 +01:00
Nick Cao e35d74c3ec
gobject-introspection: prepare for meson 0.61 2022-01-15 17:25:08 +08:00
Maxine Aubrey 52f650a241 gobject-introspection: 1.68.0 -> 1.70.0
- https://gitlab.gnome.org/GNOME/gobject-introspection/-/blob/1.70.0/NEWS
2021-10-09 17:29:36 +02:00
Jan Tojnar 468cb5980b gnome: rename from gnome3
Since GNOME version is now 40, it no longer makes sense to use the old attribute name.
2021-05-08 09:47:42 +02:00
Jan Tojnar 58c6cbf78b
gobject-introspection: 1.66.1 → 1.68.0
Co-Authored-By: Maxine Aubrey <maxeaubrey@gmail.com>
2021-05-05 22:20:22 +02:00
Jan Tojnar 7d535edec5
gnome3: support new versioning scheme in the update script
https://discourse.gnome.org/t/new-gnome-versioning-scheme/4235
2021-05-05 22:20:20 +02:00
Ben Siraphob 66e44425c6 pkgs/development/libraries: stdenv.lib -> lib 2021-01-21 19:11:02 -08:00
Jan Tojnar 1e314c363d
gobject-introspection: 1.66.0 → 1.66.1
Fix vips build.
2020-10-24 03:48:19 +02:00
Doron Behar 469db7ce0e
gobject-introspection: 1.64.1 -> 1.66.0 2020-10-24 01:14:04 +02:00
Jan Tojnar c9857dee7d
gobject-introspection: move build tools to nativeBuildInputs 2020-05-17 22:28:06 +02:00
Jan Tojnar fd5ea9d5f2
gobject-introspection: add docs 2020-05-15 21:32:37 +02:00
Jan Tojnar e4a009a109
gobject-introspection: consolidate patches
and add comments
2020-05-15 21:04:31 +02:00
Jan Tojnar fbb86b1fa8
gobject-introspection: more clean-ups
* remove glibcLocales now that glibc contains C.UTF-8
* remove libintl, that should be in by default or something
* update homepage
* add gnome team to maintainers
* remove the temporary libregress closer its creation
2020-05-15 21:03:20 +02:00
Jan Tojnar 1bc7b68b1c
gobject-introspection: clean up the expression
* format with nixpkgs-fmt
* reorder the attributes
* use pkg-config instead of the pkgconfig alias
* optional → optionals
* remove top-level `with lib;`
2020-05-15 19:57:40 +02:00
Jan Tojnar 8f7387f219
gobject-introspection: Ensure the giDiscoverSelf is run before gappsWrapperArgsHook
gappsWrapperArgsHook tries to collect GI_TYPELIB_PATH environment variable so if we want it to see the path giDiscoverSelf adds, we need to force the order.
2020-04-30 20:12:30 +02:00
Jan Tojnar b4a6714571
Merge branch 'staging-next' into staging 2020-04-13 18:54:59 +02:00
Jan Tojnar a04625379a
Merge branch 'master' into staging-next 2020-04-13 18:50:35 +02:00
Michael Reilly 84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Tor Hedin Brønner 247bddd311 gobject-introspection: 1.64.0 -> 1.64.1 2020-04-08 09:52:37 +02:00
Jan Tojnar 52f82285f6
gobject-introspection: Clean libregress symlink
Adding phases to preInstallPhases is not possible in preBuild since by that time, phases is already populated.
2020-04-05 00:02:54 +02:00
Jan Tojnar 48271f8db9
gobject-introspection: fix tests on darwin
We need to use platform specific shared library file extension when doing our symlink hack.
2020-04-04 04:07:29 +02:00
Tor Hedin Brønner 990b331734
gobject-introspection: 1.62.0 -> 1.64.0
- cairo and doctool is now auto features

Disable broken test. It tries to look up libs in their installed
location, which aren't accessible yet.
2020-03-24 07:06:58 +01:00
Tor Hedin Brønner 99fb5e3668 gobject-introspection: 1.60.2 → 1.62.0 2019-09-30 19:39:46 +02:00