Subject: Re: [bug#67623] [PATCH 1/3] gnu: gtk+: Require zlib in gdk-3.0.pc.

From: Liliana Marie Prikler <[email-masked]>
Date: Mon, 04 Dec 2023 20:32:46 +0100

Am Montag, dem 04.12.2023 um 14:39 +0100 schrieb Jean-Pierre De Jesus
DIAZ:
> * gnu/packages/gtk.scm (gtk+) <inputs>: Add zlib.
> 
> * gnu/packages/gtk.scm (gtk+) <arguments>: Add 'add-zlib-to-gdk-
> 3.0.pc
>   phase.
> 
> Change-Id: I5efadebded159e0bd495ec07020b431413bd6e10
> ---
>  gnu/packages/gtk.scm | 13 ++++++++++++-
>  1 file changed, 12 insertions(+), 1 deletion(-)
> 
> diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
> index 47d4c1808f..752c9f456d 100644
> --- a/gnu/packages/gtk.scm
> +++ b/gnu/packages/gtk.scm
> @@ -1032,7 +1032,9 @@ (define-public gtk+
>             mesa
>             pango
>             wayland
> -           wayland-protocols))
> +           wayland-protocols
> +           ;; When broadway backend is enabled gdk-3.0 requires
> zlib.
> +           zlib))
>      (inputs
>       (list colord-minimal               ;to prevent a cycle with
> inkscape
>             cups
> @@ -1087,6 +1089,15 @@ (define-public gtk+
>            (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
>              (assoc-ref glib-or-gtk:%standard-phases
>                         'generate-gdk-pixbuf-loaders-cache-file))
> +          (add-after 'unpack 'add-zlib-to-gdk-3.0.pc
> +            (lambda _
> +              ;; When -Dbroadway_backend=true zlib is added as a
> dependency to
> +              ;; gdk-3.0 but isn't done correctly and can cause pkg-
> config to
> +              ;; not add the correct -L...-zlib/lib flag.
> +              (substitute* "meson.build"
> +                (("pc_gdk_extra_libs += \\['-lz'\\]") "")
> +                (("^gdk_packages \\+= cairo_packages" all)
> +                 (string-append all "\ngdk_packages += '
> zlib'\n")))))
Is there a good reason to do it this way?  I would hope that
downstreams are already aware of this pkg-config variable.

Cheers