svn commit: r339285 - in head: archivers/hs-tar archivers/hs-zip-archive archivers/hs-zlib archivers/hs-zlib-bindings archivers/hs-zlib-conduit archivers/hs-zlib-enum audio/hs-ALUT audio/hs-OpenAL ...

Gabor Pali pgj at FreeBSD.org
Fri Jan 10 16:25:37 UTC 2014


On Fri, Jan 10, 2014 at 9:46 AM, Tijl Coosemans <tijl at freebsd.org> wrote:
> Out of curiosity, how does using __bsd_iconv_open instead of iconv_open
> fix the problem?

It is detailed in the referenced PR [1]:

"I have chatted with kib about the nature of the change, and tried to
teach the GHC libraries how to pick up the iconv_*() symbols. This
works as it should for the dynamically linked files (.so) without any
changes, but it will not work for the plain .o files that GHCi uses as
GHC has its own run-time linker in the RTS. Therefore I had to hack
this around to make sure that the GHC linker will find the right
symbols, too. For what it is worth, Kostik suggested to do

$ ld -r -o foo_with_iconv.o foo.o /usr/lib/libc_nonshared.a

to avoid the problem, but I could not shoehorn this another round of
symbol resolution into GHC's build system. Thus I simply felt it
easier to just add them directly to the C file, as the result is
basically the same."

[1] http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/184806


More information about the svn-ports-all mailing list