diff options
author | 2024-05-09 17:21:26 -0700 | |
---|---|---|
committer | 2024-05-12 08:43:19 -0700 | |
commit | 587edc5e8dc22d283a4d725deef210ce7911a966 (patch) | |
tree | 0cf3f1eac550390cf3100da056aaaed386f994b9 | |
parent | 88cc44c35983e3bde8f2c3461dfdd7f5ded1ec50 (diff) | |
download | meta-openembedded-contrib-587edc5e8dc22d283a4d725deef210ce7911a966.tar.gz |
fvwm: Fix build with gcc-14
Fixes for C99 compatibility
Signed-off-by: Khem Raj <raj.khem@gmail.com>
4 files changed, 115 insertions, 0 deletions
diff --git a/meta-oe/recipes-graphics/fvwm/fvwm/0001-configure-Do-not-require-support-for-implicit-ints.patch b/meta-oe/recipes-graphics/fvwm/fvwm/0001-configure-Do-not-require-support-for-implicit-ints.patch new file mode 100644 index 0000000000..356bd73f88 --- /dev/null +++ b/meta-oe/recipes-graphics/fvwm/fvwm/0001-configure-Do-not-require-support-for-implicit-ints.patch @@ -0,0 +1,45 @@ +From cbba378a23410241176d62f3bb43965c044615e3 Mon Sep 17 00:00:00 2001 +From: Florian Weimer <fweimer@redhat.com> +Date: Thu, 24 Nov 2022 13:06:50 +0100 +Subject: [PATCH 1/3] configure: Do not require support for implicit ints + +Implicit ints have not been part of C since 1999, and future +compilers will disable support for them by default. Fortunatenly, +only one configure check needs adjusting. + +Upstream-Status: Submitted [https://github.com/fvwmorg/fvwm/pull/100] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + acinclude.m4 | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/acinclude.m4 b/acinclude.m4 +index 8b74ff1e..b66042f9 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -30,7 +30,7 @@ if test "$ac_cv_func_select" = yes; then + #ifdef HAVE_SYS_SOCKET_H + #include <sys/socket.h> + #endif], +-[extern select ($ac_cv_type_fd_set_size_t, ++[extern int select ($ac_cv_type_fd_set_size_t, + $ac_cv_type_fd_set *, $ac_cv_type_fd_set *, $ac_cv_type_fd_set *, + $ac_type_timeval *);], + [ac_found=yes ; break 3],ac_found=no) +diff --git a/configure.ac b/configure.ac +index 97ab9e7a..c9fcede6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -220,7 +220,7 @@ AC_MINIX + + # catch -Werror and similar options when running configure + AC_TRY_COMPILE([#include <stdio.h>], +-[int i; static j; int *p; char *c; ++[int i; int *p; char *c; + switch (*p = p = *c) { case 0: printf("%Q", c, p); } + *c = &i; c = p; + while (1 || (unsigned int)3 >= 0 || ((int)-1) == ((unsigned int)1)); +-- +2.45.0 + diff --git a/meta-oe/recipes-graphics/fvwm/fvwm/0002-acinclude.m4-Add-missing-unistd.h-to-AM_SAFETY_CHECK.patch b/meta-oe/recipes-graphics/fvwm/fvwm/0002-acinclude.m4-Add-missing-unistd.h-to-AM_SAFETY_CHECK.patch new file mode 100644 index 0000000000..50ecb20c72 --- /dev/null +++ b/meta-oe/recipes-graphics/fvwm/fvwm/0002-acinclude.m4-Add-missing-unistd.h-to-AM_SAFETY_CHECK.patch @@ -0,0 +1,32 @@ +From 51287fb60263530f61b14df5519e10dabe67d2ad Mon Sep 17 00:00:00 2001 +From: Florian Weimer <fweimer@redhat.com> +Date: Thu, 24 Nov 2022 13:07:56 +0100 +Subject: [PATCH 2/3] acinclude.m4: Add missing <unistd.h> to + AM_SAFETY_CHECK_MKSTEMP + +Otherwise, the check fails on a compiler which does not support +implicit function declarations (a language feature removed in 1999). + +Upstream-Status: Submitted [https://github.com/fvwmorg/fvwm/pull/100] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + acinclude.m4 | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/acinclude.m4 b/acinclude.m4 +index b66042f9..4dee2abe 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -1154,6 +1154,9 @@ AC_DEFUN([AM_SAFETY_CHECK_MKSTEMP],[ + #include <stdio.h> + #include <stdlib.h> + #include <string.h> ++#ifdef HAVE_UNISTD_H ++#include <unistd.h> ++#endif + int main(void) + { + char template[128]; +-- +2.45.0 + diff --git a/meta-oe/recipes-graphics/fvwm/fvwm/0003-configure-Further-defang-the-Werror-check.patch b/meta-oe/recipes-graphics/fvwm/fvwm/0003-configure-Further-defang-the-Werror-check.patch new file mode 100644 index 0000000000..e9d780ddc6 --- /dev/null +++ b/meta-oe/recipes-graphics/fvwm/fvwm/0003-configure-Further-defang-the-Werror-check.patch @@ -0,0 +1,35 @@ +From 542c6f25327587d5a6bffb8a45b457ec85dcf8e1 Mon Sep 17 00:00:00 2001 +From: Florian Weimer <fweimer@redhat.com> +Date: Tue, 19 Dec 2023 13:24:50 +0100 +Subject: [PATCH 3/3] configure: Further defang the -Werror check + +Incompatible pointer types are actually errors (in the sense +that they are invalid C). Compilers have merely tolerated them as +warnings for backwards compatibility. This is changing with Clang 16 +and GCC 14, so relax the check a little. + +Upstream-Status: Submitted [https://github.com/fvwmorg/fvwm/pull/100] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + configure.ac | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index c9fcede6..2e9615b2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -220,9 +220,8 @@ AC_MINIX + + # catch -Werror and similar options when running configure + AC_TRY_COMPILE([#include <stdio.h>], +-[int i; int *p; char *c; +- switch (*p = p = *c) { case 0: printf("%Q", c, p); } +- *c = &i; c = p; ++[int unused; int *p; char *c; ++ printf("%Q", c, p); + while (1 || (unsigned int)3 >= 0 || ((int)-1) == ((unsigned int)1)); + ], , AC_MSG_ERROR(" + configure is not able to compile programs with warnings. Please +-- +2.45.0 + diff --git a/meta-oe/recipes-graphics/fvwm/fvwm_2.7.0.bb b/meta-oe/recipes-graphics/fvwm/fvwm_2.7.0.bb index 8daf38a0ba..df349494aa 100644 --- a/meta-oe/recipes-graphics/fvwm/fvwm_2.7.0.bb +++ b/meta-oe/recipes-graphics/fvwm/fvwm_2.7.0.bb @@ -34,6 +34,9 @@ DEPENDS = " \ SRC_URI = " \ git://github.com/fvwmorg/fvwm.git;protocol=https;branch=master \ file://0001-Fix-compilation-for-disabled-gnome.patch \ + file://0001-configure-Do-not-require-support-for-implicit-ints.patch \ + file://0002-acinclude.m4-Add-missing-unistd.h-to-AM_SAFETY_CHECK.patch \ + file://0003-configure-Further-defang-the-Werror-check.patch \ " SRCREV = "7baf540e56fb1a3e91752acba872a88543529d46" |