databases/pointcloud: unbreak on -CURRENT after GNU qsort_r

PR:		ports/266227
Exp-run by:	antoine
Approved by:	portmgr
This commit is contained in:
Xin LI 2022-09-30 13:42:53 -07:00
parent 764565249f
commit 638b276a41
1 changed files with 24 additions and 0 deletions

View File

@ -0,0 +1,24 @@
--- lib/sort_r/sort_r.h.orig 2022-09-12 07:14:10 UTC
+++ lib/sort_r/sort_r.h
@@ -27,10 +27,10 @@ void sort_r(void *base, size_t nel, size_t width,
#define _SORT_R_INLINE inline
#if (defined __APPLE__ || defined __MACH__ || defined __DARWIN__ || \
- defined __FreeBSD__ || defined __DragonFly__)
+ (defined __FreeBSD__ && !defined(qsort_r)) || defined __DragonFly__)
# define _SORT_R_BSD
#elif (defined _GNU_SOURCE || defined __gnu_hurd__ || defined __GNU__ || \
- defined __linux__ || (defined __MINGW32__ && !defined __MINGW64_VERSION_MAJOR) || defined __GLIBC__)
+ defined __linux__ || (defined __MINGW32__ && !defined __MINGW64_VERSION_MAJOR) || defined __GLIBC__ || (defined (__FreeBSD__) && defined(qsort_r)))
# define _SORT_R_LINUX
#elif (defined _WIN32 || defined _WIN64 || defined __WINDOWS__)
# define _SORT_R_WINDOWS
@@ -170,7 +170,7 @@ static _SORT_R_INLINE void sort_r_simple(void *base, s
#if defined _SORT_R_LINUX
typedef int(* __compar_d_fn_t)(const void *, const void *, void *);
- extern void qsort_r(void *base, size_t nel, size_t width,
+ extern void (qsort_r)(void *base, size_t nel, size_t width,
__compar_d_fn_t __compar, void *arg)
__attribute__((nonnull (1, 4)));