From d954e11ca1a3444701fcc11bc9d4a2f98ec849d1 Mon Sep 17 00:00:00 2001 From: ghpzin Date: Wed, 17 Sep 2025 21:54:22 +0300 Subject: [PATCH] cups-filters: fix build with gcc15 - add patch from merged upstream PR: https://www.github.com/OpenPrinting/cups-filters/pull/618 https://github.com/OpenPrinting/cups-filters/commit/9871a50b5c1f9c2caa2754aac1f5db70c886021b Fixes build failure with gcc15: ``` filter/foomatic-rip/renderer.c: In function 'exec_kid3': filter/foomatic-rip/renderer.c:456:32: error: passing argument 2 of 'start_process' from incompatible pointer type [-Wincompatible-pointer-types] 456 | kid4 = start_process("kid4", exec_kid4, NULL, &kid4in, NULL); | ^~~~~~~~~ | | | int (*)(FILE *, FILE *, void *) In file included from filter/foomatic-rip/renderer.c:21: filter/foomatic-rip/process.h:21:45: note: expected 'int (*)(void)' but argument is of type 'int (*)(FILE *, FILE *, void *)' 21 | pid_t start_process(const char *name, int (*proc_func)(), void *user_arg, | ~~~~~~^~~~~~~~~~~~ filter/foomatic-rip/renderer.c:384:1: note: 'exec_kid4' declared here 384 | exec_kid4(FILE *in, | ^~~~~~~~~ filter/foomatic-rip/process.c:231:1: error: conflicting types for 'start_process'; have 'pid_t(const char *, int (*)(FILE *, FILE *, void *), void *, FILE **, FILE **)' {aka 'int(const char *, int (*)(FILE *, FILE *, void *), void *, FILE **, FILE **)'} 231 | start_process(const char *name, | ^~~~~~~~~~~~~ In file included from filter/foomatic-rip/process.c:14: filter/foomatic-rip/process.h:21:7: note: previous declaration of 'start_process' with type 'pid_t(const char *, int (*)(void), void *, FILE **, FILE **)' {aka 'int(const char *, int (*)(void), void *, FILE **, FILE **)'} 21 | pid_t start_process(const char *name, int (*proc_func)(), void *user_arg, | ^~~~~~~~~~~~~ ``` --- pkgs/by-name/cu/cups-filters/package.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/by-name/cu/cups-filters/package.nix b/pkgs/by-name/cu/cups-filters/package.nix index a5468f00fecc..0abca6114c34 100644 --- a/pkgs/by-name/cu/cups-filters/package.nix +++ b/pkgs/by-name/cu/cups-filters/package.nix @@ -6,6 +6,7 @@ dbus, dejavu_fonts, fetchFromGitHub, + fetchpatch, fontconfig, gawk, ghostscript, @@ -62,6 +63,16 @@ hash = "sha256-bLOl64bdeZ10JLcQ7GbU+VffJu3Lzo0ves7O7GQIOWY="; }; + patches = [ + # Fix build with gcc15 + # https://github.com/OpenPrinting/cups-filters/pull/618 + (fetchpatch { + name = "cups-filters-fix-build-with-gcc15-c23.patch"; + url = "https://github.com/OpenPrinting/cups-filters/commit/9871a50b5c1f9c2caa2754aac1f5db70c886021b.patch"; + hash = "sha256-Hu3nCHzX6K4tD7T5XIt0dh6GPQxmgfuHqbBXWfdXxoA="; + }) + ]; + strictDeps = true; nativeBuildInputs = [