converters/iconv versioning

Scott Furry scott.wl.furry at gmail.com
Tue Mar 10 22:52:22 UTC 2015


I am running into in a situation with other C code where a call to iconv 
and passing in a non-const source buffer would result in a build 
warning. Others who use the same code on other platforms do not report 
this warning.

In tracking down the issue, I have discovered that there may be a 
difference in the iconv.h header file used on FreeBSD versus Mac/Linux 
et al.

http://www.opensource.apple.com/source/libiconv/libiconv-30/install/iconv.h
line 48 shows that call to iconv
-----
size_t iconv (iconv_t /*cd*/,
     char ** __restrict /*inbuf*/,  size_t * __restrict /*inbytesleft*/,
     char ** __restrict /*outbuf*/, size_t * __restrict /*outbytesleft*/);
----

/usr/local/include/iconv.h, line 83, shows something rather different.
Even the commentary around the code is different.
-----
extern size_t iconv (iconv_t cd, const char* * inbuf, size_t 
*inbytesleft, char* * outbuf, size_t *outbytesleft);
-----


My question is this, are we using a different or FreeBSD-specific 
version of iconv?

S


More information about the freebsd-ports mailing list