ftp/R-cran-curl: fix build on big-endian architectures
BSWAP_32 is undefined on FreeBSD, use bswap32. It also needs sys/endian.h include. Needed because of: /wrkdirs/usr/ports/ftp/R-cran-curl/work/stage/usr/local/lib/R/library/00LOCK-curl/00new/curl/libs/curl.so: Undefined symbol "BSWAP_32" PR: 238704 Approved by: tota (maintainer), tcberner (mentor) Differential Revision: https://reviews.freebsd.org/D20726
This commit is contained in:
parent
e466cf8b0d
commit
a22fcd9dda
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=505010
1 changed files with 20 additions and 0 deletions
20
ftp/R-cran-curl/files/patch-src_curl.c
Normal file
20
ftp/R-cran-curl/files/patch-src_curl.c
Normal file
|
@ -0,0 +1,20 @@
|
|||
--- src/curl.c.orig 2019-06-19 09:02:26 UTC
|
||||
+++ src/curl.c
|
||||
@@ -24,6 +24,8 @@
|
||||
#define BSWAP_32 OSSwapInt32
|
||||
#elif (defined(__OpenBSD__))
|
||||
#define BSWAP_32(x) swap32(x)
|
||||
+#elif (defined(__FreeBSD__))
|
||||
+#include <sys/endian.h>
|
||||
#elif (defined(__GLIBC__))
|
||||
#include <byteswap.h>
|
||||
#define BSWAP_32(x) bswap_32(x)
|
||||
@@ -146,7 +148,7 @@ static size_t rcurl_read(void *target, size_t sz, size
|
||||
static int rcurl_fgetc(Rconnection con) {
|
||||
int x = 0;
|
||||
#ifdef WORDS_BIGENDIAN
|
||||
- return rcurl_read(&x, 1, 1, con) ? BSWAP_32(x) : R_EOF;
|
||||
+ return rcurl_read(&x, 1, 1, con) ? bswap32(x) : R_EOF;
|
||||
#else
|
||||
return rcurl_read(&x, 1, 1, con) ? x : R_EOF;
|
||||
#endif
|
Loading…
Reference in a new issue