git: cd28784c67bf - main - textproc/raptor2: Improve sort_r(3) API detection.
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 30 Sep 2022 22:29:38 UTC
The branch main has been updated by delphij:
URL: https://cgit.FreeBSD.org/ports/commit/?id=cd28784c67bfe64bd95afc8136732dba6750bf27
commit cd28784c67bfe64bd95afc8136732dba6750bf27
Author: Ed Schouten <ed@FreeBSD.org>
AuthorDate: 2022-09-30 16:59:40 +0000
Commit: Xin LI <delphij@FreeBSD.org>
CommitDate: 2022-09-30 22:28:02 +0000
textproc/raptor2: Improve sort_r(3) API detection.
In a future version of FreeBSD, we would adopt POSIX qsort_r(3) API
which is different from traditional FreeBSD qsort_r(3).
PR: ports/231256
Exp-run by: antoine
Approved by: portmgr
---
textproc/raptor2/Makefile | 2 +-
textproc/raptor2/files/patch-src_sort__r.h | 34 ++++++++++++++++++++++++++++++
2 files changed, 35 insertions(+), 1 deletion(-)
diff --git a/textproc/raptor2/Makefile b/textproc/raptor2/Makefile
index 8f5297f37eb0..5b39c66d0c21 100644
--- a/textproc/raptor2/Makefile
+++ b/textproc/raptor2/Makefile
@@ -1,6 +1,6 @@
PORTNAME= raptor2
PORTVERSION= 2.0.15
-PORTREVISION= 22
+PORTREVISION= 23
CATEGORIES= textproc
MASTER_SITES= http://download.librdf.org/source/ \
SF/librdf/${PORTNAME}/${PORTVERSION}
diff --git a/textproc/raptor2/files/patch-src_sort__r.h b/textproc/raptor2/files/patch-src_sort__r.h
new file mode 100644
index 000000000000..70878740f4a6
--- /dev/null
+++ b/textproc/raptor2/files/patch-src_sort__r.h
@@ -0,0 +1,34 @@
+--- src/sort_r.h.orig 2014-10-09 23:00:44 UTC
++++ src/sort_r.h
+@@ -24,10 +24,11 @@ void sort_r(void *base, size_t nel, size_t width,
+ defined OpenBSD3_1 || defined OpenBSD3_9 || defined __OpenBSD__ || \
+ defined __NetBSD__ || \
+ defined __DragonFly__ || \
+- defined AMIGA)
++ defined AMIGA) && !defined(qsort_r)
+ # define _SORT_R_BSD
+ #elif (defined _GNU_SOURCE || defined __gnu_hurd__ || defined __GNU__ || \
+- defined __linux__ || defined __MINGW32__ || defined __GLIBC__)
++ defined __linux__ || defined __MINGW32__ || defined __GLIBC__) || \
++ defined(qsort_r)
+ # define _SORT_R_LINUX
+ #elif (defined _WIN32 || defined _WIN64 || defined __WINDOWS__)
+ # define _SORT_R_WINDOWS
+@@ -64,7 +65,7 @@ void sort_r(void *base, size_t nel, size_t width,
+ #if defined _SORT_R_BSD
+
+ /* BSD requires argument swap */
+- extern void qsort_r(void *base, size_t nel, size_t width, void *thunk,
++ extern void (qsort_r)(void *base, size_t nel, size_t width, void *thunk,
+ int (*compar)(void *_thunk, const void *_a, const void *_b));
+
+ struct sort_r_data
+@@ -82,7 +83,7 @@ void sort_r(void *base, size_t nel, size_t width,
+ #elif 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)));
+