* gnu/packages/polkit.scm (polkit): Disable a JavaScript related test, somehow
triggered in the polkit-duktape build.
(polkit-duktape): New variable.
* gnu/packages/patches/polkit-use-duktape.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
Since gtkmm@3 at least requires it, to workaround a possible new bug in Meson.
Keep Meson at 0.60, because it also introduces useful features, such as
validating that the build options used exist.
* gnu/packages/build-tools.scm (meson-0.59): New variable.
* gnu/packages/cpp.scm (cling): New variable.
(llvm-cling): New private variable.
(clang-cling): Likewise.
* gnu/packages/patches/cling-use-shared-library.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/dlang.scm (ldc-bootstrap): Rename to...
(ldc-bootstrap-0.17): ... this. Fix indentation. Disable tests.
[phases]: Remove test related patching.
{patch-phobos}: Rename to ...
{patch-paths}: ... this.
[inputs]: Remove llvm-6, which is propagated by clang-6.
(ldc-bootstrap-1.12): New variable, based on the previous ldc.
[source]: Use the official release tarball.
[build-type]: Set the build type to Release.
[configure-flags]: Pass the -GNinja configure flag.
[phases]{patch-paths}: Override to adjust for changed paths.
{build, install}: Override to use ninja.
[native-inputs]: Add ld-gold-wrapper. Update llvm to version 11 and use
ldc-bootstrap-0.17 as the bootstrapping D compiler. Add ninja. Remove the
phobos-src, druntime-src and dmd-testsuite-src source inputs, now included in
the official release.
(ldc-bootstrap-1.24): Other intermediate variant for bootstrapping purposes.
(ldc): Update to 1.27.1.
[make-flags]: New argument.
[configure-flags]: Adjust.
[phases]{fix-compiler-rt-library-discovery}: New phase.
{patch-paths-in-tests}: Likewise.
{disable-problematic-tests}: Likewise. Compared to before, many GDB tests are
reinstated.
{set-cc-and-cxx-to-use-clang}: New phase.
{tests}: Override.
[inputs]: Update clang to version 11. Bootstrap from a stage 1 version of
itself.
* gnu/packages/patches/ldc-bootstrap-disable-tests.patch: Delete file.
* gnu/packages/patches/ldc-disable-phobos-tests.patch: Likewise.
* gnu/local.mk: De-register them.
* gnu/packages/python-xyz.scm (python-numpy): Update to 1.21.3.
[native-inputs]: Add python-hypothesis and python-pytest-xdist.
[phases]: Delete trailing #t. Do not explicitly reorder the check phase, as
it already runs after the install phase for the python build system.
{configure-blas-lapack}: Rename to...
{configure-blas}: ... this, to cleanup remnants of lapack left in commit
6623d1cd7f.
{check}: Honor TESTS?. Invoke the tests via the runtests.py script and enable
parallel tests.
(python2-numpy-1.8)[phases]{configure-blas-lapack}: Likewise (as for the
python-numpy package).
The option has been replaced by `vulkan-layers', an array of options.
* gnu/packages/gl.scm (mesa): Remove trailing #t.
[configure-flags]: Replace the vulkan-overlay-layer build option by
vulkan-layers.
The newer meson 0.60 failed the build because the jasper flag no longer
exists.
* gnu/packages/gtk.scm (gdk-pixbuf)[configure-flags]<jasper>: Remove configure
flag.
[phases]{patch-docbook}: Remove condition and TODO comment.
[inputs]: Remove jasper.
This is made in an attempt to get rid of non-deterministic test failures,
namely:
[ FAILED ] TlsConnectDatagram13.AeadLimit
* gnu/packages/nss.scm (nss): Update comment about nss-certs. Update to 3.71.
[phases]{check}: Update faketime date.
[inputs]{sqlite}: Use the regular version.
* gnu/packages/certs.scm (nss-certs): Inherit version and source from nss.
Tests from the perfschema test suite has a high failure rate. Upstream only
tests the main test suite in their CI, so don't try to outdo them.
* gnu/packages/databases.scm (mariadb): Delete trailing #t.
[phases]{check}: Only run the main test suite.
Now that we have a search path that honors it on gdk-pixbuf, it is more
valuable to keep it.
* gnu/packages/gnome.scm (librsvg)[phases]{pre-configure}: Install loaders,
cache file to locations derived from %gdk-pixbuf-loaders-cache-file.
With the addition of a profile hook for computing the gdk-pixbuf loaders cache
file, there is no longer a need for gdk-pixbuf+svg, and librsvg can propagate
gdk-pixbuf without fear, so replace the former for the latter.
The replacement was automated with the following command:
$ git grep -l ',gdk-pixbuf+svg)' \
| xargs sed 's/(".*" ,gdk-pixbuf+svg)/("librsvg" ,librsvg)/' -i
* gnu/packages/gtk.scm (gdk-pixbuf+svg): Delete package.
(gtk+-2)[propagated-inputs]: Replace gdk-pixbuf+svg with librsvg.
(gtk+)[propagated-inputs]: Likewise.
* gnu/packages/gnome.scm (gdk-pixbuf+svg): Add deprecated package.
Fixes <https://issues.guix.gnu.org/50957>.
The previous commit added a profile hook to compute a gdk-pixbuf loaders cache
file. This change enables gdk-pixbuf to make use of it.
* gnu/packages/gtk.scm (gdk-pixbuf)[native-search-paths]: Add a search path
specification to set the GDK_PIXBUF_MODULE_FILE environment variable.
This paves the way toward properly fixing https://issues.guix.gnu.org/50957.
* guix/profiles.scm (gdk-pixbuf-loaders-cache-file): Add procedure...
(%default-profile-hooks): ... and register it as a profile hook.
* guix/status.scm (hook-message): Register it here too.
Adding a profile hook to do so covers most use cases, but it is still
necessary to have the gdk-pixbuf loaders cache file computed at build time, as
software may expect to find loaders support at that time.
* guix/build/glib-or-gtk-build-system.scm: Delete trailing #t.
(%gdk-pixbuf-loaders-cache-file-prefix): New variable.
(generate-gdk-pixbuf-loaders-cache): New procedure.
(generate-gdk-pixbuf-loaders-cache-file): Add procedure...
(%standard-phases): ... and register it as a build phase.
* gnu/packages/gtk.scm (gtk+)[arguments]: Import the (guix build
glib-or-gtk-build-system) module and put it in scope.
[phases]{generate-gdk-pixbuf-loaders-cache-file}: New phase.
(gtk): Likewise.