Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Sep 2022 22:29:38 GMT
From:      Xin LI <delphij@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: cd28784c67bf - main - textproc/raptor2: Improve sort_r(3) API detection.
Message-ID:  <202209302229.28UMTc0l019520@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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)));
+ 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202209302229.28UMTc0l019520>