* Update patch for static freetype2 in qt5 for brotli library renaming * Update patches for Qt 5 SQL drivers to include crypt32 * This library is required by OpenSSL's crypto library. Not sure why there were no linker errors before.
79 lines
3.1 KiB
Diff
79 lines
3.1 KiB
Diff
From a567a7a191d2616a372529383a10bad8e9306f6a Mon Sep 17 00:00:00 2001
|
|
From: Martchus <martchus@gmx.net>
|
|
Date: Wed, 25 Jan 2017 21:08:20 +0100
|
|
Subject: [PATCH 26/32] Enable and fix use of iconv
|
|
|
|
Change-Id: I5f0ab27afca0800dec11c7af74d196190820ae5c
|
|
---
|
|
src/corelib/codecs/qiconvcodec.cpp | 7 +++----
|
|
src/corelib/configure.json | 6 +++---
|
|
2 files changed, 6 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/src/corelib/codecs/qiconvcodec.cpp b/src/corelib/codecs/qiconvcodec.cpp
|
|
index 9c39727946..cc14036b25 100644
|
|
--- a/src/corelib/codecs/qiconvcodec.cpp
|
|
+++ b/src/corelib/codecs/qiconvcodec.cpp
|
|
@@ -47,7 +47,6 @@
|
|
#include <errno.h>
|
|
#include <locale.h>
|
|
#include <stdio.h>
|
|
-#include <dlfcn.h>
|
|
|
|
// unistd.h is needed for the _XOPEN_UNIX macro
|
|
#include <unistd.h>
|
|
@@ -180,7 +179,7 @@ QString QIconvCodec::convertToUnicode(const char* chars, int len, ConverterState
|
|
IconvState *state = *pstate;
|
|
size_t inBytesLeft = len;
|
|
// best case assumption, each byte is converted into one UTF-16 character, plus 2 bytes for the BOM
|
|
-#if !QT_CONFIG(posix_libiconv)
|
|
+#if !QT_CONFIG(posix_libiconv) && !defined(Q_OS_WIN)
|
|
// GNU doesn't disagree with POSIX :/
|
|
const char *inBytes = chars;
|
|
#else
|
|
@@ -279,7 +278,7 @@ static bool setByteOrder(iconv_t cd)
|
|
size_t outBytesLeft = sizeof buf;
|
|
size_t inBytesLeft = sizeof bom;
|
|
|
|
-#if !QT_CONFIG(posix_libiconv)
|
|
+#if !QT_CONFIG(posix_libiconv) && !defined(Q_OS_WIN)
|
|
const char **inBytesPtr = const_cast<const char **>(&inBytes);
|
|
#else
|
|
char **inBytesPtr = &inBytes;
|
|
@@ -301,7 +300,7 @@ QByteArray QIconvCodec::convertFromUnicode(const QChar *uc, int len, ConverterSt
|
|
char *outBytes;
|
|
size_t inBytesLeft;
|
|
|
|
-#if !QT_CONFIG(posix_libiconv)
|
|
+#if !QT_CONFIG(posix_libiconv) && !defined(Q_OS_WIN)
|
|
const char **inBytesPtr = const_cast<const char **>(&inBytes);
|
|
#else
|
|
char **inBytesPtr = &inBytes;
|
|
diff --git a/src/corelib/configure.json b/src/corelib/configure.json
|
|
index a9025a2dd2..ffb6f50fbe 100644
|
|
--- a/src/corelib/configure.json
|
|
+++ b/src/corelib/configure.json
|
|
@@ -72,7 +72,7 @@
|
|
"test": {
|
|
"main": [
|
|
"iconv_t x = iconv_open(\"\", \"\");",
|
|
- "const char *inp;",
|
|
+ "char *inp;",
|
|
"char *outp;",
|
|
"size_t inbytes, outbytes;",
|
|
"iconv(x, &inp, &inbytes, &outp, &outbytes);",
|
|
@@ -673,9 +673,9 @@
|
|
},
|
|
"gnu-libiconv": {
|
|
"label": "GNU iconv",
|
|
- "enable": "input.iconv == 'gnu'",
|
|
+ "enable": "'enabling via -gnu-iconv fails' == 'enabling via -gnu-iconv fails'",
|
|
"disable": "input.iconv == 'posix' || input.iconv == 'sun' || input.iconv == 'no'",
|
|
- "condition": "!config.win32 && !config.qnx && !config.android && !config.darwin && !features.posix-libiconv && !features.sun-libiconv && libs.gnu_iconv",
|
|
+ "condition": "!config.qnx && !config.android && !config.darwin && !features.posix-libiconv && !features.sun-libiconv && libs.gnu_iconv",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"icu": {
|
|
--
|
|
2.43.0
|
|
|