aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCheney Wang <v-xincwa@microsoft.com>2018-06-13 02:22:24 -0700
committerCheney Wang <v-xincwa@microsoft.com>2018-06-13 02:22:24 -0700
commit4e98a35a3c01d470133e3c1c120136790c04891a (patch)
tree4fdc36812dc1d68a7f7a8655266550a5c038a899
parent2a0bf9c488d5291e82a37d19d4b0f81e79678f0d (diff)
downloadvcpkg-4e98a35a3c01d470133e3c1c120136790c04891a.tar.gz
vcpkg-4e98a35a3c01d470133e3c1c120136790c04891a.zip
Fix error C3615 for qt5-base
-rw-r--r--ports/qt5-base/CONTROL2
-rw-r--r--ports/qt5-base/fix-C3615.patch56
-rw-r--r--ports/qt5-base/portfile.cmake1
3 files changed, 58 insertions, 1 deletions
diff --git a/ports/qt5-base/CONTROL b/ports/qt5-base/CONTROL
index e0b9e0e15..59ee46ef8 100644
--- a/ports/qt5-base/CONTROL
+++ b/ports/qt5-base/CONTROL
@@ -1,4 +1,4 @@
Source: qt5-base
-Version: 5.9.2-6
+Version: 5.9.2-7
Description: Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components.
Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion, openssl
diff --git a/ports/qt5-base/fix-C3615.patch b/ports/qt5-base/fix-C3615.patch
new file mode 100644
index 000000000..c3976ced7
--- /dev/null
+++ b/ports/qt5-base/fix-C3615.patch
@@ -0,0 +1,56 @@
+diff --git a/src/corelib/tools/qalgorithms.h b/src/corelib/tools/qalgorithms.h
+index c0f7709f..3784ceff 100644
+--- a/src/corelib/tools/qalgorithms.h
++++ b/src/corelib/tools/qalgorithms.h
+@@ -590,6 +590,7 @@ Q_DECL_CONSTEXPR Q_ALWAYS_INLINE uint qt_builtin_popcountll(quint64 v) Q_DECL_NO
+ }
+ #elif defined(Q_CC_MSVC) && !defined(Q_OS_WINCE) && !defined(Q_PROCESSOR_ARM)
+ #define QT_POPCOUNT_CONSTEXPR
++#define QT_POPCOUNT_RELAXED_CONSTEXPR
+ #define QT_HAS_BUILTIN_CTZ
+ Q_ALWAYS_INLINE unsigned long qt_builtin_ctz(quint32 val)
+ {
+@@ -676,6 +677,7 @@ Q_ALWAYS_INLINE uint qt_builtin_popcountll(quint64 v) Q_DECL_NOTHROW
+
+ #ifndef QT_POPCOUNT_CONSTEXPR
+ #define QT_POPCOUNT_CONSTEXPR Q_DECL_CONSTEXPR
++#define QT_POPCOUNT_RELAXED_CONSTEXPR Q_DECL_RELAXED_CONSTEXPR
+ #endif
+
+ } //namespace QAlgorithmsPrivate
+@@ -819,7 +821,7 @@ Q_DECL_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint32 v) Q_DECL_NOT
+ #endif
+ }
+
+-Q_DECL_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint8 v) Q_DECL_NOTHROW
++QT_POPCOUNT_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint8 v) Q_DECL_NOTHROW
+ {
+ #if defined(QT_HAS_BUILTIN_CLZ)
+ return v ? QAlgorithmsPrivate::qt_builtin_clz(v)-24U : 8U;
+@@ -831,7 +833,7 @@ Q_DECL_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint8 v) Q_DECL_NOTH
+ #endif
+ }
+
+-Q_DECL_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint16 v) Q_DECL_NOTHROW
++QT_POPCOUNT_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint16 v) Q_DECL_NOTHROW
+ {
+ #if defined(QT_HAS_BUILTIN_CLZS)
+ return v ? QAlgorithmsPrivate::qt_builtin_clzs(v) : 16U;
+@@ -844,7 +846,7 @@ Q_DECL_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint16 v) Q_DECL_NOT
+ #endif
+ }
+
+-Q_DECL_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint64 v) Q_DECL_NOTHROW
++QT_POPCOUNT_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint64 v) Q_DECL_NOTHROW
+ {
+ #if defined(QT_HAS_BUILTIN_CLZLL)
+ return v ? QAlgorithmsPrivate::qt_builtin_clzll(v) : 64U;
+@@ -859,7 +861,7 @@ Q_DECL_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(quint64 v) Q_DECL_NOT
+ #endif
+ }
+
+-Q_DECL_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(unsigned long v) Q_DECL_NOTHROW
++QT_POPCOUNT_RELAXED_CONSTEXPR inline uint qCountLeadingZeroBits(unsigned long v) Q_DECL_NOTHROW
+ {
+ return qCountLeadingZeroBits(QIntegerForSizeof<long>::Unsigned(v));
+ }
diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake
index 569540213..2158a2e06 100644
--- a/ports/qt5-base/portfile.cmake
+++ b/ports/qt5-base/portfile.cmake
@@ -45,6 +45,7 @@ vcpkg_apply_patches(
"${CMAKE_CURRENT_LIST_DIR}/fix-system-pcre2.patch"
"${CMAKE_CURRENT_LIST_DIR}/fix-system-freetype.patch"
"${CMAKE_CURRENT_LIST_DIR}/fix-system-pcre2-linux.patch"
+ "${CMAKE_CURRENT_LIST_DIR}/fix-C3615.patch"
)
# This fixes issues on machines with default codepages that are not ASCII compatible, such as some CJK encodings