diff options
author | 2023-02-10 00:24:43 +0000 | |
---|---|---|
committer | 2023-02-10 00:29:02 +0000 | |
commit | d8ba54d25287641b64419afb1a51f2182ae7490f (patch) | |
tree | bdc5fbb1e9b585f48cc995cd2031d75ada9f7b34 /net-nds/openldap/files | |
parent | net-nds/openldap: tweak upgrade safety checks & default database backend for 2.6 (diff) | |
download | gentoo-d8ba54d25287641b64419afb1a51f2182ae7490f.tar.gz gentoo-d8ba54d25287641b64419afb1a51f2182ae7490f.tar.bz2 gentoo-d8ba54d25287641b64419afb1a51f2182ae7490f.zip |
net-nds/openldap: add 2.6.4
Bug: https://bugs.gentoo.org/867931
Closes: https://bugs.gentoo.org/848894
Closes: https://bugs.gentoo.org/892009
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-nds/openldap/files')
-rw-r--r-- | net-nds/openldap/files/openldap-2.6.4-clang16.patch | 234 |
1 files changed, 234 insertions, 0 deletions
diff --git a/net-nds/openldap/files/openldap-2.6.4-clang16.patch b/net-nds/openldap/files/openldap-2.6.4-clang16.patch new file mode 100644 index 000000000000..bcbdf0b5819e --- /dev/null +++ b/net-nds/openldap/files/openldap-2.6.4-clang16.patch @@ -0,0 +1,234 @@ +https://git.openldap.org/openldap/openldap/-/merge_requests/605 + +From 83e2db9bf9fc2530a0ea6ca538a7732f6ad9de0e Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Thu, 9 Feb 2023 23:17:53 +0000 +Subject: [PATCH 1/3] build: fix compatibility with stricter C99 compilers + +Fix the following warnings: +- -Wimplicit-int (fatal with Clang 16) +- -Wimplicit-function-declaration (fatal with Clang 16) +- -Wincompatible-function-pointer-types (fatal with Clang 16) +- -Wint-conversion (fatal with Clang 15) +- Old style prototypes (K&R, removed from C23) + +These warnings-now-error led to misconfigurations and failure to build +OpenLDAP, as the tests used during configure caused the wrong results +to be emitted. + +For more information, see LWN.net [0] or LLVM's Discourse [1], the Gentoo wiki [2], +or the (new) c-std-porting mailing list [3]. + +[0] https://lwn.net/Articles/913505/ +[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213 +[2] https://wiki.gentoo.org/wiki/Modern_C_porting +[3] hosted at lists.linux.dev. + +Bug: https://bugs.gentoo.org/871288 +Signed-off-by: Sam James <sam@gentoo.org> +--- a/build/openldap.m4 ++++ b/build/openldap.m4 +@@ -154,6 +154,7 @@ fi + if test $ol_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <ctype.h> ++#include <stdlib.h> + #ifndef HAVE_EBCDIC + # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') + # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +@@ -360,9 +361,7 @@ AC_DEFUN([OL_PTHREAD_TEST_FUNCTION],[[ + AC_DEFUN([OL_PTHREAD_TEST_PROGRAM], + [AC_LANG_SOURCE([OL_PTHREAD_TEST_INCLUDES + +-int main(argc, argv) +- int argc; +- char **argv; ++int main(int argc, char **argv) + { + OL_PTHREAD_TEST_FUNCTION + } +@@ -484,7 +483,7 @@ AC_CACHE_CHECK([for compatible POSIX regex],ol_cv_c_posix_regex,[ + #include <sys/types.h> + #include <regex.h> + static char *pattern, *string; +-main() ++int main(void) + { + int rc; + regex_t re; +@@ -511,7 +510,8 @@ AC_DEFUN([OL_C_UPPER_LOWER], + [AC_CACHE_CHECK([if toupper() requires islower()],ol_cv_c_upper_lower,[ + AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include <ctype.h> +-main() ++#include <stdlib.h> ++int main(void) + { + if ('C' == toupper('C')) + exit(0); +@@ -569,7 +569,7 @@ AC_DEFUN([OL_NONPOSIX_STRERROR_R], + ]])],[ol_cv_nonposix_strerror_r=yes],[ol_cv_nonposix_strerror_r=no]) + else + AC_RUN_IFELSE([AC_LANG_SOURCE([[ +- main() { ++ int main(void) { + char buf[100]; + buf[0] = 0; + strerror_r( 1, buf, sizeof buf ); +--- a/configure.ac ++++ b/configure.ac +@@ -1017,7 +1017,11 @@ dnl ---------------------------------------------------------------- + AC_CHECK_HEADERS( sys/epoll.h ) + if test "${ac_cv_header_sys_epoll_h}" = yes; then + AC_MSG_CHECKING(for epoll system call) +- AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(int argc, char **argv) ++ AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdlib.h> ++#ifdef HAVE_SYS_POLL_H ++#include <sys/epoll.h> ++#endif ++int main(int argc, char **argv) + { + int epfd = epoll_create(256); + exit (epfd == -1 ? 1 : 0); +@@ -1479,10 +1483,8 @@ pthread_rwlock_t rwlock; + dnl save the flags + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ + #include <pthread.h> +-#ifndef NULL +-#define NULL (void*)0 +-#endif +-]], [[pthread_detach(NULL);]])],[ol_cv_func_pthread_detach=yes],[ol_cv_func_pthread_detach=no]) ++pthread_t thread; ++]], [[pthread_detach(thread);]])],[ol_cv_func_pthread_detach=yes],[ol_cv_func_pthread_detach=no]) + ]) + + if test $ol_cv_func_pthread_detach = no ; then +@@ -1537,6 +1539,9 @@ dnl esac + AC_CACHE_CHECK([if select yields when using pthreads], + ol_cv_pthread_select_yields,[ + AC_RUN_IFELSE([AC_LANG_SOURCE([[ ++#define _XOPEN_SOURCE 500 /* For pthread_setconcurrency() on glibc */ ++#include <stdlib.h> ++#include <stdio.h> + #include <sys/types.h> + #include <sys/time.h> + #include <unistd.h> +@@ -1547,8 +1552,7 @@ dnl esac + + static int fildes[2]; + +-static void *task(p) +- void *p; ++static void *task(void *p) + { + int i; + struct timeval tv; +@@ -1572,9 +1576,7 @@ static void *task(p) + exit(0); /* if we exit here, the select blocked the whole process */ + } + +-int main(argc, argv) +- int argc; +- char **argv; ++int main(int argc, char **argv) + { + pthread_t t; + +-- +GitLab + + +From 853d613f39ae9e8d7dad4492076959c2d80e38c1 Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Thu, 9 Feb 2023 23:20:32 +0000 +Subject: [PATCH 2/3] contrib: fix old-style K&R declarations + +Removed in C23. + +For more information, see LWN.net [0] or LLVM's Discourse [1], the Gentoo wiki [2], +or the (new) c-std-porting mailing list [3]. + +[0] https://lwn.net/Articles/913505/ +[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213 +[2] https://wiki.gentoo.org/wiki/Modern_C_porting +[3] hosted at lists.linux.dev. + +Signed-off-by: Sam James <sam@gentoo.org> +--- a/contrib/ldaptcl/tclAppInit.c ++++ b/contrib/ldaptcl/tclAppInit.c +@@ -45,9 +45,7 @@ EXTERN int Tcltest_Init _ANSI_ARGS_((Tcl_Interp *interp)); + */ + + int +-main(argc, argv) +- int argc; /* Number of command-line arguments. */ +- char **argv; /* Values of command-line arguments. */ ++main(int argc, char **argv) + { + #ifdef USE_TCLX + TclX_Main(argc, argv, Tcl_AppInit); +--- a/contrib/ldaptcl/tkAppInit.c ++++ b/contrib/ldaptcl/tkAppInit.c +@@ -37,16 +37,9 @@ int (*tclDummyMathPtr)() = matherr; + * This is the main program for the application. + *----------------------------------------------------------------------------- + */ +-#ifdef __cplusplus + int + main (int argc, + char **argv) +-#else +-int +-main (argc, argv) +- int argc; +- char **argv; +-#endif + { + #ifdef USE_TCLX + TkX_Main(argc, argv, Tcl_AppInit); +@@ -68,14 +61,8 @@ main (argc, argv) + * interp->result if an error occurs. + *----------------------------------------------------------------------------- + */ +-#ifdef __cplusplus + int + Tcl_AppInit (Tcl_Interp *interp) +-#else +-int +-Tcl_AppInit (interp) +- Tcl_Interp *interp; +-#endif + { + if (Tcl_Init (interp) == TCL_ERROR) { + return TCL_ERROR; +-- +GitLab + + +From b4b3d026461b16f4f462e70225a5a0493647f0c8 Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Thu, 9 Feb 2023 23:20:51 +0000 +Subject: [PATCH 3/3] servers: fix -Wstrict-prototypes + +For more information, see LWN.net [0] or LLVM's Discourse [1], the Gentoo wiki [2], +or the (new) c-std-porting mailing list [3]. + +[0] https://lwn.net/Articles/913505/ +[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213 +[2] https://wiki.gentoo.org/wiki/Modern_C_porting +[3] hosted at lists.linux.dev. + +Signed-off-by: Sam James <sam@gentoo.org> +--- a/servers/slapd/syslog.c ++++ b/servers/slapd/syslog.c +@@ -209,7 +209,7 @@ openlog(const char *ident, int logstat, int logfac) + } + + void +-closelog() ++closelog(void) + { + (void)close(LogFile); + LogFile = -1; +-- +GitLab |