mirror of
git://code.qt.io/qt/qt5.git
synced 2026-01-08 16:06:55 +08:00
Compare commits
95 Commits
v6.8.0-bet
...
6.7.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6977d02f6d | ||
|
|
23d2984772 | ||
|
|
c4108cf03e | ||
|
|
cca1757c94 | ||
|
|
2dec77649e | ||
|
|
3a73873796 | ||
|
|
1e87deab06 | ||
|
|
b9bad8c373 | ||
|
|
8982a79885 | ||
|
|
7585f2d29d | ||
|
|
d68c0b5ab6 | ||
|
|
434130173d | ||
|
|
79db950e99 | ||
|
|
971bbb8f2e | ||
|
|
be3345b87e | ||
|
|
86fa22775f | ||
|
|
2496b860e6 | ||
|
|
58db36e43c | ||
|
|
969309c09e | ||
|
|
26a71457ae | ||
|
|
82382f5c69 | ||
|
|
2366d4f29e | ||
|
|
76f10dbcc8 | ||
|
|
3d9ea708bf | ||
|
|
715e9f618d | ||
|
|
6b5bbaac15 | ||
|
|
fb9718eaa9 | ||
|
|
2d69082155 | ||
|
|
7c9b1a44d5 | ||
|
|
71e8d16365 | ||
|
|
19c7154e11 | ||
|
|
30c9973910 | ||
|
|
1716158656 | ||
|
|
bda0fd8aca | ||
|
|
c014692f7d | ||
|
|
03c4798676 | ||
|
|
b1a5988c2c | ||
|
|
f78195fc93 | ||
|
|
418c431bb4 | ||
|
|
2c302c2431 | ||
|
|
ea89c8161f | ||
|
|
1bfb20fddd | ||
|
|
1b1df0bd22 | ||
|
|
64de8fa3ce | ||
|
|
cabe404c4a | ||
|
|
9e9dbeafa4 | ||
|
|
ee0409138b | ||
|
|
c582745a66 | ||
|
|
7c1e6971aa | ||
|
|
dc2d69e3f0 | ||
|
|
030478671c | ||
|
|
708ffa68a7 | ||
|
|
c71b6a5343 | ||
|
|
a607c4c58d | ||
|
|
6eb72bddd5 | ||
|
|
142ffbd208 | ||
|
|
37aed11625 | ||
|
|
82db8fadea | ||
|
|
3a9a48d165 | ||
|
|
0abefd8bba | ||
|
|
a92bc9040a | ||
|
|
358a5f58e2 | ||
|
|
014ef281e4 | ||
|
|
045c72d4eb | ||
|
|
f84d0c1644 | ||
|
|
1cf5b24dc2 | ||
|
|
2a6f3f9168 | ||
|
|
1cdaa78534 | ||
|
|
de0797d809 | ||
|
|
cf2365c2ec | ||
|
|
8a3736df77 | ||
|
|
c498f83af8 | ||
|
|
a6a703153a | ||
|
|
7f217718ff | ||
|
|
769e914ddc | ||
|
|
e94e10c621 | ||
|
|
fd3ac6d10a | ||
|
|
b2f16b7e43 | ||
|
|
1b4262e413 | ||
|
|
fbae0d81d6 | ||
|
|
a82fde1e9f | ||
|
|
6d425779cf | ||
|
|
387ff3e6c2 | ||
|
|
7f532a7fee | ||
|
|
bf09d0fe5b | ||
|
|
938ede4051 | ||
|
|
f0fb226c19 | ||
|
|
d497b98b02 | ||
|
|
2f0726c8ca | ||
|
|
2f36ff6add | ||
|
|
459151ae83 | ||
|
|
a9df6ed369 | ||
|
|
6affbbde90 | ||
|
|
d532c4d941 | ||
|
|
994d92fe1a |
3
.gitignore
vendored
3
.gitignore
vendored
@@ -8,6 +8,3 @@ CMakeUserPresets.json
|
||||
build
|
||||
build-*
|
||||
.DS_Store
|
||||
init-repository.opt
|
||||
init-repository.opt.in
|
||||
config.tl.opt
|
||||
|
||||
86
.gitmodules
vendored
86
.gitmodules
vendored
@@ -1,40 +1,40 @@
|
||||
[submodule "qtbase"]
|
||||
path = qtbase
|
||||
url = ../qtbase.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = essential
|
||||
[submodule "qtsvg"]
|
||||
depends = qtbase
|
||||
path = qtsvg
|
||||
url = ../qtsvg.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtdeclarative"]
|
||||
depends = qtbase
|
||||
recommends = qtimageformats qtshadertools qtsvg qtlanguageserver
|
||||
path = qtdeclarative
|
||||
url = ../qtdeclarative.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = essential
|
||||
[submodule "qtactiveqt"]
|
||||
depends = qtbase
|
||||
path = qtactiveqt
|
||||
url = ../qtactiveqt.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtmultimedia"]
|
||||
depends = qtbase qtshadertools
|
||||
recommends = qtdeclarative qtquick3d
|
||||
path = qtmultimedia
|
||||
url = ../qtmultimedia.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qttools"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtactiveqt
|
||||
path = qttools
|
||||
url = ../qttools.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = essential
|
||||
[submodule "qtxmlpatterns"]
|
||||
depends = qtbase
|
||||
@@ -47,7 +47,7 @@
|
||||
depends = qttools
|
||||
path = qttranslations
|
||||
url = ../qttranslations.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = essential
|
||||
priority = 30
|
||||
[submodule "qtdoc"]
|
||||
@@ -55,7 +55,7 @@
|
||||
recommends = qtmultimedia qtshadertools qtwebengine
|
||||
path = qtdoc
|
||||
url = ../qtdoc.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = essential
|
||||
priority = 40
|
||||
[submodule "qtrepotools"]
|
||||
@@ -76,21 +76,21 @@
|
||||
recommends = qtdeclarative
|
||||
path = qtlocation
|
||||
url = ../qtlocation.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = preview
|
||||
[submodule "qtpositioning"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtserialport
|
||||
path = qtpositioning
|
||||
url = ../qtpositioning.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtsensors"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtsensors
|
||||
url = ../qtsensors.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtsystems"]
|
||||
depends = qtbase
|
||||
@@ -117,61 +117,61 @@
|
||||
recommends = qtdeclarative
|
||||
path = qtconnectivity
|
||||
url = ../qtconnectivity.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtwayland"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtwayland
|
||||
url = ../qtwayland.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qt3d"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtshadertools qtmultimedia
|
||||
path = qt3d
|
||||
url = ../qt3d.git
|
||||
branch = 6.8
|
||||
status = deprecated
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtimageformats"]
|
||||
depends = qtbase
|
||||
path = qtimageformats
|
||||
url = ../qtimageformats.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtserialbus"]
|
||||
depends = qtbase
|
||||
recommends = qtserialport
|
||||
path = qtserialbus
|
||||
url = ../qtserialbus.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtserialport"]
|
||||
depends = qtbase
|
||||
path = qtserialport
|
||||
url = ../qtserialport.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtwebsockets"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtwebsockets
|
||||
url = ../qtwebsockets.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtwebchannel"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtwebsockets
|
||||
path = qtwebchannel
|
||||
url = ../qtwebchannel.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtwebengine"]
|
||||
depends = qtdeclarative
|
||||
recommends = qtwebchannel qttools qtpositioning
|
||||
path = qtwebengine
|
||||
url = ../qtwebengine.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
priority = 10
|
||||
[submodule "qtcanvas3d"]
|
||||
@@ -185,28 +185,28 @@
|
||||
recommends = qtwebengine
|
||||
path = qtwebview
|
||||
url = ../qtwebview.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtcharts"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtmultimedia
|
||||
path = qtcharts
|
||||
url = ../qtcharts.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtdatavis3d"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtmultimedia
|
||||
path = qtdatavis3d
|
||||
url = ../qtdatavis3d.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtvirtualkeyboard"]
|
||||
depends = qtbase qtdeclarative qtsvg
|
||||
recommends = qtmultimedia
|
||||
path = qtvirtualkeyboard
|
||||
url = ../qtvirtualkeyboard.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtgamepad"]
|
||||
depends = qtbase
|
||||
@@ -219,27 +219,27 @@
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtscxml
|
||||
url = ../qtscxml.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtspeech"]
|
||||
depends = qtbase qtmultimedia
|
||||
recommends = qtdeclarative
|
||||
path = qtspeech
|
||||
url = ../qtspeech.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtnetworkauth"]
|
||||
depends = qtbase
|
||||
path = qtnetworkauth
|
||||
url = ../qtnetworkauth.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtremoteobjects"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtremoteobjects
|
||||
url = ../qtremoteobjects.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtwebglplugin"]
|
||||
depends = qtbase qtwebsockets
|
||||
@@ -252,87 +252,87 @@
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtlottie
|
||||
url = ../qtlottie.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtquicktimeline"]
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtquicktimeline
|
||||
url = ../qtquicktimeline
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtquick3d"]
|
||||
depends = qtbase qtdeclarative qtshadertools
|
||||
recommends = qtquicktimeline
|
||||
path = qtquick3d
|
||||
url = ../qtquick3d.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtshadertools"]
|
||||
depends = qtbase
|
||||
path = qtshadertools
|
||||
url = ../qtshadertools.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qt5compat"]
|
||||
depends = qtbase qtdeclarative
|
||||
path = qt5compat
|
||||
url = ../qt5compat.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = deprecated
|
||||
[submodule "qtcoap"]
|
||||
depends = qtbase
|
||||
path = qtcoap
|
||||
url = ../qtcoap.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtmqtt"]
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtmqtt
|
||||
url = ../qtmqtt.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtopcua"]
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtopcua
|
||||
url = ../qtopcua.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtlanguageserver"]
|
||||
depends = qtbase
|
||||
path = qtlanguageserver
|
||||
url = ../qtlanguageserver.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = preview
|
||||
[submodule "qthttpserver"]
|
||||
depends = qtbase
|
||||
recommends = qtwebsockets
|
||||
path = qthttpserver
|
||||
url = ../qthttpserver.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = preview
|
||||
[submodule "qtquick3dphysics"]
|
||||
depends = qtbase qtdeclarative qtquick3d qtshadertools
|
||||
path = qtquick3dphysics
|
||||
url = ../qtquick3dphysics.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtgrpc"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtgrpc
|
||||
url = ../qtgrpc.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = preview
|
||||
[submodule "qtquickeffectmaker"]
|
||||
depends = qtbase qtdeclarative qtshadertools
|
||||
recommends = qtquick3d
|
||||
path = qtquickeffectmaker
|
||||
url = ../qtquickeffectmaker.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = addon
|
||||
[submodule "qtgraphs"]
|
||||
depends = qtbase qtdeclarative qtquick3d
|
||||
path = qtgraphs
|
||||
url = ../qtgraphs.git
|
||||
branch = 6.8
|
||||
branch = 6.7.1
|
||||
status = preview
|
||||
|
||||
@@ -29,38 +29,26 @@ include(ECMOptionalAddSubdirectory)
|
||||
|
||||
qt_internal_top_level_before_build_submodules()
|
||||
|
||||
qt_internal_find_modules(known_submodules)
|
||||
# Get submodule list if not already defined
|
||||
if(NOT QT_BUILD_SUBMODULES)
|
||||
if(DEFINED ENV{QT_BUILD_SUBMODULES})
|
||||
set(QT_BUILD_SUBMODULES "$ENV{QT_BUILD_SUBMODULES}")
|
||||
else()
|
||||
set(QT_BUILD_SUBMODULES "${known_submodules}")
|
||||
qt_internal_find_modules(QT_BUILD_SUBMODULES)
|
||||
endif()
|
||||
endif()
|
||||
set(QT_BUILD_SUBMODULES "${QT_BUILD_SUBMODULES}" CACHE STRING "Submodules to build")
|
||||
|
||||
# Preliminary check if module should be skipped since -skip <module> or BUILD_<module>
|
||||
# are provided.
|
||||
set(explicitly_skipped_modules "")
|
||||
foreach(module IN LISTS known_submodules)
|
||||
if(DEFINED BUILD_${module} AND NOT BUILD_${module})
|
||||
list(APPEND explicitly_skipped_modules ${module})
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
foreach(module IN LISTS QT_BUILD_SUBMODULES)
|
||||
if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${module}/CMakeLists.txt)
|
||||
message(FATAL_ERROR
|
||||
"Module '${module}' cannot be found. Please double-check the "
|
||||
"spelling and try again. Or run\n"
|
||||
"`./configure -init-submodules -submodules ${module}` "
|
||||
"to clone the submodule and its dependencies.")
|
||||
"spelling and try again. Or run `./init-repository` to get "
|
||||
"the submodules.")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
qt_internal_sort_module_dependencies("${QT_BUILD_SUBMODULES}" QT_BUILD_SUBMODULES
|
||||
SKIP_MODULES ${explicitly_skipped_modules})
|
||||
qt_internal_sort_module_dependencies("${QT_BUILD_SUBMODULES}" QT_BUILD_SUBMODULES)
|
||||
|
||||
foreach(module IN LISTS QT_BUILD_SUBMODULES)
|
||||
# Check for unmet dependencies
|
||||
@@ -88,15 +76,9 @@ foreach(module IN LISTS QT_BUILD_SUBMODULES)
|
||||
|
||||
if(NOT error_reason STREQUAL "")
|
||||
if(required)
|
||||
if(QT_INTERNAL_CALLED_FROM_CONFIGURE)
|
||||
set(skip_argument "-skip ${module}")
|
||||
else()
|
||||
set(skip_argument "-DBUILD_${module}=OFF")
|
||||
endif()
|
||||
|
||||
message(FATAL_ERROR "Module '${module}' depends on '${dep}', "
|
||||
"but ${error_reason}.\n"
|
||||
"Note: Use '${skip_argument}' to exclude it from the build.")
|
||||
"Note: Use '-skip ${module}' to exclude it from the build.")
|
||||
else()
|
||||
message(STATUS "Skipping optional dependency '${dep}' of '${module}', "
|
||||
"because ${error_reason}.")
|
||||
|
||||
@@ -98,7 +98,7 @@ to your `PATH` environment variable to access them.
|
||||
Building Qt from git
|
||||
====================
|
||||
|
||||
See http://wiki.qt.io/Building_Qt_6_from_Git and [README.git](README.git)
|
||||
See http://wiki.qt.io/Building_Qt_6_from_Git and README.git
|
||||
for more information.
|
||||
See http://wiki.qt.io/Qt_6 for the reference platforms.
|
||||
|
||||
|
||||
136
cmake/3rdparty/cmake/Copyright.txt
vendored
136
cmake/3rdparty/cmake/Copyright.txt
vendored
@@ -1,136 +0,0 @@
|
||||
CMake - Cross Platform Makefile Generator
|
||||
Copyright 2000-2024 Kitware, Inc. and Contributors
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
* Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
* Neither the name of Kitware, Inc. nor the names of Contributors
|
||||
may be used to endorse or promote products derived from this
|
||||
software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
The following individuals and institutions are among the Contributors:
|
||||
|
||||
* Aaron C. Meadows <cmake@shadowguarddev.com>
|
||||
* Adriaan de Groot <groot@kde.org>
|
||||
* Aleksey Avdeev <solo@altlinux.ru>
|
||||
* Alexander Neundorf <neundorf@kde.org>
|
||||
* Alexander Smorkalov <alexander.smorkalov@itseez.com>
|
||||
* Alexey Sokolov <sokolov@google.com>
|
||||
* Alex Merry <alex.merry@kde.org>
|
||||
* Alex Turbov <i.zaufi@gmail.com>
|
||||
* Andreas Pakulat <apaku@gmx.de>
|
||||
* Andreas Schneider <asn@cryptomilk.org>
|
||||
* André Rigland Brodtkorb <Andre.Brodtkorb@ifi.uio.no>
|
||||
* Axel Huebl, Helmholtz-Zentrum Dresden - Rossendorf
|
||||
* Benjamin Eikel
|
||||
* Bjoern Ricks <bjoern.ricks@gmail.com>
|
||||
* Brad Hards <bradh@kde.org>
|
||||
* Christopher Harvey
|
||||
* Christoph Grüninger <foss@grueninger.de>
|
||||
* Clement Creusot <creusot@cs.york.ac.uk>
|
||||
* Daniel Blezek <blezek@gmail.com>
|
||||
* Daniel Pfeifer <daniel@pfeifer-mail.de>
|
||||
* Dawid Wróbel <me@dawidwrobel.com>
|
||||
* Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
|
||||
* Eran Ifrah <eran.ifrah@gmail.com>
|
||||
* Esben Mose Hansen, Ange Optimization ApS
|
||||
* Geoffrey Viola <geoffrey.viola@asirobots.com>
|
||||
* Google Inc
|
||||
* Gregor Jasny
|
||||
* Helio Chissini de Castro <helio@kde.org>
|
||||
* Ilya Lavrenov <ilya.lavrenov@itseez.com>
|
||||
* Insight Software Consortium <insightsoftwareconsortium.org>
|
||||
* Intel Corporation <www.intel.com>
|
||||
* Jan Woetzel
|
||||
* Jordan Williams <jordan@jwillikers.com>
|
||||
* Julien Schueller
|
||||
* Kelly Thompson <kgt@lanl.gov>
|
||||
* Konstantin Podsvirov <konstantin@podsvirov.pro>
|
||||
* Laurent Montel <montel@kde.org>
|
||||
* Mario Bensi <mbensi@ipsquad.net>
|
||||
* Martin Gräßlin <mgraesslin@kde.org>
|
||||
* Mathieu Malaterre <mathieu.malaterre@gmail.com>
|
||||
* Matthaeus G. Chajdas
|
||||
* Matthias Kretz <kretz@kde.org>
|
||||
* Matthias Maennich <matthias@maennich.net>
|
||||
* Michael Hirsch, Ph.D. <www.scivision.co>
|
||||
* Michael Stürmer
|
||||
* Miguel A. Figueroa-Villanueva
|
||||
* Mike Durso <rbprogrammer@gmail.com>
|
||||
* Mike Jackson
|
||||
* Mike McQuaid <mike@mikemcquaid.com>
|
||||
* Nicolas Bock <nicolasbock@gmail.com>
|
||||
* Nicolas Despres <nicolas.despres@gmail.com>
|
||||
* Nikita Krupen'ko <krnekit@gmail.com>
|
||||
* NVIDIA Corporation <www.nvidia.com>
|
||||
* OpenGamma Ltd. <opengamma.com>
|
||||
* Patrick Stotko <stotko@cs.uni-bonn.de>
|
||||
* Per Øyvind Karlsen <peroyvind@mandriva.org>
|
||||
* Peter Collingbourne <peter@pcc.me.uk>
|
||||
* Petr Gotthard <gotthard@honeywell.com>
|
||||
* Philip Lowman <philip@yhbt.com>
|
||||
* Philippe Proulx <pproulx@efficios.com>
|
||||
* Raffi Enficiaud, Max Planck Society
|
||||
* Raumfeld <raumfeld.com>
|
||||
* Roger Leigh <rleigh@codelibre.net>
|
||||
* Rolf Eike Beer <eike@sf-mail.de>
|
||||
* Roman Donchenko <roman.donchenko@itseez.com>
|
||||
* Roman Kharitonov <roman.kharitonov@itseez.com>
|
||||
* Ruslan Baratov
|
||||
* Sebastian Holtermann <sebholt@xwmw.org>
|
||||
* Stephen Kelly <steveire@gmail.com>
|
||||
* Sylvain Joubert <joubert.sy@gmail.com>
|
||||
* The Qt Company Ltd.
|
||||
* Thomas Sondergaard <ts@medical-insight.com>
|
||||
* Tobias Hunger <tobias.hunger@qt.io>
|
||||
* Todd Gamblin <tgamblin@llnl.gov>
|
||||
* Tristan Carel
|
||||
* University of Dundee
|
||||
* Vadim Zhukov
|
||||
* Will Dicharry <wdicharry@stellarscience.com>
|
||||
|
||||
See version control history for details of individual contributions.
|
||||
|
||||
The above copyright and license notice applies to distributions of
|
||||
CMake in source and binary form. Third-party software packages supplied
|
||||
with CMake under compatible licenses provide their own copyright notices
|
||||
documented in corresponding subdirectories or source files.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
CMake was initially developed by Kitware with the following sponsorship:
|
||||
|
||||
* National Library of Medicine at the National Institutes of Health
|
||||
as part of the Insight Segmentation and Registration Toolkit (ITK).
|
||||
|
||||
* US National Labs (Los Alamos, Livermore, Sandia) ASC Parallel
|
||||
Visualization Initiative.
|
||||
|
||||
* National Alliance for Medical Image Computing (NAMIC) is funded by the
|
||||
National Institutes of Health through the NIH Roadmap for Medical Research,
|
||||
Grant U54 EB005149.
|
||||
|
||||
* Kitware, Inc.
|
||||
349
cmake/3rdparty/cmake/QtIRRunCMake.cmake
vendored
349
cmake/3rdparty/cmake/QtIRRunCMake.cmake
vendored
@@ -1,349 +0,0 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
#
|
||||
# Original file location was Tests/RunCMake/RunCMake.cmake
|
||||
|
||||
foreach(
|
||||
arg
|
||||
IN ITEMS
|
||||
RunCMake_GENERATOR
|
||||
RunCMake_SOURCE_DIR
|
||||
RunCMake_BINARY_DIR
|
||||
)
|
||||
if(NOT DEFINED ${arg})
|
||||
message(FATAL_ERROR "${arg} not given!")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
function(run_cmake test)
|
||||
if(DEFINED ENV{RunCMake_TEST_FILTER})
|
||||
set(test_and_variant "${test}${RunCMake_TEST_VARIANT_DESCRIPTION}")
|
||||
if(NOT test_and_variant MATCHES "$ENV{RunCMake_TEST_FILTER}")
|
||||
return()
|
||||
endif()
|
||||
unset(test_and_variant)
|
||||
endif()
|
||||
|
||||
set(top_src "${RunCMake_SOURCE_DIR}")
|
||||
set(top_bin "${RunCMake_BINARY_DIR}")
|
||||
if(EXISTS ${top_src}/${test}-result.txt)
|
||||
file(READ ${top_src}/${test}-result.txt expect_result)
|
||||
string(REGEX REPLACE "\n+$" "" expect_result "${expect_result}")
|
||||
elseif(DEFINED RunCMake_TEST_EXPECT_RESULT)
|
||||
set(expect_result "${RunCMake_TEST_EXPECT_RESULT}")
|
||||
else()
|
||||
set(expect_result 0)
|
||||
endif()
|
||||
|
||||
string(TOLOWER ${CMAKE_HOST_SYSTEM_NAME} platform_name)
|
||||
#remove all additional bits from cygwin/msys name
|
||||
if(platform_name MATCHES cygwin)
|
||||
set(platform_name cygwin)
|
||||
endif()
|
||||
if(platform_name MATCHES msys)
|
||||
set(platform_name msys)
|
||||
endif()
|
||||
|
||||
foreach(o IN ITEMS stdout stderr config)
|
||||
if(RunCMake-${o}-file AND EXISTS ${top_src}/${RunCMake-${o}-file})
|
||||
file(READ ${top_src}/${RunCMake-${o}-file} expect_${o})
|
||||
string(REGEX REPLACE "\n+$" "" expect_${o} "${expect_${o}}")
|
||||
elseif(EXISTS ${top_src}/${test}-${o}-${platform_name}.txt)
|
||||
file(READ ${top_src}/${test}-${o}-${platform_name}.txt expect_${o})
|
||||
string(REGEX REPLACE "\n+$" "" expect_${o} "${expect_${o}}")
|
||||
elseif(EXISTS ${top_src}/${test}-${o}.txt)
|
||||
file(READ ${top_src}/${test}-${o}.txt expect_${o})
|
||||
string(REGEX REPLACE "\n+$" "" expect_${o} "${expect_${o}}")
|
||||
elseif(DEFINED RunCMake_TEST_EXPECT_${o})
|
||||
string(REGEX REPLACE "\n+$" "" expect_${o} "${RunCMake_TEST_EXPECT_${o}}")
|
||||
else()
|
||||
unset(expect_${o})
|
||||
endif()
|
||||
endforeach()
|
||||
foreach(o IN ITEMS stdout stderr config)
|
||||
if(DEFINED RunCMake_TEST_NOT_EXPECT_${o})
|
||||
string(REGEX REPLACE "\n+$" "" not_expect_${o} "${RunCMake_TEST_NOT_EXPECT_${o}}")
|
||||
endif()
|
||||
endforeach()
|
||||
if (NOT expect_stderr)
|
||||
if (NOT RunCMake_DEFAULT_stderr)
|
||||
set(RunCMake_DEFAULT_stderr "^$")
|
||||
endif()
|
||||
set(expect_stderr ${RunCMake_DEFAULT_stderr})
|
||||
endif()
|
||||
|
||||
if (NOT RunCMake_TEST_SOURCE_DIR)
|
||||
set(RunCMake_TEST_SOURCE_DIR "${top_src}")
|
||||
endif()
|
||||
if(NOT RunCMake_TEST_BINARY_DIR)
|
||||
set(RunCMake_TEST_BINARY_DIR "${top_bin}/${test}-build")
|
||||
endif()
|
||||
if(NOT RunCMake_TEST_NO_CLEAN)
|
||||
file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
|
||||
endif()
|
||||
file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
|
||||
if(RunCMake-prep-file AND EXISTS ${top_src}/${RunCMake-prep-file})
|
||||
include(${top_src}/${RunCMake-prep-file})
|
||||
else()
|
||||
include(${top_src}/${test}-prep.cmake OPTIONAL)
|
||||
endif()
|
||||
if(RunCMake_TEST_OUTPUT_MERGE)
|
||||
set(actual_stderr_var actual_stdout)
|
||||
set(actual_stderr "")
|
||||
else()
|
||||
set(actual_stderr_var actual_stderr)
|
||||
endif()
|
||||
if(DEFINED RunCMake_TEST_TIMEOUT)
|
||||
set(maybe_timeout TIMEOUT ${RunCMake_TEST_TIMEOUT})
|
||||
else()
|
||||
set(maybe_timeout "")
|
||||
endif()
|
||||
if(RunCMake-stdin-file AND EXISTS ${top_src}/${RunCMake-stdin-file})
|
||||
set(maybe_input_file INPUT_FILE ${top_src}/${RunCMake-stdin-file})
|
||||
elseif(EXISTS ${top_src}/${test}-stdin.txt)
|
||||
set(maybe_input_file INPUT_FILE ${top_src}/${test}-stdin.txt)
|
||||
else()
|
||||
set(maybe_input_file "")
|
||||
endif()
|
||||
if(NOT RunCMake_TEST_COMMAND)
|
||||
if(NOT DEFINED RunCMake_TEST_OPTIONS)
|
||||
set(RunCMake_TEST_OPTIONS "")
|
||||
endif()
|
||||
if(APPLE)
|
||||
list(APPEND RunCMake_TEST_OPTIONS -DCMAKE_POLICY_DEFAULT_CMP0025=NEW)
|
||||
endif()
|
||||
if(RunCMake_TEST_LCC AND NOT RunCMake_TEST_NO_CMP0129)
|
||||
list(APPEND RunCMake_TEST_OPTIONS -DCMAKE_POLICY_DEFAULT_CMP0129=NEW)
|
||||
endif()
|
||||
if(RunCMake_MAKE_PROGRAM)
|
||||
list(APPEND RunCMake_TEST_OPTIONS "-DCMAKE_MAKE_PROGRAM=${RunCMake_MAKE_PROGRAM}")
|
||||
endif()
|
||||
set(RunCMake_TEST_COMMAND ${CMAKE_COMMAND})
|
||||
if(NOT RunCMake_TEST_NO_SOURCE_DIR)
|
||||
list(APPEND RunCMake_TEST_COMMAND "${RunCMake_TEST_SOURCE_DIR}")
|
||||
endif()
|
||||
list(APPEND RunCMake_TEST_COMMAND -G "${RunCMake_GENERATOR}")
|
||||
if(RunCMake_GENERATOR_PLATFORM)
|
||||
list(APPEND RunCMake_TEST_COMMAND -A "${RunCMake_GENERATOR_PLATFORM}")
|
||||
endif()
|
||||
if(RunCMake_GENERATOR_TOOLSET)
|
||||
list(APPEND RunCMake_TEST_COMMAND -T "${RunCMake_GENERATOR_TOOLSET}")
|
||||
endif()
|
||||
if(RunCMake_GENERATOR_INSTANCE)
|
||||
list(APPEND RunCMake_TEST_COMMAND "-DCMAKE_GENERATOR_INSTANCE=${RunCMake_GENERATOR_INSTANCE}")
|
||||
endif()
|
||||
list(APPEND RunCMake_TEST_COMMAND
|
||||
-DRunCMake_TEST=${test}
|
||||
--no-warn-unused-cli
|
||||
)
|
||||
else()
|
||||
set(RunCMake_TEST_OPTIONS "")
|
||||
endif()
|
||||
if(NOT DEFINED RunCMake_TEST_RAW_ARGS)
|
||||
set(RunCMake_TEST_RAW_ARGS "")
|
||||
endif()
|
||||
if(NOT RunCMake_TEST_COMMAND_WORKING_DIRECTORY)
|
||||
set(RunCMake_TEST_COMMAND_WORKING_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
|
||||
endif()
|
||||
string(CONCAT _code [[execute_process(
|
||||
COMMAND ${RunCMake_TEST_COMMAND}
|
||||
${RunCMake_TEST_OPTIONS}
|
||||
]] "${RunCMake_TEST_RAW_ARGS}\n" [[
|
||||
WORKING_DIRECTORY "${RunCMake_TEST_COMMAND_WORKING_DIRECTORY}"
|
||||
OUTPUT_VARIABLE actual_stdout
|
||||
ERROR_VARIABLE ${actual_stderr_var}
|
||||
RESULT_VARIABLE actual_result
|
||||
ENCODING UTF8
|
||||
${maybe_timeout}
|
||||
${maybe_input_file}
|
||||
)]])
|
||||
if(DEFINED ENV{PWD})
|
||||
set(old_pwd "$ENV{PWD}")
|
||||
else()
|
||||
set(old_pwd)
|
||||
endif()
|
||||
# Emulate a shell using this directory.
|
||||
set(ENV{PWD} "${RunCMake_TEST_COMMAND_WORKING_DIRECTORY}")
|
||||
cmake_language(EVAL CODE "${_code}")
|
||||
if(DEFINED old_pwd)
|
||||
set(ENV{PWD} "${old_pwd}")
|
||||
else()
|
||||
set(ENV{PWD})
|
||||
endif()
|
||||
set(msg "")
|
||||
if(NOT "${actual_result}" MATCHES "${expect_result}")
|
||||
string(APPEND msg "Result is [${actual_result}], not [${expect_result}].\n")
|
||||
endif()
|
||||
set(config_file "${RunCMake_TEST_COMMAND_WORKING_DIRECTORY}/CMakeFiles/CMakeConfigureLog.yaml")
|
||||
if(EXISTS "${config_file}")
|
||||
file(READ "${config_file}" actual_config)
|
||||
else()
|
||||
set(actual_config "")
|
||||
endif()
|
||||
|
||||
# Special case: remove ninja no-op line from stderr, but not stdout.
|
||||
# Test cases that look for it should use RunCMake_TEST_OUTPUT_MERGE.
|
||||
string(REGEX REPLACE "(^|\r?\n)ninja: no work to do\\.\r?\n" "\\1" actual_stderr "${actual_stderr}")
|
||||
|
||||
# Remove incidental content from both stdout and stderr.
|
||||
string(CONCAT ignore_line_regex
|
||||
"(^|\n)((==[0-9]+=="
|
||||
"|BullseyeCoverage"
|
||||
"|[a-z]+\\([0-9]+\\) malloc:"
|
||||
"|clang[^:]*: warning: the object size sanitizer has no effect at -O0, but is explicitly enabled:"
|
||||
"|flang-new: warning: argument unused during compilation: .-flang-experimental-exec."
|
||||
"|icp?x: remark: Note that use of .-g. without any optimization-level option will turn off most compiler optimizations"
|
||||
"|ifx: remark #10440: Note that use of a debug option without any optimization-level option will turnoff most compiler optimizations"
|
||||
"|lld-link: warning: procedure symbol record for .* refers to PDB item index [0-9A-Fa-fx]+ which is not a valid function ID record"
|
||||
"|Error kstat returned"
|
||||
"|Hit xcodebuild bug"
|
||||
"|Recompacting log\\.\\.\\."
|
||||
|
||||
"|LICENSE WARNING:"
|
||||
"|Your license to use PGI[^\n]*expired"
|
||||
"|Please obtain a new version at"
|
||||
"|contact PGI Sales at"
|
||||
"|ic(p?c|l): remark #10441: The Intel\\(R\\) C\\+\\+ Compiler Classic \\(ICC\\) is deprecated"
|
||||
|
||||
"|[^\n]*install_name_tool: warning: changes being made to the file will invalidate the code signature in:"
|
||||
"|[^\n]*(createItemModels|_NSMainThread|Please file a bug at)"
|
||||
"|[^\n]*xcodebuild[^\n]*DVTAssertions: Warning"
|
||||
"|[^\n]*xcodebuild[^\n]*DVTCoreDeviceEnabledState: DVTCoreDeviceEnabledState_Disabled set via user default"
|
||||
"|[^\n]*xcodebuild[^\n]*DVTPlugInManager"
|
||||
"|[^\n]*xcodebuild[^\n]*DVTSDK: Warning: SDK path collision for path"
|
||||
"|[^\n]*xcodebuild[^\n]*Requested but did not find extension point with identifier"
|
||||
"|[^\n]*xcodebuild[^\n]*nil host used in call to allows.*HTTPSCertificateForHost"
|
||||
"|[^\n]*xcodebuild[^\n]*warning: file type[^\n]*is based on missing file type"
|
||||
"|[^\n]*objc[^\n]*: Class [^\n]* One of the two will be used. Which one is undefined."
|
||||
"|[^\n]*is a member of multiple groups"
|
||||
"|[^\n]*offset in archive not a multiple of 8"
|
||||
"|[^\n]*from Time Machine by path"
|
||||
"|[^\n]*Bullseye Testing Technology"
|
||||
${RunCMake_TEST_EXTRA_IGNORE_LINE_REGEX}
|
||||
")[^\n]*\n)+"
|
||||
)
|
||||
if(RunCMake_IGNORE_POLICY_VERSION_DEPRECATION)
|
||||
string(REGEX REPLACE [[
|
||||
^CMake Deprecation Warning at [^
|
||||
]*CMakeLists.txt:1 \(cmake_minimum_required\):
|
||||
Compatibility with CMake < 3\.5 will be removed from a future version of
|
||||
CMake.
|
||||
|
||||
Update the VERSION argument <min> value or use a \.\.\.<max> suffix to tell
|
||||
CMake that the project does not need compatibility with older versions\.
|
||||
+
|
||||
]] "" actual_stderr "${actual_stderr}")
|
||||
endif()
|
||||
foreach(o IN ITEMS stdout stderr config)
|
||||
string(REGEX REPLACE "\r\n" "\n" actual_${o} "${actual_${o}}")
|
||||
string(REGEX REPLACE "${ignore_line_regex}" "\\1" actual_${o} "${actual_${o}}")
|
||||
string(REGEX REPLACE "\n+$" "" actual_${o} "${actual_${o}}")
|
||||
if(DEFINED expect_${o})
|
||||
if(NOT "${actual_${o}}" MATCHES "${expect_${o}}")
|
||||
string(APPEND msg "${o} does not match that expected.\n")
|
||||
endif()
|
||||
endif()
|
||||
if(DEFINED not_expect_${o})
|
||||
if("${actual_${o}}" MATCHES "${not_expect_${o}}")
|
||||
string(APPEND msg "${o} matches that not expected.\n")
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
unset(RunCMake_TEST_FAILED)
|
||||
if(RunCMake-check-file AND EXISTS ${top_src}/${RunCMake-check-file})
|
||||
include(${top_src}/${RunCMake-check-file})
|
||||
else()
|
||||
include(${top_src}/${test}-check.cmake OPTIONAL)
|
||||
endif()
|
||||
if(RunCMake_TEST_FAILED)
|
||||
set(msg "${RunCMake_TEST_FAILED}\n${msg}")
|
||||
endif()
|
||||
if(msg)
|
||||
string(REPLACE ";" "\" \"" command "\"${RunCMake_TEST_COMMAND}\"")
|
||||
if(RunCMake_TEST_OPTIONS)
|
||||
string(REPLACE ";" "\" \"" options "\"${RunCMake_TEST_OPTIONS}\"")
|
||||
string(APPEND command " ${options}")
|
||||
endif()
|
||||
if(RunCMake_TEST_RAW_ARGS)
|
||||
string(APPEND command " ${RunCMake_TEST_RAW_ARGS}")
|
||||
endif()
|
||||
string(APPEND msg "Command was:\n command> ${command}\n")
|
||||
endif()
|
||||
if(msg)
|
||||
foreach(o IN ITEMS stdout stderr config)
|
||||
if(DEFINED expect_${o})
|
||||
string(REGEX REPLACE "\n" "\n expect-${o}> " expect_${o} " expect-${o}> ${expect_${o}}")
|
||||
string(APPEND msg "Expected ${o} to match:\n${expect_${o}}\n")
|
||||
endif()
|
||||
if(NOT o STREQUAL "config" OR DEFINED expect_${o})
|
||||
string(REGEX REPLACE "\n" "\n actual-${o}> " actual_${o} " actual-${o}> ${actual_${o}}")
|
||||
string(APPEND msg "Actual ${o}:\n${actual_${o}}\n")
|
||||
endif()
|
||||
endforeach()
|
||||
message(SEND_ERROR "${test}${RunCMake_TEST_VARIANT_DESCRIPTION} - FAILED:\n${msg}")
|
||||
else()
|
||||
message(STATUS "${test}${RunCMake_TEST_VARIANT_DESCRIPTION} - PASSED")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(run_cmake_command test)
|
||||
set(RunCMake_TEST_COMMAND "${ARGN}")
|
||||
run_cmake(${test})
|
||||
endfunction()
|
||||
|
||||
function(run_cmake_script test)
|
||||
set(RunCMake_TEST_COMMAND ${CMAKE_COMMAND} ${ARGN} -P ${RunCMake_SOURCE_DIR}/${test}.cmake)
|
||||
run_cmake(${test})
|
||||
endfunction()
|
||||
|
||||
function(run_cmake_with_options test)
|
||||
set(RunCMake_TEST_OPTIONS "${ARGN}")
|
||||
run_cmake(${test})
|
||||
endfunction()
|
||||
|
||||
function(run_cmake_with_raw_args test args)
|
||||
set(RunCMake_TEST_RAW_ARGS "${args}")
|
||||
run_cmake(${test})
|
||||
endfunction()
|
||||
|
||||
function(ensure_files_match expected_file actual_file)
|
||||
if(NOT EXISTS "${expected_file}")
|
||||
message(FATAL_ERROR "Expected file does not exist:\n ${expected_file}")
|
||||
endif()
|
||||
if(NOT EXISTS "${actual_file}")
|
||||
message(FATAL_ERROR "Actual file does not exist:\n ${actual_file}")
|
||||
endif()
|
||||
file(READ "${expected_file}" expected_file_content)
|
||||
file(READ "${actual_file}" actual_file_content)
|
||||
if(NOT "${expected_file_content}" STREQUAL "${actual_file_content}")
|
||||
message(FATAL_ERROR "Actual file content does not match expected:\n
|
||||
\n
|
||||
expected file: ${expected_file}\n
|
||||
expected content:\n
|
||||
${expected_file_content}\n
|
||||
\n
|
||||
actual file: ${actual_file}\n
|
||||
actual content:\n
|
||||
${actual_file_content}\n
|
||||
")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Get the user id on unix if possible.
|
||||
function(get_unix_uid var)
|
||||
set("${var}" "" PARENT_SCOPE)
|
||||
if(UNIX)
|
||||
set(ID "id")
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "SunOS" AND EXISTS "/usr/xpg4/bin/id")
|
||||
set (ID "/usr/xpg4/bin/id")
|
||||
endif()
|
||||
execute_process(COMMAND ${ID} -u $ENV{USER} OUTPUT_VARIABLE uid ERROR_QUIET
|
||||
RESULT_VARIABLE status OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if(status EQUAL 0)
|
||||
set("${var}" "${uid}" PARENT_SCOPE)
|
||||
endif()
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Protect RunCMake tests from calling environment.
|
||||
unset(ENV{MAKEFLAGS})
|
||||
39
cmake/3rdparty/cmake/QtIRTestHelpers.cmake
vendored
39
cmake/3rdparty/cmake/QtIRTestHelpers.cmake
vendored
@@ -1,39 +0,0 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
#
|
||||
# Original file location was Tests/RunCMake/CMakeLists.txt
|
||||
|
||||
macro(add_RunCMake_test test)
|
||||
set(TEST_ARGS ${ARGN})
|
||||
if ("${ARGV1}" STREQUAL "TEST_DIR")
|
||||
if ("${ARGV2}" STREQUAL "")
|
||||
message(FATAL_ERROR "Invalid args")
|
||||
endif()
|
||||
set(Test_Dir ${ARGV2})
|
||||
list(REMOVE_AT TEST_ARGS 0)
|
||||
list(REMOVE_AT TEST_ARGS 0)
|
||||
else()
|
||||
set(Test_Dir ${test})
|
||||
endif()
|
||||
if(CMAKE_C_COMPILER_ID STREQUAL "LCC")
|
||||
list(APPEND TEST_ARGS -DRunCMake_TEST_LCC=1)
|
||||
endif()
|
||||
add_test(NAME RunCMake.${test} COMMAND ${CMAKE_CMAKE_COMMAND}
|
||||
-DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR}
|
||||
-DRunCMake_GENERATOR_IS_MULTI_CONFIG=${_isMultiConfig}
|
||||
-DRunCMake_GENERATOR=${CMAKE_GENERATOR}
|
||||
-DRunCMake_GENERATOR_INSTANCE=${CMAKE_GENERATOR_INSTANCE}
|
||||
-DRunCMake_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM}
|
||||
-DRunCMake_GENERATOR_TOOLSET=${CMAKE_GENERATOR_TOOLSET}
|
||||
-DRunCMake_MAKE_PROGRAM=${CMake_TEST_EXPLICIT_MAKE_PROGRAM}
|
||||
-DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir}
|
||||
-DRunCMake_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}/${test}
|
||||
${${test}_ARGS}
|
||||
${TEST_ARGS}
|
||||
-P "${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir}/RunCMakeTest.cmake"
|
||||
)
|
||||
set_tests_properties("RunCMake.${test}" PROPERTIES LABELS "CMake;run")
|
||||
if(${test} MATCHES ^CMP)
|
||||
set_property(TEST "RunCMake.${test}" APPEND PROPERTY LABELS "policy")
|
||||
endif()
|
||||
endmacro()
|
||||
16
cmake/3rdparty/cmake/qt_attribution.json
vendored
16
cmake/3rdparty/cmake/qt_attribution.json
vendored
@@ -1,16 +0,0 @@
|
||||
{
|
||||
"Id": "cmake-test-modules",
|
||||
"Name": "cmake-test-modules",
|
||||
"QDocModule": "qtcore",
|
||||
"QtUsage": "Used as part of the build system.",
|
||||
"QtParts" : [ "tests" ],
|
||||
|
||||
"Description": "CMake helpers for running CMake tests.",
|
||||
"Homepage": "https://cmake.org/",
|
||||
"Version": "3.29.0",
|
||||
|
||||
"License": "BSD 3-Clause \"New\" or \"Revised\" License",
|
||||
"LicenseId": "BSD-3-Clause",
|
||||
"LicenseFile": "Copyright.txt",
|
||||
"Copyright": "Copyright © 2000-2024 Kitware, Inc. and Contributors"
|
||||
}
|
||||
@@ -1,405 +0,0 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# This file contains a modified subset of the qtbase/QtProcessConfigureArgs.cmake commands
|
||||
# with renamed functions, because we need similar logic for init-repository, but
|
||||
# we can't access qtbase before we clone it.
|
||||
|
||||
# Call a function with the given arguments.
|
||||
function(qt_ir_call_function func)
|
||||
set(call_code "${func}(")
|
||||
math(EXPR n "${ARGC} - 1")
|
||||
foreach(i RANGE 1 ${n})
|
||||
string(APPEND call_code "\"${ARGV${i}}\" ")
|
||||
endforeach()
|
||||
string(APPEND call_code ")")
|
||||
string(REPLACE "\\" "\\\\" call_code "${call_code}")
|
||||
if(${CMAKE_VERSION} VERSION_LESS "3.18.0")
|
||||
set(incfile qt_tmp_func_call.cmake)
|
||||
file(WRITE "${incfile}" "${call_code}")
|
||||
include(${incfile})
|
||||
file(REMOVE "${incfile}")
|
||||
else()
|
||||
cmake_language(EVAL CODE "${call_code}")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Show an error.
|
||||
function(qt_ir_add_error)
|
||||
message(FATAL_ERROR ${ARGV})
|
||||
endfunction()
|
||||
|
||||
# Check if there are still unhandled command line arguments.
|
||||
function(qt_ir_args_has_next_command_line_arg out_var)
|
||||
qt_ir_get_unhandled_args(args)
|
||||
|
||||
list(LENGTH args n)
|
||||
if(n GREATER 0)
|
||||
set(result TRUE)
|
||||
else()
|
||||
set(result FALSE)
|
||||
endif()
|
||||
set(${out_var} ${result} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Get the next unhandled command line argument without popping it.
|
||||
function(qt_ir_args_peek_next_command_line_arg out_var)
|
||||
qt_ir_get_unhandled_args(args)
|
||||
list(GET args 0 result)
|
||||
set(${out_var} ${result} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Get the next unhandled command line argument.
|
||||
function(qt_ir_args_get_next_command_line_arg out_var)
|
||||
qt_ir_get_unhandled_args(args)
|
||||
list(POP_FRONT args result)
|
||||
qt_ir_set_unhandled_args("${args}")
|
||||
set(${out_var} ${result} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Helper macro to parse the arguments for the command line options.
|
||||
macro(qt_ir_commandline_option_parse_arguments)
|
||||
set(options UNSUPPORTED)
|
||||
set(oneValueArgs TYPE NAME SHORT_NAME ALIAS VALUE DEFAULT_VALUE)
|
||||
set(multiValueArgs VALUES MAPPING)
|
||||
cmake_parse_arguments(arg "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
endmacro()
|
||||
|
||||
# We use this to define the command line options that init-repository accepts.
|
||||
# Arguments
|
||||
# name - name of the long form option
|
||||
# e.g. 'module-subset' will parse '--module-subset'
|
||||
# UNSUPPORTED - mark the option as unsupported in the cmake port of init-repository,
|
||||
# which means we will fall back to calling the perl script instead
|
||||
# TYPE - the type of the option, currently we support boolean, string and void
|
||||
# VALUE - the value to be set for a 'void' type option
|
||||
# VALUES - the valid values for an option
|
||||
# MAPPING - currently unused
|
||||
# SHORT_NAME - an alternative short name flag,
|
||||
# e.g. 'f' will parse -f for --force
|
||||
# ALIAS - mark the option as an alias of another option, both will have the
|
||||
# same value when retrieved.
|
||||
# DEFAULT_VALUE - the default value to be set for the option when it's not specified
|
||||
# on the command line
|
||||
#
|
||||
# NOTE: Make sure to update the SHORT_NAME code path when adding new options.
|
||||
function(qt_ir_commandline_option_helper name)
|
||||
qt_ir_commandline_option_parse_arguments(${ARGN})
|
||||
|
||||
set(unsupported_options "${commandline_known_unsupported_options}")
|
||||
if(arg_UNSUPPORTED)
|
||||
set(commandline_option_${name}_unsupported
|
||||
"${arg_UNSUPPORTED}" PARENT_SCOPE)
|
||||
list(APPEND unsupported_options "${name}")
|
||||
endif()
|
||||
set(commandline_known_unsupported_options "${unsupported_options}" PARENT_SCOPE)
|
||||
|
||||
set(commandline_known_options
|
||||
"${commandline_known_options};${name}" PARENT_SCOPE)
|
||||
|
||||
set(commandline_option_${name}_type "${arg_TYPE}" PARENT_SCOPE)
|
||||
|
||||
if(NOT "${arg_VALUE}" STREQUAL "")
|
||||
set(commandline_option_${name}_value "${arg_VALUE}" PARENT_SCOPE)
|
||||
endif()
|
||||
|
||||
if(arg_VALUES)
|
||||
set(commandline_option_${name}_values ${arg_VALUES} PARENT_SCOPE)
|
||||
elseif(arg_MAPPING)
|
||||
set(commandline_option_${name}_mapping ${arg_MAPPING} PARENT_SCOPE)
|
||||
endif()
|
||||
|
||||
if(NOT "${arg_SHORT_NAME}" STREQUAL "")
|
||||
set(commandline_option_${name}_short_name "${arg_SHORT_NAME}" PARENT_SCOPE)
|
||||
endif()
|
||||
|
||||
if(NOT "${arg_ALIAS}" STREQUAL "")
|
||||
set(commandline_option_${name}_alias "${arg_ALIAS}" PARENT_SCOPE)
|
||||
endif()
|
||||
|
||||
# Should be last, in case alias was specified
|
||||
if(NOT "${arg_DEFAULT_VALUE}" STREQUAL "")
|
||||
set(commandline_option_${name}_default_value "${arg_DEFAULT_VALUE}" PARENT_SCOPE)
|
||||
qt_ir_command_line_set_input("${name}" "${arg_DEFAULT_VALUE}")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Defines an option that init-repository understands.
|
||||
# Uses qt_ir_commandline_option_helper to define both long and short option names.
|
||||
macro(qt_ir_commandline_option name)
|
||||
# Define the main option
|
||||
qt_ir_commandline_option_helper("${name}" ${ARGN})
|
||||
|
||||
qt_ir_commandline_option_parse_arguments(${ARGN})
|
||||
|
||||
# Define the short name option if it's requested
|
||||
if(NOT "${arg_SHORT_NAME}" STREQUAL ""
|
||||
AND "${commandline_option_${arg_SHORT_NAME}_type}" STREQUAL "")
|
||||
set(unsupported "")
|
||||
if(arg_UNSUPPORTED)
|
||||
set(unsupported "${arg_UNSUPPORTED}")
|
||||
endif()
|
||||
|
||||
qt_ir_commandline_option_helper("${arg_SHORT_NAME}"
|
||||
TYPE "${arg_TYPE}"
|
||||
ALIAS "${name}"
|
||||
VALUE "${arg_VALUE}"
|
||||
VALUES ${arg_VALUES}
|
||||
MAPPING ${arg_MAPPING}
|
||||
DEFAULT_VALUE ${arg_DEFAULT_VALUE}
|
||||
${unsupported}
|
||||
)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
# Saves the value of a command line option into a global property.
|
||||
function(qt_ir_command_line_set_input name val)
|
||||
if(NOT "${commandline_option_${name}_alias}" STREQUAL "")
|
||||
set(name "${commandline_option_${name}_alias}")
|
||||
endif()
|
||||
|
||||
set_property(GLOBAL PROPERTY _qt_ir_input_${name} "${val}")
|
||||
set_property(GLOBAL APPEND PROPERTY _qt_ir_inputs ${name})
|
||||
endfunction()
|
||||
|
||||
# Appends a value of a command line option into a global property.
|
||||
# Currently unused
|
||||
function(qt_ir_command_line_append_input name val)
|
||||
if(NOT "${commandline_option_${name}_alias}" STREQUAL "")
|
||||
set(name "${commandline_option_${name}_alias}")
|
||||
endif()
|
||||
|
||||
get_property(oldval GLOBAL PROPERTY _qt_ir_input_${name})
|
||||
if(NOT "${oldval}" STREQUAL "")
|
||||
string(PREPEND val "${oldval};")
|
||||
endif()
|
||||
qt_ir_command_line_set_input(${name} "${val}" )
|
||||
endfunction()
|
||||
|
||||
# Checks if the value of a command line option is valid.
|
||||
function(qt_ir_validate_value opt val out_var)
|
||||
set(${out_var} TRUE PARENT_SCOPE)
|
||||
|
||||
set(valid_values ${commandline_option_${arg}_values})
|
||||
list(LENGTH valid_values n)
|
||||
if(n EQUAL 0)
|
||||
return()
|
||||
endif()
|
||||
|
||||
foreach(v ${valid_values})
|
||||
if(val STREQUAL v)
|
||||
return()
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set(${out_var} FALSE PARENT_SCOPE)
|
||||
list(JOIN valid_values " " valid_values_str)
|
||||
qt_ir_add_error("Invalid value '${val}' supplied to command line option '${opt}'."
|
||||
"\nAllowed values: ${valid_values_str}\n")
|
||||
endfunction()
|
||||
|
||||
# Sets / handles the value of a command line boolean option.
|
||||
function(qt_ir_commandline_boolean arg val nextok)
|
||||
if("${val}" STREQUAL "")
|
||||
set(val "yes")
|
||||
endif()
|
||||
if(NOT val STREQUAL "yes" AND NOT val STREQUAL "no")
|
||||
message(FATAL_ERROR
|
||||
"Invalid value '${val}' given for boolean command line option '${arg}'.")
|
||||
endif()
|
||||
qt_ir_command_line_set_input("${arg}" "${val}")
|
||||
endfunction()
|
||||
|
||||
# Sets / handles the value of a command line string option.
|
||||
function(qt_ir_commandline_string arg val nextok)
|
||||
if(nextok)
|
||||
qt_ir_args_get_next_command_line_arg(val)
|
||||
|
||||
if("${val}" MATCHES "^-")
|
||||
qt_ir_add_error("No value supplied to command line options '${arg}'.")
|
||||
endif()
|
||||
endif()
|
||||
qt_ir_validate_value("${arg}" "${val}" success)
|
||||
if(success)
|
||||
qt_ir_command_line_set_input("${arg}" "${val}")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Sets / handles the value of a command line void option.
|
||||
# This is an option like --force, which doesn't take any arguments.
|
||||
# Currently unused
|
||||
function(qt_ir_commandline_void arg val nextok)
|
||||
if(NOT "${val}" STREQUAL "")
|
||||
qt_i_add_error("Command line option '${arg}' expects no argument ('${val}' given).")
|
||||
endif()
|
||||
if(DEFINED commandline_option_${arg}_value)
|
||||
set(val ${commandline_option_${arg}_value})
|
||||
endif()
|
||||
if("${val}" STREQUAL "")
|
||||
set(val yes)
|
||||
endif()
|
||||
qt_ir_command_line_set_input("${arg}" "${val}")
|
||||
endfunction()
|
||||
|
||||
# Reads the command line arguments from the optfile_path.
|
||||
function(qt_ir_get_raw_args_from_optfile optfile_path out_var)
|
||||
file(STRINGS "${optfile_path}" args)
|
||||
qt_ir_escape_semicolons(args "${args}")
|
||||
set(${out_var} "${args}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Reads the optfile_path, iterates over the given command line arguments,
|
||||
# sets the input for recongized options.
|
||||
#
|
||||
# Handles the following styles of CLI arguments:
|
||||
# --no-foo / --disable-foo
|
||||
# -no-foo / -disable-foo
|
||||
# --foo=<values>
|
||||
# --foo <values>
|
||||
# -foo <values>
|
||||
# --foo
|
||||
# -foo
|
||||
# --f
|
||||
# -f
|
||||
#
|
||||
# Currently handles the following types of CLI arguments:
|
||||
# string
|
||||
# boolean
|
||||
# void
|
||||
#
|
||||
# IGNORE_UNKNOWN_ARGS tells the function not to fail if it encounters an unknown
|
||||
# option, and instead append it to a global list of unknown options.
|
||||
# It is needed when the script is called from the configure script with
|
||||
# configure-only-known options.
|
||||
function(qt_ir_process_args_from_optfile optfile_path)
|
||||
set(options IGNORE_UNKNOWN_ARGS)
|
||||
set(oneValueArgs "")
|
||||
set(multiValueArgs "")
|
||||
cmake_parse_arguments(arg "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
qt_ir_get_raw_args_from_optfile("${optfile_path}" configure_args)
|
||||
qt_ir_set_unhandled_args("${configure_args}")
|
||||
|
||||
while(1)
|
||||
qt_ir_args_has_next_command_line_arg(has_next)
|
||||
if(NOT has_next)
|
||||
break()
|
||||
endif()
|
||||
qt_ir_args_get_next_command_line_arg(arg)
|
||||
|
||||
# parse out opt and val
|
||||
set(nextok FALSE)
|
||||
if(arg MATCHES "^--?(disable|no)-(.*)")
|
||||
set(opt "${CMAKE_MATCH_2}")
|
||||
set(val "no")
|
||||
elseif(arg MATCHES "^--([^=]+)=(.*)")
|
||||
set(opt "${CMAKE_MATCH_1}")
|
||||
set(val "${CMAKE_MATCH_2}")
|
||||
elseif(arg MATCHES "^--(.*)")
|
||||
set(nextok TRUE)
|
||||
set(opt "${CMAKE_MATCH_1}")
|
||||
unset(val)
|
||||
elseif(arg MATCHES "^-(.*)")
|
||||
set(nextok TRUE)
|
||||
set(opt "${CMAKE_MATCH_1}")
|
||||
unset(val)
|
||||
else()
|
||||
if(NOT arg_IGNORE_UNKNOWN_ARGS)
|
||||
qt_ir_add_error("Invalid command line parameter '${arg}'.")
|
||||
else()
|
||||
message(DEBUG "Unknown command line parameter '${arg}'. Collecting.")
|
||||
qt_ir_append_unknown_args("${arg}")
|
||||
continue()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(type "${commandline_option_${opt}_type}")
|
||||
|
||||
if("${type}" STREQUAL "")
|
||||
if(NOT arg_IGNORE_UNKNOWN_ARGS)
|
||||
qt_ir_add_error("Unknown command line option '${arg}'.")
|
||||
else()
|
||||
message(DEBUG "Unknown command line option '${arg}'. Collecting.")
|
||||
qt_ir_append_unknown_args("${arg}")
|
||||
continue()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT COMMAND "qt_ir_commandline_${type}")
|
||||
qt_ir_add_error("Unknown type '${type}' for command line option '${opt}'.")
|
||||
endif()
|
||||
qt_ir_call_function("qt_ir_commandline_${type}" "${opt}" "${val}" "${nextok}")
|
||||
endwhile()
|
||||
endfunction()
|
||||
|
||||
# Shows help for the command line options.
|
||||
function(qt_ir_show_help)
|
||||
set(help_file "${CMAKE_CURRENT_LIST_DIR}/QtIRHelp.txt")
|
||||
if(EXISTS "${help_file}")
|
||||
file(READ "${help_file}" content)
|
||||
message("${content}")
|
||||
endif()
|
||||
|
||||
message([[
|
||||
General Options:
|
||||
-help, -h ............ Display this help screen
|
||||
]])
|
||||
endfunction()
|
||||
|
||||
# Gets the unhandled command line args.
|
||||
function(qt_ir_get_unhandled_args out_var)
|
||||
get_property(args GLOBAL PROPERTY _qt_ir_unhandled_args)
|
||||
set(${out_var} "${args}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Sets the unhandled command line args.
|
||||
function(qt_ir_set_unhandled_args args)
|
||||
set_property(GLOBAL PROPERTY _qt_ir_unhandled_args "${args}")
|
||||
endfunction()
|
||||
|
||||
# Adds to the unknown command line args.
|
||||
function(qt_ir_append_unknown_args args)
|
||||
set_property(GLOBAL APPEND PROPERTY _qt_ir_unknown_args ${args})
|
||||
endfunction()
|
||||
|
||||
# Gets the unhandled command line args.
|
||||
function(qt_ir_get_unknown_args out_var)
|
||||
get_property(args GLOBAL PROPERTY _qt_ir_unknown_args)
|
||||
set(${out_var} "${args}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Gets the unsupported options that init-repository.pl supports, but the cmake port does
|
||||
# not support.
|
||||
function(qt_ir_get_unsupported_options out_var)
|
||||
set(${out_var} "${commandline_known_unsupported_options}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Get the value of a command line option.
|
||||
function(qt_ir_get_option_value name out_var)
|
||||
if(NOT "${commandline_option_${name}_alias}" STREQUAL "")
|
||||
set(name "${commandline_option_${name}_alias}")
|
||||
endif()
|
||||
|
||||
get_property(value GLOBAL PROPERTY _qt_ir_input_${name})
|
||||
set(${out_var} "${value}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Set the value of a command line option manually.
|
||||
function(qt_ir_set_option_value name value)
|
||||
if(NOT "${commandline_option_${name}_alias}" STREQUAL "")
|
||||
set(name "${commandline_option_${name}_alias}")
|
||||
endif()
|
||||
|
||||
qt_ir_command_line_set_input("${name}" "${value}")
|
||||
endfunction()
|
||||
|
||||
# Get the value of a command line option as a cmakke flag option, to be passed
|
||||
# to functions that use cmake_parse_arguments.
|
||||
function(qt_ir_get_option_as_cmake_flag_option cli_name cmake_option_name out_var)
|
||||
qt_ir_get_option_value("${cli_name}" bool_value)
|
||||
set(cmake_option "")
|
||||
if(bool_value)
|
||||
set(cmake_option "${cmake_option_name}")
|
||||
endif()
|
||||
set(${out_var} "${cmake_option}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,134 +0,0 @@
|
||||
Usage:
|
||||
./init-repository [options]
|
||||
|
||||
This script may be run after an initial `git clone' of the Qt supermodule
|
||||
in order to check out all submodules. It fetches them from canonical URLs
|
||||
inferred from the clone's origin.
|
||||
|
||||
Options:
|
||||
Global options:
|
||||
|
||||
--force, -f
|
||||
Force initialization (even if the submodules are already checked
|
||||
out).
|
||||
|
||||
--force-hooks
|
||||
Force initialization of hooks (even if there are already hooks in
|
||||
checked out submodules).
|
||||
|
||||
--quiet, -q
|
||||
Be quiet. Will exit cleanly if the repository is already
|
||||
initialized.
|
||||
|
||||
--verbose
|
||||
Adds a bit more output when executing processes
|
||||
|
||||
--no-resolve-deps
|
||||
By default, each submodule specified via the module-subset option
|
||||
will have its required and optional dependencies also initialized.
|
||||
This option can be passed to disable automatic initialization of
|
||||
dependencies, so that the exact list passed to module-subset is
|
||||
initialized.
|
||||
|
||||
--no-optional-deps
|
||||
By default, each submodule specified via the module-subset option
|
||||
will have its optional dependencies also initialized.
|
||||
This option can be passed to initialize only required dependencies of
|
||||
the given module-subset.
|
||||
|
||||
Module options:
|
||||
|
||||
--module-subset=<module1>,<module2>... / -submodules <module1>,<module2>...
|
||||
Only initialize the specified subset of modules given as the
|
||||
argument. Specified modules must already exist in .gitmodules. The
|
||||
string "all" results in cloning all known modules. The strings
|
||||
"essential", "addon", "preview", "deprecated", "obsolete",
|
||||
"additionalLibrary", and "ignore" refer to classes of modules
|
||||
identified by "status=" lines in the .gitmodules file.
|
||||
You can use "existing" to to reference already initialized submodules.
|
||||
Additionally, "qtrepotools" is implicitly always added to ensure
|
||||
relevant git commit hooks are available. It can be excluded as described
|
||||
below.
|
||||
You can use "default" in the subset as a short-hand for
|
||||
"essential,addon,preview,deprecated", which corresponds to the set of
|
||||
maintained modules included in standard Qt releases; this is also the
|
||||
default module subset when this option is not given when first running
|
||||
init-repositoy. If init-repository is rerun a second time (with --force)
|
||||
the default is to initialize the "existing" submodules, rather than the
|
||||
default subset. Entries may be prefixed with a dash to exclude them
|
||||
from a bigger set, e.g. "all,-ignore" or "existing,-qttools".
|
||||
For compatibility with qt's configure script, -submodules is an alias
|
||||
of --module-subset. Note the difference in dashes and the equal sign.
|
||||
|
||||
--no-update
|
||||
Skip the `git submodule update' command.
|
||||
|
||||
--no-fetch
|
||||
Skip the `git fetch' commands. Implied by --no-update.
|
||||
|
||||
--branch
|
||||
Instead of checking out specific SHA1s, check out the submodule
|
||||
branches that correspond with the current supermodule commit. By
|
||||
default, this option will cause local commits in the submodules to
|
||||
be rebased. With --no-update, the branches will be checked out, but
|
||||
their heads will not move.
|
||||
|
||||
--ignore-submodules
|
||||
Set git config to ignore submodules by default when doing operations
|
||||
on the qt5 repo, such as `pull', `fetch', `diff' etc.
|
||||
|
||||
After using this option, pass `--ignore-submodules=none' to git to
|
||||
override it as needed.
|
||||
|
||||
Repository options:
|
||||
|
||||
--berlin
|
||||
Switch to internal URLs and make use of the Berlin git mirrors.
|
||||
(Implies `--mirror').
|
||||
|
||||
--oslo
|
||||
Switch to internal URLs and make use of the Oslo git mirrors.
|
||||
(Implies `--mirror').
|
||||
|
||||
--codereview-username <Gerrit/JIRA username>
|
||||
Specify the user name for the (potentially) writable `gerrit' remote
|
||||
for each module, for use with the Gerrit code review tool.
|
||||
|
||||
If this option is omitted, the gerrit remote is created without a
|
||||
username and port number, and thus relies on a correct SSH
|
||||
configuration.
|
||||
|
||||
--alternates <path to other Qt5 repo>
|
||||
Adds alternates for each submodule to another full qt5 checkout.
|
||||
This makes this qt5 checkout very small, as it will use the object
|
||||
store of the alternates before unique objects are stored in its own
|
||||
object store.
|
||||
|
||||
This option has no effect when using `--no-update'.
|
||||
|
||||
NOTE: This will make this repo dependent on the alternate, which is
|
||||
potentially dangerous! The dependency can be broken by also using
|
||||
the `--copy-objects' option, or by running "git repack -a" in each
|
||||
submodule, where required. Please read the note about the `--shared'
|
||||
option in the documentation of `git clone' for more information.
|
||||
|
||||
--copy-objects
|
||||
When `--alternates' is used, automatically do a "git repack -a" in
|
||||
each submodule after cloning, to ensure that the repositories are
|
||||
independent from the source used as a reference for cloning.
|
||||
|
||||
Note that this negates the disk usage benefits gained from the use
|
||||
of `--alternates'.
|
||||
--mirror <url-base>
|
||||
Uses <url-base> as the base URL for submodule git mirrors.
|
||||
|
||||
For example:
|
||||
|
||||
--mirror user\@machine:/foo/bar/qt/
|
||||
|
||||
...will use the following as a mirror for qtbase:
|
||||
|
||||
user\@machine:/foo/bar/qt/qtbase.git
|
||||
|
||||
The mirror is permitted to contain a subset of the submodules; any
|
||||
missing modules will fall back to the canonical URLs.
|
||||
@@ -1,367 +0,0 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# Includes all helper files for access to necessary functions.
|
||||
macro(qt_ir_include_all_helpers)
|
||||
include(QtIRCommandLineHelpers)
|
||||
include(QtIRGitHelpers)
|
||||
include(QtIROptionsHelpers)
|
||||
include(QtIRParsingHelpers)
|
||||
include(QtIRProcessHelpers)
|
||||
include(QtIRTestHelpers)
|
||||
include(QtTopLevelHelpers)
|
||||
endmacro()
|
||||
|
||||
# Convenience macro to get the working directory from the arguments passed to
|
||||
# cmake_parse_arguments. Saves a few lines and makes reading the code slightly
|
||||
# easier.
|
||||
macro(qt_ir_get_working_directory_from_arg out_var)
|
||||
if(NOT arg_WORKING_DIRECTORY)
|
||||
message(FATAL_ERROR "No working directory specified")
|
||||
endif()
|
||||
set(${out_var} "${arg_WORKING_DIRECTORY}")
|
||||
endmacro()
|
||||
|
||||
# Convenience function to set the variable to the name of cmake_parse_arguments
|
||||
# flag option if it is active.
|
||||
function(qt_ir_get_cmake_flag flag_name out_var)
|
||||
if(arg_${flag_name})
|
||||
set(${out_var} "${flag_name}" PARENT_SCOPE)
|
||||
else()
|
||||
set(${out_var} "" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# There are some init-repository options that we do not want to allow when called from
|
||||
# configure. Make sure we error out when they are set by the user.
|
||||
function(qt_ir_validate_options_for_configure)
|
||||
set(disallowed_options
|
||||
# Disallow mirror options, because users should set up a proper git mirror manually,
|
||||
# not via configure.
|
||||
mirror
|
||||
oslo
|
||||
berlin
|
||||
)
|
||||
foreach(disallowed_option IN LISTS disallowed_options)
|
||||
qt_ir_get_option_value(${disallowed_option} value)
|
||||
if(value)
|
||||
set(msg
|
||||
"Initialization option '${disallowed_option}' is not supported by configure. "
|
||||
"If you think this option should be supported, please let us know at "
|
||||
"https://bugreports.qt.io/"
|
||||
)
|
||||
message(FATAL_ERROR ${msg})
|
||||
endif()
|
||||
endforeach()
|
||||
endfunction()
|
||||
|
||||
# Handle the case when init-repository is called from the configure script.
|
||||
function(qt_ir_handle_called_from_configure top_level_src_path out_var_exit_reason)
|
||||
# Nothing special to do if we're not called from configure.
|
||||
qt_ir_is_called_from_configure(is_called_from_configure)
|
||||
if(NOT is_called_from_configure)
|
||||
set(${out_var_exit_reason} FALSE PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Check whether qtbase was cloned, if not, tell the user how to initialize
|
||||
# the repos as part of the configure script.
|
||||
qt_ir_get_option_value(init-submodules init_submodules)
|
||||
set(configure_script "${top_level_src_path}/qtbase/configure")
|
||||
if(NOT EXISTS "${configure_script}" AND NOT init_submodules)
|
||||
set(msg "Oops. It looks like you didn't initialize any submodules yet.\nCall configure "
|
||||
"with the -init-submodules option to automatically clone a default set of "
|
||||
"submodules before configuring Qt.\nYou can also pass "
|
||||
"-submodules submodule2,submodule3 to clone a particular set of submodules "
|
||||
"and their dependencies. See ./init-repository --help for more information on values "
|
||||
"accepted by --module-subset (which gets its values from -submodules).")
|
||||
message(${msg})
|
||||
set(${out_var_exit_reason} NEED_INIT_SUBMODULES PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Don't do init-repository things when called from configure, qtbase exists and the
|
||||
# -init-submodules option is not passed. We assume the repo was already
|
||||
# initialized.
|
||||
if(NOT init_submodules)
|
||||
set(${out_var_exit_reason} ALREADY_INITIALIZED PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
qt_ir_validate_options_for_configure()
|
||||
|
||||
# -init_submodules implies --force
|
||||
qt_ir_set_option_value(force TRUE)
|
||||
|
||||
set(${out_var_exit_reason} FALSE PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Returns a list of command line arguments with the init-repository specific
|
||||
# options removed, which are not recognized by configure.
|
||||
# It also handles -submodules values like 'essential', 'existing' and '-qtsvg' and transforms them
|
||||
# into the final list of submodules to be included and excluded, which are then translated
|
||||
# to configure -submodules and -skip options.
|
||||
function(qt_ir_get_args_from_optfile_configure_filtered optfile_path out_var)
|
||||
cmake_parse_arguments(arg "ALREADY_INITIALIZED" "" "" ${ARGV})
|
||||
|
||||
# Get args unknown to init-repository, and pass them to configure as-is.
|
||||
qt_ir_get_unknown_args(unknown_args)
|
||||
|
||||
set(filtered_args ${unknown_args})
|
||||
set(extra_configure_args "")
|
||||
set(extra_cmake_args "")
|
||||
|
||||
# If the -submodules or --module-subset options were specified, transform
|
||||
# the values into something configure understands and pass them to configure.
|
||||
qt_ir_get_option_value(module-subset submodules)
|
||||
if(submodules)
|
||||
qt_ir_get_top_level_submodules(include_submodules exclude_submodules)
|
||||
if(NOT include_submodules AND arg_ALREADY_INITIALIZED)
|
||||
set(include_submodules "${submodules}")
|
||||
endif()
|
||||
|
||||
# qtrepotools is always implicitly cloned, but it doesn't actually
|
||||
# have a CMakeLists.txt, so remove it.
|
||||
list(REMOVE_ITEM include_submodules "qtrepotools")
|
||||
|
||||
# Make sure to explicitly pass -DBUILD_<module>=ON, in case they were
|
||||
# skipped before, otherwise configure might fail.
|
||||
if(include_submodules)
|
||||
set(explicit_build_submodules "${include_submodules}")
|
||||
list(TRANSFORM explicit_build_submodules PREPEND "-DBUILD_")
|
||||
list(TRANSFORM explicit_build_submodules APPEND "=ON")
|
||||
list(APPEND extra_cmake_args ${explicit_build_submodules})
|
||||
endif()
|
||||
|
||||
list(JOIN include_submodules "," include_submodules)
|
||||
list(JOIN exclude_submodules "," exclude_submodules)
|
||||
|
||||
# Handle case when the -skip argument is already passed.
|
||||
# In that case read the passed values, merge with new ones,
|
||||
# remove both the -skip and its values, and re-add it later.
|
||||
list(FIND filtered_args "-skip" skip_index)
|
||||
if(exclude_submodules AND skip_index GREATER -1)
|
||||
list(LENGTH filtered_args filtered_args_length)
|
||||
math(EXPR skip_args_index "${skip_index} + 1")
|
||||
|
||||
if(skip_args_index LESS filtered_args_length)
|
||||
list(GET filtered_args "${skip_args_index}" skip_args)
|
||||
string(REPLACE "," ";" skip_args "${skip_args}")
|
||||
list(APPEND skip_args ${exclude_submodules})
|
||||
list(REMOVE_DUPLICATES skip_args)
|
||||
list(JOIN skip_args "," exclude_submodules)
|
||||
list(REMOVE_AT filtered_args "${skip_args_index}")
|
||||
list(REMOVE_AT filtered_args "${skip_index}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Handle case when only '-submodules existing' is passed and the
|
||||
# subset ends up empty.
|
||||
if(include_submodules)
|
||||
list(APPEND extra_configure_args "-submodules" "${include_submodules}")
|
||||
endif()
|
||||
if(exclude_submodules)
|
||||
list(APPEND extra_configure_args "-skip" "${exclude_submodules}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Insert the extra arguments into the proper positions before and after '--'.
|
||||
list(FIND filtered_args "--" cmake_args_index)
|
||||
|
||||
# -- is not found
|
||||
if(cmake_args_index EQUAL -1)
|
||||
# Append extra configure args if present
|
||||
if(extra_configure_args)
|
||||
list(APPEND filtered_args ${extra_configure_args})
|
||||
endif()
|
||||
# Append extra cmake args if present, but make sure to add -- first at the end
|
||||
if(extra_cmake_args)
|
||||
list(APPEND filtered_args "--")
|
||||
list(APPEND filtered_args ${extra_cmake_args})
|
||||
endif()
|
||||
else()
|
||||
# -- is found, that means we probably have cmake args
|
||||
# Insert extra configure args if present, before the -- index.
|
||||
if(extra_configure_args)
|
||||
list(INSERT filtered_args "${cmake_args_index}" ${extra_configure_args})
|
||||
endif()
|
||||
# Find the -- index again, because it might have moved
|
||||
list(FIND filtered_args "--" cmake_args_index)
|
||||
# Compute the index of the argument after the --.
|
||||
math(EXPR cmake_args_index "${cmake_args_index} + 1")
|
||||
# Insert extra cmake args if present, after the -- index.
|
||||
if(extra_cmake_args)
|
||||
list(INSERT filtered_args "${cmake_args_index}" ${extra_cmake_args})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Pass --help if it was requested.
|
||||
qt_ir_is_help_requested(show_help)
|
||||
if(show_help)
|
||||
list(APPEND filtered_args "-help")
|
||||
endif()
|
||||
|
||||
set(${out_var} "${filtered_args}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Checks whether any of the arguments passed on the command line are options
|
||||
# that are marked as unsupported in the cmake port of init-repository.
|
||||
function(qt_ir_check_if_unsupported_options_used out_var out_var_option_name)
|
||||
qt_ir_get_unsupported_options(unsupported_options)
|
||||
|
||||
set(unsupported_options_used FALSE)
|
||||
foreach(unsupported_option IN LISTS unsupported_options)
|
||||
qt_ir_get_option_value(${unsupported_option} value)
|
||||
if(value)
|
||||
set(${out_var_option_name} "${unsupported_option}" PARENT_SCOPE)
|
||||
set(unsupported_options_used TRUE)
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
set(${out_var} "${unsupported_options_used}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# When an unsupported option is used, show an error message and tell the user
|
||||
# to run the perly script manually.
|
||||
function(qt_ir_show_error_how_to_run_perl opt_file unsupported_option_name)
|
||||
qt_ir_get_raw_args_from_optfile("${opt_file}" args)
|
||||
qt_ir_prettify_command_args(args "${args}")
|
||||
|
||||
set(perl_cmd "perl ./init-repository.pl ${args}")
|
||||
|
||||
message(FATAL_ERROR
|
||||
"Option '${unsupported_option_name}' is not implemented in the cmake "
|
||||
"port of init-repository. Please let us know if this option is really "
|
||||
"important for you at https://bugreports.qt.io/. Meanwhile, you can "
|
||||
"still run the perl script directly. \n ${perl_cmd}")
|
||||
endfunction()
|
||||
|
||||
# Check whether help was requested.
|
||||
function(qt_ir_is_help_requested out_var)
|
||||
qt_ir_get_option_value(help value)
|
||||
set(${out_var} "${value}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Check whether the verbose option was used.
|
||||
function(qt_ir_is_verbose out_var)
|
||||
qt_ir_get_option_value(verbose value)
|
||||
set(${out_var} "${value}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(qt_ir_is_called_from_configure out_var)
|
||||
qt_ir_get_option_value(from-configure value)
|
||||
set(${out_var} "${value}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Main logic of the script.
|
||||
function(qt_ir_run_after_args_parsed top_level_src_path out_var_exit_reason)
|
||||
set(${out_var_exit_reason} FALSE PARENT_SCOPE)
|
||||
|
||||
qt_ir_is_called_from_configure(is_called_from_configure)
|
||||
|
||||
qt_ir_is_help_requested(show_help)
|
||||
if(show_help AND NOT is_called_from_configure)
|
||||
qt_ir_show_help()
|
||||
set(${out_var_exit_reason} SHOWED_HELP PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
set(working_directory "${top_level_src_path}")
|
||||
|
||||
qt_ir_handle_if_already_initialized(already_initialized "${working_directory}")
|
||||
if(already_initialized)
|
||||
set(${out_var_exit_reason} ALREADY_INITIALIZED PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# This will be used by the module subset processing to determine whether we
|
||||
# should re-initialize the previously initialized (existing) subset.
|
||||
qt_ir_check_if_already_initialized_cmake_style(is_initialized
|
||||
"${working_directory}" FORCE_QUIET)
|
||||
set(previously_initialized_option "")
|
||||
if(is_initialized)
|
||||
set(previously_initialized_option PREVIOUSLY_INITIALIZED)
|
||||
endif()
|
||||
|
||||
|
||||
# Ge the name of the qt5 repo (tqtc- or not) and the base url for all other repos
|
||||
qt_ir_get_qt5_repo_name_and_base_url(
|
||||
OUT_VAR_QT5_REPO_NAME qt5_repo_name
|
||||
OUT_VAR_BASE_URL base_url
|
||||
WORKING_DIRECTORY "${working_directory}")
|
||||
|
||||
qt_ir_get_already_initialized_submodules("${prefix}"
|
||||
already_initialized_submodules
|
||||
"${qt5_repo_name}"
|
||||
"${working_directory}")
|
||||
|
||||
# Get some additional options to pass down.
|
||||
qt_ir_get_option_value(alternates alternates)
|
||||
qt_ir_get_option_as_cmake_flag_option(branch "CHECKOUT_BRANCH" checkout_branch_option)
|
||||
|
||||
# The prefix for the cmake-style 'dictionary' that will be used by various functions.
|
||||
set(prefix "ir_top")
|
||||
|
||||
# Initialize and clone the submodules
|
||||
qt_ir_handle_init_submodules("${prefix}"
|
||||
ALTERNATES "${alternates}"
|
||||
ALREADY_INITIALIZED_SUBMODULES "${already_initialized_submodules}"
|
||||
BASE_URL "${base_url}"
|
||||
PARENT_REPO_BASE_GIT_PATH "${qt5_repo_name}"
|
||||
PROCESS_SUBMODULES_FROM_COMMAND_LINE
|
||||
WORKING_DIRECTORY "${working_directory}"
|
||||
${checkout_branch_option}
|
||||
${previously_initialized_option}
|
||||
)
|
||||
|
||||
# Add gerrit remotes.
|
||||
qt_ir_add_git_remotes("${qt5_repo_name}" "${working_directory}")
|
||||
|
||||
# Install commit and other various hooks.
|
||||
qt_ir_install_git_hooks(
|
||||
PARENT_REPO_BASE_GIT_PATH "${qt5_repo_name}"
|
||||
TOP_LEVEL_SRC_PATH "${top_level_src_path}"
|
||||
WORKING_DIRECTORY "${working_directory}"
|
||||
)
|
||||
|
||||
# Mark the repo as being initialized.
|
||||
qt_ir_set_is_initialized("${working_directory}")
|
||||
endfunction()
|
||||
|
||||
# Entrypoint of the init-repository script.
|
||||
function(qt_ir_run_main_script top_level_src_path out_var_exit_reason)
|
||||
set(${out_var_exit_reason} FALSE PARENT_SCOPE)
|
||||
|
||||
# Windows passes backslash paths.
|
||||
file(TO_CMAKE_PATH "${top_level_src_path}" top_level_src_path)
|
||||
|
||||
qt_ir_set_known_command_line_options()
|
||||
|
||||
# If called from configure, there might be arguments that init-repository doesn't know about
|
||||
# because they are meant for configure. In that case ignore unknown arguments.
|
||||
qt_ir_get_option_value(from-configure from_configure)
|
||||
if(from_configure)
|
||||
set(ignore_unknown_args "IGNORE_UNKNOWN_ARGS")
|
||||
else()
|
||||
set(ignore_unknown_args "")
|
||||
endif()
|
||||
|
||||
qt_ir_process_args_from_optfile("${OPTFILE}" "${ignore_unknown_args}")
|
||||
|
||||
qt_ir_handle_called_from_configure("${top_level_src_path}" exit_reason)
|
||||
if(exit_reason)
|
||||
set(${out_var_exit_reason} "${exit_reason}" PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
qt_ir_check_if_unsupported_options_used(
|
||||
unsupported_options_used option_name)
|
||||
if(unsupported_options_used)
|
||||
qt_ir_show_error_how_to_run_perl("${OPTFILE}" "${option_name}")
|
||||
endif()
|
||||
|
||||
qt_ir_run_after_args_parsed("${top_level_src_path}" exit_reason)
|
||||
set(${out_var_exit_reason} "${exit_reason}" PARENT_SCOPE)
|
||||
|
||||
# TODO: Consider using cmake_language(EXIT <exit-code>) when cmake 3.29 is released.
|
||||
endfunction()
|
||||
@@ -1,48 +0,0 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# Declare command line options known to init-repository.
|
||||
macro(qt_ir_set_known_command_line_options)
|
||||
# Implemented options
|
||||
|
||||
# Note alternates is a qt specific option name, but it uses
|
||||
# git submodule's --reference option underneath which also implies --shared.
|
||||
# It essentially uses the git object storage of another repo, to avoid
|
||||
# cloning the same objects and thus saving space.
|
||||
qt_ir_commandline_option(alternates TYPE string)
|
||||
|
||||
qt_ir_commandline_option(berlin TYPE boolean)
|
||||
qt_ir_commandline_option(branch TYPE boolean)
|
||||
qt_ir_commandline_option(codereview-username TYPE string)
|
||||
qt_ir_commandline_option(copy-objects TYPE boolean)
|
||||
qt_ir_commandline_option(fetch TYPE boolean DEFAULT_VALUE yes)
|
||||
qt_ir_commandline_option(force SHORT_NAME f TYPE boolean)
|
||||
qt_ir_commandline_option(force-hooks TYPE boolean)
|
||||
qt_ir_commandline_option(help SHORT_NAME h TYPE boolean)
|
||||
qt_ir_commandline_option(ignore-submodules TYPE boolean)
|
||||
qt_ir_commandline_option(mirror TYPE string)
|
||||
qt_ir_commandline_option(module-subset TYPE string)
|
||||
qt_ir_commandline_option(optional-deps TYPE boolean DEFAULT_VALUE yes)
|
||||
qt_ir_commandline_option(oslo TYPE boolean)
|
||||
qt_ir_commandline_option(perl-identical-output TYPE boolean)
|
||||
qt_ir_commandline_option(perl-init-check TYPE boolean)
|
||||
qt_ir_commandline_option(quiet SHORT_NAME q TYPE boolean)
|
||||
qt_ir_commandline_option(resolve-deps TYPE boolean DEFAULT_VALUE yes)
|
||||
qt_ir_commandline_option(update TYPE boolean DEFAULT_VALUE yes)
|
||||
qt_ir_commandline_option(verbose TYPE boolean)
|
||||
|
||||
# These are used when init-repository is called from configure.
|
||||
qt_ir_commandline_option(from-configure TYPE boolean)
|
||||
# Implies force.
|
||||
qt_ir_commandline_option(init-submodules TYPE boolean)
|
||||
# We alias qtbase's submodules option to init-repository module-subset.
|
||||
qt_ir_commandline_option(submodules ALIAS module-subset TYPE string)
|
||||
|
||||
set_property(GLOBAL PROPERTY _qt_ir_known_command_line_options "${commandline_known_options}")
|
||||
endmacro()
|
||||
|
||||
# Gets list of known command line options.
|
||||
function(qt_ir_get_known_command_line_options out_var)
|
||||
get_property(values GLOBAL PROPERTY _qt_ir_known_command_line_options)
|
||||
set(${out_var} "${values}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
@@ -1,237 +0,0 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# Retrieves the contents of either .git/config or .gitmodules files for further parsing.
|
||||
function(qt_ir_get_git_config_contents out_var)
|
||||
set(options
|
||||
READ_GITMODULES
|
||||
READ_GIT_CONFIG
|
||||
READ_GIT_CONFIG_LOCAL
|
||||
)
|
||||
set(oneValueArgs
|
||||
WORKING_DIRECTORY
|
||||
)
|
||||
set(multiValueArgs "")
|
||||
cmake_parse_arguments(arg "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
if(arg_READ_GITMODULES)
|
||||
set(args -f .gitmodules)
|
||||
set(file_message ".gitmodules")
|
||||
elseif(arg_READ_GIT_CONFIG)
|
||||
set(args "")
|
||||
set(file_message ".git/config")
|
||||
elseif(arg_READ_GIT_CONFIG_LOCAL)
|
||||
set(args "--local")
|
||||
set(file_message ".local .git/config")
|
||||
else()
|
||||
message(FATAL_ERROR "qt_ir_get_git_config_contents: No option specified")
|
||||
endif()
|
||||
|
||||
qt_ir_get_working_directory_from_arg(working_directory)
|
||||
|
||||
qt_ir_execute_process_and_log_and_handle_error(
|
||||
FORCE_QUIET
|
||||
COMMAND_ARGS git config --list ${args}
|
||||
OUT_OUTPUT_VAR git_output
|
||||
WORKING_DIRECTORY "${working_directory}"
|
||||
ERROR_MESSAGE "Failed to get ${file_message} contents for parsing")
|
||||
|
||||
string(STRIP "${git_output}" git_output)
|
||||
set(${out_var} "${git_output}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Checks whether the given url has a scheme like https:// or is just a
|
||||
# relative path.
|
||||
function(qt_ir_has_url_scheme url out_var)
|
||||
string(REGEX MATCH "^[a-z][a-z0-9+\-.]*://" has_url_scheme "${url}")
|
||||
|
||||
if(has_url_scheme)
|
||||
set(${out_var} TRUE PARENT_SCOPE)
|
||||
else()
|
||||
set(${out_var} FALSE PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Parses a key-value line from a .git/config or .gitmodules file
|
||||
macro(qt_ir_parse_git_key_value)
|
||||
string(REGEX REPLACE "^submodule\\.([^.=]+)\\.([^.=]+)=(.*)$" "\\1;\\2;\\3"
|
||||
parsed_line "${line}")
|
||||
|
||||
list(LENGTH parsed_line parsed_line_length)
|
||||
set(submodule_name "")
|
||||
set(key "")
|
||||
set(value "")
|
||||
if(parsed_line_length EQUAL 3)
|
||||
list(GET parsed_line 0 submodule_name)
|
||||
list(GET parsed_line 1 key)
|
||||
list(GET parsed_line 2 value)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
# Parses a url line from a .gitmodules file
|
||||
# e.g. line - 'submodule.qtbase.url=../qtbase.git'
|
||||
#
|
||||
# Arguments
|
||||
#
|
||||
# submodule_name
|
||||
# submodule name, the key in 'submodule.${submodule_name}.url'
|
||||
# e.g. 'qtbase'
|
||||
# url_value
|
||||
# the url where to clone a repo from
|
||||
# in perl script it was called $base
|
||||
# e.g. '../qtbase.git', 'https://code.qt.io/playground/qlitehtml.git'
|
||||
# parent_repo_base_git_path
|
||||
# the base git path of the parent of the submodule
|
||||
# it is either a relative dir or a full url
|
||||
# in the perl script it was called $my_repo_base,
|
||||
# it was passed as first arg to git_clone_all_submodules,
|
||||
# it was passed the value of $subbases{$module} when doing recursive submodule cloning
|
||||
# e.g. 'qt5', 'tqtc-qt5', 'qtdeclarative.git', 'https://code.qt.io/playground/qlitehtml.git'
|
||||
#
|
||||
# Outputs
|
||||
#
|
||||
# ${out_var_prefix}_${submodule_name}_url
|
||||
# just the value of ${url_value}
|
||||
# ${out_var_prefix}_${submodule_name}_base_git_path
|
||||
# the whole url if it has a scheme, otherwise it's the value of
|
||||
# ${url_value} relative to ${parent_repo_base_git_path}, so all the ../ are collapsed
|
||||
# e.g. 'qtdeclarative.git'
|
||||
# 'https://code.qt.io/playground/qlitehtml.git',
|
||||
macro(qt_ir_parse_git_url_key out_var_prefix submodule_name url_value parent_repo_base_git_path)
|
||||
qt_ir_has_url_scheme("${url_value}" has_url_scheme)
|
||||
if(NOT has_url_scheme)
|
||||
set(base_git_path "${parent_repo_base_git_path}/${url_value}")
|
||||
|
||||
# The exact code perl code was while ($base =~ s,(?!\.\./)[^/]+/\.\./,,g) {}
|
||||
# That got rid of ../ and ../../ in the path, but it broke down
|
||||
# when more than two ../ were present.
|
||||
# We just use ABSOLUTE to resolve the path and get rid of all ../
|
||||
# Note the empty BASE_DIR is important, otherwise the path is relative to
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}.
|
||||
get_filename_component(base_git_path "${base_git_path}" ABSOLUTE BASE_DIR "")
|
||||
else()
|
||||
set(base_git_path "${url_value}")
|
||||
endif()
|
||||
|
||||
set(${out_var_prefix}_${submodule_name}_url "${url_value}" PARENT_SCOPE)
|
||||
set(${out_var_prefix}_${submodule_name}_base_git_path "${base_git_path}" PARENT_SCOPE)
|
||||
endmacro()
|
||||
|
||||
# Parses a .git/config or .gitmodules file contents and sets variables for each submodule
|
||||
# starting with ${out_var_prefix}_
|
||||
# These include:
|
||||
# ${out_var_prefix}_${submodule_name}_path
|
||||
# the path to the submodule relative to the parent repo
|
||||
# ${out_var_prefix}_${submodule_name}_branch
|
||||
# the branch that should be checked out when the branch option is used
|
||||
# ${out_var_prefix}_${submodule_name}_url
|
||||
# the url key as encountered in the config
|
||||
# ${out_var_prefix}_${submodule_name}_base_git_path
|
||||
# the git base path of the submodule, either a full url or a relative path
|
||||
# ${out_var_prefix}_${submodule_name}_update
|
||||
# the status of the submodule, can be 'none'
|
||||
# ${out_var_prefix}_${submodule_name}_status
|
||||
# the status of the submodule, can be 'essential', 'addon', etc
|
||||
# ${out_var_prefix}_${submodule_name}_depends
|
||||
# the list of submodules that this submodule depends on
|
||||
# ${out_var_prefix}_${submodule_name}_recommends
|
||||
# the list of submodules that this submodule recommends to be used with
|
||||
# ${out_var_prefix}_submodules
|
||||
# a list of all known submodule names encountered in the file
|
||||
# ${out_var_prefix}_submodules_to_remove
|
||||
# a list of all submodules to remove due to update == 'none'
|
||||
# ${out_var_prefix}_statuses to
|
||||
# a list of all known submodule statuses like 'essential', 'addon', etc
|
||||
# ${out_var_prefix}_status_${status}_submodules
|
||||
# a list of all submodules with the specific status
|
||||
function(qt_ir_parse_git_config_file_contents out_var_prefix)
|
||||
set(options
|
||||
READ_GITMODULES
|
||||
READ_GIT_CONFIG
|
||||
READ_GIT_CONFIG_LOCAL
|
||||
)
|
||||
set(oneValueArgs
|
||||
PARENT_REPO_BASE_GIT_PATH
|
||||
WORKING_DIRECTORY
|
||||
)
|
||||
set(multiValueArgs "")
|
||||
cmake_parse_arguments(arg "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
qt_ir_get_working_directory_from_arg(working_directory)
|
||||
|
||||
if(NOT arg_PARENT_REPO_BASE_GIT_PATH)
|
||||
message(FATAL_ERROR
|
||||
"qt_ir_parse_git_config_file_contents: No base PARENT_REPO_BASE_GIT_PATH specified")
|
||||
endif()
|
||||
set(parent_repo_base_git_path "${arg_PARENT_REPO_BASE_GIT_PATH}")
|
||||
|
||||
if(arg_READ_GITMODULES)
|
||||
set(read_git_config READ_GITMODULES)
|
||||
elseif(arg_READ_GIT_CONFIG)
|
||||
set(read_git_config READ_GIT_CONFIG)
|
||||
elseif(arg_READ_GIT_CONFIG_LOCAL)
|
||||
set(read_git_config READ_GIT_CONFIG_LOCAL)
|
||||
else()
|
||||
message(FATAL_ERROR
|
||||
"qt_ir_parse_gitmodules_file_contents: No valid git config file specified")
|
||||
endif()
|
||||
|
||||
qt_ir_get_git_config_contents(contents
|
||||
${read_git_config}
|
||||
WORKING_DIRECTORY "${working_directory}"
|
||||
)
|
||||
string(REPLACE "\n" ";" lines "${contents}")
|
||||
|
||||
set(known_submodules "")
|
||||
set(statuses "")
|
||||
set(submodules_to_remove "")
|
||||
|
||||
foreach(line IN LISTS lines)
|
||||
qt_ir_parse_git_key_value()
|
||||
if(NOT submodule_name OR NOT key OR value STREQUAL "")
|
||||
continue()
|
||||
endif()
|
||||
|
||||
list(APPEND known_submodules "${submodule_name}")
|
||||
|
||||
if(key STREQUAL "path")
|
||||
set(${out_var_prefix}_${submodule_name}_path "${value}" PARENT_SCOPE)
|
||||
elseif(key STREQUAL "branch")
|
||||
set(${out_var_prefix}_${submodule_name}_branch "${value}" PARENT_SCOPE)
|
||||
elseif(key STREQUAL "url")
|
||||
qt_ir_parse_git_url_key(
|
||||
"${out_var_prefix}" "${submodule_name}" "${value}" "${parent_repo_base_git_path}")
|
||||
elseif(key STREQUAL "update")
|
||||
# Some repo submodules had a update = none key in their .gitmodules
|
||||
# in which case we're supposed to skip initialzing those submodules,
|
||||
# which the perl script did by adding -${submodule_name} to the subset.
|
||||
# See qtdeclarative Change-Id: I633404f1c00d83dcbdca06a1d287623190323028
|
||||
set(${out_var_prefix}_${submodule_name}_update "${value}" PARENT_SCOPE)
|
||||
if(value STREQUAL "none")
|
||||
list(APPEND submodules_to_remove "-${submodule_name}")
|
||||
endif()
|
||||
elseif(key STREQUAL "status")
|
||||
set(status_submodules "${${out_var_prefix}_status_${value}_submodules}")
|
||||
list(APPEND status_submodules "${submodule_name}")
|
||||
list(REMOVE_DUPLICATES status_submodules)
|
||||
list(APPEND statuses "${value}")
|
||||
|
||||
set(${out_var_prefix}_status_${value}_submodules "${status_submodules}")
|
||||
set(${out_var_prefix}_status_${value}_submodules "${status_submodules}" PARENT_SCOPE)
|
||||
set(${out_var_prefix}_${submodule_name}_status "${value}" PARENT_SCOPE)
|
||||
elseif(key STREQUAL "depends")
|
||||
string(REPLACE " " ";" value "${value}")
|
||||
set(${out_var_prefix}_${submodule_name}_depends "${value}" PARENT_SCOPE)
|
||||
elseif(key STREQUAL "recommends")
|
||||
string(REPLACE " " ";" value "${value}")
|
||||
set(${out_var_prefix}_${submodule_name}_recommends "${value}" PARENT_SCOPE)
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
list(REMOVE_DUPLICATES known_submodules)
|
||||
list(REMOVE_DUPLICATES submodules_to_remove)
|
||||
list(REMOVE_DUPLICATES statuses)
|
||||
set(${out_var_prefix}_submodules "${known_submodules}" PARENT_SCOPE)
|
||||
set(${out_var_prefix}_submodules_to_remove "${submodules_to_remove}" PARENT_SCOPE)
|
||||
set(${out_var_prefix}_statuses "${statuses}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
@@ -1,185 +0,0 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# A low-level execute_process wrapper that can be used to execute a single command
|
||||
# while controlling the verbosity and error handling.
|
||||
function(qt_ir_execute_process)
|
||||
set(options
|
||||
QUIET
|
||||
)
|
||||
set(oneValueArgs
|
||||
WORKING_DIRECTORY
|
||||
OUT_RESULT_VAR
|
||||
OUT_OUTPUT_VAR
|
||||
OUT_ERROR_VAR
|
||||
)
|
||||
set(multiValueArgs
|
||||
COMMAND_ARGS
|
||||
EP_EXTRA_ARGS
|
||||
)
|
||||
cmake_parse_arguments(arg "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
if(NOT arg_COMMAND_ARGS)
|
||||
message(FATAL_ERROR "Missing arguments to qt_ir_execute_process")
|
||||
endif()
|
||||
|
||||
if(arg_WORKING_DIRECTORY)
|
||||
set(working_dir_value "${arg_WORKING_DIRECTORY}")
|
||||
else()
|
||||
set(working_dir_value ".")
|
||||
endif()
|
||||
set(working_dir WORKING_DIRECTORY "${working_dir_value}")
|
||||
|
||||
set(result_variable "")
|
||||
if(arg_OUT_RESULT_VAR)
|
||||
set(result_variable RESULT_VARIABLE proc_result)
|
||||
endif()
|
||||
|
||||
set(swallow_output "")
|
||||
if(arg_OUT_OUTPUT_VAR OR arg_QUIET)
|
||||
list(APPEND swallow_output OUTPUT_VARIABLE proc_output)
|
||||
endif()
|
||||
if(arg_OUT_ERROR_VAR OR arg_QUIET)
|
||||
list(APPEND swallow_output ERROR_VARIABLE proc_error)
|
||||
endif()
|
||||
if(NOT arg_QUIET)
|
||||
set(working_dir_message "")
|
||||
|
||||
qt_ir_is_verbose(verbose)
|
||||
if(verbose)
|
||||
set(working_dir_message " current working dir: ")
|
||||
if(NOT working_dir_value STREQUAL ".")
|
||||
string(APPEND working_dir_message "${working_dir_value}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
qt_ir_prettify_command_args(command_args_string "${arg_COMMAND_ARGS}")
|
||||
message("+ ${command_args_string}${working_dir_message}")
|
||||
endif()
|
||||
|
||||
qt_ir_unescape_semicolons(arg_COMMAND_ARGS "${arg_COMMAND_ARGS}")
|
||||
execute_process(
|
||||
COMMAND ${arg_COMMAND_ARGS}
|
||||
${working_dir}
|
||||
${result_variable}
|
||||
${swallow_output}
|
||||
${arg_EP_EXTRA_ARGS}
|
||||
)
|
||||
|
||||
if(arg_OUT_RESULT_VAR)
|
||||
set(${arg_OUT_RESULT_VAR} "${proc_result}" PARENT_SCOPE)
|
||||
endif()
|
||||
if(arg_OUT_OUTPUT_VAR)
|
||||
set(${arg_OUT_OUTPUT_VAR} "${proc_output}" PARENT_SCOPE)
|
||||
endif()
|
||||
if(arg_OUT_ERROR_VAR)
|
||||
set(${arg_OUT_ERROR_VAR} "${proc_error}" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Guards the escaped semicolon sequences with square brackets.
|
||||
function(qt_ir_escape_semicolons out_var input_string)
|
||||
string(REPLACE "\;" "[[;]]" ${out_var} "${input_string}")
|
||||
set(${out_var} "${${out_var}}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Removes the square bracket guards around semicolons and escape them.
|
||||
function(qt_ir_unescape_semicolons out_var input_string)
|
||||
string(REPLACE "[[;]]" "\;" ${out_var} "${input_string}")
|
||||
set(${out_var} "${${out_var}}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Converts the command line arguments to a nice bash runnable string
|
||||
function(qt_ir_prettify_command_args output args)
|
||||
list(JOIN args " " ${output})
|
||||
qt_ir_unescape_semicolons(${output} "${${output}}")
|
||||
set(${output} "${${output}}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# A higher level execute_process wrapper that can be used to execute a single command
|
||||
# that is a bit more opinionated and expects options related to init-repository
|
||||
# functionality.
|
||||
# It handles queietness, error handling and logging.
|
||||
# It also allows for slightly more compact syntax for calling processes.
|
||||
function(qt_ir_execute_process_and_log_and_handle_error)
|
||||
set(options
|
||||
NO_HANDLE_ERROR
|
||||
FORCE_VERBOSE
|
||||
FORCE_QUIET
|
||||
)
|
||||
set(oneValueArgs
|
||||
WORKING_DIRECTORY
|
||||
OUT_RESULT_VAR
|
||||
OUT_OUTPUT_VAR
|
||||
OUT_ERROR_VAR
|
||||
ERROR_MESSAGE
|
||||
)
|
||||
set(multiValueArgs
|
||||
COMMAND_ARGS
|
||||
EP_EXTRA_ARGS
|
||||
)
|
||||
cmake_parse_arguments(arg "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
qt_ir_get_option_value(quiet quiet)
|
||||
set(quiet_option "")
|
||||
if((quiet OR arg_FORCE_QUIET) AND NOT arg_FORCE_VERBOSE)
|
||||
set(quiet_option "QUIET")
|
||||
endif()
|
||||
|
||||
set(working_dir "")
|
||||
if(arg_WORKING_DIRECTORY)
|
||||
set(working_dir WORKING_DIRECTORY "${arg_WORKING_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
set(extra_args "")
|
||||
if(arg_EP_EXTRA_ARGS)
|
||||
set(extra_args EP_EXTRA_ARGS "${arg_EP_EXTRA_ARGS}")
|
||||
endif()
|
||||
|
||||
set(out_output_var "")
|
||||
if(arg_OUT_OUTPUT_VAR OR quiet)
|
||||
set(out_output_var OUT_OUTPUT_VAR proc_output)
|
||||
endif()
|
||||
|
||||
set(out_error_var "")
|
||||
if(arg_OUT_ERROR_VAR OR quiet)
|
||||
set(out_error_var OUT_ERROR_VAR proc_error)
|
||||
endif()
|
||||
|
||||
qt_ir_execute_process(
|
||||
${quiet_option}
|
||||
COMMAND_ARGS ${arg_COMMAND_ARGS}
|
||||
OUT_RESULT_VAR proc_result
|
||||
${extra_args}
|
||||
${working_dir}
|
||||
${out_output_var}
|
||||
${out_error_var}
|
||||
)
|
||||
|
||||
if(NOT proc_result EQUAL 0 AND NOT arg_NO_HANDLE_ERROR)
|
||||
set(error_message "")
|
||||
if(arg_ERROR_MESSAGE)
|
||||
set(error_message "${arg_ERROR_MESSAGE}\n")
|
||||
endif()
|
||||
|
||||
qt_ir_prettify_command_args(cmd "${arg_COMMAND_ARGS}")
|
||||
string(APPEND error_message "${cmd} exited with status: ${proc_result}\n")
|
||||
if(proc_output)
|
||||
string(APPEND error_message "stdout: ${proc_output}\n")
|
||||
endif()
|
||||
if(proc_error)
|
||||
string(APPEND error_message "stderr: ${proc_error}\n")
|
||||
endif()
|
||||
message(FATAL_ERROR "${error_message}")
|
||||
endif()
|
||||
|
||||
if(arg_OUT_RESULT_VAR)
|
||||
set(${arg_OUT_RESULT_VAR} "${proc_result}" PARENT_SCOPE)
|
||||
endif()
|
||||
if(arg_OUT_OUTPUT_VAR)
|
||||
set(${arg_OUT_OUTPUT_VAR} "${proc_output}" PARENT_SCOPE)
|
||||
endif()
|
||||
if(arg_OUT_ERROR_VAR)
|
||||
set(${arg_OUT_ERROR_VAR} "${proc_error}" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
@@ -1,17 +0,0 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
# Sets up the include paths for all the helpers init-repository uses.
|
||||
macro(qt_ir_setup_include_paths)
|
||||
list(APPEND CMAKE_MODULE_PATH
|
||||
"${CMAKE_CURRENT_LIST_DIR}"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/3rdparty/cmake"
|
||||
)
|
||||
include(QtIRHelpers)
|
||||
endmacro()
|
||||
|
||||
qt_ir_setup_include_paths()
|
||||
qt_ir_include_all_helpers()
|
||||
qt_ir_run_main_script("${CMAKE_CURRENT_SOURCE_DIR}" exit_reason)
|
||||
@@ -1,6 +1,3 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# The script produces the list of qt submodules that are required to build the submodules listed
|
||||
# in the QT_BUILD_SUBMODULES variable. The resulting list preserves the required build order.
|
||||
# Usage:
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# This script is to be called (ideally from a git-sync-to alias script):
|
||||
# cmake -DSYNC_TO_MODULE="$1" -DSYNC_TO_BRANCH="$2" -P cmake/QtSynchronizeRepo.cmake
|
||||
# Or as follows (ideally from a git-qt-foreach alias script):
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
# Sets up the include paths for all the helpers configure uses.
|
||||
macro(qt_tl_setup_include_paths)
|
||||
list(APPEND CMAKE_MODULE_PATH
|
||||
"${CMAKE_CURRENT_LIST_DIR}"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/3rdparty/cmake"
|
||||
)
|
||||
include(QtTopLevelHelpers)
|
||||
endmacro()
|
||||
|
||||
qt_tl_setup_include_paths()
|
||||
qt_tl_include_all_helpers()
|
||||
qt_tl_run_main_script()
|
||||
@@ -1,62 +1,3 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
macro(qt_tl_include_all_helpers)
|
||||
include(QtIRHelpers)
|
||||
qt_ir_include_all_helpers()
|
||||
endmacro()
|
||||
|
||||
function(qt_tl_run_toplevel_configure top_level_src_path)
|
||||
cmake_parse_arguments(arg "ALREADY_INITIALIZED" "" "" ${ARGV})
|
||||
|
||||
qt_ir_get_cmake_flag(ALREADY_INITIALIZED arg_ALREADY_INITIALIZED)
|
||||
|
||||
# Filter out init-repository specific arguments before passing them to
|
||||
# configure.
|
||||
qt_ir_get_args_from_optfile_configure_filtered("${OPTFILE}" configure_args
|
||||
${arg_ALREADY_INITIALIZED})
|
||||
# Get the path to the qtbase configure script.
|
||||
set(qtbase_dir_name "qtbase")
|
||||
set(configure_path "${top_level_src_path}/${qtbase_dir_name}/configure")
|
||||
if(CMAKE_HOST_WIN32)
|
||||
string(APPEND configure_path ".bat")
|
||||
endif()
|
||||
|
||||
if(NOT EXISTS "${configure_path}")
|
||||
message(FATAL_ERROR
|
||||
"The required qtbase/configure script was not found: ${configure_path}\n"
|
||||
"Try re-running configure with --init-submodules")
|
||||
endif()
|
||||
|
||||
# Make a build directory for qtbase in the current build directory.
|
||||
set(qtbase_build_dir "${CMAKE_CURRENT_BINARY_DIR}/${qtbase_dir_name}")
|
||||
file(MAKE_DIRECTORY "${qtbase_build_dir}")
|
||||
|
||||
qt_ir_execute_process_and_log_and_handle_error(
|
||||
COMMAND_ARGS "${configure_path}" -top-level ${configure_args}
|
||||
WORKING_DIRECTORY "${qtbase_build_dir}"
|
||||
FORCE_VERBOSE
|
||||
)
|
||||
endfunction()
|
||||
|
||||
function(qt_tl_run_main_script)
|
||||
if(NOT TOP_LEVEL_SRC_PATH)
|
||||
message(FATAL_ERROR "Assertion: configure TOP_LEVEL_SRC_PATH is not set")
|
||||
endif()
|
||||
|
||||
# Tell init-repository it is called from configure.
|
||||
qt_ir_set_option_value(from-configure TRUE)
|
||||
|
||||
# Run init-repository in-process.
|
||||
qt_ir_run_main_script("${TOP_LEVEL_SRC_PATH}" exit_reason)
|
||||
if(exit_reason AND NOT exit_reason STREQUAL "ALREADY_INITIALIZED")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Then run configure out-of-process.
|
||||
qt_tl_run_toplevel_configure("${TOP_LEVEL_SRC_PATH}" ${exit_reason})
|
||||
endfunction()
|
||||
|
||||
# Populates $out_module_list with all subdirectories that have a CMakeLists.txt file
|
||||
function(qt_internal_find_modules out_module_list)
|
||||
set(module_list "")
|
||||
@@ -74,7 +15,7 @@ endfunction()
|
||||
# poor man's yaml parser, populating $out_dependencies with all dependencies
|
||||
# in the $depends_file
|
||||
# Each entry will be in the format dependency/sha1/required
|
||||
function(qt_internal_parse_dependencies_yaml depends_file out_dependencies)
|
||||
function(qt_internal_parse_dependencies depends_file out_dependencies)
|
||||
file(STRINGS "${depends_file}" lines)
|
||||
set(eof_marker "---EOF---")
|
||||
list(APPEND lines "${eof_marker}")
|
||||
@@ -107,7 +48,7 @@ function(qt_internal_parse_dependencies_yaml depends_file out_dependencies)
|
||||
endif()
|
||||
endforeach()
|
||||
message(DEBUG
|
||||
"qt_internal_parse_dependencies_yaml for ${depends_file}\n dependencies: ${dependencies}")
|
||||
"qt_internal_parse_dependencies for ${depends_file}\n dependencies: ${dependencies}")
|
||||
set(${out_dependencies} "${dependencies}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
@@ -158,22 +99,8 @@ endfunction()
|
||||
# Keyword arguments:
|
||||
#
|
||||
# PARSED_DEPENDENCIES is a list of dependencies of module in the format that
|
||||
# qt_internal_parse_dependencies_yaml returns.
|
||||
# If this argument is not provided, either a module's dependencies.yaml or .gitmodules file is
|
||||
# used as the source of dependencies, depending on whether PARSE_GITMODULES option is enabled.
|
||||
#
|
||||
# PARSE_GITMODULES is a boolean that controls whether the .gitmodules or the dependencies.yaml
|
||||
# file of the repo are used for extracting dependencies. Defaults to FALSE, so uses
|
||||
# dependencies.yaml by default.
|
||||
#
|
||||
# EXCLUDE_OPTIONAL_DEPS is a boolean that controls whether optional dependencies are excluded from
|
||||
# the final result.
|
||||
#
|
||||
# GITMODULES_PREFIX_VAR is the prefix of all the variables containing dependencies for the
|
||||
# PARSE_GITMODULES mode.
|
||||
# The function expects the following variables to be set in the parent scope
|
||||
# ${arg_GITMODULES_PREFIX_VAR}_${submodule_name}_depends
|
||||
# ${arg_GITMODULES_PREFIX_VAR}_${submodule_name}_recommends
|
||||
# qt_internal_parse_dependencies returns. If this argument is not provided, dependencies.yaml of the
|
||||
# module is parsed.
|
||||
#
|
||||
# IN_RECURSION is an internal option that is set when the function is in recursion.
|
||||
#
|
||||
@@ -184,13 +111,10 @@ endfunction()
|
||||
#
|
||||
# NORMALIZE_REPO_NAME_IF_NEEDED Will remove 'tqtc-' from the beginning of submodule dependencies
|
||||
# if a tqtc- named directory does not exist.
|
||||
#
|
||||
# SKIP_MODULES Modules that should be skipped from evaluation completely.
|
||||
function(qt_internal_resolve_module_dependencies module out_ordered out_revisions)
|
||||
set(options IN_RECURSION NORMALIZE_REPO_NAME_IF_NEEDED PARSE_GITMODULES
|
||||
EXCLUDE_OPTIONAL_DEPS)
|
||||
set(oneValueArgs REVISION SKIPPED_VAR GITMODULES_PREFIX_VAR)
|
||||
set(multiValueArgs PARSED_DEPENDENCIES SKIP_MODULES)
|
||||
set(options IN_RECURSION NORMALIZE_REPO_NAME_IF_NEEDED)
|
||||
set(oneValueArgs REVISION SKIPPED_VAR)
|
||||
set(multiValueArgs PARSED_DEPENDENCIES)
|
||||
cmake_parse_arguments(arg "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
# Clear the property that stores the repositories we've already seen.
|
||||
@@ -198,10 +122,10 @@ function(qt_internal_resolve_module_dependencies module out_ordered out_revision
|
||||
set_property(GLOBAL PROPERTY _qt_internal_seen_repos)
|
||||
endif()
|
||||
|
||||
# Bail out if we've seen the module already or it was skipped explicitly from command line.
|
||||
# Bail out if we've seen the module already.
|
||||
qt_internal_resolve_module_dependencies_set_skipped(FALSE)
|
||||
get_property(seen GLOBAL PROPERTY _qt_internal_seen_repos)
|
||||
if(module IN_LIST seen OR module IN_LIST arg_SKIP_MODULES)
|
||||
if(module IN_LIST seen)
|
||||
qt_internal_resolve_module_dependencies_set_skipped(TRUE)
|
||||
return()
|
||||
endif()
|
||||
@@ -217,42 +141,10 @@ function(qt_internal_resolve_module_dependencies module out_ordered out_revision
|
||||
if(DEFINED arg_PARSED_DEPENDENCIES)
|
||||
set(dependencies "${arg_PARSED_DEPENDENCIES}")
|
||||
else()
|
||||
set(depends_file "${CMAKE_CURRENT_SOURCE_DIR}/${module}/dependencies.yaml")
|
||||
set(dependencies "")
|
||||
|
||||
if(NOT arg_PARSE_GITMODULES)
|
||||
set(depends_file "${CMAKE_CURRENT_SOURCE_DIR}/${module}/dependencies.yaml")
|
||||
if(EXISTS "${depends_file}")
|
||||
qt_internal_parse_dependencies_yaml("${depends_file}" dependencies)
|
||||
|
||||
if(arg_EXCLUDE_OPTIONAL_DEPS)
|
||||
set(filtered_dependencies "")
|
||||
foreach(dependency IN LISTS dependencies)
|
||||
string(REPLACE "/" ";" dependency_split "${dependency}")
|
||||
list(GET dependency_split 2 required)
|
||||
if(required)
|
||||
list(APPEND filtered_dependencies "${dependency}")
|
||||
endif()
|
||||
endforeach()
|
||||
set(dependencies "${filtered_dependencies}")
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
set(depends "${${arg_GITMODULES_PREFIX_VAR}_${dependency}_depends}")
|
||||
foreach(dependency IN LISTS depends)
|
||||
if(dependency)
|
||||
# The HEAD value is not really used, but we need to add something.
|
||||
list(APPEND dependencies "${dependency}/HEAD/TRUE")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set(recommends "${${arg_GITMODULES_PREFIX_VAR}_${dependency}_recommends}")
|
||||
if(NOT arg_EXCLUDE_OPTIONAL_DEPS)
|
||||
foreach(dependency IN LISTS recommends)
|
||||
if(dependency)
|
||||
list(APPEND dependencies "${dependency}/HEAD/FALSE")
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
if(EXISTS "${depends_file}")
|
||||
qt_internal_parse_dependencies("${depends_file}" dependencies)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -279,30 +171,11 @@ function(qt_internal_resolve_module_dependencies module out_ordered out_revision
|
||||
set_property(GLOBAL APPEND PROPERTY QT_REQUIRED_DEPS_FOR_${module} ${dependency})
|
||||
endif()
|
||||
|
||||
set(parse_gitmodules "")
|
||||
if(arg_PARSE_GITMODULES)
|
||||
set(parse_gitmodules "PARSE_GITMODULES")
|
||||
endif()
|
||||
|
||||
set(exclude_optional_deps "")
|
||||
if(arg_EXCLUDE_OPTIONAL_DEPS)
|
||||
set(exclude_optional_deps "EXCLUDE_OPTIONAL_DEPS")
|
||||
endif()
|
||||
|
||||
set(extra_options "")
|
||||
if(arg_SKIP_MODULES)
|
||||
list(APPEND extra_options SKIP_MODULES ${arg_SKIP_MODULES})
|
||||
endif()
|
||||
|
||||
qt_internal_resolve_module_dependencies(${dependency} dep_ordered dep_revisions
|
||||
REVISION "${revision}"
|
||||
SKIPPED_VAR skipped
|
||||
IN_RECURSION
|
||||
${normalize_arg}
|
||||
${parse_gitmodules}
|
||||
${exclude_optional_deps}
|
||||
GITMODULES_PREFIX_VAR ${arg_GITMODULES_PREFIX_VAR}
|
||||
${extra_options}
|
||||
)
|
||||
if(NOT skipped)
|
||||
list(APPEND ordered ${dep_ordered})
|
||||
@@ -324,49 +197,20 @@ endfunction()
|
||||
# Arguments:
|
||||
# modules is the initial list of repos.
|
||||
# out_all_ordered is the variable name where the result is stored.
|
||||
# PARSE_GITMODULES and GITMODULES_PREFIX_VAR are keyowrd arguments that change the
|
||||
# source of dependencies parsing from dependencies.yaml to .gitmodules.
|
||||
# EXCLUDE_OPTIONAL_DEPS is a keyword argument that excludes optional dependencies from the result.
|
||||
# See qt_internal_resolve_module_dependencies for details.
|
||||
#
|
||||
# SKIP_MODULES Modules that should be skipped from evaluation completely.
|
||||
#
|
||||
# See qt_internal_resolve_module_dependencies for side effects.
|
||||
function(qt_internal_sort_module_dependencies modules out_all_ordered)
|
||||
set(options PARSE_GITMODULES EXCLUDE_OPTIONAL_DEPS)
|
||||
set(oneValueArgs GITMODULES_PREFIX_VAR)
|
||||
set(multiValueArgs SKIP_MODULES)
|
||||
cmake_parse_arguments(arg "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
set(parse_gitmodules "")
|
||||
if(arg_PARSE_GITMODULES)
|
||||
set(parse_gitmodules "PARSE_GITMODULES")
|
||||
endif()
|
||||
|
||||
set(exclude_optional_deps "")
|
||||
if(arg_EXCLUDE_OPTIONAL_DEPS)
|
||||
set(exclude_optional_deps "EXCLUDE_OPTIONAL_DEPS")
|
||||
endif()
|
||||
|
||||
# Create a fake repository "all_selected_repos" that has all repositories from the input as
|
||||
# required dependency. The format must match what qt_internal_parse_dependencies_yaml produces.
|
||||
# required dependency. The format must match what qt_internal_parse_dependencies produces.
|
||||
set(all_selected_repos_as_parsed_dependencies)
|
||||
foreach(module IN LISTS modules)
|
||||
list(APPEND all_selected_repos_as_parsed_dependencies "${module}/HEAD/FALSE")
|
||||
endforeach()
|
||||
|
||||
set(extra_args "")
|
||||
if(arg_SKIP_MODULES)
|
||||
set(extra_args SKIP_MODULES ${arg_SKIP_MODULES})
|
||||
endif()
|
||||
|
||||
qt_internal_resolve_module_dependencies(all_selected_repos ordered unused_revisions
|
||||
PARSED_DEPENDENCIES ${all_selected_repos_as_parsed_dependencies}
|
||||
NORMALIZE_REPO_NAME_IF_NEEDED
|
||||
${exclude_optional_deps}
|
||||
${parse_gitmodules}
|
||||
GITMODULES_PREFIX_VAR ${arg_GITMODULES_PREFIX_VAR}
|
||||
${extra_args}
|
||||
)
|
||||
|
||||
# Drop "all_selected_repos" from the output. It depends on all selected repos, thus it must be
|
||||
|
||||
@@ -1,92 +0,0 @@
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# This script writes its arguments to the file determined by OUT_FILE.
|
||||
# Each argument appears on a separate line.
|
||||
# This is used for writing the init-repository.opt file.
|
||||
#
|
||||
# This script takes the following arguments:
|
||||
# IN_FILE: The input file. The whole command line as one string, or one argument per line.
|
||||
# REDO_FILE: A file containing extra commands to be joined with IN_FILE.
|
||||
# OUT_FILE: The output file. One argument per line.
|
||||
# SKIP_ARGS: Number of arguments to skip from the front of the arguments list.
|
||||
# IGNORE_ARGS: List of arguments to be ignored, i.e. that are not written.
|
||||
#
|
||||
# If the REDO_FILE is given, its parameters will be merged with IN_FILE parameters
|
||||
# and be written into the OUT_FILE.
|
||||
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
# Read arguments from IN_FILE and separate them.
|
||||
file(READ "${IN_FILE}" raw_args)
|
||||
# To catch cases where the path ends with an `\`, e.g., `-prefix "C:\Path\"`
|
||||
string(REPLACE "\\\"" "\"" raw_args "${raw_args}")
|
||||
string(REPLACE ";" "[[;]]" raw_args "${raw_args}")
|
||||
|
||||
separate_arguments(args NATIVE_COMMAND "${raw_args}")
|
||||
|
||||
string(REPLACE "\;" ";" args "${args}")
|
||||
string(REPLACE "[[;]]" "\;" args "${args}")
|
||||
|
||||
if(DEFINED REDO_FILE)
|
||||
file(READ "${REDO_FILE}" raw_redo_args)
|
||||
separate_arguments(redo_args NATIVE_COMMAND "${raw_redo_args}")
|
||||
|
||||
if(args)
|
||||
list(FIND args "--" args_ddash_loc)
|
||||
list(FIND redo_args "--" redo_ddash_loc)
|
||||
if("${redo_ddash_loc}" STREQUAL "-1")
|
||||
if("${args_ddash_loc}" STREQUAL "-1")
|
||||
list(LENGTH args args_ddash_loc)
|
||||
endif()
|
||||
# Avoid adding an empty line for an empty -redo
|
||||
if(NOT "${redo_args}" STREQUAL "")
|
||||
list(INSERT args ${args_ddash_loc} "${redo_args}")
|
||||
endif()
|
||||
else()
|
||||
# Handling redo's configure options
|
||||
list(SUBLIST redo_args 0 ${redo_ddash_loc} redo_config_args)
|
||||
if(redo_config_args)
|
||||
if("${args_ddash_loc}" STREQUAL "-1")
|
||||
list(APPEND args "${redo_config_args}")
|
||||
else()
|
||||
list(INSERT args ${args_ddash_loc} "${redo_config_args}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Handling redo's CMake options
|
||||
list(LENGTH redo_args redo_args_len)
|
||||
math(EXPR redo_ddash_loc "${redo_ddash_loc} + 1")
|
||||
# Catch an unlikely case of -redo being called with an empty --, ie., `-redo --`
|
||||
if(NOT ${redo_ddash_loc} STREQUAL ${redo_args_len})
|
||||
list(SUBLIST redo_args ${redo_ddash_loc} -1 redo_cmake_args)
|
||||
endif()
|
||||
|
||||
if(DEFINED redo_cmake_args)
|
||||
if("${args_ddash_loc}" STREQUAL "-1")
|
||||
list(APPEND args "--")
|
||||
endif()
|
||||
list(APPEND args "${redo_cmake_args}")
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
list(APPEND args "${redo_args}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Skip arguments if requested
|
||||
if(DEFINED SKIP_ARGS)
|
||||
foreach(i RANGE 1 ${SKIP_ARGS})
|
||||
list(POP_FRONT args)
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
# Write config.opt
|
||||
set(content "")
|
||||
foreach(arg IN LISTS args)
|
||||
if(NOT arg IN_LIST IGNORE_ARGS)
|
||||
string(APPEND content "${arg}\n")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
file(WRITE "${OUT_FILE}" "${content}")
|
||||
@@ -2,6 +2,7 @@ Version: 2
|
||||
Include: [
|
||||
cmake_platforms_qemu.yaml,
|
||||
cmake_platforms_qemu_qnx710.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
cmake_platforms_target_android.yaml,
|
||||
cmake_platforms_wasm.yaml,
|
||||
macos.yaml
|
||||
@@ -23,7 +24,7 @@ Configurations:
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
||||
]
|
||||
# Test on Ubuntu 22.04 X11
|
||||
-
|
||||
@@ -38,24 +39,6 @@ Configurations:
|
||||
Compiler: 'GCC'
|
||||
Features: ['Sccache', 'TestOnly']
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
# Build on Ubuntu 24.04 ARM64 and test on both X11 and Wayland later
|
||||
-
|
||||
Id: 'ubuntu-24.04-arm64'
|
||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['UseConfigure', 'DoNotRunTests']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
]
|
||||
# Test on Ubuntu 24.04 ARM64 X11
|
||||
-
|
||||
Id: 'ubuntu-24.04-arm64-x11-tests'
|
||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['TestOnly', 'InsignificantTests']
|
||||
Platform dependency: 'ubuntu-24.04-arm64'
|
||||
-
|
||||
Id: 'opensuse-15.5-developer-build'
|
||||
Template: 'qtci-linux-openSUSE-15.5-x86_64-52'
|
||||
@@ -81,23 +64,35 @@ Configurations:
|
||||
Id: 'windows-10_22h2-msvc2019'
|
||||
Template: 'qtci-windows-10_22H2-x86_64-51'
|
||||
Compiler: 'MSVC2019'
|
||||
Features: ['Sccache', "DebugAndRelease", 'UseConfigure']
|
||||
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure']
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\..',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DINPUT_headersclean=ON',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_22h2-msvc2019'
|
||||
Template: 'qtci-windows-11_22H2-x86_64-51'
|
||||
Compiler: 'MSVC2019'
|
||||
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure']
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\..',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_23H2-msvc2019'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-52'
|
||||
Compiler: 'MSVC2019'
|
||||
Features: ['Sccache', "DebugAndRelease", 'UseConfigure']
|
||||
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure']
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\..',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DINPUT_headersclean=ON',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
@@ -109,7 +104,19 @@ Configurations:
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\.. -DMySQL_ROOT={{.Env.ENV_MySQL_ROOT}} -DMySQL_LIBRARY_DIR={{.Env.ENV_MySQL_LIBRARY_DIR}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DFEATURE_clangcpp=OFF',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_22h2-msvc2022'
|
||||
Template: 'qtci-windows-11_22H2-x86_64-51'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['Sccache', "DebugAndRelease", 'UseConfigure']
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\..',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
@@ -118,24 +125,13 @@ Configurations:
|
||||
Template: 'qtci-windows-11_23H2-x86_64-52'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['Sccache', "DebugAndRelease", 'UseConfigure', 'Packaging']
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -c++std c++20'
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\..',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DFEATURE_clangcpp=OFF',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_22h2-arm64-msvc2022'
|
||||
Template: 'qtci-windows-11_22H2-aarch64-51'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['Packaging', 'DebugAndRelease', 'UseConfigure', 'InsignificantTests']
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -c++std c++20 -no-sql-psql'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DFEATURE_clangcpp=OFF -DFEATURE_qdoc=OFF',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-10_22h2-msvc2019-developer-build'
|
||||
Template: 'qtci-windows-10_22H2-x86_64-51'
|
||||
@@ -143,7 +139,7 @@ Configurations:
|
||||
Features: ['Sccache', "DebugAndRelease", 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-debug-and-release -make examples -developer-build -force-debug-info -qt-zlib'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DMySQL_ROOT={{.Env.ENV_MySQL_ROOT}} -DMySQL_LIBRARY_DIR={{.Env.ENV_MySQL_LIBRARY_DIR}}',
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\..',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
|
||||
@@ -153,7 +149,7 @@ Configurations:
|
||||
Template: 'qtci-windows-10_22H2-x86_64-51'
|
||||
Compiler: 'MSVC2019'
|
||||
Target arch: 'arm64'
|
||||
Features: ['Sccache', 'DisableTests', 'TargetBuildOnly', 'UseConfigure']
|
||||
Features: ['Sccache', 'DisableTests', 'TargetBuildOnly', 'Packaging', 'UseConfigure']
|
||||
Platform dependency: 'windows-10_22h2-msvc2019-developer-build'
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc',
|
||||
@@ -164,29 +160,54 @@ Configurations:
|
||||
'OPENSSL_LIB_x64={{.Env.OPENSSL_LIB_x64_arm64}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_22h2-msvc2019-developer-build'
|
||||
Template: 'qtci-windows-11_22H2-x86_64-51'
|
||||
Compiler: 'MSVC2019'
|
||||
Features: ['Sccache', "DebugAndRelease", 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-debug-and-release -make examples -developer-build -force-debug-info -qt-zlib -c++std c++20'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\..',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_23H2-msvc2019-developer-build'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-52'
|
||||
Compiler: 'MSVC2019'
|
||||
Features: ['Sccache', "DebugAndRelease", 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-debug-and-release -make examples -developer-build -force-debug-info -qt-zlib'
|
||||
Configure arguments: '-debug-and-release -make examples -developer-build -force-debug-info -qt-zlib -c++std c++20'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DMySQL_ROOT={{.Env.ENV_MySQL_ROOT}} -DMySQL_LIBRARY_DIR={{.Env.ENV_MySQL_LIBRARY_DIR}}',
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\..',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_22h2-msvc2019-arm64'
|
||||
Template: 'qtci-windows-11_22H2-x86_64-51'
|
||||
Compiler: 'MSVC2019'
|
||||
Target arch: 'arm64'
|
||||
Features: ['Sccache', 'DisableTests', 'TargetBuildOnly', 'Packaging', 'UseConfigure']
|
||||
Platform dependency: 'windows-11_22h2-msvc2019-developer-build'
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc',
|
||||
'TARGET_CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_23H2-msvc2019-arm64'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-52'
|
||||
Compiler: 'MSVC2019'
|
||||
Target arch: 'arm64'
|
||||
Features: ['Sccache', 'DisableTests', 'TargetBuildOnly', 'UseConfigure']
|
||||
Features: ['Sccache', 'DisableTests', 'TargetBuildOnly', 'Packaging', 'UseConfigure']
|
||||
Platform dependency: 'windows-11_23H2-msvc2019-developer-build'
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc',
|
||||
'TARGET_CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
@@ -197,7 +218,7 @@ Configurations:
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DFEATURE_native_grpc=OFF -DINPUT_headersclean=ON'
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DFEATURE_native_grpc=OFF'
|
||||
]
|
||||
-
|
||||
Id: 'rhel-9.2'
|
||||
@@ -207,7 +228,7 @@ Configurations:
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
||||
]
|
||||
# Build on Debian-11.6 and split test on Wayland and offscreen later
|
||||
-
|
||||
@@ -241,16 +262,16 @@ Configurations:
|
||||
Features: ['Packaging', 'Sccache', 'DebugAndRelease', 'DisableTests', 'UseConfigure', 'WarningsAreErrors']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include -DFFMPEG_DIR={{.Env.FFMPEG_DIR_IOS}}'
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
||||
]
|
||||
-
|
||||
Id: 'windows-10_22h2-mingw13'
|
||||
Id: 'windows-10_22h2-mingw11'
|
||||
Template: 'qtci-windows-10_22H2-x86_64-51'
|
||||
Compiler: 'Mingw'
|
||||
Features: ['Packaging', 'Sccache', 'UseConfigure']
|
||||
Configure arguments: '-release -force-debug-info -separate-debug-info -nomake examples'
|
||||
Environment variables: [
|
||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
|
||||
'CMAKE_ARGS=-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MINGW}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_mingw}}',
|
||||
@@ -264,7 +285,20 @@ Configurations:
|
||||
Configure arguments: '-release -force-debug-info -separate-debug-info -nomake examples'
|
||||
Environment variables: [
|
||||
'Path=C:\llvm-mingw\bin;{{.Env.Path}}',
|
||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c -DMySQL_ROOT={{.Env.ENV_MySQL_ROOT}} -DMySQL_LIBRARY_DIR={{.Env.ENV_MySQL_LIBRARY_DIR}}',
|
||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_LLVM_MINGW}} -DQT_DEPLOY_FFMPEG=TRUE -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'LLVM_INSTALL_DIR=C:\llvm-mingw',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_llvm_mingw}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_22h2-llvm'
|
||||
Template: 'qtci-windows-11_22H2-x86_64-51'
|
||||
Compiler: 'Clang'
|
||||
Features: ['Packaging','Sccache', 'UseConfigure']
|
||||
Configure arguments: '-release -force-debug-info -separate-debug-info -nomake examples'
|
||||
Environment variables: [
|
||||
'Path=C:\llvm-mingw\bin;{{.Env.Path}}',
|
||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_LLVM_MINGW}} -DQT_DEPLOY_FFMPEG=TRUE -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'LLVM_INSTALL_DIR=C:\llvm-mingw',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_llvm_mingw}}',
|
||||
@@ -283,27 +317,40 @@ Configurations:
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_llvm_mingw}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-10_22h2-mingw13-developer-build'
|
||||
Id: 'windows-10_22h2-mingw11-developer-build'
|
||||
Template: 'qtci-windows-10_22H2-x86_64-51'
|
||||
Compiler: 'Mingw'
|
||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-developer-build -release -force-debug-info -separate-debug-info -make examples'
|
||||
Environment variables: [
|
||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
'CMAKE_ARGS=-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c -DMySQL_ROOT={{.Env.ENV_MySQL_ROOT}} -DMySQL_LIBRARY_DIR={{.Env.ENV_MySQL_LIBRARY_DIR}}',
|
||||
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
|
||||
'CMAKE_ARGS=-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MINGW}} -DQT_DEPLOY_FFMPEG=TRUE -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c -DFEATURE_native_grpc=OFF',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_mingw}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_mingw}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_23H2-mingw13-developer-build'
|
||||
Id: 'windows-11_22h2-mingw11-developer-build'
|
||||
Template: 'qtci-windows-11_22H2-x86_64-51'
|
||||
Compiler: 'Mingw'
|
||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-developer-build -release -force-debug-info -separate-debug-info -make examples'
|
||||
Environment variables: [
|
||||
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
|
||||
'CMAKE_ARGS=-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MINGW}} -DQT_DEPLOY_FFMPEG=TRUE -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c -DFEATURE_native_grpc=OFF',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_mingw}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_mingw}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_23H2-mingw11-developer-build'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-52'
|
||||
Compiler: 'Mingw'
|
||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-developer-build -release -force-debug-info -separate-debug-info -make examples'
|
||||
Environment variables: [
|
||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
'CMAKE_ARGS=-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c -DMySQL_ROOT={{.Env.ENV_MySQL_ROOT}} -DMySQL_LIBRARY_DIR={{.Env.ENV_MySQL_LIBRARY_DIR}}',
|
||||
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
|
||||
'CMAKE_ARGS=-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MINGW}} -DQT_DEPLOY_FFMPEG=TRUE -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c -DFEATURE_native_grpc=OFF',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_mingw}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_mingw}}',
|
||||
@@ -314,7 +361,7 @@ Configurations:
|
||||
Compiler: 'GCC'
|
||||
Features: ['Packaging','DebianPackaging','DisableTests', 'Insignificant']
|
||||
Environment variables: [
|
||||
'DEBIAN_RULES_REF=6.8_dev',
|
||||
'DEBIAN_RULES_REF=6.7_dev',
|
||||
'COIN_TARGET_DIST=tqtc-jammy',
|
||||
'COIN_EXTRA_DEBIAN_PACKAGES={{.Env.HOME}}/debian_packages/',
|
||||
'COIN_SBUILD_CHROOT=jammy-arm64-sbuild',
|
||||
@@ -327,7 +374,7 @@ Configurations:
|
||||
Compiler: 'GCC'
|
||||
Features: ['Packaging','DebianPackaging','DisableTests', 'Insignificant']
|
||||
Environment variables: [
|
||||
'DEBIAN_RULES_REF=6.8_dev',
|
||||
'DEBIAN_RULES_REF=6.7_dev',
|
||||
'COIN_TARGET_DIST=tqtc-jammy',
|
||||
'COIN_EXTRA_DEBIAN_PACKAGES={{.Env.HOME}}/debian_packages/',
|
||||
'COIN_SBUILD_CHROOT=jammy-amd64-sbuild',
|
||||
|
||||
@@ -7,7 +7,7 @@ Configurations:
|
||||
Target arch: 'armv7'
|
||||
Compiler: 'GCC'
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
Features: ['Sccache', 'UseConfigure', 'Insignificant']
|
||||
Features: ['Sccache', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -developer-build -no-warnings-are-errors -make examples -qt-harfbuzz -device linux-imx7-g++ -device-option "CROSS_COMPILE={{.Env.QEMUARMV7_TOOLCHAIN_CROSS_COMPILE}}" -device-option "DISTRO_OPTS=hard-float boot2qt" -no-feature-forkfd_pidfd',
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARMV7_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
|
||||
@@ -24,7 +24,7 @@ Configurations:
|
||||
Target arch: 'arm64'
|
||||
Compiler: 'GCC'
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
Features: ['Sccache', 'UseConfigure', 'Insignificant']
|
||||
Features: ['Sccache', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -developer-build -no-warnings-are-errors -nomake examples -qt-harfbuzz -device linux-generic-g++ -device-option "CROSS_COMPILE={{.Env.QEMUARM64_TOOLCHAIN_CROSS_COMPILE}}" -device-option "DISTRO_OPTS=boot2qt" -no-feature-forkfd_pidfd',
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARM64_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
|
||||
|
||||
@@ -8,7 +8,7 @@ Configurations:
|
||||
Compiler: 'Clang'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
Features: ['VMSize8', 'UseConfigure', 'DisableTests']
|
||||
Features: ['Packaging', 'VMSize8', 'UseConfigure', 'Insignificant', 'DisableTests']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-release -developer-build -force-debug-info -qpa eglfs -nomake examples',
|
||||
'TARGET_CMAKE_ARGS=-DBUILD_SHARED_LIBS=OFF -DWARNINGS_ARE_ERRORS=OFF -DCMAKE_TOOLCHAIN_FILE="{{.Env.WIND_CC_SYSROOT}}/mk/rtp.toolchain.cmake" -DFEATURE_vulkan=OFF -DQT_QMAKE_TARGET_MKSPEC=vxworks-clang -DQT_HOST_PATH=/home/qt/work/install -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_STAGING_PREFIX:PATH=/home/qt/work/install/target'
|
||||
|
||||
@@ -22,8 +22,8 @@ Configurations:
|
||||
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
|
||||
]
|
||||
-
|
||||
Id: 'macos-minimal-static'
|
||||
Template: 'qtci-macos-13-x86_64-103'
|
||||
Id: 'macos-11-minimal-static'
|
||||
Template: 'qtci-macos-11-x86_64-106'
|
||||
Compiler: 'Clang'
|
||||
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -static -no-framework'
|
||||
|
||||
@@ -22,17 +22,17 @@ Configurations:
|
||||
Target arch: 'armv7'
|
||||
Compiler: 'Mingw'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'windows-10_22h2-mingw13'
|
||||
Platform dependency: 'windows-10_22h2-mingw11'
|
||||
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'DisableTests', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
|
||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis armeabi-v7a -no-feature-pkg-config',
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH={{.Env.Protobuf_ROOT_mingw}} -DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_ARMV7}} -DFEATURE_native_grpc=OFF -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR={{.Env.Protobuf_ROOT_msvc}}/include',
|
||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
|
||||
]
|
||||
-
|
||||
Id: 'android-9-x86-on-linux'
|
||||
Id: 'android-8-x86-on-linux'
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Target os: 'Android_ANY'
|
||||
Target arch: 'x86'
|
||||
@@ -45,7 +45,7 @@ Configurations:
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86}} -DFEATURE_native_grpc=OFF -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}',
|
||||
'ANDROID_EMULATOR=emulator_x86_api_28'
|
||||
'ANDROID_EMULATOR=emulator_x86_api_26'
|
||||
]
|
||||
-
|
||||
Id: 'android-14-x86_64-on-linux'
|
||||
|
||||
@@ -18,10 +18,10 @@ Configurations:
|
||||
Target os: 'WebAssembly'
|
||||
Compiler: 'Mingw'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'windows-10_22h2-mingw13'
|
||||
Platform dependency: 'windows-10_22h2-mingw11'
|
||||
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'Path={{.Env.EMSDK_PATH}};{{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
'Path={{.Env.EMSDK_PATH}};{{.Env.MINGW1120}}\bin;{{.Env.Path}}',
|
||||
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
|
||||
'TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -nomake examples',
|
||||
'TARGET_CMAKE_ARGS=-DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
||||
|
||||
@@ -2,7 +2,7 @@ Version: 2
|
||||
Configurations:
|
||||
-
|
||||
Id: "ios-tests-on-macos"
|
||||
Template: 'qtci-macos-13-x86_64-103'
|
||||
Template: 'qtci-macos-12-x86_64-106'
|
||||
Target os: 'IOS_ANY'
|
||||
Target arch: 'arm64'
|
||||
Compiler: 'Clang'
|
||||
|
||||
@@ -14,4 +14,4 @@ Configurations:
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF',
|
||||
'ANDROID_EMULATOR=emulator_x86_api_28']
|
||||
'ANDROID_EMULATOR=emulator_x86_api_26']
|
||||
|
||||
@@ -9,7 +9,7 @@ Configurations:
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: [
|
||||
'rhel-8.8',
|
||||
'android-9-x86-on-linux',
|
||||
'android-8-x86-on-linux',
|
||||
'android-14-x86_64-on-linux'
|
||||
]
|
||||
Features: [
|
||||
@@ -21,8 +21,8 @@ Configurations:
|
||||
]
|
||||
Environment variables: [
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-host=QT_CI_ARTIFACT_ID_PATH_rhel-8.8',
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-x86=QT_CI_ARTIFACT_ID_PATH_android-9-x86-on-linux',
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-x86=QT_CI_ARTIFACT_ID_PATH_android-8-x86-on-linux',
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-x86_64=QT_CI_ARTIFACT_ID_PATH_android-14-x86_64-on-linux',
|
||||
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_ANDROID_ABIS="x86;x86_64"',
|
||||
'ANDROID_EMULATOR=emulator_x86_api_28'
|
||||
'ANDROID_EMULATOR=emulator_x86_api_26'
|
||||
]
|
||||
|
||||
@@ -9,20 +9,20 @@ Configurations:
|
||||
|
||||
-
|
||||
Id: 'macos-universal-on-x86_64'
|
||||
Template: 'qtci-macos-14-x86_64-105'
|
||||
Template: 'qtci-macos-13-x86_64-103'
|
||||
Compiler: 'Clang'
|
||||
Target arch: 'x86_64-arm64'
|
||||
Features: ['Packaging', 'Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -framework'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DODBC_ROOT=/usr/local/opt/libiodbc -DPostgreSQL_ROOT={{.Env.POSTGRESQLBINPATH}}/.. -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFEATURE_gds=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DINPUT_headersclean=ON',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFEATURE_gds=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF',
|
||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf'
|
||||
]
|
||||
|
||||
-
|
||||
Id: 'macos-universal-on-arm64'
|
||||
Template: 'qtci-macos-14-arm-106'
|
||||
Template: 'qtci-macos-13-arm64'
|
||||
Compiler: 'Clang'
|
||||
Target arch: 'x86_64-arm64'
|
||||
Features: ['DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
|
||||
@@ -30,13 +30,19 @@ Configurations:
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"',
|
||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
|
||||
]
|
||||
|
||||
# Test on all supported macOS versions (deployment targets)
|
||||
|
||||
# On x86_64
|
||||
|
||||
-
|
||||
Id: 'macos-11-x86_64-tests'
|
||||
Template: 'qtci-macos-11-x86_64-106'
|
||||
Compiler: 'Clang'
|
||||
Features: ['Sccache', 'TestOnly', 'Packaging']
|
||||
Platform dependency: 'macos-universal-on-x86_64'
|
||||
-
|
||||
Id: 'macos-12-x86_64-tests'
|
||||
Template: 'qtci-macos-12-x86_64-106'
|
||||
@@ -64,24 +70,12 @@ Configurations:
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly', 'Packaging']
|
||||
Platform dependency: 'macos-universal-on-x86_64'
|
||||
-
|
||||
Id: 'macos-12-arm64-tart-tests'
|
||||
Template: 'qtci-macos-12-arm-102'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-universal-on-x86_64'
|
||||
-
|
||||
Id: 'macos-13-arm64-tests'
|
||||
Template: 'qtci-macos-13-arm64'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly', 'Packaging']
|
||||
Platform dependency: 'macos-universal-on-x86_64'
|
||||
-
|
||||
Id: 'macos-13-arm64-tart-tests'
|
||||
Template: 'qtci-macos-13-arm-107'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-universal-on-x86_64'
|
||||
-
|
||||
Id: 'macos-14-arm64-tests'
|
||||
Template: 'qtci-macos-14-arm-106'
|
||||
@@ -97,12 +91,6 @@ Configurations:
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-universal-on-arm64'
|
||||
-
|
||||
Id: 'macos-12-arm-on-arm64-tart-tests'
|
||||
Template: 'qtci-macos-12-arm-102'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-universal-on-arm64'
|
||||
-
|
||||
Id: 'macos-12-arm-on-x86_64-tests'
|
||||
Template: 'qtci-macos-12-x86_64-106'
|
||||
@@ -129,8 +117,8 @@ Configurations:
|
||||
# Build on recent macOS version with latest Xcode
|
||||
|
||||
-
|
||||
Id: 'macos-14-x86_64-developer-build'
|
||||
Template: 'qtci-macos-14-x86_64-105'
|
||||
Id: 'macos-13-x86_64-developer-build'
|
||||
Template: 'qtci-macos-13-x86_64-103'
|
||||
Compiler: 'Clang'
|
||||
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-developer-build -release -force-debug-info -no-pch -no-framework -qtnamespace TestNamespace -make examples'
|
||||
@@ -140,8 +128,8 @@ Configurations:
|
||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf',
|
||||
]
|
||||
-
|
||||
Id: 'macos-14-arm64-developer-build'
|
||||
Template: 'qtci-macos-14-arm-106'
|
||||
Id: 'macos-13-arm64-developer-build'
|
||||
Template: 'qtci-macos-13-arm64'
|
||||
Compiler: 'Clang'
|
||||
Features: ['DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-developer-build -nomake examples -release -force-debug-info -separate-debug-info -framework'
|
||||
@@ -152,33 +140,28 @@ Configurations:
|
||||
]
|
||||
|
||||
# Test on all supported macOS versions (deployment targets)
|
||||
|
||||
-
|
||||
Id: 'macos-11-arm64-developer-build-tests'
|
||||
Template: 'qtci-macos-11.0-arm64'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-13-arm64-developer-build'
|
||||
-
|
||||
Id: 'macos-12-arm64-developer-build-tests'
|
||||
Template: 'qtci-macos-12-arm64'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-14-arm64-developer-build'
|
||||
-
|
||||
Id: 'macos-12-arm64-tart-developer-build-tests'
|
||||
Template: 'qtci-macos-12-arm-102'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-14-arm64-developer-build'
|
||||
Platform dependency: 'macos-13-arm64-developer-build'
|
||||
-
|
||||
Id: 'macos-13-arm64-developer-build-tests'
|
||||
Template: 'qtci-macos-13-arm64'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-14-arm64-developer-build'
|
||||
-
|
||||
Id: 'macos-13-arm64-tart-developer-build-tests'
|
||||
Template: 'qtci-macos-13-arm-107'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-14-arm64-developer-build'
|
||||
Platform dependency: 'macos-13-arm64-developer-build'
|
||||
-
|
||||
Id: 'macos-14-arm64-developer-build-tests'
|
||||
Template: 'qtci-macos-14-arm-106'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly']
|
||||
Platform dependency: 'macos-14-arm64-developer-build'
|
||||
Platform dependency: 'macos-13-arm64-developer-build'
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
Version: 2
|
||||
Module only: True
|
||||
Include: [yocto.yaml]
|
||||
Configurations: []
|
||||
@@ -9,5 +9,5 @@ Configurations:
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
||||
]
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
Version: 2
|
||||
Module only: True
|
||||
Configurations:
|
||||
-
|
||||
Id: 'ubuntu-22.04-axivion'
|
||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Sccache', 'UseConfigure', 'DisableTests', 'Axivion_qtapplicationmanager', 'VMSize8']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
]
|
||||
|
||||
@@ -9,5 +9,5 @@ Configurations:
|
||||
Configure arguments: '-nomake examples -release -c++std c++17 -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON'
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DFEATURE_clangcpp=OFF'
|
||||
]
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
Version: 2
|
||||
Module only: True
|
||||
Configurations:
|
||||
-
|
||||
Id: 'ubuntu-22.04-lcov'
|
||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Sccache', 'UseConfigure', 'lcov', 'VMSize8', 'DisableTests']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
]
|
||||
|
||||
@@ -13,8 +13,7 @@ Configurations:
|
||||
Features: ['Sccache', 'UseConfigure', 'InsignificantTests']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DINPUT_headersclean=ON'
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY'
|
||||
]
|
||||
-
|
||||
# default.yaml
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
Version: 2
|
||||
Configurations:
|
||||
# cmake_platforms.yaml
|
||||
# Build on Ubuntu 24.04 ARM64 and test on both X11 and Wayland later
|
||||
-
|
||||
Id: 'ubuntu-24.04-arm64-documentation'
|
||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Documentation', 'UseConfigure', 'DoNotRunTests']
|
||||
Configure arguments: '-make examples -developer-build -c++std c++20 -linker gold -qtlibinfix TestInfix -qtnamespace TestNamespace'
|
||||
Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}']
|
||||
# Test on Ubuntu 24.04 ARM64 X11
|
||||
-
|
||||
Id: 'ubuntu-24.04-arm64-documentation-x11-tests'
|
||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['TestDocs', 'TestOnly', 'InsignificantTests']
|
||||
Platform dependency: 'ubuntu-24.04-arm64-documentation'
|
||||
@@ -8,13 +8,6 @@ Configurations:
|
||||
Configure arguments: ''
|
||||
Environment variables: []
|
||||
Environment script: ['%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
|
||||
-
|
||||
Template: 'qtci-windows-10_22H2-x86_64-51'
|
||||
Compiler: 'MSVC2019'
|
||||
Features: ['Packaging', 'Sccache', 'DebugAndRelease', 'DisableTests']
|
||||
Configure arguments: ''
|
||||
Environment variables: []
|
||||
Environment script: ['%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
|
||||
-
|
||||
Template: 'qtci-windows-10-x86-4'
|
||||
Compiler: 'MSVC2019'
|
||||
@@ -29,7 +22,13 @@ Configurations:
|
||||
Configure arguments: ''
|
||||
Environment variables: []
|
||||
-
|
||||
Template: 'qtci-macos-12-x86_64-106'
|
||||
Template: 'qtci-linux-RHEL-9.2-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Qt5', 'Sccache', 'DebugAndRelease']
|
||||
Configure arguments: ''
|
||||
Environment variables: []
|
||||
-
|
||||
Template: 'qtci-macos-11-x86_64-106'
|
||||
Compiler: 'Clang'
|
||||
Features: ['Packaging', 'Sccache', 'DebugAndRelease']
|
||||
Configure arguments: ''
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations:
|
||||
# Test on Debian-11.6 Wayland
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations:
|
||||
-
|
||||
Id: 'ubuntu-22.04-axivion'
|
||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Sccache', 'UseConfigure', 'DisableTests','Axivion_qtapplicationmanager', 'Insignificant', 'VMSize8']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
Version: 2
|
||||
Configurations:
|
||||
# Test gcc-12 on RHEL 9.2
|
||||
-
|
||||
Id: 'rhel-9.2-gcc12'
|
||||
Template: 'qtci-linux-RHEL-9.2-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests']
|
||||
Configure arguments: '-developer-build -nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-pcre -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'PATH=/opt/rh/gcc-toolset-12/root/usr/bin/:{{.Env.PATH}}',
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
]
|
||||
@@ -6,9 +6,6 @@ Include: [
|
||||
ios-tests.yaml,
|
||||
address_sanitizer_platforms.yaml,
|
||||
linux_android_tests_multi_abi.yaml,
|
||||
wasm_qtbase_tests.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
qtlite.yaml,
|
||||
qtbase-new-compiler-testing.yaml
|
||||
wasm_qtbase_tests.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -4,8 +4,6 @@ Include: [
|
||||
integrity.yaml,
|
||||
ios-tests.yaml,
|
||||
address_sanitizer_platforms.yaml,
|
||||
cmake_platforms_static_tests.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
qtlite.yaml
|
||||
cmake_platforms_static_tests.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -2,7 +2,6 @@ Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml,
|
||||
integrity.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml
|
||||
integrity.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations:
|
||||
-
|
||||
Id: 'ubuntu-22.04-axivion'
|
||||
@@ -12,5 +9,5 @@ Configurations:
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
||||
]
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations: []
|
||||
|
||||
@@ -2,7 +2,6 @@ Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml,
|
||||
integrity.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml
|
||||
integrity.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,205 +0,0 @@
|
||||
Version: 2
|
||||
Configurations:
|
||||
-
|
||||
Id: 'debian-11.6-static-qtlite-arm64'
|
||||
Template: 'qtci-linux-Debian-11.6-aarch64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['UseConfigure', 'DisableTests']
|
||||
Configure arguments: >
|
||||
-nomake examples
|
||||
-release
|
||||
-optimize-size
|
||||
-static
|
||||
-ltcg
|
||||
-reduce-exports
|
||||
-gc-binaries
|
||||
-feature-linuxfb
|
||||
-disable-deprecated-up-to 0x070000
|
||||
-no-feature-abstractbutton
|
||||
-no-feature-abstractslider
|
||||
-no-feature-accessibility
|
||||
-no-feature-action
|
||||
-no-feature-androiddeployqt
|
||||
-no-feature-appstore-compliant
|
||||
-no-feature-backtrace
|
||||
-no-feature-batch_test_support
|
||||
-no-feature-brotli
|
||||
-no-feature-calendarwidget
|
||||
-no-feature-cborstreamwriter
|
||||
-no-feature-clipboard
|
||||
-no-feature-colordialog
|
||||
-no-feature-columnview
|
||||
-no-feature-commandlinkbutton
|
||||
-no-feature-completer
|
||||
-no-feature-concatenatetablesproxymodel
|
||||
-no-feature-contextmenu
|
||||
-no-feature-cssparser
|
||||
-no-feature-cups
|
||||
-no-feature-datawidgetmapper
|
||||
-no-feature-datetimeedit
|
||||
-no-feature-datetimeparser
|
||||
-no-feature-dbus
|
||||
-no-feature-desktopservices
|
||||
-no-feature-dial
|
||||
-no-feature-dnslookup
|
||||
-no-feature-dockwidget
|
||||
-no-feature-dom
|
||||
-no-feature-dtls
|
||||
-no-feature-eglfs
|
||||
-no-feature-errormessage
|
||||
-no-feature-filesystemiterator
|
||||
-no-feature-filesystemmodel
|
||||
-no-feature-filesystemwatcher
|
||||
-no-feature-fontcombobox
|
||||
-no-feature-fontdialog
|
||||
-no-feature-fscompleter
|
||||
-no-feature-future
|
||||
-no-feature-gestures
|
||||
-no-feature-gif
|
||||
-no-feature-graphicseffect
|
||||
-no-feature-graphicsview
|
||||
-no-feature-gssapi
|
||||
-no-feature-harfbuzz
|
||||
-no-feature-highdpiscaling
|
||||
-no-feature-hijricalendar
|
||||
-no-feature-http
|
||||
-no-feature-ico
|
||||
-no-feature-icu
|
||||
-no-feature-identityproxymodel
|
||||
-no-feature-im
|
||||
-no-feature-imageformat_bmp
|
||||
-no-feature-imageformat_jpeg
|
||||
-no-feature-imageformat_ppm
|
||||
-no-feature-imageformat_xbm
|
||||
-no-feature-image_heuristic_mask
|
||||
-no-feature-imageio-text-loading
|
||||
-no-feature-image_text
|
||||
-no-feature-inputdialog
|
||||
-no-feature-islamiccivilcalendar
|
||||
-no-feature-jalalicalendar
|
||||
-no-feature-jpeg
|
||||
-no-feature-keysequenceedit
|
||||
-no-feature-lcdnumber
|
||||
-no-feature-libinput
|
||||
-no-feature-library
|
||||
-no-feature-lineedit
|
||||
-no-feature-linux-netlink
|
||||
-no-feature-localserver
|
||||
-no-feature-macdeployqt
|
||||
-no-feature-mainwindow
|
||||
-no-feature-mdiarea
|
||||
-no-feature-menu
|
||||
-no-feature-menubar
|
||||
-no-feature-messagebox
|
||||
-no-feature-mimetype
|
||||
-no-feature-movie
|
||||
-no-feature-mtdev
|
||||
-no-feature-multiprocess
|
||||
-no-feature-networkdiskcache
|
||||
-no-feature-networkinterface
|
||||
-no-feature-networkproxy
|
||||
-no-feature-ocsp
|
||||
-no-feature-opengl
|
||||
-no-feature-openssl
|
||||
-no-feature-pcre2
|
||||
-no-feature-pdf
|
||||
-no-feature-permissions
|
||||
-no-feature-picture
|
||||
-no-feature-printdialog
|
||||
-no-feature-printer
|
||||
-no-feature-printpreviewdialog
|
||||
-no-feature-printpreviewwidget
|
||||
-no-feature-printsupport
|
||||
-no-feature-private_tests
|
||||
-no-feature-process
|
||||
-no-feature-processenvironment
|
||||
-no-feature-progressbar
|
||||
-no-feature-progressdialog
|
||||
-no-feature-proxymodel
|
||||
-no-feature-radiobutton
|
||||
-no-feature-raster-64bit
|
||||
-no-feature-raster-fp
|
||||
-no-feature-resizehandler
|
||||
-no-feature-rubberband
|
||||
-no-feature-sanitize_fuzzer_no_link
|
||||
-no-feature-schannel
|
||||
-no-feature-scroller
|
||||
-no-feature-securetransport
|
||||
-no-feature-sessionmanager
|
||||
-no-feature-settings
|
||||
-no-feature-sha3-fast
|
||||
-no-feature-sharedmemory
|
||||
-no-feature-shortcut
|
||||
-no-feature-sizegrip
|
||||
-no-feature-socks5
|
||||
-no-feature-sortfilterproxymodel
|
||||
-no-feature-splashscreen
|
||||
-no-feature-sql
|
||||
-no-feature-sqlmodel
|
||||
-no-feature-sql-sqlite
|
||||
-no-feature-sspi
|
||||
-no-feature-stackedwidget
|
||||
-no-feature-statusbar
|
||||
-no-feature-statustip
|
||||
-no-feature-style-stylesheet
|
||||
-no-feature-syntaxhighlighter
|
||||
-no-feature-systemsemaphore
|
||||
-no-feature-systemtrayicon
|
||||
-no-feature-tabletevent
|
||||
-no-feature-tablewidget
|
||||
-no-feature-testlib
|
||||
-no-feature-textbrowser
|
||||
-no-feature-texthtmlparser
|
||||
-no-feature-textmarkdownreader
|
||||
-no-feature-textmarkdownwriter
|
||||
-no-feature-textodfwriter
|
||||
-no-feature-timezone
|
||||
-no-feature-toolbar
|
||||
-no-feature-toolbox
|
||||
-no-feature-topleveldomain
|
||||
-no-feature-transposeproxymodel
|
||||
-no-feature-treewidget
|
||||
-no-feature-udpsocket
|
||||
-no-feature-undocommand
|
||||
-no-feature-undogroup
|
||||
-no-feature-undostack
|
||||
-no-feature-undoview
|
||||
-no-feature-valgrind
|
||||
-no-feature-vkgen
|
||||
-no-feature-vnc
|
||||
-no-feature-vulkan
|
||||
-no-feature-wasm-exceptions
|
||||
-no-feature-wasm-simd128
|
||||
-no-feature-whatsthis
|
||||
-no-feature-wheelevent
|
||||
-no-feature-widgets
|
||||
-no-feature-widgettextcontrol
|
||||
-no-feature-windeployqt
|
||||
-no-feature-wizard
|
||||
-no-feature-xkbcommon
|
||||
-no-feature-xml
|
||||
-qpa linuxfb
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=
|
||||
-DFEATURE_qdoc=off
|
||||
-DFEATURE_qml_debug=off
|
||||
-DFEATURE_qml_jit=off
|
||||
-DFEATURE_qml_locale=off
|
||||
-DFEATURE_qml_network=off
|
||||
-DFEATURE_qml_profiler=off
|
||||
-DFEATURE_quickcontrols2_fusion=off
|
||||
-DFEATURE_quickcontrols2_imagine=off
|
||||
-DFEATURE_quickcontrols2_ios=off
|
||||
-DFEATURE_quickcontrols2_macos=off
|
||||
-DFEATURE_quickcontrols2_material=off
|
||||
-DFEATURE_quickcontrols2_universal=off
|
||||
-DFEATURE_quickcontrols2_windows=off
|
||||
-DFEATURE_quick_designer=off
|
||||
-DFEATURE_quick_particles=off
|
||||
-DFEATURE_quick_pixmap_cache_threaded_download=off
|
||||
-DFEATURE_quick_shadereffect=off
|
||||
-DFEATURE_quicktemplates2_calendar=off
|
||||
-DFEATURE_quicktemplates2_hover=off
|
||||
-DFEATURE_quicktemplates2_multitouch=off'
|
||||
]
|
||||
@@ -1,6 +1,3 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
integrity.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
integrity.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml,
|
||||
integrity.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -14,10 +14,10 @@ Include: [
|
||||
"windows-10_22h2-msvc2022",
|
||||
"windows-10_22h2-msvc2019-developer-build",
|
||||
"rhel-8.8",
|
||||
"windows-10_22h2-mingw13",
|
||||
"windows-10_22h2-mingw13-developer-build",
|
||||
"windows-10_22h2-mingw11",
|
||||
"windows-10_22h2-mingw11-developer-build",
|
||||
"windows-10_22h2-llvm",
|
||||
"windows-11_23H2-msvc2019"
|
||||
"windows-11_22h2-msvc2019"
|
||||
],
|
||||
cmake_platforms_qemu_qnx710.yaml: [
|
||||
"qnx-710-x86_64-developer-build-on-linux",
|
||||
@@ -26,11 +26,6 @@ Include: [
|
||||
],
|
||||
integrity.yaml: [
|
||||
"integrity-arm64"
|
||||
],
|
||||
cmake_platforms_qemu.yaml: [
|
||||
"qemu-arm64-developer-build",
|
||||
"qemu-armv7-developer-build",
|
||||
"qemu-mips64-developer-build"
|
||||
]
|
||||
]
|
||||
Configurations:
|
||||
@@ -42,6 +37,7 @@ Configurations:
|
||||
Compiler: 'GCC'
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
Features: ['UseConfigure', 'DoNotRunTests', 'DisableTests', 'Axivion_QSR']
|
||||
Configure arguments: '-nomake examples -release -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-release -no-warnings-are-errors -nomake examples -qt-harfbuzz -device linux-generic-g++ -device-option "CROSS_COMPILE={{.Env.QEMUARM64_TOOLCHAIN_CROSS_COMPILE}}" -device-option "DISTRO_OPTS=boot2qt" -no-feature-forkfd_pidfd -qtlibinfix TestInfix',
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARM64_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
|
||||
|
||||
@@ -13,9 +13,9 @@ Include: [
|
||||
"windows-10_22h2-msvc2019",
|
||||
"windows-10_22h2-msvc2022",
|
||||
"rhel-8.8",
|
||||
"windows-10_22h2-mingw13",
|
||||
"windows-10_22h2-mingw11",
|
||||
"windows-10_22h2-llvm",
|
||||
"windows-11_23H2-msvc2019"
|
||||
"windows-11_22h2-msvc2019"
|
||||
],
|
||||
cmake_platforms_qemu_qnx710.yaml: [
|
||||
"qnx-710-x86_64-developer-build-on-linux",
|
||||
@@ -42,8 +42,7 @@ Configurations:
|
||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'MinimalStaticTests']
|
||||
Configure arguments: '-static -no-icu -nomake examples -release -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput -no-sql-mysql'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DINPUT_headersclean=ON'
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY'
|
||||
]
|
||||
-
|
||||
Id: 'Windows-MSVC2019_Static'
|
||||
@@ -53,6 +52,4 @@ Configurations:
|
||||
Configure arguments: '-release -headersclean -nomake examples -qt-zlib -static -no-icu -no-sql-mysql -no-sql-odbc -no-sql-psql -plugin-sql-sqlite -plugin-sql-odbc'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\..',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DINPUT_headersclean=ON'
|
||||
]
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}']
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -2,7 +2,6 @@ Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml,
|
||||
integrity.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml
|
||||
integrity.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -2,7 +2,6 @@ Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml,
|
||||
integrity.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml
|
||||
integrity.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
Version: 2
|
||||
Include: [cmake_platforms.yaml]
|
||||
Configurations: []
|
||||
@@ -1,7 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
cmake_platforms_qemu_vxworks.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations:
|
||||
# Test on Ubuntu 22.04 Wayland
|
||||
-
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml,
|
||||
address_sanitizer_platforms.yaml
|
||||
]
|
||||
cmake_platforms.yaml
|
||||
]
|
||||
Configurations: []
|
||||
|
||||
@@ -2,7 +2,7 @@ Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml: [
|
||||
'rhel-8.8',
|
||||
'windows-10_22h2-mingw13',
|
||||
'windows-10_22h2-mingw11',
|
||||
'ubuntu-22.04-documentation',
|
||||
'ubuntu-22.04-documentation-x11-tests'
|
||||
],
|
||||
@@ -12,7 +12,7 @@ Include: [
|
||||
cmake_platforms_target_android.yaml: [
|
||||
'android-arm64-on-macos',
|
||||
'android-armv7-on-windows',
|
||||
'android-9-x86-on-linux',
|
||||
'android-8-x86-on-linux',
|
||||
'android-14-x86_64-on-linux'
|
||||
]
|
||||
]
|
||||
|
||||
@@ -10,23 +10,5 @@ Configurations:
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
|
||||
]
|
||||
-
|
||||
Id: 'Ubuntu-22.04-arm64-x11'
|
||||
Template: 'qtci-linux-Ubuntu-22.04-aarch64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['UseConfigure', 'DoNotRunTests']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY'
|
||||
]
|
||||
-
|
||||
Id: 'Ubuntu-22.04-arm64-wayland'
|
||||
Template: 'qtci-linux-Ubuntu-22.04-aarch64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['UseConfigure', 'DoNotRunTests']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY'
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
||||
]
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
### Ubuntu 24.04 ###
|
||||
Hard Disk: 1TB
|
||||
|
||||
Language: English (United States)
|
||||
Time & Date: Etc/Coordinated Universal Time
|
||||
Software Selection: Desktop image, minimal install
|
||||
|
||||
Language: English (US)
|
||||
Typing: English (US)
|
||||
Privacy: Location Services: OFF
|
||||
Connect Your Online Accounts: Skip
|
||||
|
||||
|
||||
# Configure Settings
|
||||
Notifications:
|
||||
* Notification Popups: OFF
|
||||
* Lock Screen Notifications: OFF
|
||||
Privacy:
|
||||
* Screen Lock: OFF
|
||||
* File History & Rubbish Bin:
|
||||
* File History: Off
|
||||
* Diagnostics:
|
||||
* Send error reports to Canonical: Never
|
||||
Power:
|
||||
* Blank screen: Never
|
||||
* Automatic suspend: Off
|
||||
Appearance:
|
||||
* Auto-hide the dock: Off
|
||||
Devices:
|
||||
* Displays: Resolution 1280 x 800 (found 1280 x 768)
|
||||
Details:
|
||||
* Time Zone: UTC
|
||||
* run "sudo timedatectl set-timezone UTC"
|
||||
* Users: Automatic login on
|
||||
|
||||
Software & Updates:
|
||||
* Updates:
|
||||
* Subscribed to: Security updates only
|
||||
* Automatically check for updates: Never
|
||||
* Notify me of a new Ubuntu version: Never
|
||||
|
||||
# Add user to sudoers
|
||||
Add 'qt ALL=NOPASSWD: ALL' to /etc/sudoers.d/qt
|
||||
|
||||
Add 'GRUB_GFXMODE=1280x800' to /etc/default/grub (Now it's 1280x768 - is that OK?)
|
||||
run 'sudo grub-mkconfig'
|
||||
|
||||
# Install ssh server
|
||||
run 'sudo apt install openssh-server'
|
||||
|
||||
# Disable firewall
|
||||
run 'sudo ufw disable'
|
||||
|
||||
# Fetch and run coin-setup (in Opennebula)
|
||||
Download http://coin/coin/binary/linux_arm64/coin-setup
|
||||
run 'chmod +x ./coin-setup' to make it executable
|
||||
run './coin-setup'
|
||||
|
||||
Reboot
|
||||
|
||||
@@ -1,64 +0,0 @@
|
||||
# Follow manual pre-setup from intra to install Windows 11 ARM and virtio drivers:
|
||||
# "How to create a Windows 11 ARM tier1 image using Qemu"
|
||||
|
||||
# Configure Windows after pre-setup
|
||||
* Enable Remote Desktop:
|
||||
- Settings - System - Remote Desktop - On
|
||||
* Resolution set to 1280x800
|
||||
- Unfortunately not possible, only 1280x1024 is available
|
||||
* Coin-setup:
|
||||
- Installing Boostrap agent
|
||||
- Disabling fast boot
|
||||
- Disabling firewall
|
||||
- Disabling UAC
|
||||
- Enabling autologin
|
||||
- Automatic login
|
||||
- Disabling windows updates
|
||||
* Turn off Windows defender:
|
||||
- Microsoft Defender Antivirus turned off: Open 'gpedit.msc': 'Computer Configuration' - 'Administrative Templates' - 'Windows Components' - 'Microsoft Defender Antivirus'
|
||||
- Edit 'Turn off Microsoft Defender Antivirus' > 'Enabled' > 'Apply'
|
||||
- Reboot on Safe mode:
|
||||
- Open msconfig - Boot tab - enable “Safe boot“ - apply - restart
|
||||
- In Safe mode:
|
||||
- Take Ownership of Defender:
|
||||
- Open properties - Right click "C:\Program Files\Windows Defender\Platform" and select 'Properties'
|
||||
- Open Security tab - Advanced - Owner: Change - Advanced - Find now - Select Administrators - Ok - Ok
|
||||
- Remove all Permissions: Permissions tab - Select 'Disable inheritance' - Remove all entries -Select 'Replace all child object permi…' - Apply
|
||||
- Disable Windows defender also from RegEdit:
|
||||
- Open regedit - Navigate to 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services'
|
||||
- Change the following folders the key Start to 4
|
||||
- Sense (Windows defender advanced threat protection)
|
||||
- WdBoot (Windows defender boot)
|
||||
- WdFilter (Microsoft antimalware file system filter driver)
|
||||
- WdNisDrv (Windows Defender Network Inspection Driver)
|
||||
- WdNisSvc (Windows Defender Network Inspection Service)
|
||||
- WinDefend (Windows Defender Antivirus Service)
|
||||
- mpssvc (Windows Defender Firewall)
|
||||
- NOTE! Without these step windows defender can't be disabled!
|
||||
- Reboot back to normal mode
|
||||
* Background defrag disabled: 'Defragment And Optimize Drives' - 'change settings' - unchecked "run on a schedule"
|
||||
- Run in terminal: 'schtasks /Delete /TN "Microsoft\Windows\Defrag\ScheduledDefrag"'
|
||||
* Time:
|
||||
- Settings - System - Date & time - Time zone: 'Co-ordinated Universal Time'
|
||||
- Settings - System - Date & time - "Set the time automatically: Off"
|
||||
* Regional format:
|
||||
- Settings - Time & language - Language and region - regional format - English (United States)
|
||||
* Power saver:
|
||||
- Settings - System - Power - Screen and sleep: set 'When plugged in, turn off my screen after' to 'never'
|
||||
* Windows search disabled:
|
||||
- 'C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools\Services' - 'Windows search' - stop & disable
|
||||
* Sysmain disabled:
|
||||
- 'C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools\Services' - 'SysMain' - stop & disable
|
||||
* Windows update:
|
||||
- Settings - Windows Update - run available updates (Windows update2023-09 Cumulative Update for Windows 11 Version 22H2 for arm64-based Systems (KB5030219))
|
||||
- After reboot disable windows updates:
|
||||
- 'C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools\Services' - 'Windows updates' - stop & disable
|
||||
* Turn windows features on or off -> Check the "SMB 1.0/CIFS File Sharing Support"
|
||||
* (Restart Windows)
|
||||
* Google Chrome installed for RTA
|
||||
* Virus & threat protection settings:
|
||||
* Check that there's no active antivirus providers
|
||||
* Activate Windows
|
||||
|
||||
# Next
|
||||
Proceed to install pre-provisioning scripts manually to Tier1 image
|
||||
@@ -1,8 +0,0 @@
|
||||
# This script will disable automatic disk cleanup
|
||||
|
||||
. "$PSScriptRoot\..\..\provisioning\common\windows\helpers.ps1"
|
||||
|
||||
Run-Executable "reg.exe" "ADD `"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy`" /V 04 /T REG_dWORD /D 0 /F"
|
||||
|
||||
# Maintenance task used by the system to launch a silent auto disk cleanup when running low on free disk space.
|
||||
DisableSchedulerTask "DiskCleanup\SilentCleanup"
|
||||
@@ -1,42 +0,0 @@
|
||||
# Copyright (C) 2019 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# Windows 7 does not have Get-ScheduledTask and Unregister-ScheduledTask
|
||||
# thus needing its own version.
|
||||
Write-Host "Disabling defragmentation"
|
||||
$version = Get-CimInstance Win32_OperatingSystem | Select-Object -ExpandProperty Caption
|
||||
if ($version -like '*Windows 7*'){
|
||||
$pi = New-Object System.Diagnostics.ProcessStartInfo
|
||||
$pi.FileName = "C:\Windows\System32\schtasks.exe"
|
||||
$pi.RedirectStandardError = $true
|
||||
$pi.UseShellExecute = $false
|
||||
$pi.Arguments = "/Delete /TN `"\Microsoft\Windows\Defrag\ScheduledDefrag`" /F"
|
||||
$prog = New-Object System.Diagnostics.Process
|
||||
$prog.StartInfo = $pi
|
||||
$prog.Start() | Out-Null
|
||||
$err = $prog.StandardError.ReadToEnd()
|
||||
$prog.WaitForExit()
|
||||
if ($prog.ExitCode -eq 0){
|
||||
Write-Host "Scheduled defragmentation removed"
|
||||
} else {
|
||||
if ($err -like '*cannot find the file*'){
|
||||
Write-Host "No scheduled defragmentation task found"
|
||||
exit 0
|
||||
} else {
|
||||
Write-Host "Error while deleting scheduled defragmentation task: $err"
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
try {
|
||||
$state = (Get-ScheduledTask -ErrorAction Stop -TaskName "ScheduledDefrag").State
|
||||
Write-Host "Scheduled defragmentation task found in state: $state"
|
||||
}
|
||||
catch {
|
||||
Write-Host "No scheduled defragmentation task found"
|
||||
exit 0
|
||||
}
|
||||
Write-Host "Unregistering scheduled defragmentation task"
|
||||
Unregister-ScheduledTask -ErrorAction Stop -Confirm:$false -TaskName ScheduledDefrag
|
||||
Write-Host "Scheduled Defragmentation task was cancelled"
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
. "$PSScriptRoot\..\..\provisioning\common\windows\helpers.ps1"
|
||||
|
||||
# Disable the NTP from syncing
|
||||
Run-Executable "w32tm.exe" "/config /syncfromflags:NO"
|
||||
@@ -1,72 +0,0 @@
|
||||
. "$PSScriptRoot\..\..\provisioning\common\windows\helpers.ps1"
|
||||
|
||||
# This script will remove unneeded Tasks from Task Scheduler
|
||||
|
||||
# Application Experience 'Microsoft Compatibility Appraiser' - "Collects program telemetry information if opted-in to the Microsoft Customer Experience Improvement Program."
|
||||
DisableSchedulerTask "Application Experience\Microsoft Compatibility Appraiser"
|
||||
|
||||
# Application Experience 'ProgramDataUpdater' - "Collects program telemetry information if opted-in to the Microsoft Customer Experience Improvement Program"
|
||||
DisableSchedulerTask "Application Experience\ProgramDataUpdater"
|
||||
|
||||
# Autochk 'Proxy' - "This task collects and uploads autochk SQM data if opted-in to the Microsoft Customer Experience Improvement Program."
|
||||
DisableSchedulerTask "Autochk\Proxy"
|
||||
|
||||
# Chkdsk 'ProactiveScan' - "NTFS Volume Health Scan"
|
||||
DisableSchedulerTask "Chkdsk\ProactiveScan"
|
||||
|
||||
# Chkdsk 'SyspartRepair'
|
||||
DeleteSchedulerTask "Chkdsk\SyspartRepair"
|
||||
|
||||
# Customer Experience Improvement Program 'Consolidator' - "If the user has consented to participate in the Windows Customer Experience Improvement Program, this job collects and sends usage data to Microsoft."
|
||||
DisableSchedulerTask "Customer Experience Improvement Program\Consolidator"
|
||||
|
||||
# Customer Experience Improvement Program 'sbCeip' - "The USB CEIP (Customer Experience Improvement Program) task collects Universal Serial Bus related statistics and information about your machine and sends it to the Windows Device Connectivity engineering group at Microsoft. The information received is used to help improve the reliability, stability, and overall functionality of USB in Windows. If the user has not consented to participate in Windows CEIP, this task does not do anything."
|
||||
DisableSchedulerTask "Customer Experience Improvement Program\UsbCeip"
|
||||
|
||||
# Device Information 'Device'
|
||||
DisableSchedulerTask "Device Information\Device"
|
||||
|
||||
# Diagnosis 'Scheduled' - "The Windows Scheduled Maintenance Task performs periodic maintenance of the computer system by fixing problems automatically or reporting them through Security and Maintenance."
|
||||
DisableSchedulerTask "Diagnosis\Scheduled"
|
||||
|
||||
# DiskDiagnostic 'Microsoft-Windows-DiskDiagnosticDataCollector' - "The Windows Disk Diagnostic reports general disk and system information to Microsoft for users participating in the Customer Experience Program."
|
||||
DisableSchedulerTask "DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector"
|
||||
|
||||
# ExploitGuard 'ExploitGuard MDM policy Refresh' - "Task for applying changes to the machine's Exploit Protection settings."
|
||||
DisableSchedulerTask "ExploitGuard\ExploitGuard MDM policy Refresh"
|
||||
|
||||
# Feedback/Siuf 'DmClient'
|
||||
DisableSchedulerTask "Feedback\Siuf\DmClient"
|
||||
|
||||
# Feedback/Siuf 'DmClient'OnScenarioDownload'
|
||||
DisableSchedulerTask "Feedback\Siuf\DmClientOnScenarioDownload"
|
||||
|
||||
# File Classification Infrastructure 'Property Definition Sync'
|
||||
DisableSchedulerTask "File Classification Infrastructure\Property Definition Sync"
|
||||
|
||||
# InstallService 'ScanForUpdates'
|
||||
DisableSchedulerTask "InstallService\ScanForUpdates"
|
||||
|
||||
# InstallService 'ScanForUpdatesAsUser'
|
||||
DisableSchedulerTask "InstallService\ScanForUpdatesAsUser"
|
||||
|
||||
# LanguageComponentsInstaller 'Installation' - "Install language components that match the user's language list."
|
||||
DisableSchedulerTask "LanguageComponentsInstaller\Installation"
|
||||
|
||||
# LanguageComponentsInstaller 'ReconcileLanguageResources' - "Install language components that match the user's language list."
|
||||
DisableSchedulerTask "LanguageComponentsInstaller\ReconcileLanguageResources"
|
||||
|
||||
# PI 'Secure-Boot-Update' - "This task updates the Secure Boot variables."
|
||||
DisableSchedulerTask "PI\Secure-Boot-Update"
|
||||
|
||||
# PI 'Sqm-Tasks' - "This task gathers information about the Trusted Platform Module (TPM), Secure Boot, and Measured Boot."
|
||||
DisableSchedulerTask "PI\Sqm-Tasks"
|
||||
|
||||
# Power Efficiency Diagnotics 'AnalyzeSystem' - "This task analyzes the system looking for conditions that may cause high energy use."
|
||||
DisableSchedulerTask "PushToInstall\Registration"
|
||||
|
||||
# Servicing 'StartComponentCleanup'
|
||||
DisableSchedulerTask "Servicing\StartComponentCleanup"
|
||||
|
||||
# SoftwareProtectionPlatform 'SvcRestartTaskNetwork' - "This task restarts the Software Protection Platform service when a new network is detected"
|
||||
DisableSchedulerTask "SoftwareProtectionPlatform\SvcRestartTaskNetwork"
|
||||
@@ -1,13 +0,0 @@
|
||||
# Disable UpdateOrchestrator
|
||||
|
||||
$name = "UpdateOrchestrator"
|
||||
$path = "C:\Windows\System32\Tasks\Microsoft\Windows\$name"
|
||||
|
||||
takeown /F $path /A /R
|
||||
icacls $path /grant Administrators:F /T
|
||||
del "$path\Schedule Scan"
|
||||
del "$path\Schedule Scan Static Task"
|
||||
del "$path\USO_UxBroker"
|
||||
|
||||
# Disable Update orchestrator service
|
||||
reg.exe ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\UsoSvc" /V Start /T REG_dWORD /D 4 /F
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user