From abb02e14dca2c0b4e519b47866d7aceb4bfef993 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Tue, 22 Apr 2025 19:57:40 +0200 Subject: [PATCH] cups-filters: fix build with gcc-15 * fixes: http://errors.yoctoproject.org/Errors/Details/852846/ ../cups-filters-2.0.0/filter/foomatic-rip/pdf.c:79:32: error: passing argument 2 of 'start_process' from incompatible pointer type [-Wincompatible-pointer-types] 79 | kid3 = start_process("kid3", exec_kid3, (void *)cmd, NULL, NULL); | ^~~~~~~~~ | | | int (*)(FILE *, FILE *, void *) In file included from ../cups-filters-2.0.0/filter/foomatic-rip/pdf.c:16: ../cups-filters-2.0.0/filter/foomatic-rip/process.h:21:45: note: expected 'int (*)(void)' but argument is of type 'int (*)(FILE *, FILE *, void *)' Signed-off-by: Martin Jansa Signed-off-by: Khem Raj --- ...uild-failure-with-GCC-15-and-std-c23.patch | 28 +++++++++++++++++++ .../cups/cups-filters_2.0.0.bb | 1 + 2 files changed, 29 insertions(+) create mode 100644 meta-oe/recipes-printing/cups/cups-filters/0001-Fix-build-failure-with-GCC-15-and-std-c23.patch diff --git a/meta-oe/recipes-printing/cups/cups-filters/0001-Fix-build-failure-with-GCC-15-and-std-c23.patch b/meta-oe/recipes-printing/cups/cups-filters/0001-Fix-build-failure-with-GCC-15-and-std-c23.patch new file mode 100644 index 0000000000..7165593608 --- /dev/null +++ b/meta-oe/recipes-printing/cups/cups-filters/0001-Fix-build-failure-with-GCC-15-and-std-c23.patch @@ -0,0 +1,28 @@ +From a31812e179f24f71199e7b1c823ecd212f10472f Mon Sep 17 00:00:00 2001 +From: Zdenek Dohnal +Date: Fri, 24 Jan 2025 09:44:58 +0100 +Subject: [PATCH] Fix build failure with GCC 15 and -std=c23 + +The newest standard has more strict data type checks, function pointers +in function prototypes have to declare data types of its arguments. + +Upstream-Status: Backport [https://github.com/OpenPrinting/cups-filters/commit/9871a50b5c1f9c2caa2754aac1f5db70c886021b] + +Signed-off-by: Martin Jansa +--- + filter/foomatic-rip/process.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/filter/foomatic-rip/process.h b/filter/foomatic-rip/process.h +index f6e15f6..54a4292 100644 +--- a/filter/foomatic-rip/process.h ++++ b/filter/foomatic-rip/process.h +@@ -18,7 +18,7 @@ + #include + + +-pid_t start_process(const char *name, int (*proc_func)(), void *user_arg, ++pid_t start_process(const char *name, int (*proc_func)(FILE*, FILE*, void*), void *user_arg, + FILE **fdin, FILE **fdout); + pid_t start_system_process(const char *name, const char *command, FILE **fdin, + FILE **fdout); diff --git a/meta-oe/recipes-printing/cups/cups-filters_2.0.0.bb b/meta-oe/recipes-printing/cups/cups-filters_2.0.0.bb index ff4ed16794..0886e7061b 100644 --- a/meta-oe/recipes-printing/cups/cups-filters_2.0.0.bb +++ b/meta-oe/recipes-printing/cups/cups-filters_2.0.0.bb @@ -8,6 +8,7 @@ DEPENDS = "libcupsfilters libppd glib-2.0 poppler" SRC_URI = " \ https://github.com/OpenPrinting/${BPN}/releases/download/${PV}/${BP}.tar.xz \ file://fix-make-race.patch \ + file://0001-Fix-build-failure-with-GCC-15-and-std-c23.patch \ " SRC_URI[sha256sum] = "b5152e3dd148ed73835827ac2f219df7cf5808dbf9dbaec2aa0127b44de800d8"