diff options
author | Anatoly Galiulin <galiulin.anatoly@gmail.com> | 2017-03-07 15:56:16 +0700 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2017-03-07 09:56:16 +0100 |
commit | 24ec36f097588b4551c87c58de4fec5f1c7135e9 (patch) | |
tree | e89a2c369b9b7fb446ef0547fd85ac5ab9ccebc1 /lib | |
parent | 3fa428c88beb376784e9683edd83b1cebc857f08 (diff) | |
download | Nim-24ec36f097588b4551c87c58de4fec5f1c7135e9.tar.gz |
Fix iconv import on freebsd and netbsd (#5490)
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pure/encodings.nim | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/pure/encodings.nim b/lib/pure/encodings.nim index f89786c1c..5840d443d 100644 --- a/lib/pure/encodings.nim +++ b/lib/pure/encodings.nim @@ -277,16 +277,21 @@ else: var errno {.importc, header: "<errno.h>".}: cint + when defined(freebsd) or defined(netbsd): + {.pragma: importIconv, cdecl, header: "<iconv.h>".} + 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. |