Add libiconv to mingw platform (#1861)
This commit is contained in:
committed by
Nikolay Igotti
parent
73b6935da7
commit
2876acd93e
@@ -2820,7 +2820,7 @@ task jsinterop_math(type: RunStandaloneKonanTest) {
|
||||
}
|
||||
|
||||
task interop_libiconv(type: RunStandaloneKonanTest) {
|
||||
disabled = (isWindows() || (project.testTarget != null))
|
||||
disabled = (project.testTarget != null)
|
||||
source = "interop/libiconv.kt"
|
||||
goldValue = "72 72\n101 101\n108 108\n108 108\n111 111\n33 33\n"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
depends = posix
|
||||
package = platform.iconv
|
||||
headers = iconv.h
|
||||
headerFilter = NOTHING
|
||||
linkerOpts = -Wl,-Bstatic -liconv -Wl,-Bdynamic
|
||||
|
||||
---
|
||||
#undef iconv_t
|
||||
typedef void *iconv_t;
|
||||
|
||||
#undef iconv_open
|
||||
static inline iconv_t iconv_open(const char* tocode, const char* fromcode) {
|
||||
return libiconv_open(tocode, fromcode);
|
||||
}
|
||||
|
||||
#undef iconv
|
||||
static inline size_t iconv(iconv_t cd, char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft) {
|
||||
return libiconv(cd, inbuf, inbytesleft, outbuf, outbytesleft);
|
||||
}
|
||||
|
||||
#undef iconv_close
|
||||
static inline int iconv_close(iconv_t cd) {
|
||||
return libiconv_close(cd);
|
||||
}
|
||||
Reference in New Issue
Block a user