The idea is to keep the comments in one place, instead of copying
them over and over. It's also documented more now.
* gnu/packages/xorg.scm
(malloc0-flags): New procedure.
(libxext,libxrender,libx11,libxt): Use new procedures.
* gnu/packages/gtk.scm
(at-spi2-core)[arguments]<#:phases>{patch-docbook-sgml}: Look up
"docbook-sxml" in 'native-inputs' instead of 'inputs' when cross-compiling.
* gnu/packages/gtk.scm
(at-spi2-core)[arguments]<#:configure-flags>: Set docs=false when
cross-compiling.
(at-spi2-core)[arguments]<#:phases>{move-documentation}: Remove when
cross-compiling.
* gnu/packages/avahi.scm (avahi)[arguments]<#:phases>{patch-more-shebangs}:
Replace the bash in the shebangs in "/etc/avahi" with a cross-compiled bash.
The configure script first tests whether "pkg-config" is in PATH,
and then uses "TARGET-pkg-config". Pretend "pkg-config" exists.
* gnu/packages/avahi.scm (avah)[arguments]<#:configure-flags>: Set
ac_cv_prog_have_pkg_config=yes when cross-compiling.
* gnu/packages/libdaemon.scm
(libdaemon)[native-inputs]: Add "config" when cross-compiling for
aarch64.
(libdaemon)[arguments]<#:phases>{update-config.sub}: When cross-compiling
for aarch64, update the "config.sub" script.
* gnu/packages/gnome.scm
(json-glib)[arguments]<#:configue-flags>: Set gtk_doc=disables when
cross-compiling.
(json-glib)[arguments]<#:phases>{move-docs}: Don't run when cross-compiling
...
(json-glib)[arguments]<#:phases>{stub-docs}: ... instead, create an empty
directory where the documentation would be.
* gnu/packages/gnome.scm (json-glib)[arguments]<#:phases>{patch-docbook}:
Look up "docbook-xml" in 'native-inputs', not 'inputs', when
cross-compiling.
* gnu/packages/kerberos.scm
(heimdal)[arguments]<#:phases>{pre-configure}: Let "appl/afsutil/pagsh.c"
refer to the cross-compiled bash instead of the native bash when
cross-compiling.
* gnu/packages/iso-codes.scm
(iso-codes)[inputs]: Move "gettext", "perl" and "python" to ...
(iso-codes)[native-inputs]: ... here when cross-compiling.
* 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".
Alternative ‘os types’ include RedHat and Gentoo, which
don't seem applicable.
* gnu/packages/polkit.scm (polkit)[arguments]<#:configure-flags>:
Set "--with-os-type" to "unknown".
If absent, this causes the 'glib-or-gtk-wrap' phase to fail.
* gnu/packages/glib.scm
(cairo)[inputs]: Add "bash-minimal", but only when cross-compiling
to avoid a world-rebuild.
* guix/build-system/glib-or-gtk.scm
(lower): Add 'implicit-cross-inputs?' argument. Generate a bag
when cross-compiling.
(glib-or-gtk-cross-build): New procedure.
Presumably the other versions of mozjs need some changes
as well, but for now only fix mozjs@60, which is a dependency
of polkit.
* gnu/packages/gnuzilla.scm
(mozjs-60)[arguments]<#:configure-flags>: Set --with-nspr-prefix
and set --host and --target inappropriately when cross-compiling.
(mozjs-60)[arguments]<#:phases>{set-PKG_CONFIG}: New phase
when cross-compiling.
* gnu/packages/nss.scm
(nspr)[inputs]: Add 'perl' and 'bash-minimal' when cross-compiling.
(nspr)[arguments]{#:disallowed-references}: Add native 'perl' when
cross-compiling.