From 24ec36f097588b4551c87c58de4fec5f1c7135e9 Mon Sep 17 00:00:00 2001 From: Anatoly Galiulin Date: Tue, 7 Mar 2017 15:56:16 +0700 Subject: [PATCH] Fix iconv import on freebsd and netbsd (#5490) --- lib/pure/encodings.nim | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/pure/encodings.nim b/lib/pure/encodings.nim index f89786c1c8..5840d443db 100644 --- a/lib/pure/encodings.nim +++ b/lib/pure/encodings.nim @@ -277,16 +277,21 @@ else: var errno {.importc, header: "".}: cint + when defined(freebsd) or defined(netbsd): + {.pragma: importIconv, cdecl, header: "".} + else: + {.pragma: importIconv, cdecl, dynlib: iconvDll.} + proc iconvOpen(tocode, fromcode: cstring): EncodingConverter {. - importc: "iconv_open", cdecl, dynlib: iconvDll.} + importc: "iconv_open", importIconv.} proc iconvClose(c: EncodingConverter) {. - importc: "iconv_close", cdecl, dynlib: iconvDll.} + importc: "iconv_close", importIconv.} proc iconv(c: EncodingConverter, inbuf: var cstring, inbytesLeft: var int, outbuf: var cstring, outbytesLeft: var int): int {. - importc: "iconv", cdecl, dynlib: iconvDll.} + importc: "iconv", importIconv.} proc iconv(c: EncodingConverter, inbuf: pointer, inbytesLeft: pointer, outbuf: var cstring, outbytesLeft: var int): int {. - importc: "iconv", cdecl, dynlib: iconvDll.} + importc: "iconv", importIconv.} proc getCurrentEncoding*(): string = ## retrieves the current encoding. On Unix, always "UTF-8" is returned.