blob: 9e56ab314b2139449fe209c0a5c84cbb4f69df1e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
Index: config.lib
===================================================================
--- config.lib (revision 14474)
+++ config.lib (working copy)
@@ -1225,10 +1225,12 @@
if [ "$with_iconv" != "0" ]; then
CFLAGS="$CFLAGS -DWITH_ICONV"
- LIBS="$LIBS -liconv"
- if [ "$with_iconv" != "2" ]; then
- CFLAGS="$CFLAGS -I$with_iconv/include"
- LIBS="$LIBS -L$with_iconv/lib"
+ if [ "$link_to_iconv" = "yes" ]; then
+ LIBS="$LIBS -liconv"
+ if [ "$with_iconv" != "2" ]; then
+ CFLAGS="$CFLAGS -I$with_iconv/include"
+ LIBS="$LIBS -L$with_iconv/lib"
+ fi
fi
if [ "$have_broken_iconv" != "no" ]; then
@@ -2161,6 +2163,27 @@
log 2 " exit code $ret"
if [ "$ret" = "0" ]; then have_broken_iconv="no"; else have_broken_iconv="yes"; fi
log 1 "checking if iconv has non-const inbuf... $have_broken_iconv"
+
+ cat > tmp.iconv.cpp << EOF
+#include "src/stdafx.h"
+#include <iconv.h>
+int main() {
+ static char buf[1024];
+ iconv_t convd = 0;
+ char *inbuf = "";
+ char *outbuf = buf;
+ size_t outlen = 1023;
+ size_t inlen = 0;
+ return iconv(convd, &inbuf, &inlen, &outbuf, &outlen);
+}
+EOF
+ execute="$cxx_host $CFLAGS tmp.iconv.cpp -o tmp.iconv -DTESTING 2>&1"
+ eval $execute >&/dev/null
+ ret=$?
+ log 2 "executing $execute"
+ log 2 " exit code $ret"
+ if [ "$ret" = "0" ]; then link_to_iconv="no"; else link_to_iconv="yes"; fi
+ log 1 "checking whether to link to iconv... $link_to_iconv"
rm -f tmp.iconv tmp.iconv.cpp
}
|