Use strnlen(3) and strcasestr(3) from FreeBSD's libc instead of the bundled
versions. Patch has been applied upstream in master branch:
https://github.com/LibRaw/LibRaw/commit/b1a2984
--- internal/dcraw_common.cpp.orig 2017-09-22 06:35:16 UTC
+++ internal/dcraw_common.cpp
@@ -51,6 +51,8 @@ int CLASS fcol (int row, int col)
if (filters == 9) return xtrans[(row+6) % 6][(col+6) % 6];
return FC(row,col);
}
+
+#if !defined(__FreeBSD__)
static size_t local_strnlen(const char *s, size_t n)
{
const char *p = (const char *)memchr(s, 0, n);
@@ -58,6 +60,7 @@ static size_t local_strnlen(const char *
}
/* add OS X version check here ?? */
#define strnlen(a,b) local_strnlen(a,b)
+#endif
#ifdef LIBRAW_LIBRARY_BUILD
static int stread(char *buf, size_t len, LibRaw_abstract_datastream *fp)
@@ -69,7 +72,7 @@ static int stread(char *buf, size_t len,
#define stmread(buf,maxlen,fp) stread(buf,MIN(maxlen,sizeof(buf)),fp)
#endif
-#ifndef __GLIBC__
+#if !defined(__GLIBC__) && !defined(__FreeBSD__)
char *my_memmem (char *haystack, size_t haystacklen,
char *needle, size_t needlelen)
{