mbox series

[bug#69495,0/2] gnu: cairo: Update to 1.18.0.

Message ID cover.1709342740.git.john.kehayias@protonmail.com
Headers show
Series gnu: cairo: Update to 1.18.0. | expand

Message

John Kehayias March 2, 2024, 1:50 a.m. UTC
Hi gnome-team and guix,

I'm cc'ing the gnome-team as this would normally fall to them, but with their
pending merge and the builds upcoming on mesa-updates (libdrm, which cairo
depends on), I think this will go on mesa-updates. The patch is based on
master, not gnome-team. Still, thought it would be good to have a review as
this was non-trivial. Thanks to lilyp on #guix for tips!

Please see the patches to update cairo to the new release (after many years!)
of 1.18.0. An update to python-pycairo was needed first. The end result is
that our cairo package is quite a bit simpler as the defaults include the tee
backend that we had enabled before. I removed all the old configure flags and
propagated-inputs which were commented out and now obsolete.

The docs require gtk-doc which depends on cairo. To break the cycle cairo is
hidden (but exported) and built without docs, with the public cairo-with-docs
including them. I followed what was done for glib with a similar issue.

I did not try too much enable tests, which may have been revamped? The quick
look I took in the source docs suggested that it is very system dependent
(reference images) though does run on their GitLab CI. When enabling
test/ps2png.p/ps2png.c.o fails to build as it can't find cairo.h. Perhaps it
needs to build tests in a phase after cairo has built and set in a way to find
this just build version?

Anyway, this built locally for me on x86_64. I built up to icecat, which needs
the tee backend we previously manually enabled, and it built and ran
successfully.

Let me know of any issues or changes wanted or if someone wants to take this
on a different branch. I think it makes sense on mesa-updates due to the
libdrm update I will take there.

Thanks!
John


John Kehayias (2):
  gnu: python-pycairo: Update to 1.26.0.
  gnu: cairo: Update to 1.18.0.

 gnu/local.mk                                  |  2 -
 gnu/packages/gtk.scm                          | 85 ++++++++++---------
 .../patches/cairo-CVE-2018-19876.patch        | 37 --------
 .../patches/cairo-CVE-2020-35492.patch        | 49 -----------
 4 files changed, 47 insertions(+), 126 deletions(-)
 delete mode 100644 gnu/packages/patches/cairo-CVE-2018-19876.patch
 delete mode 100644 gnu/packages/patches/cairo-CVE-2020-35492.patch


base-commit: b386c11e7804e0b577411d930b60f1e0a4a0382c
prerequisite-patch-id: 2889be19c4a046760f2f608cefff987b11b65a31
--
2.41.0