diff --git a/databases/ejdb/files/patch-src_util_sort__r.h b/databases/ejdb/files/patch-src_util_sort__r.h new file mode 100644 index 000000000000..099d67ade3bb --- /dev/null +++ b/databases/ejdb/files/patch-src_util_sort__r.h @@ -0,0 +1,34 @@ +--- src/util/sort_r.h.orig 2022-02-23 10:00:23 UTC ++++ src/util/sort_r.h +@@ -25,10 +25,11 @@ + #define _SORT_R_INLINE inline + + #if ( defined __APPLE__ || defined __MACH__ || defined __DARWIN__ \ +- || defined __FreeBSD__ || defined __DragonFly__) && defined JB_HAVE_QSORT_R ++ || (defined __FreeBSD__ && !defined(qsort_r)) || defined __DragonFly__) && defined JB_HAVE_QSORT_R + # define _SORT_R_BSD + #elif ( defined _GNU_SOURCE || defined __gnu_hurd__ || defined __GNU__ \ +- || defined __linux__ || defined __MINGW32__ || defined __GLIBC__) && defined JB_HAVE_QSORT_R ++ || defined __linux__ || defined __MINGW32__ || defined __GLIBC__ \ ++ || (defined (__FreeBSD__) && defined(qsort_r))) && defined JB_HAVE_QSORT_R + # define _SORT_R_LINUX + #elif (defined _WIN32 || defined _WIN64 || defined __WINDOWS__) + # define _SORT_R_WINDOWS +@@ -255,7 +256,7 @@ static _SORT_R_INLINE void sort_r( + #if defined _SORT_R_BSD + + /* Ensure qsort_r is defined */ +-extern void qsort_r( ++extern void (qsort_r)( + void *base, size_t nel, size_t width, void *thunk, + int (*compar)(void *_thunk, + const void *_a, const void *_b)); +@@ -283,7 +284,7 @@ typedef int (*__compar_d_fn_t)(const void*, const void + #if defined _SORT_R_LINUX + + typedef int (*__compar_d_fn_t)(const void*, const void*, void*); +-extern void qsort_r( ++extern void (qsort_r)( + void *base, size_t nel, size_t width, + __compar_d_fn_t __compar, void *arg) + __attribute__((nonnull(1, 4)));