diff --git a/fvwm2-gcc14.patch b/fvwm2-gcc14.patch new file mode 100644 index 0000000..de857d8 --- /dev/null +++ b/fvwm2-gcc14.patch @@ -0,0 +1,97 @@ +From 0b4daddf6b88b696daf54714448b8d89a615abf2 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +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. +--- + acinclude.m4 | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/acinclude.m4 b/acinclude.m4 +index 8b74ff1e5..b66042f9f 100644 +--- acinclude.m4 ++++ acinclude.m4 +@@ -30,7 +30,7 @@ if test "$ac_cv_func_select" = yes; then + #ifdef HAVE_SYS_SOCKET_H + #include + #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 97ab9e7a1..c9fcede6a 100644 +--- configure.ac ++++ configure.ac +@@ -220,7 +220,7 @@ AC_MINIX + + # catch -Werror and similar options when running configure + AC_TRY_COMPILE([#include ], +-[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)); + +From 6b9d100ae4e784821b5189474dc58e646417bcf6 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Thu, 24 Nov 2022 13:07:56 +0100 +Subject: [PATCH 2/3] acinclude.m4: Add missing 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). +--- + acinclude.m4 | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/acinclude.m4 b/acinclude.m4 +index b66042f9f..4dee2abeb 100644 +--- acinclude.m4 ++++ acinclude.m4 +@@ -1154,6 +1154,9 @@ AC_DEFUN([AM_SAFETY_CHECK_MKSTEMP],[ + #include + #include + #include ++#ifdef HAVE_UNISTD_H ++#include ++#endif + int main(void) + { + char template[128]; + +From 33537b8ae5a302e4016dc1c6cfe5577fb3fa36c9 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +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. +--- + configure.ac | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index c9fcede6a..2e9615b2b 100644 +--- configure.ac ++++ configure.ac +@@ -220,9 +220,8 @@ AC_MINIX + + # catch -Werror and similar options when running configure + AC_TRY_COMPILE([#include ], +-[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 + diff --git a/fvwm2.changes b/fvwm2.changes index 27c0e32..aa68533 100644 --- a/fvwm2.changes +++ b/fvwm2.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +Tue Nov 19 10:20:03 UTC 2024 - pgajdos@suse.com + +- build with gcc14 +- use existing openSUSE wallpaper image file +- use FvwmBacker module for background instead of external program +- do not depend on xli anymore +- modified sources + % system.fvwm2rc +- added patches + fix https://github.com/fvwmorg/fvwm/pull/100 + + fvwm2-gcc14.patch + ------------------------------------------------------------------- Sun Aug 27 09:06:34 UTC 2023 - Michael Vetter diff --git a/fvwm2.spec b/fvwm2.spec index 7700c9d..d1984bf 100644 --- a/fvwm2.spec +++ b/fvwm2.spec @@ -1,7 +1,7 @@ # # spec file for package fvwm2 # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -33,6 +33,8 @@ Patch1: fvwm-2.5.26-sv_SE.patch Patch2: fvwm-no-date-time.patch Patch3: fvwm-FvwmAuto-overflow.patch Patch4: threadlocking.patch +# https://github.com/fvwmorg/fvwm/pull/100 +Patch5: fvwm2-gcc14.patch BuildRequires: automake BuildRequires: gcc-c++ BuildRequires: libpng-devel @@ -62,9 +64,8 @@ Requires: desktop-data Requires: mktemp Requires: wallpaper-branding Requires: xdg-menu -Requires: xli Requires(post): update-alternatives -Requires(postun):update-alternatives +Requires(postun): update-alternatives Provides: fvwm Provides: fvwmicns Provides: windowmanager diff --git a/system.fvwm2rc b/system.fvwm2rc index 780c7e2..0379c35 100644 --- a/system.fvwm2rc +++ b/system.fvwm2rc @@ -90,8 +90,6 @@ AddToFunc QuitSave AddToFunc StartFunction + I Test (Init) Module FvwmBanner + I Test (Init) Exec exec xterm -ls -geometry +150+85 -+ I Test (Init) Exec exec xli -onroot -fillscreen -border black /usr/share/wallpapers/openSUSEdefault/contents/images/1600x1200.jpg -+ I Test (Restart) Exec exec xli -onroot -fillscreen -border black /usr/share/wallpapers/openSUSEdefault/contents/images/1600x1200.jpg + I Module FvwmButtons AddToFunc ExitFunction @@ -365,12 +363,9 @@ Style "AcroRead" SmartPlacement, RandomPlacement # see bug n#51188 # Style "OpenOffice*" NoPPosition, RandomPlacement, EWMHIgnoreStrutHints, EWMHMaximizeIgnoreWorkingArea, EWMHPlacementIgnoreWorkingArea, IgnoreGravity -*FvwmBacker: Desk 0 -solid steelblue -*FvwmBacker: Desk 1 -solid midnightblue -*FvwmBacker: Desk 2 -solid yellow -*FvwmBacker: Desk 3 -solid cadetblue2 -*FvwmBacker: Desk 5 -solid cadetblue3 -*FvwmBacker: Desk 6 -solid cadetblue4 +Module FvwmBacker +Colorset 10 Pixmap /usr/share/wallpapers/openSUSEdefault/contents/images/1600x1200.png +*FvwmBacker: Command (Desk *) Colorset 10 *FvwmIdent: Back MidnightBlue *FvwmIdent: Fore Yellow