diff options
| author | Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> | 2021-09-30 22:03:56 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-09-30 13:03:56 -0700 |
| commit | 35bfef708400cf882efb3e4df93045e0a06c9c23 (patch) | |
| tree | f507c664794ece69707f33aef7fc627d96acbed7 /ports/qtbase | |
| parent | 8ad33ead9075cd8d6d357e0b870ba8d501efe35c (diff) | |
| download | vcpkg-35bfef708400cf882efb3e4df93045e0a06c9c23.tar.gz vcpkg-35bfef708400cf882efb3e4df93045e0a06c9c23.zip | |
[Qt 6.2] Update Qt6 to 6.2 (#18687)
* [qt6] Update to 6.1.1
* version stuff
* fix empty dir
* update version
* fix casing in qtbase
* [libpq] add secure32.lib on windows
* add clang-cl fix
* version stuff
* fix flag removal by adding a space
* version stuff
* make qt6->Qt6 usage consistent since Qt6 refers to itself as Qt6 with uppercase Q
* fix libpq wrapper opensll linkage on linux
* use policy to fix dependent ports
* version stuff
* use upstream patch
* version stuff
* fix source_location with clang-cl
* version stuff
* add all new modules
* add all modules to the qt port
* push all the ports
* fix patch
* update ports
* split qt_install_submodule into smaller functions
* add qlitehtml submodule to qttools
* update a few ports before moving to beta
* update vcpkg.json and refs and fix issue with update
* fix dependencies
* remove patch
* update to 6.2
* add nodejs to vcpkg_find_acquire_program for qtwebengine
* format manifest.
* fix webengine and see if it builds.
* apply format diff
* add patch
* fix arm builds
* fix linux gcc 7.5 build error
* fix patch
* bump version in qtbase otherwise CI seems to resuse the wrong version
* fix webengine release build
* try fixing gcc 7.5 build
* revert gcc 7.5 fixes since they broke osx
* revert gcc 7.5 fixes since they broke osx
* fix qtimageformats.
* actually enable new qt6 builds.
* fix search path for nodejs.
* fix the webengine patch again.
* fix wrong binary name
* revisit all dependencies
* revisit webengine features and build settings
* more feature stuff
* remove qt6betablock and more features review for qt 6.2
* add missing qt prefix.
* format manifest
* fix ci issues
* format manifest.
* add node on osx.
* install node on linux
* fix a typo and a disable another find_package
* fix mingw build issues and switch to not using tag
* use CMAKE_HOST_WIN32 instead
* update ref
* fix core configure error
* fix mingw case.
* fix script installation
* remove qmake helper scrpt
* delete debug folder if empty
* add vcpkg-tool-nodejs
* revert changes in the pipeline scripts
* adjust qtwebengine to the changes
* format manifest and revert doc changes
* fix message and logic
* fix hashes and make host only port
* fix hash again?
* qttools add linguist feature for crossbuilds
* fix dependency
* add thread and future to concurrent feature
* add assistant as a required host feature
(somebody should tell Qt not to do that)
* fix dependency.
* [skip ci] not a host dep?!?
* [skip ci] debuging
* [skip ci] more debug messages
* [skip ci] try always redownloading
* [skip ci] fix hash und skip hash for redownloading once
* [skip ci] comment out skip sha and redownload
* add vcpkg_fixup_pkgconfig to libvpx
* qtwebengine requires qml and quick
* fix manifest format
* qtwebengine does not support static builds!
* remove unnecessary parts of the patch
* update to beta2
* add some " and a message in update mode
* [skip ci] remove old and reorder patches
* [skip ci] add qtpaths6
* [skip actions] fix webengine patch
* [skip actions] fix a few submodule refs
* [skip actions] fix qtwebengine
* [skip actions] remove qml feature from webengine in qt metaport
* qtdeclarative raise minimum cmake version
* use the tree id instead?
* [skip actions] raise minimum cmake version in qtquick3d
* fix fetching of unadvertised commit ids
* revert changes to vcpkg_from_git
* revert doc changes
* [skip actions] use the new FETCH_REF
* [skip actiosn] remove raise of minimum version to retry with new cmake version
* [skip actions] update to beta3
* revert removal of patch
* update to beta4
remove qtquickcontrols2 deps
* fix missing \
* [skip actions] fix gstreamer feature on windows
* [skip actions]
remove outdated patches
format qtmultimedia
* [skip actions] update to rc1
* [skip actions] remove patch for now
* update refs
* [skip actions] comment patch to try another patch in qtmultimedia
* x86 is not supported by qtwebengine (at least one of its internal third party deps fails due to x64 intrinsics.)
* Finalize for 6.2 release.
Open issues: QtWebengine and cross builds.
* version stuff
* fix semver in qtquickcontrols.
* version stuff
* revise qtwebengine supports expression
* update version
Diffstat (limited to 'ports/qtbase')
| -rw-r--r-- | ports/qtbase/20b3eb0.diff | 130 | ||||
| -rw-r--r-- | ports/qtbase/buildcmake.patch | 41 | ||||
| -rw-r--r-- | ports/qtbase/clang-cl_source_location.patch | 2 | ||||
| -rw-r--r-- | ports/qtbase/cmake/qt_install_submodule.cmake | 3 | ||||
| -rw-r--r-- | ports/qtbase/cmake/qt_port_details-latest.cmake | 100 | ||||
| -rw-r--r-- | ports/qtbase/cmake/qt_port_details.cmake | 93 | ||||
| -rw-r--r-- | ports/qtbase/fix_cmake_build.patch | 15 | ||||
| -rw-r--r-- | ports/qtbase/fix_egl.patch | 12 | ||||
| -rw-r--r-- | ports/qtbase/fix_find_dep.patch | 13 | ||||
| -rw-r--r-- | ports/qtbase/jpeg.patch | 22 | ||||
| -rw-r--r-- | ports/qtbase/portfile.cmake | 35 | ||||
| -rw-r--r-- | ports/qtbase/vcpkg.json | 2 |
12 files changed, 180 insertions, 288 deletions
diff --git a/ports/qtbase/20b3eb0.diff b/ports/qtbase/20b3eb0.diff deleted file mode 100644 index 978b30ffa..000000000 --- a/ports/qtbase/20b3eb0.diff +++ /dev/null @@ -1,130 +0,0 @@ -From 20b3eb0fd8b5f82cf432f2c06e7c5d3f533df0a5 Mon Sep 17 00:00:00 2001 -From: Cristian Adam <cristian.adam@qt.io> -Date: Thu, 03 Jun 2021 12:42:07 +0200 -Subject: [PATCH] CMake: Add support for building with clang-cl - -qmake had support for building with clang-cl as the win32-clang-msvc mkspec. - -Task-number: QTBUG-89642 -Task-number: QTBUG-88081 -Change-Id: I0709c289f90fedb121620d1e67ef841602219816 -Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> ---- - -diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake -index bb8b146..792276e 100644 ---- a/cmake/QtBuild.cmake -+++ b/cmake/QtBuild.cmake -@@ -285,7 +285,9 @@ - list(APPEND QT_DEFAULT_PLATFORM_DEFINITIONS WIN64 _WIN64) - endif() - if(MSVC) -- if(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64") -+ if (CLANG) -+ set(QT_DEFAULT_MKSPEC win32-clang-msvc) -+ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64") - set(QT_DEFAULT_MKSPEC win32-arm64-msvc) - else() - set(QT_DEFAULT_MKSPEC win32-msvc) -diff --git a/cmake/QtFlagHandlingHelpers.cmake b/cmake/QtFlagHandlingHelpers.cmake -index 0c57d9e..0eeccce 100644 ---- a/cmake/QtFlagHandlingHelpers.cmake -+++ b/cmake/QtFlagHandlingHelpers.cmake -@@ -235,7 +235,7 @@ - function(qt_set_msvc_cplusplus_options target visibility) - # For MSVC we need to explicitly pass -Zc:__cplusplus to get correct __cplusplus. - # Check qt_config_compile_test for more info. -- if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" AND MSVC_VERSION GREATER_EQUAL 1913) -+ if(MSVC AND MSVC_VERSION GREATER_EQUAL 1913) - target_compile_options("${target}" ${visibility} "-Zc:__cplusplus" "-permissive-") - endif() - endfunction() -diff --git a/src/corelib/CMakeLists.txt b/src/corelib/CMakeLists.txt -index 2c991f7..9f0c95e 100644 ---- a/src/corelib/CMakeLists.txt -+++ b/src/corelib/CMakeLists.txt -@@ -263,4 +263,24 @@ - # special case end - ) - -+if (MSVC AND CLANG) -+ foreach(subarch sse4_1 rdrnd rdseed) -+ if (TEST_subarch_${subarch}) -+ qt_internal_add_simd_part(Core SIMD ${subarch} -+ SOURCES -+ global/qsimd.cpp -+ ) -+ endif() -+ endforeach() -+ -+ foreach(subarch sse4_1 aesni) -+ if (TEST_subarch_${subarch}) -+ qt_internal_add_simd_part(Core SIMD ${subarch} -+ SOURCES -+ tools/qhash.cpp -+ ) -+ endif() -+ endforeach() -+endif() -+ - # special case begin -diff --git a/src/corelib/global/qt_pch.h b/src/corelib/global/qt_pch.h -index 5869751..6108b07 100644 ---- a/src/corelib/global/qt_pch.h -+++ b/src/corelib/global/qt_pch.h -@@ -62,17 +62,22 @@ - # define _POSIX_ - # include <limits.h> - # undef _POSIX_ --#endif --#include <qcoreapplication.h> --#include <qcoreevent.h> --#include <qiodevice.h> --#include <qlist.h> --#include <qvariant.h> /* All moc genereated code has this include */ --#include <qobject.h> --#include <qregularexpression.h> --#include <qscopedpointer.h> --#include <qshareddata.h> --#include <qstring.h> --#include <qstringlist.h> --#include <qtimer.h> -+# if defined(Q_CC_CLANG) && defined(Q_CC_MSVC) -+// See https://bugs.llvm.org/show_bug.cgi?id=41226 -+# include <wchar.h> -+__declspec(selectany) auto *__wmemchr_symbol_loader_value = wmemchr(L"", L'0', 0); -+# endif -+# endif -+# include <qcoreapplication.h> -+# include <qcoreevent.h> -+# include <qiodevice.h> -+# include <qlist.h> -+# include <qvariant.h> /* All moc genereated code has this include */ -+# include <qobject.h> -+# include <qregularexpression.h> -+# include <qscopedpointer.h> -+# include <qshareddata.h> -+# include <qstring.h> -+# include <qstringlist.h> -+# include <qtimer.h> - #endif -diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt -index 5fe4d59..04f58dd 100644 ---- a/src/gui/CMakeLists.txt -+++ b/src/gui/CMakeLists.txt -@@ -577,6 +577,15 @@ - ) - endif() - -+ if (MSVC AND CLANG AND TEST_subarch_sse4_1) -+ qt_internal_add_simd_part(Gui SIMD sse4_1 -+ SOURCES -+ painting/qdrawhelper.cpp -+ painting/qdrawhelper_sse2.cpp -+ painting/qdrawhelper_ssse3.cpp -+ ) -+ endif() -+ - qt_internal_add_simd_part(Gui SIMD ssse3 - SOURCES - image/qimage_ssse3.cpp diff --git a/ports/qtbase/buildcmake.patch b/ports/qtbase/buildcmake.patch deleted file mode 100644 index 07c3e3704..000000000 --- a/ports/qtbase/buildcmake.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake -index d08126731..efd1ada92 100644 ---- a/cmake/QtBuild.cmake -+++ b/cmake/QtBuild.cmake -@@ -387,7 +387,7 @@ set(QT_KNOWN_MODULES_WITH_TOOLS "" CACHE INTERNAL "Known Qt modules with tools" -
- # Reset syncqt cache variable, to make sure it gets recomputed on reconfiguration, otherwise
- # it might not get installed.
--unset(QT_SYNCQT CACHE)
-+# unset(QT_SYNCQT CACHE)
-
- # For adjusting variables when running tests, we need to know what
- # the correct variable is for separating entries in PATH-alike
-diff --git a/cmake/QtBuildInternalsExtra.cmake.in b/cmake/QtBuildInternalsExtra.cmake.in -index 9eb913f4d..286f3287e 100644 ---- a/cmake/QtBuildInternalsExtra.cmake.in -+++ b/cmake/QtBuildInternalsExtra.cmake.in -@@ -35,8 +35,8 @@ endif() - set(QT_WILL_INSTALL @QT_WILL_INSTALL@ CACHE BOOL
- "Boolean indicating if doing a Qt prefix build (vs non-prefix build)." FORCE)
-
--set(QT_SOURCE_TREE "@QT_SOURCE_TREE@" CACHE PATH
--"A path to the source tree of the previously configured QtBase project." FORCE)
-+# set(QT_SOURCE_TREE "@QT_SOURCE_TREE@" CACHE PATH
-+# "A path to the source tree of the previously configured QtBase project." FORCE)
-
- # Propagate decision of building tests and examples to other repositories.
- set(QT_BUILD_TESTS @QT_BUILD_TESTS@ CACHE BOOL "Build the testing tree.")
-diff --git a/cmake/QtPrlHelpers.cmake b/cmake/QtPrlHelpers.cmake -index 30d3bd6d3..80bb2bf46 100644 ---- a/cmake/QtPrlHelpers.cmake -+++ b/cmake/QtPrlHelpers.cmake -@@ -222,7 +222,7 @@ function(qt_internal_walk_libs - qt_internal_should_not_promote_package_target_to_global( - "${lib_target_unaliased}" should_not_promote) - if(NOT is_global AND is_imported AND NOT should_not_promote) -- set_property(TARGET ${lib_target_unaliased} PROPERTY IMPORTED_GLOBAL TRUE) -+ #set_property(TARGET ${lib_target_unaliased} PROPERTY IMPORTED_GLOBAL TRUE) - endif() - endif() - else() diff --git a/ports/qtbase/clang-cl_source_location.patch b/ports/qtbase/clang-cl_source_location.patch index 1eeb67aaf..6d0a9527e 100644 --- a/ports/qtbase/clang-cl_source_location.patch +++ b/ports/qtbase/clang-cl_source_location.patch @@ -9,6 +9,6 @@ index 823b2057b..4a8cd4fa8 100644 -#if __has_include(<source_location>) && __cplusplus >= 202002L && !defined(Q_CLANG_QDOC)
+#if __has_include(<source_location>) && __cplusplus >= 202002L && !defined(Q_CLANG_QDOC) && defined(__cpp_consteval)
#include <source_location> - #if defined(__cpp_lib_source_location)
+ #if defined(__cpp_lib_source_location) #define QT_SOURCE_LOCATION_NAMESPACE std
#define QT_PROPERTY_COLLECT_BINDING_LOCATION
diff --git a/ports/qtbase/cmake/qt_install_submodule.cmake b/ports/qtbase/cmake/qt_install_submodule.cmake index ed497a13e..56c40c579 100644 --- a/ports/qtbase/cmake/qt_install_submodule.cmake +++ b/ports/qtbase/cmake/qt_install_submodule.cmake @@ -32,7 +32,6 @@ function(qt_download_submodule) vcpkg_from_git(
OUT_SOURCE_PATH SOURCE_PATH
URL "https://code.qt.io/qt/${PORT}.git"
- #TAG ${${PORT}_TAG}
REF "${${PORT}_REF}"
${UPDATE_PORT_GIT_OPTIONS}
PATCHES ${_qarg_PATCHES}
@@ -245,4 +244,4 @@ function(qt_install_submodule) qt_install_copyright("${SOURCE_PATH}")
set(SOURCE_PATH "${SOURCE_PATH}" PARENT_SCOPE)
-endfunction()
\ No newline at end of file +endfunction()
diff --git a/ports/qtbase/cmake/qt_port_details-latest.cmake b/ports/qtbase/cmake/qt_port_details-latest.cmake index 5dda21b7f..e89df6b96 100644 --- a/ports/qtbase/cmake/qt_port_details-latest.cmake +++ b/ports/qtbase/cmake/qt_port_details-latest.cmake @@ -1,12 +1,21 @@ -set(QT_VERSION 6.1.0-beta3)
+set(QT_VERSION 6.2.0)
+
+if(PORT MATCHES "qtquickcontrols2")
+ set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
+ message(STATUS "qtquickcontrols2 is integrated in qtdeclarative since Qt 6.2. Please remove your dependency on it!")
+ return()
+endif()
set(QT_GIT_TAG v${QT_VERSION})
+
#set(QT_UPDATE_VERSION TRUE)
+if(QT_UPDATE_VERSION)
+ function(vcpkg_extract_source_archive)
+ endfunction()
+endif()
set(QT_IS_LATEST 1)
-# List of added an removed modules https://doc-snapshots.qt.io/qt6-dev/whatsnew60.html#changes-to-supported-modules
-#https://wiki.qt.io/Get_the_Source
-#TODO:qtknx?
-set(QT_PORTS qtbase
+set(QT_PORTS qt
+ qtbase
qttools
qtdeclarative
qtsvg
@@ -22,8 +31,8 @@ set(QT_PORTS qtbase qtimageformats
qtmqtt
qtnetworkauth
- qtquickcontrols2
- ###
+ # qtquickcontrols2 -> moved into qtdeclarative
+ ## New in 6.1
qtactiveqt
qtdatavis3d
#qtdeviceutils
@@ -31,38 +40,60 @@ set(QT_PORTS qtbase qtscxml
qtvirtualkeyboard
qtcharts
+ ## New in 6.2
+ qtconnectivity
+ qtlocation
+ qtmultimedia
+ qtremoteobjects
+ qtsensors
+ qtserialbus
+ qtserialport
+ qtwebchannel
+ qtwebengine
+ qtwebsockets
+ qtwebview
)
-# New: qtactiveqt qtdatavis3d qtlottie qtscxml qtvirtualkeyboard qtcharts
foreach(_port IN LISTS QT_PORTS)
set(${_port}_TAG ${QT_GIT_TAG})
endforeach()
-
-set(qtbase_REF 089b73de033190e511c0bd11cba22160024ef9a4)
-set(qttools_REF a810532b7f68348281bac13fc03395bf08827c28)
-set(qtdeclarative_REF 1e4730ae0f44ece8ff8a27d4de127d8da9ed8a13)
-set(qtsvg_REF 1adf841f16cab093f7db6a1fbffd088b138afed3)
-set(qt5compat_REF 6ab304e8d2fe7f58cf608f8a30abbf769680f027)
-set(qtshadertools_REF c26caefc6f67f01ae52372a70d3887077477388d)
-set(qtquicktimeline_REF a91e82010047c9422d573b4c8648c175b470839e)
-set(qtquick3d_REF f6614a31bd8a092d2081092dc7043ead9e7475ea)
-set(qttranslations_REF 8a39fca4b56817fa2f7393fd5c5850bb167ac8f3)
-set(qtwayland_REF 8237b7384537e3bc1687c1e05a20d450a6ed38f3)
-set(qtdoc_REF 9259552281e4322a63f2cd0edce7904af1147bca)
-set(qtimageformats_REF acd9ad1f69606553bc975fb33ae4efd52b2fbe9f)
-set(qtmqtt_REF 3bdd419302de7e1e8a819509d115c32d2fbf4d49)
-set(qtquickcontrols2_REF a74819563efc3495a86a696e678bec11bab33ec6)
-set(qtnetworkauth_REF 92a1ff5b63f56e77030cdfbe9c456a31d3a2d5e2)
-set(qtcoap_REF bc8f5ff0e678aa4b4c9081e543fd7c119754a3a1)
-set(qtopcua_REF 0cd72d5e9cfaaf96b6d9a2d4ce4a6c46ffbbcdd4)
-###
-set(qtactiveqt_REF 94a100baa75248ba49c01680ca3632cd7180a8e8)
-set(qtdatavis3d_REF c1e7a47f47cc289652f2004403cb1e587308c290)
+set(qtbase_REF 0c2d00de3488116db9f9d657fe18bcb972a83792)
+set(qtshadertools_REF 119cd6e9c9e89f93b74db28f261382a2fcfe504e)
+set(qtdeclarative_REF 37da36c97d9d557945abca3cea5c68d9985a06e3)
+set(qt5compat_REF 291993c7813ec706e54069c7de339edfdd385c0d)
+set(qttools_REF 00efbf90f978afefdcece314d19b79459eee2211) # Additional refs in portfile due to submodule
+set(qtcoap_REF be7822dc920a3e3eb252d5693a7153aa606d3dc1)
+set(qtdoc_REF 48a1fbab30a9f57f011fdea8ec2b47048dce4069)
+set(qtimageformats_REF 7bb9dc839c0dd0806445fd475b027a82c961f686)
+set(qtmqtt_REF 4fd647e23d95c522c45d86be584d18578f894823)
+set(qtnetworkauth_REF aa23db40ca552d60383dea17d703b1cc0cbeace4)
+set(qtopcua_REF cfb3767b2a6785e0437b99c015cb6aef7f40189c)
+set(qtquicktimeline_REF e9578a6949f6192440df1cb261ed9de98a9de7d7)
+set(qtquick3d_REF eaf9c60073b95b03c006279f08d4947699c32a4b)
+set(qtsvg_REF cceecea040ca1247db0212217d07ec2c331004ba)
+set(qttranslations_REF 03a146236e69ee41c0405a8b5707104b4ac0c6e8)
+set(qtwayland_REF 8c4900dda393752faab14e39e60aec6b545c8a0f)
+# set(qtquickcontrols2_REF 0) # Moved into qtdeclarative since Qt 6.2
+### New in 6.1
+set(qtactiveqt_REF 94c924a8501dba7487bf2648bdf06aefc33e726d)
+set(qtcharts_REF d56b9f3de193cbf561f4b1ec332d8598dbdaaaca)
+set(qtdatavis3d_REF 5c90e6642882b3b7440608f71b96ce28908f0ee8)
#set(qtdeviceutils_REF 0) #missing tag
-set(qtlottie_REF ddda33a7294512487035de6338a91657501c9fd2)
-set(qtscxml_REF 8e2ad5c798110337b90c582c68e903465e19e3fe)
-set(qtvirtualkeyboard_REF 266626a0414aef2fcc65d412f02c993c87a1cae6)
-set(qtcharts_REF 962a05cea44108d13f081a12bd53232ef856427c)
+set(qtlottie_REF 48df4f1067514a3ae8b895b5f78fca09029d9288)
+set(qtscxml_REF 68ac6986b9a9b3acfcab1e445edc7c198bbf7344)
+set(qtvirtualkeyboard_REF 0e49e057777cd6c3f93d123e59a9399a2cf0040f)
+### New in 6.2
+set(qtconnectivity_REF 78e7ffbe16469a19fa34cad711e0898d91bd2f30)
+set(qtlocation_REF 47a945b0d054539eab3ba1cf3a1d7bf5977051d6)
+set(qtmultimedia_REF d7d0e676abd4b280feb0d5105846378b64782487)
+set(qtremoteobjects_REF 58932ba10420faa1cc989ed5bf101ff06475a4fc)
+set(qtsensors_REF 192ca0fd252066101eb0456b957fdb51618fa7db)
+set(qtserialbus_REF ce089bef29ca55d7fe46508d92d3e498eb5bb847)
+set(qtserialport_REF 14dc155f3640af94c6ecff2de1489e14cd5b0047)
+set(qtwebchannel_REF 09315a8d626e106953723ce68e68d6b4b97c2c52)
+set(qtwebengine_REF 261d72c8afc72faf23d169a64749db216db68859) # Additional refs in portfile due to submodule
+set(qtwebsockets_REF a01c2d6638fad700db23863258b7fc4a1ecdd542)
+set(qtwebview_REF ca0053b6a5320046508e9ba205df775a62c1a211)
if(QT_UPDATE_VERSION)
message(STATUS "Running Qt in automatic version port update mode!")
@@ -72,7 +103,8 @@ if(QT_UPDATE_VERSION) foreach(_current_qt_port IN LISTS QT_PORTS)
set(_current_control "${VCPKG_ROOT_DIR}/ports/${_current_qt_port}/vcpkg.json")
file(READ "${_current_control}" _control_contents)
- string(REGEX REPLACE "\"version-string\": [^\n]+\n" "\"version-string\": \"${QT_VERSION}\",\n" _control_contents "${_control_contents}")
+ string(REGEX REPLACE "\"version-(string|semver)\": [^\n]+\n" "\"version-semver\": \"${QT_VERSION}\",\n" _control_contents "${_control_contents}")
+ string(REGEX REPLACE "\"port-version\": [^\n]+\n" "" _control_contents "${_control_contents}")
file(WRITE "${_current_control}" "${_control_contents}")
#need to run a vcpkg format-manifest --all after update once
endforeach()
diff --git a/ports/qtbase/cmake/qt_port_details.cmake b/ports/qtbase/cmake/qt_port_details.cmake index 7d44bf87e..88e234e02 100644 --- a/ports/qtbase/cmake/qt_port_details.cmake +++ b/ports/qtbase/cmake/qt_port_details.cmake @@ -1,15 +1,20 @@ -set(QT_VERSION 6.1.3)
+set(QT_VERSION 6.2.0)
+
+if(PORT MATCHES "qtquickcontrols2")
+ set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
+ message(STATUS "qtquickcontrols2 is integrated in qtdeclarative since Qt 6.2. Please remove your dependency on it!")
+ return()
+endif()
set(QT_GIT_TAG v${QT_VERSION})
+
#set(QT_UPDATE_VERSION TRUE)
if(QT_UPDATE_VERSION)
function(vcpkg_extract_source_archive)
endfunction()
endif()
-# List of added an removed modules https://doc-snapshots.qt.io/qt6-dev/whatsnew60.html#changes-to-supported-modules
-#https://wiki.qt.io/Get_the_Source
-#TODO:qtknx?
-set(QT_PORTS qtbase
+set(QT_PORTS qt
+ qtbase
qttools
qtdeclarative
qtsvg
@@ -25,7 +30,8 @@ set(QT_PORTS qtbase qtimageformats
qtmqtt
qtnetworkauth
- qtquickcontrols2
+ # qtquickcontrols2 -> moved into qtdeclarative
+ ## New in 6.1
qtactiveqt
qtdatavis3d
#qtdeviceutils
@@ -33,46 +39,71 @@ set(QT_PORTS qtbase qtscxml
qtvirtualkeyboard
qtcharts
- qt
+ ## New in 6.2
+ qtconnectivity
+ qtlocation
+ qtmultimedia
+ qtremoteobjects
+ qtsensors
+ qtserialbus
+ qtserialport
+ qtwebchannel
+ qtwebengine
+ qtwebsockets
+ qtwebview
)
foreach(_port IN LISTS QT_PORTS)
set(${_port}_TAG ${QT_GIT_TAG})
endforeach()
-
-set(qtbase_REF 3ff48409ed14c7a63010b14e053a7201a61391c5)
-set(qttools_REF a69e290e25fd145a8b02223130192555f7962ea2)
-set(qtdeclarative_REF 38845e18ef11ac2f1a1db82377b30f1649fdc499)
-set(qtsvg_REF 24d635154689be46aaaf2ba0e3538d2f8fafeb3d)
-set(qt5compat_REF fcacd7f544b496420db485187aa55d76898ce73d)
-set(qtshadertools_REF 06fc3c49b7b8cba80e6b6ff31ac5d703e3a2abcb)
-set(qtquicktimeline_REF be6321dc5164657072ff7069a7132d44222a503c)
-set(qtquick3d_REF ccd45eb39ec1fb88d62438c9dd0007e26c0ccc18)
-set(qttranslations_REF 2d30ad16d90abfc0806d28e3504348df84b1e62b)
-set(qtwayland_REF 501c287f34a66ec89e3e49da218feb4bc69c9c5e)
-set(qtdoc_REF 13fa00e32307bae90884a608880a542f6ed90646)
-set(qtimageformats_REF 8d6e8efc1afbd5e9cf793fbf0507e1d332c45d1f)
-set(qtmqtt_REF a6213a104f65dccb13508b58b0f07a249d9922c8)
-set(qtquickcontrols2_REF 6d62c0677d60e42a19bb72d641129933770f7723)
-set(qtnetworkauth_REF 7ce9e47b469141f9bace9661d07999dcc120e7f6)
-set(qtcoap_REF 83b5b7e8e2c6afa9d5ab69123c40993c48b30970)
-set(qtopcua_REF bda48fd7729fb65a7504a1bada496489ee15d245)
-set(qtactiveqt_REF 32cad4a02f78205e85490f6b8cbde82ecb1b5f2f)
-set(qtdatavis3d_REF 8d6c15fa8daa68a4d48368b8ceb8c517e973eac7)
+set(qtbase_REF 0c2d00de3488116db9f9d657fe18bcb972a83792)
+set(qtshadertools_REF 119cd6e9c9e89f93b74db28f261382a2fcfe504e)
+set(qtdeclarative_REF 37da36c97d9d557945abca3cea5c68d9985a06e3)
+set(qt5compat_REF 291993c7813ec706e54069c7de339edfdd385c0d)
+set(qttools_REF 00efbf90f978afefdcece314d19b79459eee2211) # Additional refs in portfile due to submodule
+set(qtcoap_REF be7822dc920a3e3eb252d5693a7153aa606d3dc1)
+set(qtdoc_REF 48a1fbab30a9f57f011fdea8ec2b47048dce4069)
+set(qtimageformats_REF 7bb9dc839c0dd0806445fd475b027a82c961f686)
+set(qtmqtt_REF 4fd647e23d95c522c45d86be584d18578f894823)
+set(qtnetworkauth_REF aa23db40ca552d60383dea17d703b1cc0cbeace4)
+set(qtopcua_REF cfb3767b2a6785e0437b99c015cb6aef7f40189c)
+set(qtquicktimeline_REF e9578a6949f6192440df1cb261ed9de98a9de7d7)
+set(qtquick3d_REF eaf9c60073b95b03c006279f08d4947699c32a4b)
+set(qtsvg_REF cceecea040ca1247db0212217d07ec2c331004ba)
+set(qttranslations_REF 03a146236e69ee41c0405a8b5707104b4ac0c6e8)
+set(qtwayland_REF 8c4900dda393752faab14e39e60aec6b545c8a0f)
+# set(qtquickcontrols2_REF 0) # Moved into qtdeclarative since Qt 6.2
+### New in 6.1
+set(qtactiveqt_REF 94c924a8501dba7487bf2648bdf06aefc33e726d)
+set(qtcharts_REF d56b9f3de193cbf561f4b1ec332d8598dbdaaaca)
+set(qtdatavis3d_REF 5c90e6642882b3b7440608f71b96ce28908f0ee8)
#set(qtdeviceutils_REF 0) #missing tag
-set(qtlottie_REF 266531117ba6646893d3806566144aff19d5e309)
-set(qtscxml_REF aa27d28e302f3529940172ab2782c2d7e28fb532)
-set(qtvirtualkeyboard_REF eb26e2af30e6cbb2c4b9224d8e9f489f198c82f0)
-set(qtcharts_REF 3e0d6ffa572efe8a09774ac6c6263b6df5eaf718)
+set(qtlottie_REF 48df4f1067514a3ae8b895b5f78fca09029d9288)
+set(qtscxml_REF 68ac6986b9a9b3acfcab1e445edc7c198bbf7344)
+set(qtvirtualkeyboard_REF 0e49e057777cd6c3f93d123e59a9399a2cf0040f)
+### New in 6.2
+set(qtconnectivity_REF 78e7ffbe16469a19fa34cad711e0898d91bd2f30)
+set(qtlocation_REF 47a945b0d054539eab3ba1cf3a1d7bf5977051d6)
+set(qtmultimedia_REF d7d0e676abd4b280feb0d5105846378b64782487)
+set(qtremoteobjects_REF 58932ba10420faa1cc989ed5bf101ff06475a4fc)
+set(qtsensors_REF 192ca0fd252066101eb0456b957fdb51618fa7db)
+set(qtserialbus_REF ce089bef29ca55d7fe46508d92d3e498eb5bb847)
+set(qtserialport_REF 14dc155f3640af94c6ecff2de1489e14cd5b0047)
+set(qtwebchannel_REF 09315a8d626e106953723ce68e68d6b4b97c2c52)
+set(qtwebengine_REF 261d72c8afc72faf23d169a64749db216db68859) # Additional refs in portfile due to submodule
+set(qtwebsockets_REF a01c2d6638fad700db23863258b7fc4a1ecdd542)
+set(qtwebview_REF ca0053b6a5320046508e9ba205df775a62c1a211)
if(QT_UPDATE_VERSION)
message(STATUS "Running Qt in automatic version port update mode!")
set(_VCPKG_INTERNAL_NO_HASH_CHECK 1)
if("${PORT}" MATCHES "qtbase")
+ file(REMOVE "${CMAKE_CURRENT_LIST_DIR}/cmake/qt_new_refs.cmake")
foreach(_current_qt_port IN LISTS QT_PORTS)
set(_current_control "${VCPKG_ROOT_DIR}/ports/${_current_qt_port}/vcpkg.json")
file(READ "${_current_control}" _control_contents)
string(REGEX REPLACE "\"version-(string|semver)\": [^\n]+\n" "\"version-semver\": \"${QT_VERSION}\",\n" _control_contents "${_control_contents}")
+ string(REGEX REPLACE "\"port-version\": [^\n]+\n" "" _control_contents "${_control_contents}")
file(WRITE "${_current_control}" "${_control_contents}")
#need to run a vcpkg format-manifest --all after update once
endforeach()
diff --git a/ports/qtbase/fix_cmake_build.patch b/ports/qtbase/fix_cmake_build.patch new file mode 100644 index 000000000..65410e3fc --- /dev/null +++ b/ports/qtbase/fix_cmake_build.patch @@ -0,0 +1,15 @@ +diff --git a/cmake/QtBuildInternalsExtra.cmake.in b/cmake/QtBuildInternalsExtra.cmake.in +index ffc9d90f8..0b3a7d59e 100644 +--- a/cmake/QtBuildInternalsExtra.cmake.in ++++ b/cmake/QtBuildInternalsExtra.cmake.in +@@ -51,8 +51,8 @@ endif() + set(QT_WILL_INSTALL @QT_WILL_INSTALL@ CACHE BOOL
+ "Boolean indicating if doing a Qt prefix build (vs non-prefix build)." FORCE)
+
+-set(QT_SOURCE_TREE "@QT_SOURCE_TREE@" CACHE PATH
+-"A path to the source tree of the previously configured QtBase project." FORCE)
++# set(QT_SOURCE_TREE "@QT_SOURCE_TREE@" CACHE PATH
++# "A path to the source tree of the previously configured QtBase project." FORCE)
+
+ # Propagate decision of building tests and examples to other repositories.
+ set(QT_BUILD_TESTS @QT_BUILD_TESTS@ CACHE BOOL "Build the testing tree.")
diff --git a/ports/qtbase/fix_egl.patch b/ports/qtbase/fix_egl.patch new file mode 100644 index 000000000..786831068 --- /dev/null +++ b/ports/qtbase/fix_egl.patch @@ -0,0 +1,12 @@ +diff --git a/cmake/3rdparty/extra-cmake-modules/find-modules/FindEGL.cmake b/cmake/3rdparty/extra-cmake-modules/find-modules/FindEGL.cmake +index eafbc1ff9..dd4068838 100644 +--- a/cmake/3rdparty/extra-cmake-modules/find-modules/FindEGL.cmake ++++ b/cmake/3rdparty/extra-cmake-modules/find-modules/FindEGL.cmake +@@ -82,6 +82,7 @@ find_path(EGL_INCLUDE_DIR + find_library(EGL_LIBRARY
+ NAMES
+ EGL
++ libEGL # required to find angle on windows within vcpkg.
+ HINTS
+ ${PKG_EGL_LIBRARY_DIRS}
+ )
diff --git a/ports/qtbase/fix_find_dep.patch b/ports/qtbase/fix_find_dep.patch deleted file mode 100644 index 0414198a1..000000000 --- a/ports/qtbase/fix_find_dep.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 40c410aeb..c36084fb9 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -24,6 +24,8 @@ project(QtBase - LANGUAGES CXX C ASM
- )
-
-+find_package(Threads REQUIRED)
-+set_property(TARGET Threads::Threads PROPERTY _qt_no_promote_global TRUE)
- # Make sure we only use latest private CMake API, aka no compatibility wrappers.
- set(QT_NO_INTERNAL_COMPATIBILITY_FUNCTIONS TRUE)
-
diff --git a/ports/qtbase/jpeg.patch b/ports/qtbase/jpeg.patch deleted file mode 100644 index 1f2080561..000000000 --- a/ports/qtbase/jpeg.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/src/plugins/imageformats/jpeg/qjpeghandler.cpp b/src/plugins/imageformats/jpeg/qjpeghandler.cpp -index 29bf5ab58..1a3cfd2bf 100644 ---- a/src/plugins/imageformats/jpeg/qjpeghandler.cpp -+++ b/src/plugins/imageformats/jpeg/qjpeghandler.cpp -@@ -63,12 +63,12 @@ - extern "C" { - // jpeglib.h->jmorecfg.h tries to typedef int boolean; but this conflicts with - // some Windows headers that may or may not have been included --#ifdef HAVE_BOOLEAN --# undef HAVE_BOOLEAN --#endif --#define boolean jboolean -+//#ifdef HAVE_BOOLEAN -+//# undef HAVE_BOOLEAN -+//#endif -+//#define boolean jboolean - --#define XMD_H // shut JPEGlib up -+//#define XMD_H // shut JPEGlib up - #include <jpeglib.h> - #ifdef const - # undef const // remove crazy C hackery in jconfig.h diff --git a/ports/qtbase/portfile.cmake b/ports/qtbase/portfile.cmake index 9d48e0ed5..60a247254 100644 --- a/ports/qtbase/portfile.cmake +++ b/ports/qtbase/portfile.cmake @@ -1,23 +1,27 @@ -set(QT_IS_LATEST OFF) +# Reminder for myself and everybody else: +# Qt cross module dependency information within the Qt respository is wrong and/or incomplete. +# Always check the toplevel CMakeLists.txt for the find_package call and search for linkage against the Qt:: targets +# Often enough certain (bigger) dependencies are only used to build examples and/or tests. +# As such getting the correct dependency information relevant for vcpkg requires a manual search/check + +#set(QT_IS_LATEST ON) ## All above goes into the qt_port_hashes in the future include("${CMAKE_CURRENT_LIST_DIR}/cmake/qt_install_submodule.cmake") set(${PORT}_PATCHES - jpeg.patch - harfbuzz.patch - config_install.patch allow_outside_prefix.patch - buildcmake.patch - dont_force_cmakecache.patch - fix_find_dep.patch - 20b3eb0.diff # Upstream fix to build with clang-cl; didn't make 6.1.1 so I backported the patch. clang-cl_source_location.patch + config_install.patch + dont_force_cmakecache.patch + fix_cmake_build.patch + harfbuzz.patch + fix_egl.patch ) if(NOT VCPKG_USE_HEAD_VERSION AND NOT QT_IS_LATEST) list(APPEND ${PORT}_PATCHES - ) + ) endif() if(VCPKG_TARGET_IS_WINDOWS AND NOT "doubleconversion" IN_LIST FEATURES) @@ -58,6 +62,8 @@ FEATURES "zstd" FEATURE_zstd "framework" FEATURE_framework "concurrent" FEATURE_concurrent + "concurrent" FEATURE_future + "concurrent" FEATURE_thread "dbus" FEATURE_dbus "gui" FEATURE_gui "network" FEATURE_network @@ -87,13 +93,11 @@ INVERTED_FEATURES "glib" CMAKE_DISABLE_FIND_PACKAGE_GLIB2 ) -#list(APPEND FEATURE_CORE_OPTIONS -DFEATURE_doubleconversion:BOOL=ON) list(APPEND FEATURE_CORE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_LTTngUST:BOOL=ON) list(APPEND FEATURE_CORE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_PPS:BOOL=ON) list(APPEND FEATURE_CORE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Slog2:BOOL=ON) list(APPEND FEATURE_CORE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Libsystemd:BOOL=ON) - # Network features: vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_NET_OPTIONS FEATURES @@ -205,6 +209,8 @@ set(TOOL_NAMES rcc tracegen uic + qtpaths + qtpaths6 ) qt_install_submodule(PATCHES ${${PORT}_PATCHES} @@ -255,12 +261,13 @@ file(COPY qt_stop_on_update() set(script_files qt-cmake qt-cmake-private qt-cmake-standalone-test qt-configure-module qt-internal-configure-tests) -if(VCPKG_TARGET_IS_WINDOWS) +if(CMAKE_HOST_WIN32) set(script_suffix .bat) else() set(script_suffix) endif() set(other_files + target_qt.conf qt-cmake-private-install.cmake syncqt.pl android_cmakelist_patcher.sh @@ -297,8 +304,10 @@ foreach(_config debug release) endforeach() endforeach() - if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + if(VCPKG_CROSSCOMPILING) + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin/qmake" "${CURRENT_PACKAGES_DIR}/debug/bin/qmake") # qmake has been moved so this is the qmake helper script + endif() file(GLOB_RECURSE _bin_files "${CURRENT_PACKAGES_DIR}/bin/*") if(NOT _bin_files) # Only clean if empty otherwise let vcpkg throw and error. file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin/" "${CURRENT_PACKAGES_DIR}/debug/bin/") diff --git a/ports/qtbase/vcpkg.json b/ports/qtbase/vcpkg.json index 72b43da68..876f3f43f 100644 --- a/ports/qtbase/vcpkg.json +++ b/ports/qtbase/vcpkg.json @@ -1,6 +1,6 @@ { "name": "qtbase", - "version-semver": "6.1.3", + "version-semver": "6.2.0", "description": "Qt Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components.", "homepage": "https://www.qt.io/", "dependencies": [ |
