Fixes <https://issues.guix.gnu.org/52519>. The package was propagating two
variants of libsigc++.
* gnu/packages/glib.scm (glibmm-2.64)[propagated-inputs]: Replace existing
libsigc++ package instead of prepending an extra one.
Reported-by: Leo Famulari <leo@famulari.name>
Fixes <https://issues.guix.gnu.org/52574>.
Reported by L p R n d n <guix@lprndn.info>.
Thanks to Maxime Devos for the suggested fix.
* gnu/packages/glib.scm (glib)[configure-flags]: Define as a G-expression.
(glib-with-documentation)[configure-flags]: Likewise.
This is the result of running:
./pre-inst-env guix style --input-simplification=safe
and manually undoing changes on a dozen of packages to reduce
rebuilds (derivations for emacs, icecat, and libreoffice are unchanged.)
* gnu/packages/glib.scm (glib): Update to 2.70. Remove trailing #t.
[outputs]: Add a debug output.
[configure-flags]: Specify --bindir and disable manpage generation.
[phases]{disable-failing-tests}: Disable the flaky testfilemonitor test.
{move-static-libraries}: Use rename-file instead of link and delete.
{move-bin}: Rename to...
{patch-pkg-config-files}: ... this, and adjust the substitutions.
[native-inputs]: Remove docbook-xsl, libxml2 and libxslt.
[properties]: Re-add the hidden? property that commit 18f73d8041 had
temporarily removed.
(glib-with-documentation)[properties]: Revert to a visible package.
[native-inputs]: Add docbook-xsl and libxslt.
[configure-flags]: Delete the inherited "-Dman=false" flag.
Fixes <https://issues.guix.gnu.org/50957>.
This reverts the following commits:
- 42231bc (gnu: cheese: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- ad6a950 (gnu: mutter: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- 5e02d1a (gnu: cogl: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- 5c467b2 (gnu: libgweather: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- 26487f6 (gnu: librsvg-next: Do not propagate gdk-pixbuf)
- d891922 (gnu: librsvg: Do not propagate gdk-pixbuf)
- 22476d3 (gnu: libgsf: Do not propagate gdk-pixbuf)
- 099ca0e (gnu: libnotify: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- fb6a1ff (gnu: appstream-glib: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- 4fb525d (gnu: weasyprint: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
These commits were made to resolve a gdk-pixbuf loaders clash that could occur
in a profile when both gdk-pixbuf and gdk-pixbuf+svg were propagated.
Unfortunately, librsvg really needs to propagate gdk-pixbuf itself, which
would introduce a cycle. Packages such as 'efl' were broken as a result of
not propagating gdk-pixbuf.
A more definitive fix will be proposed for core-updates, which includes a
profile hook to generate the gdk-pixbuf loaders.cache file, as well as a build
phase and search path specification, that should resolve the issue for good.
Propagating gdk-pixbuf rather than gdk-pixbuf+svg is dangerous as it clashes
with GTK+'s own gdk-pixbuf+svg propagation.
* gnu/packages/glib.scm (appstream-glib)[propagated-inputs]: Replace gdk-pixbuf by
gdk-pixbuf+svg.
* gnu/packages/glib.scm
(python-extension-suffix, correct-library-name-phase): New procedures.
(gobject-introspection)[arguments]<#:phases>{rename-library}:
New phase, correct the name of the python extension when cross-compiling.
* gnu/packages/glib.scm
(gobject-introspection)[native-inputs]: Add 'bison' and 'flex'
when cross-compiling.
(gobject-introspection)[inputs]: Use 'python' instead of 'python-wrapper'
when cross-compiling. Remove 'bison', 'flex' when cross-compiling.
* gnu/packages/glib.scm
(gobject-introspection)[arguments]<#:configure-flags>: Set
gi_cross_use_prebuilt_gi to 'true'.
(gobject-introspection)[arguments]<#:phases>{set-typelibs}: New phase,
avoid undefined variable in "meson.build".
This allows cross-compilation to succeed when not using
QEMU's transparent emulation, and the cross-compilation
is not a pointless cross-compilation like x86_64 -> i686.
* gnu/packages/glib.scm (dbus-glib)[arguments]: Set --with-dbus-binding-tool
to a native version of "dbus-binding-tool" when cross-compiling.
* gnu/packages/glib.scm (appstream-glib)[arguments]<#:phases>{set-home}: Add a
new phase 'set-home' for tests that want to write to $HOME.
Signed-off-by: Leo Famulari <leo@famulari.name>
Otherwise, "tzdata" won't be found when cross-compiling
and string-append will complain about types. Alternatively,
"tzdata" could be moved from 'native-inputs' to 'inputs'.
* gnu/packages/glib.scm (glib)[arguments]<#:phases>{pre-check}:
Look up "tzdata" in 'native-inputs', not 'inputs'.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
During the build, a native python should be used as these
scripts will be invoked during the build, but when installed,
they should be a python for the system we're compiling for.
* gnu/packages/glib.scm
(glib)[arguments]<#:phases>{patch-python-references}: Look up
"python" in 'native-inputs', not 'inputs'.
(glib)[inputs]{python,python-wrapper,bash-minimal}: New inputs.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Dependants of perl-glib also require glib for its typelibs and schemas.
* gnu/packages/glib.scm (perl-glib)[inputs]: Move glib to ...
[propagated-inputs]: ... here.
This reverses removing this phase in
a24562af52, which is still needed by some
slower machines.
* gnu/packages/glib.scm (glib)[arguments]: Add 'increase-test-timeout
phase to ensure tests which don't hang also don't timeout.
This fixes the fatal error "Settings schema 'org.gnome.system.proxy' is not
installed", which causes builds to fail.
* gnu/packages/glib.scm (appstream-glib)[native-inputs]: Add
gsettings-desktop-schemas.
* gnu/packages/glib.scm (glibmm)[outputs]: New output "doc".
[arguments]<#:configure-flags>[-Dbuild-documentation]: New flag.
<#:phases>['move-doc]: New phase.
[native-inputs]: Add doxygen and graphviz.
Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net>
* gnu/packages/glib.scm (libsigc++)[outputs]: New output "doc".
[arguments]<#:configure-flags>[-Dbuild-documentation]: New flag.
<#:phases>['patch-docbook-xml]: New phase.
['move-doc]: New phase.
[native-inputs]: Add dblatex, doxygen and graphviz.
Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net>