diff mbox series

[meta-oe,4/6] cups-filters: fix build with gcc-15

Message ID 20250422175742.786560-4-martin.jansa@gmail.com
State Under Review
Headers show
Series [meta-oe,1/6] vulkan-cts-sources: fix build with gcc-15 | expand

Commit Message

Martin Jansa April 22, 2025, 5:57 p.m. UTC
From: Martin Jansa <martin.jansa@gmail.com>

* 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 <martin.jansa@gmail.com>
---
 ...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 mbox series

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 <zdohnal@redhat.com>
+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 <martin.jansa@gmail.com>
+---
+ 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 <sys/wait.h>
+ 
+ 
+-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"