summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-plugins/wmweather+/files/wmweather+-2.18-configure-clang16.patch')
-rw-r--r--x11-plugins/wmweather+/files/wmweather+-2.18-configure-clang16.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/x11-plugins/wmweather+/files/wmweather+-2.18-configure-clang16.patch b/x11-plugins/wmweather+/files/wmweather+-2.18-configure-clang16.patch
new file mode 100644
index 000000000000..68a4d3f33190
--- /dev/null
+++ b/x11-plugins/wmweather+/files/wmweather+-2.18-configure-clang16.patch
@@ -0,0 +1,67 @@
+https://sourceforge.net/p/wmweatherplus/bugs/21/
+https://bugs.gentoo.org/870958
+
+Port the configure script to C99 by avoiding calls to the undeclared
+exit function. Future compilers are likely to reject implicit
+function declarations by default; this C features was removed from the
+language in 1999.
+
+--- a/m4/snprintf.m4
++++ b/m4/snprintf.m4
+@@ -24,7 +24,7 @@ int snprintf(char *str, size_t size, const char *format, ...);
+ #endif
+ ]],
+ [[char foo[]="ABC"; snprintf(foo, 2, "%d", 12);
+-exit((foo[0]=='1' && foo[1]=='\0' && foo[2]=='C')?0:1);]])],
++return (foo[0]=='1' && foo[1]=='\0' && foo[2]=='C')?0:1;]])],
+ [x_cv_func_snprintf_size=yes],
+ [x_cv_func_snprintf_size=no],
+ [x_cv_func_snprintf_size=no])])
+@@ -52,7 +52,7 @@ AC_CACHE_CHECK([if snprintf return value is sane], x_cv_func_snprintf_retval,
+ int snprintf(char *str, size_t size, const char *format, ...);
+ #endif
+ ]],
+-[[char foo[10]; exit((snprintf(foo, 1, "%d", 9876)==4)?0:1);]])],
++[[char foo[10]; return (snprintf(foo, 1, "%d", 9876)==4)?0:1;]])],
+ [x_cv_func_snprintf_retval=yes],
+ [x_cv_func_snprintf_retval=no],
+ [x_cv_func_snprintf_retval=no])])
+@@ -79,7 +79,7 @@ AC_CACHE_CHECK([if snprintf(NULL, 0, ...) works], x_cv_func_snprintf_null_ok,
+ int snprintf(char *str, size_t size, const char *format, ...);
+ #endif
+ ]],
+-[int r=snprintf(NULL, 0, "%d", 100); exit((r==3 || r==-1)?0:1);])],
++[int r=snprintf(NULL, 0, "%d", 100); return (r==3 || r==-1)?0:1;])],
+ [x_cv_func_snprintf_null_ok=yes],
+ [x_cv_func_snprintf_null_ok=no],
+ [x_cv_func_snprintf_null_ok=no])])
+--- a/m4/vsnprintf.m4
++++ b/m4/vsnprintf.m4
+@@ -37,7 +37,7 @@ int doit(char *str, size_t size, const char *format, ...){
+ }
+ ]],
+ [[char foo[]="ABC"; doit(foo, 2, "%d", 12);
+-exit((foo[0]=='1' && foo[1]=='\0' && foo[2]=='C')?0:1);]])],
++return (foo[0]=='1' && foo[1]=='\0' && foo[2]=='C')?0:1;]])],
+ [x_cv_func_vsnprintf_size=yes],
+ [x_cv_func_vsnprintf_size=no],
+ [x_cv_func_vsnprintf_size=no])])
+@@ -74,7 +74,7 @@ int doit(char *str, size_t size, const char *format, ...){
+ return r;
+ }
+ ]],
+-[[char foo[10]; exit((doit(foo, 1, "%d", 9876)==4)?0:1);]])],
++[[char foo[10]; return (doit(foo, 1, "%d", 9876)==4)?0:1;]])],
+ [x_cv_func_vsnprintf_retval=yes],
+ [x_cv_func_vsnprintf_retval=no],
+ [x_cv_func_vsnprintf_retval=no])])
+@@ -110,7 +110,7 @@ int doit(char *str, size_t size, const char *format, ...){
+ return r;
+ }
+ ]],
+-[int r=doit(NULL, 0, "%d", 100); exit((r==3 || r==-1)?0:1);])],
++[int r=doit(NULL, 0, "%d", 100); return (r==3 || r==-1)?0:1;])],
+ [x_cv_func_vsnprintf_null_ok=yes],
+ [x_cv_func_vsnprintf_null_ok=no],
+ [x_cv_func_vsnprintf_null_ok=no])])
+