mirror of
git://code.qt.io/qt/qt5.git
synced 2025-12-22 16:06:16 +08:00
Compare commits
134 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
46dddf87bc | ||
|
|
7df463631a | ||
|
|
d57ad7e737 | ||
|
|
7fc2031212 | ||
|
|
a3ee8d931b | ||
|
|
640e95a284 | ||
|
|
35bc8bf666 | ||
|
|
8f899fc8d6 | ||
|
|
79bc54cba4 | ||
|
|
35dcd712b4 | ||
|
|
390ed26579 | ||
|
|
cbeb5e362b | ||
|
|
c5571e6885 | ||
|
|
110bd15791 | ||
|
|
7e19966491 | ||
|
|
c993737748 | ||
|
|
f2c905c413 | ||
|
|
2a55470ef8 | ||
|
|
e29f1bb96b | ||
|
|
a80e52c26d | ||
|
|
31f01fa829 | ||
|
|
05a13593b8 | ||
|
|
54239ba0b2 | ||
|
|
6b6aef2a5f | ||
|
|
b3ff020137 | ||
|
|
a1ce4ac94f | ||
|
|
2bd38e4500 | ||
|
|
a49214135f | ||
|
|
08dc3ed601 | ||
|
|
70ad8b9e54 | ||
|
|
4db1ddaf0e | ||
|
|
f0940c0917 | ||
|
|
3f4a31fff2 | ||
|
|
525ea0c2ea | ||
|
|
cc10a05e0a | ||
|
|
bb3f7aeb64 | ||
|
|
d8f379b869 | ||
|
|
3090fad49f | ||
|
|
94e1a97901 | ||
|
|
efdd6f944b | ||
|
|
2874c51d2d | ||
|
|
ef14fba165 | ||
|
|
40108d1c41 | ||
|
|
00d9be4cf2 | ||
|
|
8b568e2559 | ||
|
|
30e948e608 | ||
|
|
e1e331efea | ||
|
|
a0d9ca9c1a | ||
|
|
02b4811928 | ||
|
|
cca3db2d0f | ||
|
|
a8fee8b5ba | ||
|
|
6af25770f7 | ||
|
|
b30217a2f6 | ||
|
|
59a50a2ae2 | ||
|
|
ab0e18b128 | ||
|
|
4c67b90764 | ||
|
|
21d50007d8 | ||
|
|
866831c914 | ||
|
|
f4803a98ca | ||
|
|
465f4eeb12 | ||
|
|
a6e3429895 | ||
|
|
3b3817cb6e | ||
|
|
47ed64ecb6 | ||
|
|
f927c2421d | ||
|
|
96d756eda6 | ||
|
|
160ed4b8ac | ||
|
|
f449871287 | ||
|
|
3579db9131 | ||
|
|
8f978d956e | ||
|
|
bdc8cef767 | ||
|
|
e80e4df128 | ||
|
|
c7ae781a6a | ||
|
|
e12da5907a | ||
|
|
9a222222d4 | ||
|
|
f57f018126 | ||
|
|
6abdb6e989 | ||
|
|
ae31fb9bb5 | ||
|
|
9e67c3bfeb | ||
|
|
d601235ae1 | ||
|
|
949bfa8542 | ||
|
|
625d6c4a30 | ||
|
|
719d7a509c | ||
|
|
8ef9b169d9 | ||
|
|
c93ab8e8c0 | ||
|
|
0136c1a1e5 | ||
|
|
3f7b562c53 | ||
|
|
a17cf7f710 | ||
|
|
347d95765c | ||
|
|
1bb37b8491 | ||
|
|
b25e56f27c | ||
|
|
5e135cd7a5 | ||
|
|
6e6fe08621 | ||
|
|
e183790ada | ||
|
|
60b8dc8d24 | ||
|
|
d3762b3acd | ||
|
|
2e7b4c7458 | ||
|
|
b849bd519a | ||
|
|
31eb901d0e | ||
|
|
6281f01242 | ||
|
|
a1c5437c8f | ||
|
|
c274817df5 | ||
|
|
e0b77636a9 | ||
|
|
6043c98a6c | ||
|
|
877cbac46e | ||
|
|
f94941550d | ||
|
|
10ca5431db | ||
|
|
46434aa0fb | ||
|
|
d072975076 | ||
|
|
1f423ab325 | ||
|
|
60dee9adf9 | ||
|
|
1128c011ae | ||
|
|
d22f382d28 | ||
|
|
00c1092864 | ||
|
|
4b2445ddd7 | ||
|
|
c226ad7762 | ||
|
|
fd6af776aa | ||
|
|
19c08829e1 | ||
|
|
a5d236688f | ||
|
|
034a1967a6 | ||
|
|
de49143621 | ||
|
|
367b81813b | ||
|
|
15b37f55a6 | ||
|
|
bf86eece2f | ||
|
|
8df3909e6b | ||
|
|
5c41da419c | ||
|
|
f7123cbd51 | ||
|
|
140c572d80 | ||
|
|
3fc9dc5b8e | ||
|
|
73bd86160c | ||
|
|
fa97357639 | ||
|
|
ba69020820 | ||
|
|
8ea1c6ba02 | ||
|
|
c8a3d008b3 | ||
|
|
15d7b31e50 |
@@ -10,13 +10,10 @@
|
|||||||
# ==[ Footers: Uncomment and edit where applicable ]===================|
|
# ==[ Footers: Uncomment and edit where applicable ]===================|
|
||||||
#
|
#
|
||||||
# One task per entry. Add a space after the colon.
|
# One task per entry. Add a space after the colon.
|
||||||
# Use Fixes to automatically close an issue, Reopens to automatically
|
# Use Fixes to automatically close an issue, and Task-number to
|
||||||
# reopen an issue, and Task-number to reference it without further
|
# reference it without further action.
|
||||||
# action.
|
# You do not need both for the same issue.
|
||||||
# You do not need to include Task-Number where Fixes or Reopens is
|
|
||||||
# specified for the same issue.
|
|
||||||
#Fixes:
|
#Fixes:
|
||||||
#Reopens:
|
|
||||||
#Task-number:
|
#Task-number:
|
||||||
#Coverity-Id:
|
#Coverity-Id:
|
||||||
#
|
#
|
||||||
|
|||||||
9
.github/pull_request_template.md
vendored
9
.github/pull_request_template.md
vendored
@@ -1,9 +0,0 @@
|
|||||||
## Qt contribution guidelines
|
|
||||||
|
|
||||||
We welcome contributions to Qt!
|
|
||||||
|
|
||||||
Note that all contributions to the Qt project are exclusively handled through the [Gerrit code review system](https://codereview.qt-project.org).
|
|
||||||
|
|
||||||
Read the
|
|
||||||
[Qt Contribution Guidelines](https://wiki.qt.io/Qt_Contribution_Guidelines) to learn more.
|
|
||||||
|
|
||||||
9
.gitignore
vendored
9
.gitignore
vendored
@@ -2,12 +2,3 @@ Makefile
|
|||||||
.qmake.cache
|
.qmake.cache
|
||||||
.qmake.super
|
.qmake.super
|
||||||
*.pro.user*
|
*.pro.user*
|
||||||
CMakeLists.txt.user*
|
|
||||||
CMakeUserPresets.json
|
|
||||||
.vscode
|
|
||||||
build
|
|
||||||
build-*
|
|
||||||
.DS_Store
|
|
||||||
init-repository.opt
|
|
||||||
init-repository.opt.in
|
|
||||||
config.tl.opt
|
|
||||||
|
|||||||
249
.gitmodules
vendored
249
.gitmodules
vendored
@@ -1,40 +1,40 @@
|
|||||||
[submodule "qtbase"]
|
[submodule "qtbase"]
|
||||||
path = qtbase
|
path = qtbase
|
||||||
url = ../qtbase.git
|
url = ../qtbase.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = essential
|
status = essential
|
||||||
[submodule "qtsvg"]
|
[submodule "qtsvg"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
path = qtsvg
|
path = qtsvg
|
||||||
url = ../qtsvg.git
|
url = ../qtsvg.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = addon
|
status = addon
|
||||||
[submodule "qtdeclarative"]
|
[submodule "qtdeclarative"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtimageformats qtshadertools qtsvg qtlanguageserver
|
recommends = qtsvg
|
||||||
path = qtdeclarative
|
path = qtdeclarative
|
||||||
url = ../qtdeclarative.git
|
url = ../qtdeclarative.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = essential
|
status = essential
|
||||||
[submodule "qtactiveqt"]
|
[submodule "qtactiveqt"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
path = qtactiveqt
|
path = qtactiveqt
|
||||||
url = ../qtactiveqt.git
|
url = ../qtactiveqt.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtmultimedia"]
|
[submodule "qtmultimedia"]
|
||||||
depends = qtbase qtshadertools
|
depends = qtbase
|
||||||
recommends = qtdeclarative qtquick3d
|
recommends = qtdeclarative
|
||||||
path = qtmultimedia
|
path = qtmultimedia
|
||||||
url = ../qtmultimedia.git
|
url = ../qtmultimedia.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qttools"]
|
[submodule "qttools"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative qtactiveqt
|
recommends = qtdeclarative qtactiveqt
|
||||||
path = qttools
|
path = qttools
|
||||||
url = ../qttools.git
|
url = ../qttools.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = essential
|
status = essential
|
||||||
[submodule "qtxmlpatterns"]
|
[submodule "qtxmlpatterns"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
@@ -47,15 +47,15 @@
|
|||||||
depends = qttools
|
depends = qttools
|
||||||
path = qttranslations
|
path = qttranslations
|
||||||
url = ../qttranslations.git
|
url = ../qttranslations.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = essential
|
status = essential
|
||||||
priority = 30
|
priority = 30
|
||||||
[submodule "qtdoc"]
|
[submodule "qtdoc"]
|
||||||
depends = qtdeclarative qttools
|
depends = qtdeclarative qttools
|
||||||
recommends = qtmultimedia qtshadertools qtwebengine
|
recommends = qtmultimedia qtquickcontrols qtquickcontrols2
|
||||||
path = qtdoc
|
path = qtdoc
|
||||||
url = ../qtdoc.git
|
url = ../qtdoc.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = essential
|
status = essential
|
||||||
priority = 40
|
priority = 40
|
||||||
[submodule "qtrepotools"]
|
[submodule "qtrepotools"]
|
||||||
@@ -72,26 +72,19 @@
|
|||||||
status = essential
|
status = essential
|
||||||
priority = 50
|
priority = 50
|
||||||
[submodule "qtlocation"]
|
[submodule "qtlocation"]
|
||||||
depends = qtbase qtpositioning
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative qtquickcontrols qtquickcontrols2 qtserialport
|
||||||
path = qtlocation
|
path = qtlocation
|
||||||
url = ../qtlocation.git
|
url = ../qtlocation.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = preview
|
status = ignore
|
||||||
[submodule "qtpositioning"]
|
|
||||||
depends = qtbase
|
|
||||||
recommends = qtdeclarative qtserialport
|
|
||||||
path = qtpositioning
|
|
||||||
url = ../qtpositioning.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
[submodule "qtsensors"]
|
[submodule "qtsensors"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative
|
||||||
path = qtsensors
|
path = qtsensors
|
||||||
url = ../qtsensors.git
|
url = ../qtsensors.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtsystems"]
|
[submodule "qtsystems"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative
|
||||||
@@ -114,65 +107,103 @@
|
|||||||
status = ignore
|
status = ignore
|
||||||
[submodule "qtconnectivity"]
|
[submodule "qtconnectivity"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative qtandroidextras
|
||||||
path = qtconnectivity
|
path = qtconnectivity
|
||||||
url = ../qtconnectivity.git
|
url = ../qtconnectivity.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtwayland"]
|
[submodule "qtwayland"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative
|
||||||
path = qtwayland
|
path = qtwayland
|
||||||
url = ../qtwayland.git
|
url = ../qtwayland.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = addon
|
status = addon
|
||||||
[submodule "qt3d"]
|
[submodule "qt3d"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative qtshadertools qtmultimedia
|
recommends = qtdeclarative qtshadertools
|
||||||
path = qt3d
|
path = qt3d
|
||||||
url = ../qt3d.git
|
url = ../qt3d.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = deprecated
|
status = ignore
|
||||||
[submodule "qtimageformats"]
|
[submodule "qtimageformats"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
path = qtimageformats
|
path = qtimageformats
|
||||||
url = ../qtimageformats.git
|
url = ../qtimageformats.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
|
[submodule "qtgraphicaleffects"]
|
||||||
|
depends = qtdeclarative
|
||||||
|
path = qtgraphicaleffects
|
||||||
|
url = ../qtgraphicaleffects.git
|
||||||
|
branch = dev
|
||||||
|
status = ignore
|
||||||
|
[submodule "qtquickcontrols"]
|
||||||
|
depends = qtdeclarative
|
||||||
|
recommends = qtgraphicaleffects
|
||||||
|
path = qtquickcontrols
|
||||||
|
url = ../qtquickcontrols.git
|
||||||
|
branch = dev
|
||||||
|
status = ignore
|
||||||
[submodule "qtserialbus"]
|
[submodule "qtserialbus"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtserialport
|
recommends = qtserialport
|
||||||
path = qtserialbus
|
path = qtserialbus
|
||||||
url = ../qtserialbus.git
|
url = ../qtserialbus.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtserialport"]
|
[submodule "qtserialport"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
path = qtserialport
|
path = qtserialport
|
||||||
url = ../qtserialport.git
|
url = ../qtserialport.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
|
[submodule "qtx11extras"]
|
||||||
|
depends = qtbase
|
||||||
|
path = qtx11extras
|
||||||
|
url = ../qtx11extras.git
|
||||||
|
branch = dev
|
||||||
|
status = ignore
|
||||||
|
[submodule "qtmacextras"]
|
||||||
|
depends = qtbase
|
||||||
|
path = qtmacextras
|
||||||
|
url = ../qtmacextras.git
|
||||||
|
branch = dev
|
||||||
|
status = ignore
|
||||||
|
[submodule "qtwinextras"]
|
||||||
|
depends = qtbase
|
||||||
|
recommends = qtdeclarative qtmultimedia
|
||||||
|
path = qtwinextras
|
||||||
|
url = ../qtwinextras.git
|
||||||
|
branch = dev
|
||||||
|
status = ignore
|
||||||
|
[submodule "qtandroidextras"]
|
||||||
|
depends = qtbase
|
||||||
|
path = qtandroidextras
|
||||||
|
url = ../qtandroidextras.git
|
||||||
|
branch = dev
|
||||||
|
status = ignore
|
||||||
[submodule "qtwebsockets"]
|
[submodule "qtwebsockets"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative
|
||||||
path = qtwebsockets
|
path = qtwebsockets
|
||||||
url = ../qtwebsockets.git
|
url = ../qtwebsockets.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtwebchannel"]
|
[submodule "qtwebchannel"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative qtwebsockets
|
recommends = qtdeclarative qtwebsockets
|
||||||
path = qtwebchannel
|
path = qtwebchannel
|
||||||
url = ../qtwebchannel.git
|
url = ../qtwebchannel.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtwebengine"]
|
[submodule "qtwebengine"]
|
||||||
depends = qtdeclarative
|
depends = qtdeclarative
|
||||||
recommends = qtwebchannel qttools qtpositioning
|
recommends = qtquickcontrols qtquickcontrols2 qtlocation qtwebchannel qttools
|
||||||
path = qtwebengine
|
path = qtwebengine
|
||||||
url = ../qtwebengine.git
|
url = ../qtwebengine.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
priority = 10
|
priority = 10
|
||||||
[submodule "qtcanvas3d"]
|
[submodule "qtcanvas3d"]
|
||||||
depends = qtdeclarative
|
depends = qtdeclarative
|
||||||
@@ -185,29 +216,43 @@
|
|||||||
recommends = qtwebengine
|
recommends = qtwebengine
|
||||||
path = qtwebview
|
path = qtwebview
|
||||||
url = ../qtwebview.git
|
url = ../qtwebview.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
|
[submodule "qtquickcontrols2"]
|
||||||
|
depends = qtdeclarative
|
||||||
|
recommends = qtimageformats qtgraphicaleffects
|
||||||
|
path = qtquickcontrols2
|
||||||
|
url = ../qtquickcontrols2.git
|
||||||
|
branch = 6.0
|
||||||
|
status = essential
|
||||||
|
[submodule "qtpurchasing"]
|
||||||
|
depends = qtbase
|
||||||
|
recommends = qtdeclarative qtandroidextras
|
||||||
|
path = qtpurchasing
|
||||||
|
url = ../qtpurchasing.git
|
||||||
|
branch = dev
|
||||||
|
status = ignore
|
||||||
[submodule "qtcharts"]
|
[submodule "qtcharts"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative qtmultimedia
|
recommends = qtdeclarative qtmultimedia
|
||||||
path = qtcharts
|
path = qtcharts
|
||||||
url = ../qtcharts.git
|
url = ../qtcharts.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtdatavis3d"]
|
[submodule "qtdatavis3d"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative qtmultimedia
|
recommends = qtdeclarative qtmultimedia
|
||||||
path = qtdatavis3d
|
path = qtdatavis3d
|
||||||
url = ../qtdatavis3d.git
|
url = ../qtdatavis3d.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtvirtualkeyboard"]
|
[submodule "qtvirtualkeyboard"]
|
||||||
depends = qtbase qtdeclarative qtsvg
|
depends = qtbase qtdeclarative qtsvg
|
||||||
recommends = qtmultimedia
|
recommends = qtmultimedia qtquickcontrols
|
||||||
path = qtvirtualkeyboard
|
path = qtvirtualkeyboard
|
||||||
url = ../qtvirtualkeyboard.git
|
url = ../qtvirtualkeyboard.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtgamepad"]
|
[submodule "qtgamepad"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative
|
||||||
@@ -219,28 +264,28 @@
|
|||||||
depends = qtbase qtdeclarative
|
depends = qtbase qtdeclarative
|
||||||
path = qtscxml
|
path = qtscxml
|
||||||
url = ../qtscxml.git
|
url = ../qtscxml.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtspeech"]
|
[submodule "qtspeech"]
|
||||||
depends = qtbase qtmultimedia
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative qtmultimedia
|
||||||
path = qtspeech
|
path = qtspeech
|
||||||
url = ../qtspeech.git
|
url = ../qtspeech.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtnetworkauth"]
|
[submodule "qtnetworkauth"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
path = qtnetworkauth
|
path = qtnetworkauth
|
||||||
url = ../qtnetworkauth.git
|
url = ../qtnetworkauth.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtremoteobjects"]
|
[submodule "qtremoteobjects"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative
|
||||||
path = qtremoteobjects
|
path = qtremoteobjects
|
||||||
url = ../qtremoteobjects.git
|
url = ../qtremoteobjects.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtwebglplugin"]
|
[submodule "qtwebglplugin"]
|
||||||
depends = qtbase qtwebsockets
|
depends = qtbase qtwebsockets
|
||||||
recommends = qtdeclarative
|
recommends = qtdeclarative
|
||||||
@@ -252,87 +297,29 @@
|
|||||||
depends = qtbase qtdeclarative
|
depends = qtbase qtdeclarative
|
||||||
path = qtlottie
|
path = qtlottie
|
||||||
url = ../qtlottie.git
|
url = ../qtlottie.git
|
||||||
branch = 6.8.1
|
branch = dev
|
||||||
status = addon
|
status = ignore
|
||||||
[submodule "qtquicktimeline"]
|
[submodule "qtquicktimeline"]
|
||||||
depends = qtbase qtdeclarative
|
depends = qtbase qtdeclarative
|
||||||
path = qtquicktimeline
|
path = qtquicktimeline
|
||||||
url = ../qtquicktimeline
|
url = ../qtquicktimeline
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = addon
|
status = addon
|
||||||
[submodule "qtquick3d"]
|
[submodule "qtquick3d"]
|
||||||
depends = qtbase qtdeclarative qtshadertools
|
depends = qtbase qtdeclarative qtshadertools
|
||||||
recommends = qtquicktimeline
|
|
||||||
path = qtquick3d
|
path = qtquick3d
|
||||||
url = ../qtquick3d.git
|
url = ../qtquick3d.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = addon
|
status = addon
|
||||||
[submodule "qtshadertools"]
|
[submodule "qtshadertools"]
|
||||||
depends = qtbase
|
depends = qtbase
|
||||||
path = qtshadertools
|
path = qtshadertools
|
||||||
url = ../qtshadertools.git
|
url = ../qtshadertools.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = addon
|
status = addon
|
||||||
[submodule "qt5compat"]
|
[submodule "qt5compat"]
|
||||||
depends = qtbase qtdeclarative
|
depends = qtbase
|
||||||
path = qt5compat
|
path = qt5compat
|
||||||
url = ../qt5compat.git
|
url = ../qt5compat.git
|
||||||
branch = 6.8.1
|
branch = 6.0
|
||||||
status = deprecated
|
status = deprecated
|
||||||
[submodule "qtcoap"]
|
|
||||||
depends = qtbase
|
|
||||||
path = qtcoap
|
|
||||||
url = ../qtcoap.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
[submodule "qtmqtt"]
|
|
||||||
depends = qtbase qtdeclarative
|
|
||||||
path = qtmqtt
|
|
||||||
url = ../qtmqtt.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
[submodule "qtopcua"]
|
|
||||||
depends = qtbase qtdeclarative
|
|
||||||
path = qtopcua
|
|
||||||
url = ../qtopcua.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
[submodule "qtlanguageserver"]
|
|
||||||
depends = qtbase
|
|
||||||
path = qtlanguageserver
|
|
||||||
url = ../qtlanguageserver.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = preview
|
|
||||||
[submodule "qthttpserver"]
|
|
||||||
depends = qtbase
|
|
||||||
recommends = qtwebsockets
|
|
||||||
path = qthttpserver
|
|
||||||
url = ../qthttpserver.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
[submodule "qtquick3dphysics"]
|
|
||||||
depends = qtbase qtdeclarative qtquick3d qtshadertools
|
|
||||||
path = qtquick3dphysics
|
|
||||||
url = ../qtquick3dphysics.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
[submodule "qtgrpc"]
|
|
||||||
depends = qtbase
|
|
||||||
recommends = qtdeclarative
|
|
||||||
path = qtgrpc
|
|
||||||
url = ../qtgrpc.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
[submodule "qtquickeffectmaker"]
|
|
||||||
depends = qtbase qtdeclarative qtshadertools
|
|
||||||
recommends = qtquick3d
|
|
||||||
path = qtquickeffectmaker
|
|
||||||
url = ../qtquickeffectmaker.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
[submodule "qtgraphs"]
|
|
||||||
depends = qtbase qtdeclarative qtquick3d
|
|
||||||
path = qtgraphs
|
|
||||||
url = ../qtgraphs.git
|
|
||||||
branch = 6.8.1
|
|
||||||
status = addon
|
|
||||||
|
|||||||
139
CMakeLists.txt
139
CMakeLists.txt
@@ -1,120 +1,89 @@
|
|||||||
# The real minimum version will be checked by the qtbase project.
|
|
||||||
# 3.16 is the absolute minimum though.
|
|
||||||
cmake_minimum_required(VERSION 3.16...3.21)
|
|
||||||
|
|
||||||
# set QT_SUPERBUILD early, so that qtbase/.cmake.conf can check it
|
|
||||||
set(QT_SUPERBUILD TRUE)
|
|
||||||
|
|
||||||
# Include qtbase's .cmake.conf for access to QT_REPO_MODULE_VERSION
|
|
||||||
set(__qt6_qtbase_src_path "${CMAKE_CURRENT_SOURCE_DIR}/qtbase")
|
set(__qt6_qtbase_src_path "${CMAKE_CURRENT_SOURCE_DIR}/qtbase")
|
||||||
include("${__qt6_qtbase_src_path}/.cmake.conf")
|
|
||||||
include("${__qt6_qtbase_src_path}/cmake/QtBaseTopLevelHelpers.cmake")
|
|
||||||
|
|
||||||
qt_internal_top_level_setup_autodetect()
|
include("${__qt6_qtbase_src_path}/.cmake.conf")
|
||||||
|
include("${__qt6_qtbase_src_path}/cmake/QtCMakeVersionHelpers.cmake")
|
||||||
|
qt_internal_check_for_suitable_cmake_version()
|
||||||
|
qt_internal_get_computed_minimum_cmake_version(__qt_minimum_cmake_version)
|
||||||
|
cmake_minimum_required(VERSION ${__qt_minimum_cmake_version})
|
||||||
|
|
||||||
|
include("${__qt6_qtbase_src_path}/cmake/QtAutoDetect.cmake")
|
||||||
|
|
||||||
project(Qt
|
project(Qt
|
||||||
VERSION "${QT_REPO_MODULE_VERSION}"
|
VERSION 6.0.1
|
||||||
DESCRIPTION "Qt Libraries"
|
DESCRIPTION "Qt Libraries"
|
||||||
HOMEPAGE_URL "https://qt.io/"
|
HOMEPAGE_URL "https://qt.io/"
|
||||||
LANGUAGES CXX C ASM
|
LANGUAGES CXX C ASM
|
||||||
)
|
)
|
||||||
|
|
||||||
qt_internal_top_level_setup_after_project()
|
# Required so we can call ctest from the root build directory
|
||||||
|
enable_testing()
|
||||||
|
|
||||||
|
set(qt_module_prop_prefix "__qt_prop_")
|
||||||
|
|
||||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
||||||
qt_internal_top_level_setup_cmake_module_path()
|
if (NOT QT_BUILD_STANDALONE_TESTS)
|
||||||
|
list(APPEND CMAKE_MODULE_PATH "${__qt6_qtbase_src_path}/cmake")
|
||||||
|
list(APPEND CMAKE_MODULE_PATH
|
||||||
|
"${__qt6_qtbase_src_path}/cmake/3rdparty/extra-cmake-modules/find-modules")
|
||||||
|
list(APPEND CMAKE_MODULE_PATH "${__qt6_qtbase_src_path}/cmake/3rdparty/kwin")
|
||||||
|
endif()
|
||||||
|
|
||||||
include(QtTopLevelHelpers)
|
include("QtTopLevelHelpers")
|
||||||
include(ECMOptionalAddSubdirectory)
|
include(ECMOptionalAddSubdirectory)
|
||||||
|
|
||||||
qt_internal_top_level_before_build_submodules()
|
# Also make sure the CMake config files do not recreate the already-existing targets
|
||||||
|
if (NOT QT_BUILD_STANDALONE_TESTS)
|
||||||
qt_internal_find_modules(known_submodules)
|
set(QT_NO_CREATE_TARGETS TRUE)
|
||||||
# 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}")
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
set(QT_BUILD_SUBMODULES "${QT_BUILD_SUBMODULES}" CACHE STRING "Submodules to build")
|
set(QT_SUPERBUILD TRUE)
|
||||||
|
|
||||||
# Preliminary check if module should be skipped since -skip <module> or BUILD_<module>
|
# Get submodule list if not already defined
|
||||||
# are provided.
|
if (NOT BUILD_SUBMODULES)
|
||||||
set(explicitly_skipped_modules "")
|
qt_internal_find_modules(BUILD_SUBMODULES)
|
||||||
foreach(module IN LISTS known_submodules)
|
endif()
|
||||||
if(DEFINED BUILD_${module} AND NOT BUILD_${module})
|
|
||||||
list(APPEND explicitly_skipped_modules ${module})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
foreach(module IN LISTS QT_BUILD_SUBMODULES)
|
set(qt_module_dependency_map_prefix "__qt_module_dependencies_")
|
||||||
if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${module}/CMakeLists.txt)
|
qt_internal_sort_module_dependencies("${BUILD_SUBMODULES}" BUILD_SUBMODULES
|
||||||
message(FATAL_ERROR
|
"${qt_module_dependency_map_prefix}")
|
||||||
"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.")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
qt_internal_sort_module_dependencies("${QT_BUILD_SUBMODULES}" QT_BUILD_SUBMODULES
|
foreach(module IN LISTS BUILD_SUBMODULES)
|
||||||
SKIP_MODULES ${explicitly_skipped_modules})
|
|
||||||
|
|
||||||
foreach(module IN LISTS QT_BUILD_SUBMODULES)
|
|
||||||
# Check for unmet dependencies
|
# Check for unmet dependencies
|
||||||
if(NOT DEFINED BUILD_${module} OR BUILD_${module})
|
if(NOT DEFINED BUILD_${module} OR BUILD_${module})
|
||||||
message(STATUS "Checking dependencies of submodule '${module}'")
|
message(NOTICE "Check dependencies of '${module}'")
|
||||||
get_property(required_deps GLOBAL PROPERTY QT_REQUIRED_DEPS_FOR_${module})
|
foreach(dep IN LISTS "${qt_module_dependency_map_prefix}${module}")
|
||||||
get_property(dependencies GLOBAL PROPERTY QT_DEPS_FOR_${module})
|
|
||||||
foreach(dep IN LISTS dependencies)
|
|
||||||
if (dep STREQUAL "qtbase")
|
if (dep STREQUAL "qtbase")
|
||||||
# Always available skip
|
# Always available skip
|
||||||
continue()
|
continue()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(required FALSE)
|
|
||||||
if(dep IN_LIST required_deps)
|
|
||||||
set(required TRUE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(error_reason "")
|
|
||||||
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${dep}/CMakeLists.txt")
|
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${dep}/CMakeLists.txt")
|
||||||
set(error_reason "${dep}'s CMakeLists.txt couldn't be found")
|
message(FATAL_ERROR "Module '${module}' depends on '${dep}', but ${dep}'s \
|
||||||
elseif(DEFINED BUILD_${dep} AND NOT BUILD_${dep})
|
CMakeLists.txt couldn't be found.\nNote: Use '-skip ${module}' to exclude it \
|
||||||
set(error_reason "building '${dep}' was explicitly disabled")
|
from build.\n")
|
||||||
endif()
|
endif()
|
||||||
|
if(DEFINED BUILD_${dep} AND NOT BUILD_${dep})
|
||||||
if(NOT error_reason STREQUAL "")
|
message(FATAL_ERROR "Module '${module}' depends on '${dep}', but '${dep}' \
|
||||||
if(required)
|
will not be built.\nNote: Use '-skip ${module}' to exclude it from build.\n")
|
||||||
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.")
|
|
||||||
else()
|
|
||||||
message(STATUS "Skipping optional dependency '${dep}' of '${module}', "
|
|
||||||
"because ${error_reason}.")
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
if(NOT DEFINED CMAKE_MESSAGE_CONTEXT_SHOW)
|
foreach(module IN LISTS BUILD_SUBMODULES)
|
||||||
set(CMAKE_MESSAGE_CONTEXT_SHOW TRUE)
|
message(NOTICE "Configuring '${module}'")
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(module IN LISTS QT_BUILD_SUBMODULES)
|
|
||||||
message(STATUS "Configuring submodule '${module}'")
|
|
||||||
ecm_optional_add_subdirectory("${module}")
|
ecm_optional_add_subdirectory("${module}")
|
||||||
|
|
||||||
qt_internal_top_level_after_add_subdirectory()
|
if(module STREQUAL "qtbase")
|
||||||
|
if (NOT QT_BUILD_STANDALONE_TESTS)
|
||||||
|
list(APPEND CMAKE_PREFIX_PATH "${QtBase_BINARY_DIR}/lib/cmake")
|
||||||
|
list(APPEND CMAKE_FIND_ROOT_PATH "${QtBase_BINARY_DIR}")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
qt_internal_top_level_end()
|
if(NOT QT_BUILD_STANDALONE_TESTS)
|
||||||
|
# Display a summary of everything
|
||||||
|
include(QtBuildInformation)
|
||||||
|
include(QtPlatformSupport)
|
||||||
|
qt_print_feature_summary()
|
||||||
|
qt_print_build_instructions()
|
||||||
|
endif()
|
||||||
|
|||||||
@@ -1,8 +0,0 @@
|
|||||||
## Qt contribution guidelines
|
|
||||||
|
|
||||||
We welcome contributions to Qt!
|
|
||||||
|
|
||||||
Note that we cannot accept pull requests on GitHub. All contributions to the Qt project are exclusively handled through the [Gerrit code review system](https://codereview.qt-project.org).
|
|
||||||
|
|
||||||
Read the
|
|
||||||
[Qt Contribution Guidelines](https://wiki.qt.io/Qt_Contribution_Guidelines) to learn more.
|
|
||||||
450
LICENSE.FDL
Normal file
450
LICENSE.FDL
Normal file
@@ -0,0 +1,450 @@
|
|||||||
|
GNU Free Documentation License
|
||||||
|
Version 1.3, 3 November 2008
|
||||||
|
|
||||||
|
|
||||||
|
Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
|
||||||
|
<http://fsf.org/>
|
||||||
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
|
0. PREAMBLE
|
||||||
|
|
||||||
|
The purpose of this License is to make a manual, textbook, or other
|
||||||
|
functional and useful document "free" in the sense of freedom: to
|
||||||
|
assure everyone the effective freedom to copy and redistribute it,
|
||||||
|
with or without modifying it, either commercially or noncommercially.
|
||||||
|
Secondarily, this License preserves for the author and publisher a way
|
||||||
|
to get credit for their work, while not being considered responsible
|
||||||
|
for modifications made by others.
|
||||||
|
|
||||||
|
This License is a kind of "copyleft", which means that derivative
|
||||||
|
works of the document must themselves be free in the same sense. It
|
||||||
|
complements the GNU General Public License, which is a copyleft
|
||||||
|
license designed for free software.
|
||||||
|
|
||||||
|
We have designed this License in order to use it for manuals for free
|
||||||
|
software, because free software needs free documentation: a free
|
||||||
|
program should come with manuals providing the same freedoms that the
|
||||||
|
software does. But this License is not limited to software manuals;
|
||||||
|
it can be used for any textual work, regardless of subject matter or
|
||||||
|
whether it is published as a printed book. We recommend this License
|
||||||
|
principally for works whose purpose is instruction or reference.
|
||||||
|
|
||||||
|
|
||||||
|
1. APPLICABILITY AND DEFINITIONS
|
||||||
|
|
||||||
|
This License applies to any manual or other work, in any medium, that
|
||||||
|
contains a notice placed by the copyright holder saying it can be
|
||||||
|
distributed under the terms of this License. Such a notice grants a
|
||||||
|
world-wide, royalty-free license, unlimited in duration, to use that
|
||||||
|
work under the conditions stated herein. The "Document", below,
|
||||||
|
refers to any such manual or work. Any member of the public is a
|
||||||
|
licensee, and is addressed as "you". You accept the license if you
|
||||||
|
copy, modify or distribute the work in a way requiring permission
|
||||||
|
under copyright law.
|
||||||
|
|
||||||
|
A "Modified Version" of the Document means any work containing the
|
||||||
|
Document or a portion of it, either copied verbatim, or with
|
||||||
|
modifications and/or translated into another language.
|
||||||
|
|
||||||
|
A "Secondary Section" is a named appendix or a front-matter section of
|
||||||
|
the Document that deals exclusively with the relationship of the
|
||||||
|
publishers or authors of the Document to the Document's overall
|
||||||
|
subject (or to related matters) and contains nothing that could fall
|
||||||
|
directly within that overall subject. (Thus, if the Document is in
|
||||||
|
part a textbook of mathematics, a Secondary Section may not explain
|
||||||
|
any mathematics.) The relationship could be a matter of historical
|
||||||
|
connection with the subject or with related matters, or of legal,
|
||||||
|
commercial, philosophical, ethical or political position regarding
|
||||||
|
them.
|
||||||
|
|
||||||
|
The "Invariant Sections" are certain Secondary Sections whose titles
|
||||||
|
are designated, as being those of Invariant Sections, in the notice
|
||||||
|
that says that the Document is released under this License. If a
|
||||||
|
section does not fit the above definition of Secondary then it is not
|
||||||
|
allowed to be designated as Invariant. The Document may contain zero
|
||||||
|
Invariant Sections. If the Document does not identify any Invariant
|
||||||
|
Sections then there are none.
|
||||||
|
|
||||||
|
The "Cover Texts" are certain short passages of text that are listed,
|
||||||
|
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
|
||||||
|
the Document is released under this License. A Front-Cover Text may
|
||||||
|
be at most 5 words, and a Back-Cover Text may be at most 25 words.
|
||||||
|
|
||||||
|
A "Transparent" copy of the Document means a machine-readable copy,
|
||||||
|
represented in a format whose specification is available to the
|
||||||
|
general public, that is suitable for revising the document
|
||||||
|
straightforwardly with generic text editors or (for images composed of
|
||||||
|
pixels) generic paint programs or (for drawings) some widely available
|
||||||
|
drawing editor, and that is suitable for input to text formatters or
|
||||||
|
for automatic translation to a variety of formats suitable for input
|
||||||
|
to text formatters. A copy made in an otherwise Transparent file
|
||||||
|
format whose markup, or absence of markup, has been arranged to thwart
|
||||||
|
or discourage subsequent modification by readers is not Transparent.
|
||||||
|
An image format is not Transparent if used for any substantial amount
|
||||||
|
of text. A copy that is not "Transparent" is called "Opaque".
|
||||||
|
|
||||||
|
Examples of suitable formats for Transparent copies include plain
|
||||||
|
ASCII without markup, Texinfo input format, LaTeX input format, SGML
|
||||||
|
or XML using a publicly available DTD, and standard-conforming simple
|
||||||
|
HTML, PostScript or PDF designed for human modification. Examples of
|
||||||
|
transparent image formats include PNG, XCF and JPG. Opaque formats
|
||||||
|
include proprietary formats that can be read and edited only by
|
||||||
|
proprietary word processors, SGML or XML for which the DTD and/or
|
||||||
|
processing tools are not generally available, and the
|
||||||
|
machine-generated HTML, PostScript or PDF produced by some word
|
||||||
|
processors for output purposes only.
|
||||||
|
|
||||||
|
The "Title Page" means, for a printed book, the title page itself,
|
||||||
|
plus such following pages as are needed to hold, legibly, the material
|
||||||
|
this License requires to appear in the title page. For works in
|
||||||
|
formats which do not have any title page as such, "Title Page" means
|
||||||
|
the text near the most prominent appearance of the work's title,
|
||||||
|
preceding the beginning of the body of the text.
|
||||||
|
|
||||||
|
The "publisher" means any person or entity that distributes copies of
|
||||||
|
the Document to the public.
|
||||||
|
|
||||||
|
A section "Entitled XYZ" means a named subunit of the Document whose
|
||||||
|
title either is precisely XYZ or contains XYZ in parentheses following
|
||||||
|
text that translates XYZ in another language. (Here XYZ stands for a
|
||||||
|
specific section name mentioned below, such as "Acknowledgements",
|
||||||
|
"Dedications", "Endorsements", or "History".) To "Preserve the Title"
|
||||||
|
of such a section when you modify the Document means that it remains a
|
||||||
|
section "Entitled XYZ" according to this definition.
|
||||||
|
|
||||||
|
The Document may include Warranty Disclaimers next to the notice which
|
||||||
|
states that this License applies to the Document. These Warranty
|
||||||
|
Disclaimers are considered to be included by reference in this
|
||||||
|
License, but only as regards disclaiming warranties: any other
|
||||||
|
implication that these Warranty Disclaimers may have is void and has
|
||||||
|
no effect on the meaning of this License.
|
||||||
|
|
||||||
|
2. VERBATIM COPYING
|
||||||
|
|
||||||
|
You may copy and distribute the Document in any medium, either
|
||||||
|
commercially or noncommercially, provided that this License, the
|
||||||
|
copyright notices, and the license notice saying this License applies
|
||||||
|
to the Document are reproduced in all copies, and that you add no
|
||||||
|
other conditions whatsoever to those of this License. You may not use
|
||||||
|
technical measures to obstruct or control the reading or further
|
||||||
|
copying of the copies you make or distribute. However, you may accept
|
||||||
|
compensation in exchange for copies. If you distribute a large enough
|
||||||
|
number of copies you must also follow the conditions in section 3.
|
||||||
|
|
||||||
|
You may also lend copies, under the same conditions stated above, and
|
||||||
|
you may publicly display copies.
|
||||||
|
|
||||||
|
|
||||||
|
3. COPYING IN QUANTITY
|
||||||
|
|
||||||
|
If you publish printed copies (or copies in media that commonly have
|
||||||
|
printed covers) of the Document, numbering more than 100, and the
|
||||||
|
Document's license notice requires Cover Texts, you must enclose the
|
||||||
|
copies in covers that carry, clearly and legibly, all these Cover
|
||||||
|
Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
|
||||||
|
the back cover. Both covers must also clearly and legibly identify
|
||||||
|
you as the publisher of these copies. The front cover must present
|
||||||
|
the full title with all words of the title equally prominent and
|
||||||
|
visible. You may add other material on the covers in addition.
|
||||||
|
Copying with changes limited to the covers, as long as they preserve
|
||||||
|
the title of the Document and satisfy these conditions, can be treated
|
||||||
|
as verbatim copying in other respects.
|
||||||
|
|
||||||
|
If the required texts for either cover are too voluminous to fit
|
||||||
|
legibly, you should put the first ones listed (as many as fit
|
||||||
|
reasonably) on the actual cover, and continue the rest onto adjacent
|
||||||
|
pages.
|
||||||
|
|
||||||
|
If you publish or distribute Opaque copies of the Document numbering
|
||||||
|
more than 100, you must either include a machine-readable Transparent
|
||||||
|
copy along with each Opaque copy, or state in or with each Opaque copy
|
||||||
|
a computer-network location from which the general network-using
|
||||||
|
public has access to download using public-standard network protocols
|
||||||
|
a complete Transparent copy of the Document, free of added material.
|
||||||
|
If you use the latter option, you must take reasonably prudent steps,
|
||||||
|
when you begin distribution of Opaque copies in quantity, to ensure
|
||||||
|
that this Transparent copy will remain thus accessible at the stated
|
||||||
|
location until at least one year after the last time you distribute an
|
||||||
|
Opaque copy (directly or through your agents or retailers) of that
|
||||||
|
edition to the public.
|
||||||
|
|
||||||
|
It is requested, but not required, that you contact the authors of the
|
||||||
|
Document well before redistributing any large number of copies, to
|
||||||
|
give them a chance to provide you with an updated version of the
|
||||||
|
Document.
|
||||||
|
|
||||||
|
|
||||||
|
4. MODIFICATIONS
|
||||||
|
|
||||||
|
You may copy and distribute a Modified Version of the Document under
|
||||||
|
the conditions of sections 2 and 3 above, provided that you release
|
||||||
|
the Modified Version under precisely this License, with the Modified
|
||||||
|
Version filling the role of the Document, thus licensing distribution
|
||||||
|
and modification of the Modified Version to whoever possesses a copy
|
||||||
|
of it. In addition, you must do these things in the Modified Version:
|
||||||
|
|
||||||
|
A. Use in the Title Page (and on the covers, if any) a title distinct
|
||||||
|
from that of the Document, and from those of previous versions
|
||||||
|
(which should, if there were any, be listed in the History section
|
||||||
|
of the Document). You may use the same title as a previous version
|
||||||
|
if the original publisher of that version gives permission.
|
||||||
|
B. List on the Title Page, as authors, one or more persons or entities
|
||||||
|
responsible for authorship of the modifications in the Modified
|
||||||
|
Version, together with at least five of the principal authors of the
|
||||||
|
Document (all of its principal authors, if it has fewer than five),
|
||||||
|
unless they release you from this requirement.
|
||||||
|
C. State on the Title page the name of the publisher of the
|
||||||
|
Modified Version, as the publisher.
|
||||||
|
D. Preserve all the copyright notices of the Document.
|
||||||
|
E. Add an appropriate copyright notice for your modifications
|
||||||
|
adjacent to the other copyright notices.
|
||||||
|
F. Include, immediately after the copyright notices, a license notice
|
||||||
|
giving the public permission to use the Modified Version under the
|
||||||
|
terms of this License, in the form shown in the Addendum below.
|
||||||
|
G. Preserve in that license notice the full lists of Invariant Sections
|
||||||
|
and required Cover Texts given in the Document's license notice.
|
||||||
|
H. Include an unaltered copy of this License.
|
||||||
|
I. Preserve the section Entitled "History", Preserve its Title, and add
|
||||||
|
to it an item stating at least the title, year, new authors, and
|
||||||
|
publisher of the Modified Version as given on the Title Page. If
|
||||||
|
there is no section Entitled "History" in the Document, create one
|
||||||
|
stating the title, year, authors, and publisher of the Document as
|
||||||
|
given on its Title Page, then add an item describing the Modified
|
||||||
|
Version as stated in the previous sentence.
|
||||||
|
J. Preserve the network location, if any, given in the Document for
|
||||||
|
public access to a Transparent copy of the Document, and likewise
|
||||||
|
the network locations given in the Document for previous versions
|
||||||
|
it was based on. These may be placed in the "History" section.
|
||||||
|
You may omit a network location for a work that was published at
|
||||||
|
least four years before the Document itself, or if the original
|
||||||
|
publisher of the version it refers to gives permission.
|
||||||
|
K. For any section Entitled "Acknowledgements" or "Dedications",
|
||||||
|
Preserve the Title of the section, and preserve in the section all
|
||||||
|
the substance and tone of each of the contributor acknowledgements
|
||||||
|
and/or dedications given therein.
|
||||||
|
L. Preserve all the Invariant Sections of the Document,
|
||||||
|
unaltered in their text and in their titles. Section numbers
|
||||||
|
or the equivalent are not considered part of the section titles.
|
||||||
|
M. Delete any section Entitled "Endorsements". Such a section
|
||||||
|
may not be included in the Modified Version.
|
||||||
|
N. Do not retitle any existing section to be Entitled "Endorsements"
|
||||||
|
or to conflict in title with any Invariant Section.
|
||||||
|
O. Preserve any Warranty Disclaimers.
|
||||||
|
|
||||||
|
If the Modified Version includes new front-matter sections or
|
||||||
|
appendices that qualify as Secondary Sections and contain no material
|
||||||
|
copied from the Document, you may at your option designate some or all
|
||||||
|
of these sections as invariant. To do this, add their titles to the
|
||||||
|
list of Invariant Sections in the Modified Version's license notice.
|
||||||
|
These titles must be distinct from any other section titles.
|
||||||
|
|
||||||
|
You may add a section Entitled "Endorsements", provided it contains
|
||||||
|
nothing but endorsements of your Modified Version by various
|
||||||
|
parties--for example, statements of peer review or that the text has
|
||||||
|
been approved by an organization as the authoritative definition of a
|
||||||
|
standard.
|
||||||
|
|
||||||
|
You may add a passage of up to five words as a Front-Cover Text, and a
|
||||||
|
passage of up to 25 words as a Back-Cover Text, to the end of the list
|
||||||
|
of Cover Texts in the Modified Version. Only one passage of
|
||||||
|
Front-Cover Text and one of Back-Cover Text may be added by (or
|
||||||
|
through arrangements made by) any one entity. If the Document already
|
||||||
|
includes a cover text for the same cover, previously added by you or
|
||||||
|
by arrangement made by the same entity you are acting on behalf of,
|
||||||
|
you may not add another; but you may replace the old one, on explicit
|
||||||
|
permission from the previous publisher that added the old one.
|
||||||
|
|
||||||
|
The author(s) and publisher(s) of the Document do not by this License
|
||||||
|
give permission to use their names for publicity for or to assert or
|
||||||
|
imply endorsement of any Modified Version.
|
||||||
|
|
||||||
|
|
||||||
|
5. COMBINING DOCUMENTS
|
||||||
|
|
||||||
|
You may combine the Document with other documents released under this
|
||||||
|
License, under the terms defined in section 4 above for modified
|
||||||
|
versions, provided that you include in the combination all of the
|
||||||
|
Invariant Sections of all of the original documents, unmodified, and
|
||||||
|
list them all as Invariant Sections of your combined work in its
|
||||||
|
license notice, and that you preserve all their Warranty Disclaimers.
|
||||||
|
|
||||||
|
The combined work need only contain one copy of this License, and
|
||||||
|
multiple identical Invariant Sections may be replaced with a single
|
||||||
|
copy. If there are multiple Invariant Sections with the same name but
|
||||||
|
different contents, make the title of each such section unique by
|
||||||
|
adding at the end of it, in parentheses, the name of the original
|
||||||
|
author or publisher of that section if known, or else a unique number.
|
||||||
|
Make the same adjustment to the section titles in the list of
|
||||||
|
Invariant Sections in the license notice of the combined work.
|
||||||
|
|
||||||
|
In the combination, you must combine any sections Entitled "History"
|
||||||
|
in the various original documents, forming one section Entitled
|
||||||
|
"History"; likewise combine any sections Entitled "Acknowledgements",
|
||||||
|
and any sections Entitled "Dedications". You must delete all sections
|
||||||
|
Entitled "Endorsements".
|
||||||
|
|
||||||
|
|
||||||
|
6. COLLECTIONS OF DOCUMENTS
|
||||||
|
|
||||||
|
You may make a collection consisting of the Document and other
|
||||||
|
documents released under this License, and replace the individual
|
||||||
|
copies of this License in the various documents with a single copy
|
||||||
|
that is included in the collection, provided that you follow the rules
|
||||||
|
of this License for verbatim copying of each of the documents in all
|
||||||
|
other respects.
|
||||||
|
|
||||||
|
You may extract a single document from such a collection, and
|
||||||
|
distribute it individually under this License, provided you insert a
|
||||||
|
copy of this License into the extracted document, and follow this
|
||||||
|
License in all other respects regarding verbatim copying of that
|
||||||
|
document.
|
||||||
|
|
||||||
|
|
||||||
|
7. AGGREGATION WITH INDEPENDENT WORKS
|
||||||
|
|
||||||
|
A compilation of the Document or its derivatives with other separate
|
||||||
|
and independent documents or works, in or on a volume of a storage or
|
||||||
|
distribution medium, is called an "aggregate" if the copyright
|
||||||
|
resulting from the compilation is not used to limit the legal rights
|
||||||
|
of the compilation's users beyond what the individual works permit.
|
||||||
|
When the Document is included in an aggregate, this License does not
|
||||||
|
apply to the other works in the aggregate which are not themselves
|
||||||
|
derivative works of the Document.
|
||||||
|
|
||||||
|
If the Cover Text requirement of section 3 is applicable to these
|
||||||
|
copies of the Document, then if the Document is less than one half of
|
||||||
|
the entire aggregate, the Document's Cover Texts may be placed on
|
||||||
|
covers that bracket the Document within the aggregate, or the
|
||||||
|
electronic equivalent of covers if the Document is in electronic form.
|
||||||
|
Otherwise they must appear on printed covers that bracket the whole
|
||||||
|
aggregate.
|
||||||
|
|
||||||
|
|
||||||
|
8. TRANSLATION
|
||||||
|
|
||||||
|
Translation is considered a kind of modification, so you may
|
||||||
|
distribute translations of the Document under the terms of section 4.
|
||||||
|
Replacing Invariant Sections with translations requires special
|
||||||
|
permission from their copyright holders, but you may include
|
||||||
|
translations of some or all Invariant Sections in addition to the
|
||||||
|
original versions of these Invariant Sections. You may include a
|
||||||
|
translation of this License, and all the license notices in the
|
||||||
|
Document, and any Warranty Disclaimers, provided that you also include
|
||||||
|
the original English version of this License and the original versions
|
||||||
|
of those notices and disclaimers. In case of a disagreement between
|
||||||
|
the translation and the original version of this License or a notice
|
||||||
|
or disclaimer, the original version will prevail.
|
||||||
|
|
||||||
|
If a section in the Document is Entitled "Acknowledgements",
|
||||||
|
"Dedications", or "History", the requirement (section 4) to Preserve
|
||||||
|
its Title (section 1) will typically require changing the actual
|
||||||
|
title.
|
||||||
|
|
||||||
|
|
||||||
|
9. TERMINATION
|
||||||
|
|
||||||
|
You may not copy, modify, sublicense, or distribute the Document
|
||||||
|
except as expressly provided under this License. Any attempt
|
||||||
|
otherwise to copy, modify, sublicense, or distribute it is void, and
|
||||||
|
will automatically terminate your rights under this License.
|
||||||
|
|
||||||
|
However, if you cease all violation of this License, then your license
|
||||||
|
from a particular copyright holder is reinstated (a) provisionally,
|
||||||
|
unless and until the copyright holder explicitly and finally
|
||||||
|
terminates your license, and (b) permanently, if the copyright holder
|
||||||
|
fails to notify you of the violation by some reasonable means prior to
|
||||||
|
60 days after the cessation.
|
||||||
|
|
||||||
|
Moreover, your license from a particular copyright holder is
|
||||||
|
reinstated permanently if the copyright holder notifies you of the
|
||||||
|
violation by some reasonable means, this is the first time you have
|
||||||
|
received notice of violation of this License (for any work) from that
|
||||||
|
copyright holder, and you cure the violation prior to 30 days after
|
||||||
|
your receipt of the notice.
|
||||||
|
|
||||||
|
Termination of your rights under this section does not terminate the
|
||||||
|
licenses of parties who have received copies or rights from you under
|
||||||
|
this License. If your rights have been terminated and not permanently
|
||||||
|
reinstated, receipt of a copy of some or all of the same material does
|
||||||
|
not give you any rights to use it.
|
||||||
|
|
||||||
|
|
||||||
|
10. FUTURE REVISIONS OF THIS LICENSE
|
||||||
|
|
||||||
|
The Free Software Foundation may publish new, revised versions of the
|
||||||
|
GNU Free Documentation License from time to time. Such new versions
|
||||||
|
will be similar in spirit to the present version, but may differ in
|
||||||
|
detail to address new problems or concerns. See
|
||||||
|
http://www.gnu.org/copyleft/.
|
||||||
|
|
||||||
|
Each version of the License is given a distinguishing version number.
|
||||||
|
If the Document specifies that a particular numbered version of this
|
||||||
|
License "or any later version" applies to it, you have the option of
|
||||||
|
following the terms and conditions either of that specified version or
|
||||||
|
of any later version that has been published (not as a draft) by the
|
||||||
|
Free Software Foundation. If the Document does not specify a version
|
||||||
|
number of this License, you may choose any version ever published (not
|
||||||
|
as a draft) by the Free Software Foundation. If the Document
|
||||||
|
specifies that a proxy can decide which future versions of this
|
||||||
|
License can be used, that proxy's public statement of acceptance of a
|
||||||
|
version permanently authorizes you to choose that version for the
|
||||||
|
Document.
|
||||||
|
|
||||||
|
11. RELICENSING
|
||||||
|
|
||||||
|
"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
|
||||||
|
World Wide Web server that publishes copyrightable works and also
|
||||||
|
provides prominent facilities for anybody to edit those works. A
|
||||||
|
public wiki that anybody can edit is an example of such a server. A
|
||||||
|
"Massive Multiauthor Collaboration" (or "MMC") contained in the site
|
||||||
|
means any set of copyrightable works thus published on the MMC site.
|
||||||
|
|
||||||
|
"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
|
||||||
|
license published by Creative Commons Corporation, a not-for-profit
|
||||||
|
corporation with a principal place of business in San Francisco,
|
||||||
|
California, as well as future copyleft versions of that license
|
||||||
|
published by that same organization.
|
||||||
|
|
||||||
|
"Incorporate" means to publish or republish a Document, in whole or in
|
||||||
|
part, as part of another Document.
|
||||||
|
|
||||||
|
An MMC is "eligible for relicensing" if it is licensed under this
|
||||||
|
License, and if all works that were first published under this License
|
||||||
|
somewhere other than this MMC, and subsequently incorporated in whole or
|
||||||
|
in part into the MMC, (1) had no cover texts or invariant sections, and
|
||||||
|
(2) were thus incorporated prior to November 1, 2008.
|
||||||
|
|
||||||
|
The operator of an MMC Site may republish an MMC contained in the site
|
||||||
|
under CC-BY-SA on the same site at any time before August 1, 2009,
|
||||||
|
provided the MMC is eligible for relicensing.
|
||||||
|
|
||||||
|
|
||||||
|
ADDENDUM: How to use this License for your documents
|
||||||
|
|
||||||
|
To use this License in a document you have written, include a copy of
|
||||||
|
the License in the document and put the following copyright and
|
||||||
|
license notices just after the title page:
|
||||||
|
|
||||||
|
Copyright (c) YEAR YOUR NAME.
|
||||||
|
Permission is granted to copy, distribute and/or modify this document
|
||||||
|
under the terms of the GNU Free Documentation License, Version 1.3
|
||||||
|
or any later version published by the Free Software Foundation;
|
||||||
|
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
|
||||||
|
A copy of the license is included in the section entitled "GNU
|
||||||
|
Free Documentation License".
|
||||||
|
|
||||||
|
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
|
||||||
|
replace the "with...Texts." line with this:
|
||||||
|
|
||||||
|
with the Invariant Sections being LIST THEIR TITLES, with the
|
||||||
|
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
|
||||||
|
|
||||||
|
If you have Invariant Sections without Cover Texts, or some other
|
||||||
|
combination of the three, merge those two alternatives to suit the
|
||||||
|
situation.
|
||||||
|
|
||||||
|
If your document contains nontrivial examples of program code, we
|
||||||
|
recommend releasing these examples in parallel under your choice of
|
||||||
|
free software license, such as the GNU General Public License,
|
||||||
|
to permit their use in free software.
|
||||||
704
LICENSE.GPL3-EXCEPT
Normal file
704
LICENSE.GPL3-EXCEPT
Normal file
@@ -0,0 +1,704 @@
|
|||||||
|
This is the GNU General Public License version 3, annotated with The
|
||||||
|
Qt Company GPL Exception 1.0:
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
The Qt Company GPL Exception 1.0
|
||||||
|
|
||||||
|
Exception 1:
|
||||||
|
|
||||||
|
As a special exception you may create a larger work which contains the
|
||||||
|
output of this application and distribute that work under terms of your
|
||||||
|
choice, so long as the work is not otherwise derived from or based on
|
||||||
|
this application and so long as the work does not in itself generate
|
||||||
|
output that contains the output from this application in its original
|
||||||
|
or modified form.
|
||||||
|
|
||||||
|
Exception 2:
|
||||||
|
|
||||||
|
As a special exception, you have permission to combine this application
|
||||||
|
with Plugins licensed under the terms of your choice, to produce an
|
||||||
|
executable, and to copy and distribute the resulting executable under
|
||||||
|
the terms of your choice. However, the executable must be accompanied
|
||||||
|
by a prominent notice offering all users of the executable the entire
|
||||||
|
source code to this application, excluding the source code of the
|
||||||
|
independent modules, but including any changes you have made to this
|
||||||
|
application, under the terms of this license.
|
||||||
|
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
GNU GENERAL PUBLIC LICENSE
|
||||||
|
Version 3, 29 June 2007
|
||||||
|
|
||||||
|
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||||
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
|
Preamble
|
||||||
|
|
||||||
|
The GNU General Public License is a free, copyleft license for
|
||||||
|
software and other kinds of works.
|
||||||
|
|
||||||
|
The licenses for most software and other practical works are designed
|
||||||
|
to take away your freedom to share and change the works. By contrast,
|
||||||
|
the GNU General Public License is intended to guarantee your freedom to
|
||||||
|
share and change all versions of a program--to make sure it remains free
|
||||||
|
software for all its users. We, the Free Software Foundation, use the
|
||||||
|
GNU General Public License for most of our software; it applies also to
|
||||||
|
any other work released this way by its authors. You can apply it to
|
||||||
|
your programs, too.
|
||||||
|
|
||||||
|
When we speak of free software, we are referring to freedom, not
|
||||||
|
price. Our General Public Licenses are designed to make sure that you
|
||||||
|
have the freedom to distribute copies of free software (and charge for
|
||||||
|
them if you wish), that you receive source code or can get it if you
|
||||||
|
want it, that you can change the software or use pieces of it in new
|
||||||
|
free programs, and that you know you can do these things.
|
||||||
|
|
||||||
|
To protect your rights, we need to prevent others from denying you
|
||||||
|
these rights or asking you to surrender the rights. Therefore, you have
|
||||||
|
certain responsibilities if you distribute copies of the software, or if
|
||||||
|
you modify it: responsibilities to respect the freedom of others.
|
||||||
|
|
||||||
|
For example, if you distribute copies of such a program, whether
|
||||||
|
gratis or for a fee, you must pass on to the recipients the same
|
||||||
|
freedoms that you received. You must make sure that they, too, receive
|
||||||
|
or can get the source code. And you must show them these terms so they
|
||||||
|
know their rights.
|
||||||
|
|
||||||
|
Developers that use the GNU GPL protect your rights with two steps:
|
||||||
|
(1) assert copyright on the software, and (2) offer you this License
|
||||||
|
giving you legal permission to copy, distribute and/or modify it.
|
||||||
|
|
||||||
|
For the developers' and authors' protection, the GPL clearly explains
|
||||||
|
that there is no warranty for this free software. For both users' and
|
||||||
|
authors' sake, the GPL requires that modified versions be marked as
|
||||||
|
changed, so that their problems will not be attributed erroneously to
|
||||||
|
authors of previous versions.
|
||||||
|
|
||||||
|
Some devices are designed to deny users access to install or run
|
||||||
|
modified versions of the software inside them, although the manufacturer
|
||||||
|
can do so. This is fundamentally incompatible with the aim of
|
||||||
|
protecting users' freedom to change the software. The systematic
|
||||||
|
pattern of such abuse occurs in the area of products for individuals to
|
||||||
|
use, which is precisely where it is most unacceptable. Therefore, we
|
||||||
|
have designed this version of the GPL to prohibit the practice for those
|
||||||
|
products. If such problems arise substantially in other domains, we
|
||||||
|
stand ready to extend this provision to those domains in future versions
|
||||||
|
of the GPL, as needed to protect the freedom of users.
|
||||||
|
|
||||||
|
Finally, every program is threatened constantly by software patents.
|
||||||
|
States should not allow patents to restrict development and use of
|
||||||
|
software on general-purpose computers, but in those that do, we wish to
|
||||||
|
avoid the special danger that patents applied to a free program could
|
||||||
|
make it effectively proprietary. To prevent this, the GPL assures that
|
||||||
|
patents cannot be used to render the program non-free.
|
||||||
|
|
||||||
|
The precise terms and conditions for copying, distribution and
|
||||||
|
modification follow.
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
0. Definitions.
|
||||||
|
|
||||||
|
"This License" refers to version 3 of the GNU General Public License.
|
||||||
|
|
||||||
|
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||||
|
works, such as semiconductor masks.
|
||||||
|
|
||||||
|
"The Program" refers to any copyrightable work licensed under this
|
||||||
|
License. Each licensee is addressed as "you". "Licensees" and
|
||||||
|
"recipients" may be individuals or organizations.
|
||||||
|
|
||||||
|
To "modify" a work means to copy from or adapt all or part of the work
|
||||||
|
in a fashion requiring copyright permission, other than the making of an
|
||||||
|
exact copy. The resulting work is called a "modified version" of the
|
||||||
|
earlier work or a work "based on" the earlier work.
|
||||||
|
|
||||||
|
A "covered work" means either the unmodified Program or a work based
|
||||||
|
on the Program.
|
||||||
|
|
||||||
|
To "propagate" a work means to do anything with it that, without
|
||||||
|
permission, would make you directly or secondarily liable for
|
||||||
|
infringement under applicable copyright law, except executing it on a
|
||||||
|
computer or modifying a private copy. Propagation includes copying,
|
||||||
|
distribution (with or without modification), making available to the
|
||||||
|
public, and in some countries other activities as well.
|
||||||
|
|
||||||
|
To "convey" a work means any kind of propagation that enables other
|
||||||
|
parties to make or receive copies. Mere interaction with a user through
|
||||||
|
a computer network, with no transfer of a copy, is not conveying.
|
||||||
|
|
||||||
|
An interactive user interface displays "Appropriate Legal Notices"
|
||||||
|
to the extent that it includes a convenient and prominently visible
|
||||||
|
feature that (1) displays an appropriate copyright notice, and (2)
|
||||||
|
tells the user that there is no warranty for the work (except to the
|
||||||
|
extent that warranties are provided), that licensees may convey the
|
||||||
|
work under this License, and how to view a copy of this License. If
|
||||||
|
the interface presents a list of user commands or options, such as a
|
||||||
|
menu, a prominent item in the list meets this criterion.
|
||||||
|
|
||||||
|
1. Source Code.
|
||||||
|
|
||||||
|
The "source code" for a work means the preferred form of the work
|
||||||
|
for making modifications to it. "Object code" means any non-source
|
||||||
|
form of a work.
|
||||||
|
|
||||||
|
A "Standard Interface" means an interface that either is an official
|
||||||
|
standard defined by a recognized standards body, or, in the case of
|
||||||
|
interfaces specified for a particular programming language, one that
|
||||||
|
is widely used among developers working in that language.
|
||||||
|
|
||||||
|
The "System Libraries" of an executable work include anything, other
|
||||||
|
than the work as a whole, that (a) is included in the normal form of
|
||||||
|
packaging a Major Component, but which is not part of that Major
|
||||||
|
Component, and (b) serves only to enable use of the work with that
|
||||||
|
Major Component, or to implement a Standard Interface for which an
|
||||||
|
implementation is available to the public in source code form. A
|
||||||
|
"Major Component", in this context, means a major essential component
|
||||||
|
(kernel, window system, and so on) of the specific operating system
|
||||||
|
(if any) on which the executable work runs, or a compiler used to
|
||||||
|
produce the work, or an object code interpreter used to run it.
|
||||||
|
|
||||||
|
The "Corresponding Source" for a work in object code form means all
|
||||||
|
the source code needed to generate, install, and (for an executable
|
||||||
|
work) run the object code and to modify the work, including scripts to
|
||||||
|
control those activities. However, it does not include the work's
|
||||||
|
System Libraries, or general-purpose tools or generally available free
|
||||||
|
programs which are used unmodified in performing those activities but
|
||||||
|
which are not part of the work. For example, Corresponding Source
|
||||||
|
includes interface definition files associated with source files for
|
||||||
|
the work, and the source code for shared libraries and dynamically
|
||||||
|
linked subprograms that the work is specifically designed to require,
|
||||||
|
such as by intimate data communication or control flow between those
|
||||||
|
subprograms and other parts of the work.
|
||||||
|
|
||||||
|
The Corresponding Source need not include anything that users
|
||||||
|
can regenerate automatically from other parts of the Corresponding
|
||||||
|
Source.
|
||||||
|
|
||||||
|
The Corresponding Source for a work in source code form is that
|
||||||
|
same work.
|
||||||
|
|
||||||
|
2. Basic Permissions.
|
||||||
|
|
||||||
|
All rights granted under this License are granted for the term of
|
||||||
|
copyright on the Program, and are irrevocable provided the stated
|
||||||
|
conditions are met. This License explicitly affirms your unlimited
|
||||||
|
permission to run the unmodified Program. The output from running a
|
||||||
|
covered work is covered by this License only if the output, given its
|
||||||
|
content, constitutes a covered work. This License acknowledges your
|
||||||
|
rights of fair use or other equivalent, as provided by copyright law.
|
||||||
|
|
||||||
|
You may make, run and propagate covered works that you do not
|
||||||
|
convey, without conditions so long as your license otherwise remains
|
||||||
|
in force. You may convey covered works to others for the sole purpose
|
||||||
|
of having them make modifications exclusively for you, or provide you
|
||||||
|
with facilities for running those works, provided that you comply with
|
||||||
|
the terms of this License in conveying all material for which you do
|
||||||
|
not control copyright. Those thus making or running the covered works
|
||||||
|
for you must do so exclusively on your behalf, under your direction
|
||||||
|
and control, on terms that prohibit them from making any copies of
|
||||||
|
your copyrighted material outside their relationship with you.
|
||||||
|
|
||||||
|
Conveying under any other circumstances is permitted solely under
|
||||||
|
the conditions stated below. Sublicensing is not allowed; section 10
|
||||||
|
makes it unnecessary.
|
||||||
|
|
||||||
|
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||||
|
|
||||||
|
No covered work shall be deemed part of an effective technological
|
||||||
|
measure under any applicable law fulfilling obligations under article
|
||||||
|
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||||
|
similar laws prohibiting or restricting circumvention of such
|
||||||
|
measures.
|
||||||
|
|
||||||
|
When you convey a covered work, you waive any legal power to forbid
|
||||||
|
circumvention of technological measures to the extent such circumvention
|
||||||
|
is effected by exercising rights under this License with respect to
|
||||||
|
the covered work, and you disclaim any intention to limit operation or
|
||||||
|
modification of the work as a means of enforcing, against the work's
|
||||||
|
users, your or third parties' legal rights to forbid circumvention of
|
||||||
|
technological measures.
|
||||||
|
|
||||||
|
4. Conveying Verbatim Copies.
|
||||||
|
|
||||||
|
You may convey verbatim copies of the Program's source code as you
|
||||||
|
receive it, in any medium, provided that you conspicuously and
|
||||||
|
appropriately publish on each copy an appropriate copyright notice;
|
||||||
|
keep intact all notices stating that this License and any
|
||||||
|
non-permissive terms added in accord with section 7 apply to the code;
|
||||||
|
keep intact all notices of the absence of any warranty; and give all
|
||||||
|
recipients a copy of this License along with the Program.
|
||||||
|
|
||||||
|
You may charge any price or no price for each copy that you convey,
|
||||||
|
and you may offer support or warranty protection for a fee.
|
||||||
|
|
||||||
|
5. Conveying Modified Source Versions.
|
||||||
|
|
||||||
|
You may convey a work based on the Program, or the modifications to
|
||||||
|
produce it from the Program, in the form of source code under the
|
||||||
|
terms of section 4, provided that you also meet all of these conditions:
|
||||||
|
|
||||||
|
a) The work must carry prominent notices stating that you modified
|
||||||
|
it, and giving a relevant date.
|
||||||
|
|
||||||
|
b) The work must carry prominent notices stating that it is
|
||||||
|
released under this License and any conditions added under section
|
||||||
|
7. This requirement modifies the requirement in section 4 to
|
||||||
|
"keep intact all notices".
|
||||||
|
|
||||||
|
c) You must license the entire work, as a whole, under this
|
||||||
|
License to anyone who comes into possession of a copy. This
|
||||||
|
License will therefore apply, along with any applicable section 7
|
||||||
|
additional terms, to the whole of the work, and all its parts,
|
||||||
|
regardless of how they are packaged. This License gives no
|
||||||
|
permission to license the work in any other way, but it does not
|
||||||
|
invalidate such permission if you have separately received it.
|
||||||
|
|
||||||
|
d) If the work has interactive user interfaces, each must display
|
||||||
|
Appropriate Legal Notices; however, if the Program has interactive
|
||||||
|
interfaces that do not display Appropriate Legal Notices, your
|
||||||
|
work need not make them do so.
|
||||||
|
|
||||||
|
A compilation of a covered work with other separate and independent
|
||||||
|
works, which are not by their nature extensions of the covered work,
|
||||||
|
and which are not combined with it such as to form a larger program,
|
||||||
|
in or on a volume of a storage or distribution medium, is called an
|
||||||
|
"aggregate" if the compilation and its resulting copyright are not
|
||||||
|
used to limit the access or legal rights of the compilation's users
|
||||||
|
beyond what the individual works permit. Inclusion of a covered work
|
||||||
|
in an aggregate does not cause this License to apply to the other
|
||||||
|
parts of the aggregate.
|
||||||
|
|
||||||
|
6. Conveying Non-Source Forms.
|
||||||
|
|
||||||
|
You may convey a covered work in object code form under the terms
|
||||||
|
of sections 4 and 5, provided that you also convey the
|
||||||
|
machine-readable Corresponding Source under the terms of this License,
|
||||||
|
in one of these ways:
|
||||||
|
|
||||||
|
a) Convey the object code in, or embodied in, a physical product
|
||||||
|
(including a physical distribution medium), accompanied by the
|
||||||
|
Corresponding Source fixed on a durable physical medium
|
||||||
|
customarily used for software interchange.
|
||||||
|
|
||||||
|
b) Convey the object code in, or embodied in, a physical product
|
||||||
|
(including a physical distribution medium), accompanied by a
|
||||||
|
written offer, valid for at least three years and valid for as
|
||||||
|
long as you offer spare parts or customer support for that product
|
||||||
|
model, to give anyone who possesses the object code either (1) a
|
||||||
|
copy of the Corresponding Source for all the software in the
|
||||||
|
product that is covered by this License, on a durable physical
|
||||||
|
medium customarily used for software interchange, for a price no
|
||||||
|
more than your reasonable cost of physically performing this
|
||||||
|
conveying of source, or (2) access to copy the
|
||||||
|
Corresponding Source from a network server at no charge.
|
||||||
|
|
||||||
|
c) Convey individual copies of the object code with a copy of the
|
||||||
|
written offer to provide the Corresponding Source. This
|
||||||
|
alternative is allowed only occasionally and noncommercially, and
|
||||||
|
only if you received the object code with such an offer, in accord
|
||||||
|
with subsection 6b.
|
||||||
|
|
||||||
|
d) Convey the object code by offering access from a designated
|
||||||
|
place (gratis or for a charge), and offer equivalent access to the
|
||||||
|
Corresponding Source in the same way through the same place at no
|
||||||
|
further charge. You need not require recipients to copy the
|
||||||
|
Corresponding Source along with the object code. If the place to
|
||||||
|
copy the object code is a network server, the Corresponding Source
|
||||||
|
may be on a different server (operated by you or a third party)
|
||||||
|
that supports equivalent copying facilities, provided you maintain
|
||||||
|
clear directions next to the object code saying where to find the
|
||||||
|
Corresponding Source. Regardless of what server hosts the
|
||||||
|
Corresponding Source, you remain obligated to ensure that it is
|
||||||
|
available for as long as needed to satisfy these requirements.
|
||||||
|
|
||||||
|
e) Convey the object code using peer-to-peer transmission, provided
|
||||||
|
you inform other peers where the object code and Corresponding
|
||||||
|
Source of the work are being offered to the general public at no
|
||||||
|
charge under subsection 6d.
|
||||||
|
|
||||||
|
A separable portion of the object code, whose source code is excluded
|
||||||
|
from the Corresponding Source as a System Library, need not be
|
||||||
|
included in conveying the object code work.
|
||||||
|
|
||||||
|
A "User Product" is either (1) a "consumer product", which means any
|
||||||
|
tangible personal property which is normally used for personal, family,
|
||||||
|
or household purposes, or (2) anything designed or sold for incorporation
|
||||||
|
into a dwelling. In determining whether a product is a consumer product,
|
||||||
|
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||||
|
product received by a particular user, "normally used" refers to a
|
||||||
|
typical or common use of that class of product, regardless of the status
|
||||||
|
of the particular user or of the way in which the particular user
|
||||||
|
actually uses, or expects or is expected to use, the product. A product
|
||||||
|
is a consumer product regardless of whether the product has substantial
|
||||||
|
commercial, industrial or non-consumer uses, unless such uses represent
|
||||||
|
the only significant mode of use of the product.
|
||||||
|
|
||||||
|
"Installation Information" for a User Product means any methods,
|
||||||
|
procedures, authorization keys, or other information required to install
|
||||||
|
and execute modified versions of a covered work in that User Product from
|
||||||
|
a modified version of its Corresponding Source. The information must
|
||||||
|
suffice to ensure that the continued functioning of the modified object
|
||||||
|
code is in no case prevented or interfered with solely because
|
||||||
|
modification has been made.
|
||||||
|
|
||||||
|
If you convey an object code work under this section in, or with, or
|
||||||
|
specifically for use in, a User Product, and the conveying occurs as
|
||||||
|
part of a transaction in which the right of possession and use of the
|
||||||
|
User Product is transferred to the recipient in perpetuity or for a
|
||||||
|
fixed term (regardless of how the transaction is characterized), the
|
||||||
|
Corresponding Source conveyed under this section must be accompanied
|
||||||
|
by the Installation Information. But this requirement does not apply
|
||||||
|
if neither you nor any third party retains the ability to install
|
||||||
|
modified object code on the User Product (for example, the work has
|
||||||
|
been installed in ROM).
|
||||||
|
|
||||||
|
The requirement to provide Installation Information does not include a
|
||||||
|
requirement to continue to provide support service, warranty, or updates
|
||||||
|
for a work that has been modified or installed by the recipient, or for
|
||||||
|
the User Product in which it has been modified or installed. Access to a
|
||||||
|
network may be denied when the modification itself materially and
|
||||||
|
adversely affects the operation of the network or violates the rules and
|
||||||
|
protocols for communication across the network.
|
||||||
|
|
||||||
|
Corresponding Source conveyed, and Installation Information provided,
|
||||||
|
in accord with this section must be in a format that is publicly
|
||||||
|
documented (and with an implementation available to the public in
|
||||||
|
source code form), and must require no special password or key for
|
||||||
|
unpacking, reading or copying.
|
||||||
|
|
||||||
|
7. Additional Terms.
|
||||||
|
|
||||||
|
"Additional permissions" are terms that supplement the terms of this
|
||||||
|
License by making exceptions from one or more of its conditions.
|
||||||
|
Additional permissions that are applicable to the entire Program shall
|
||||||
|
be treated as though they were included in this License, to the extent
|
||||||
|
that they are valid under applicable law. If additional permissions
|
||||||
|
apply only to part of the Program, that part may be used separately
|
||||||
|
under those permissions, but the entire Program remains governed by
|
||||||
|
this License without regard to the additional permissions.
|
||||||
|
|
||||||
|
When you convey a copy of a covered work, you may at your option
|
||||||
|
remove any additional permissions from that copy, or from any part of
|
||||||
|
it. (Additional permissions may be written to require their own
|
||||||
|
removal in certain cases when you modify the work.) You may place
|
||||||
|
additional permissions on material, added by you to a covered work,
|
||||||
|
for which you have or can give appropriate copyright permission.
|
||||||
|
|
||||||
|
Notwithstanding any other provision of this License, for material you
|
||||||
|
add to a covered work, you may (if authorized by the copyright holders of
|
||||||
|
that material) supplement the terms of this License with terms:
|
||||||
|
|
||||||
|
a) Disclaiming warranty or limiting liability differently from the
|
||||||
|
terms of sections 15 and 16 of this License; or
|
||||||
|
|
||||||
|
b) Requiring preservation of specified reasonable legal notices or
|
||||||
|
author attributions in that material or in the Appropriate Legal
|
||||||
|
Notices displayed by works containing it; or
|
||||||
|
|
||||||
|
c) Prohibiting misrepresentation of the origin of that material, or
|
||||||
|
requiring that modified versions of such material be marked in
|
||||||
|
reasonable ways as different from the original version; or
|
||||||
|
|
||||||
|
d) Limiting the use for publicity purposes of names of licensors or
|
||||||
|
authors of the material; or
|
||||||
|
|
||||||
|
e) Declining to grant rights under trademark law for use of some
|
||||||
|
trade names, trademarks, or service marks; or
|
||||||
|
|
||||||
|
f) Requiring indemnification of licensors and authors of that
|
||||||
|
material by anyone who conveys the material (or modified versions of
|
||||||
|
it) with contractual assumptions of liability to the recipient, for
|
||||||
|
any liability that these contractual assumptions directly impose on
|
||||||
|
those licensors and authors.
|
||||||
|
|
||||||
|
All other non-permissive additional terms are considered "further
|
||||||
|
restrictions" within the meaning of section 10. If the Program as you
|
||||||
|
received it, or any part of it, contains a notice stating that it is
|
||||||
|
governed by this License along with a term that is a further
|
||||||
|
restriction, you may remove that term. If a license document contains
|
||||||
|
a further restriction but permits relicensing or conveying under this
|
||||||
|
License, you may add to a covered work material governed by the terms
|
||||||
|
of that license document, provided that the further restriction does
|
||||||
|
not survive such relicensing or conveying.
|
||||||
|
|
||||||
|
If you add terms to a covered work in accord with this section, you
|
||||||
|
must place, in the relevant source files, a statement of the
|
||||||
|
additional terms that apply to those files, or a notice indicating
|
||||||
|
where to find the applicable terms.
|
||||||
|
|
||||||
|
Additional terms, permissive or non-permissive, may be stated in the
|
||||||
|
form of a separately written license, or stated as exceptions;
|
||||||
|
the above requirements apply either way.
|
||||||
|
|
||||||
|
8. Termination.
|
||||||
|
|
||||||
|
You may not propagate or modify a covered work except as expressly
|
||||||
|
provided under this License. Any attempt otherwise to propagate or
|
||||||
|
modify it is void, and will automatically terminate your rights under
|
||||||
|
this License (including any patent licenses granted under the third
|
||||||
|
paragraph of section 11).
|
||||||
|
|
||||||
|
However, if you cease all violation of this License, then your
|
||||||
|
license from a particular copyright holder is reinstated (a)
|
||||||
|
provisionally, unless and until the copyright holder explicitly and
|
||||||
|
finally terminates your license, and (b) permanently, if the copyright
|
||||||
|
holder fails to notify you of the violation by some reasonable means
|
||||||
|
prior to 60 days after the cessation.
|
||||||
|
|
||||||
|
Moreover, your license from a particular copyright holder is
|
||||||
|
reinstated permanently if the copyright holder notifies you of the
|
||||||
|
violation by some reasonable means, this is the first time you have
|
||||||
|
received notice of violation of this License (for any work) from that
|
||||||
|
copyright holder, and you cure the violation prior to 30 days after
|
||||||
|
your receipt of the notice.
|
||||||
|
|
||||||
|
Termination of your rights under this section does not terminate the
|
||||||
|
licenses of parties who have received copies or rights from you under
|
||||||
|
this License. If your rights have been terminated and not permanently
|
||||||
|
reinstated, you do not qualify to receive new licenses for the same
|
||||||
|
material under section 10.
|
||||||
|
|
||||||
|
9. Acceptance Not Required for Having Copies.
|
||||||
|
|
||||||
|
You are not required to accept this License in order to receive or
|
||||||
|
run a copy of the Program. Ancillary propagation of a covered work
|
||||||
|
occurring solely as a consequence of using peer-to-peer transmission
|
||||||
|
to receive a copy likewise does not require acceptance. However,
|
||||||
|
nothing other than this License grants you permission to propagate or
|
||||||
|
modify any covered work. These actions infringe copyright if you do
|
||||||
|
not accept this License. Therefore, by modifying or propagating a
|
||||||
|
covered work, you indicate your acceptance of this License to do so.
|
||||||
|
|
||||||
|
10. Automatic Licensing of Downstream Recipients.
|
||||||
|
|
||||||
|
Each time you convey a covered work, the recipient automatically
|
||||||
|
receives a license from the original licensors, to run, modify and
|
||||||
|
propagate that work, subject to this License. You are not responsible
|
||||||
|
for enforcing compliance by third parties with this License.
|
||||||
|
|
||||||
|
An "entity transaction" is a transaction transferring control of an
|
||||||
|
organization, or substantially all assets of one, or subdividing an
|
||||||
|
organization, or merging organizations. If propagation of a covered
|
||||||
|
work results from an entity transaction, each party to that
|
||||||
|
transaction who receives a copy of the work also receives whatever
|
||||||
|
licenses to the work the party's predecessor in interest had or could
|
||||||
|
give under the previous paragraph, plus a right to possession of the
|
||||||
|
Corresponding Source of the work from the predecessor in interest, if
|
||||||
|
the predecessor has it or can get it with reasonable efforts.
|
||||||
|
|
||||||
|
You may not impose any further restrictions on the exercise of the
|
||||||
|
rights granted or affirmed under this License. For example, you may
|
||||||
|
not impose a license fee, royalty, or other charge for exercise of
|
||||||
|
rights granted under this License, and you may not initiate litigation
|
||||||
|
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||||
|
any patent claim is infringed by making, using, selling, offering for
|
||||||
|
sale, or importing the Program or any portion of it.
|
||||||
|
|
||||||
|
11. Patents.
|
||||||
|
|
||||||
|
A "contributor" is a copyright holder who authorizes use under this
|
||||||
|
License of the Program or a work on which the Program is based. The
|
||||||
|
work thus licensed is called the contributor's "contributor version".
|
||||||
|
|
||||||
|
A contributor's "essential patent claims" are all patent claims
|
||||||
|
owned or controlled by the contributor, whether already acquired or
|
||||||
|
hereafter acquired, that would be infringed by some manner, permitted
|
||||||
|
by this License, of making, using, or selling its contributor version,
|
||||||
|
but do not include claims that would be infringed only as a
|
||||||
|
consequence of further modification of the contributor version. For
|
||||||
|
purposes of this definition, "control" includes the right to grant
|
||||||
|
patent sublicenses in a manner consistent with the requirements of
|
||||||
|
this License.
|
||||||
|
|
||||||
|
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||||
|
patent license under the contributor's essential patent claims, to
|
||||||
|
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||||
|
propagate the contents of its contributor version.
|
||||||
|
|
||||||
|
In the following three paragraphs, a "patent license" is any express
|
||||||
|
agreement or commitment, however denominated, not to enforce a patent
|
||||||
|
(such as an express permission to practice a patent or covenant not to
|
||||||
|
sue for patent infringement). To "grant" such a patent license to a
|
||||||
|
party means to make such an agreement or commitment not to enforce a
|
||||||
|
patent against the party.
|
||||||
|
|
||||||
|
If you convey a covered work, knowingly relying on a patent license,
|
||||||
|
and the Corresponding Source of the work is not available for anyone
|
||||||
|
to copy, free of charge and under the terms of this License, through a
|
||||||
|
publicly available network server or other readily accessible means,
|
||||||
|
then you must either (1) cause the Corresponding Source to be so
|
||||||
|
available, or (2) arrange to deprive yourself of the benefit of the
|
||||||
|
patent license for this particular work, or (3) arrange, in a manner
|
||||||
|
consistent with the requirements of this License, to extend the patent
|
||||||
|
license to downstream recipients. "Knowingly relying" means you have
|
||||||
|
actual knowledge that, but for the patent license, your conveying the
|
||||||
|
covered work in a country, or your recipient's use of the covered work
|
||||||
|
in a country, would infringe one or more identifiable patents in that
|
||||||
|
country that you have reason to believe are valid.
|
||||||
|
|
||||||
|
If, pursuant to or in connection with a single transaction or
|
||||||
|
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||||
|
covered work, and grant a patent license to some of the parties
|
||||||
|
receiving the covered work authorizing them to use, propagate, modify
|
||||||
|
or convey a specific copy of the covered work, then the patent license
|
||||||
|
you grant is automatically extended to all recipients of the covered
|
||||||
|
work and works based on it.
|
||||||
|
|
||||||
|
A patent license is "discriminatory" if it does not include within
|
||||||
|
the scope of its coverage, prohibits the exercise of, or is
|
||||||
|
conditioned on the non-exercise of one or more of the rights that are
|
||||||
|
specifically granted under this License. You may not convey a covered
|
||||||
|
work if you are a party to an arrangement with a third party that is
|
||||||
|
in the business of distributing software, under which you make payment
|
||||||
|
to the third party based on the extent of your activity of conveying
|
||||||
|
the work, and under which the third party grants, to any of the
|
||||||
|
parties who would receive the covered work from you, a discriminatory
|
||||||
|
patent license (a) in connection with copies of the covered work
|
||||||
|
conveyed by you (or copies made from those copies), or (b) primarily
|
||||||
|
for and in connection with specific products or compilations that
|
||||||
|
contain the covered work, unless you entered into that arrangement,
|
||||||
|
or that patent license was granted, prior to 28 March 2007.
|
||||||
|
|
||||||
|
Nothing in this License shall be construed as excluding or limiting
|
||||||
|
any implied license or other defenses to infringement that may
|
||||||
|
otherwise be available to you under applicable patent law.
|
||||||
|
|
||||||
|
12. No Surrender of Others' Freedom.
|
||||||
|
|
||||||
|
If conditions are imposed on you (whether by court order, agreement or
|
||||||
|
otherwise) that contradict the conditions of this License, they do not
|
||||||
|
excuse you from the conditions of this License. If you cannot convey a
|
||||||
|
covered work so as to satisfy simultaneously your obligations under this
|
||||||
|
License and any other pertinent obligations, then as a consequence you may
|
||||||
|
not convey it at all. For example, if you agree to terms that obligate you
|
||||||
|
to collect a royalty for further conveying from those to whom you convey
|
||||||
|
the Program, the only way you could satisfy both those terms and this
|
||||||
|
License would be to refrain entirely from conveying the Program.
|
||||||
|
|
||||||
|
13. Use with the GNU Affero General Public License.
|
||||||
|
|
||||||
|
Notwithstanding any other provision of this License, you have
|
||||||
|
permission to link or combine any covered work with a work licensed
|
||||||
|
under version 3 of the GNU Affero General Public License into a single
|
||||||
|
combined work, and to convey the resulting work. The terms of this
|
||||||
|
License will continue to apply to the part which is the covered work,
|
||||||
|
but the special requirements of the GNU Affero General Public License,
|
||||||
|
section 13, concerning interaction through a network will apply to the
|
||||||
|
combination as such.
|
||||||
|
|
||||||
|
14. Revised Versions of this License.
|
||||||
|
|
||||||
|
The Free Software Foundation may publish revised and/or new versions of
|
||||||
|
the GNU General Public License from time to time. Such new versions will
|
||||||
|
be similar in spirit to the present version, but may differ in detail to
|
||||||
|
address new problems or concerns.
|
||||||
|
|
||||||
|
Each version is given a distinguishing version number. If the
|
||||||
|
Program specifies that a certain numbered version of the GNU General
|
||||||
|
Public License "or any later version" applies to it, you have the
|
||||||
|
option of following the terms and conditions either of that numbered
|
||||||
|
version or of any later version published by the Free Software
|
||||||
|
Foundation. If the Program does not specify a version number of the
|
||||||
|
GNU General Public License, you may choose any version ever published
|
||||||
|
by the Free Software Foundation.
|
||||||
|
|
||||||
|
If the Program specifies that a proxy can decide which future
|
||||||
|
versions of the GNU General Public License can be used, that proxy's
|
||||||
|
public statement of acceptance of a version permanently authorizes you
|
||||||
|
to choose that version for the Program.
|
||||||
|
|
||||||
|
Later license versions may give you additional or different
|
||||||
|
permissions. However, no additional obligations are imposed on any
|
||||||
|
author or copyright holder as a result of your choosing to follow a
|
||||||
|
later version.
|
||||||
|
|
||||||
|
15. Disclaimer of Warranty.
|
||||||
|
|
||||||
|
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||||
|
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||||
|
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||||
|
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||||
|
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||||
|
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||||
|
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||||
|
|
||||||
|
16. Limitation of Liability.
|
||||||
|
|
||||||
|
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||||
|
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||||
|
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||||
|
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||||
|
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||||
|
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||||
|
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||||
|
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||||
|
SUCH DAMAGES.
|
||||||
|
|
||||||
|
17. Interpretation of Sections 15 and 16.
|
||||||
|
|
||||||
|
If the disclaimer of warranty and limitation of liability provided
|
||||||
|
above cannot be given local legal effect according to their terms,
|
||||||
|
reviewing courts shall apply local law that most closely approximates
|
||||||
|
an absolute waiver of all civil liability in connection with the
|
||||||
|
Program, unless a warranty or assumption of liability accompanies a
|
||||||
|
copy of the Program in return for a fee.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
How to Apply These Terms to Your New Programs
|
||||||
|
|
||||||
|
If you develop a new program, and you want it to be of the greatest
|
||||||
|
possible use to the public, the best way to achieve this is to make it
|
||||||
|
free software which everyone can redistribute and change under these terms.
|
||||||
|
|
||||||
|
To do so, attach the following notices to the program. It is safest
|
||||||
|
to attach them to the start of each source file to most effectively
|
||||||
|
state the exclusion of warranty; and each file should have at least
|
||||||
|
the "copyright" line and a pointer to where the full notice is found.
|
||||||
|
|
||||||
|
<one line to give the program's name and a brief idea of what it does.>
|
||||||
|
Copyright (C) <year> <name of author>
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
Also add information on how to contact you by electronic and paper mail.
|
||||||
|
|
||||||
|
If the program does terminal interaction, make it output a short
|
||||||
|
notice like this when it starts in an interactive mode:
|
||||||
|
|
||||||
|
<program> Copyright (C) <year> <name of author>
|
||||||
|
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||||
|
This is free software, and you are welcome to redistribute it
|
||||||
|
under certain conditions; type `show c' for details.
|
||||||
|
|
||||||
|
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||||
|
parts of the General Public License. Of course, your program's commands
|
||||||
|
might be different; for a GUI interface, you would use an "about box".
|
||||||
|
|
||||||
|
You should also get your employer (if you work as a programmer) or school,
|
||||||
|
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||||
|
For more information on this, and how to apply and follow the GNU GPL, see
|
||||||
|
<http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
The GNU General Public License does not permit incorporating your program
|
||||||
|
into proprietary programs. If your program is a subroutine library, you
|
||||||
|
may consider it more useful to permit linking proprietary applications with
|
||||||
|
the library. If this is what you want to do, use the GNU Lesser General
|
||||||
|
Public License instead of this License. But first, please read
|
||||||
|
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||||
292
LICENSE.GPLv2
Normal file
292
LICENSE.GPLv2
Normal file
@@ -0,0 +1,292 @@
|
|||||||
|
GNU GENERAL PUBLIC LICENSE
|
||||||
|
|
||||||
|
The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd.
|
||||||
|
Contact: http://www.qt.io/licensing/
|
||||||
|
|
||||||
|
You may use, distribute and copy the Qt Toolkit under the terms of
|
||||||
|
GNU General Public License version 2, which is displayed below.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
GNU GENERAL PUBLIC LICENSE
|
||||||
|
Version 2, June 1991
|
||||||
|
|
||||||
|
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||||
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
|
|
||||||
|
Everyone is permitted to copy and distribute verbatim copies of this
|
||||||
|
license document, but changing it is not allowed.
|
||||||
|
|
||||||
|
Preamble
|
||||||
|
|
||||||
|
The licenses for most software are designed to take away your freedom
|
||||||
|
to share and change it. By contrast, the GNU General Public License is
|
||||||
|
intended to guarantee your freedom to share and change free software
|
||||||
|
--to make sure the software is free for all its users. This General
|
||||||
|
Public License applies to most of the Free Software Foundation's
|
||||||
|
software and to any other program whose authors commit to using it.
|
||||||
|
(Some other Free Software Foundation software is covered by the GNU
|
||||||
|
Lesser General Public License instead.) You can apply it to your
|
||||||
|
programs, too.
|
||||||
|
|
||||||
|
When we speak of free software, we are referring to freedom, not price.
|
||||||
|
Our General Public Licenses are designed to make sure that you have the
|
||||||
|
freedom to distribute copies of free software (and charge for this
|
||||||
|
service if you wish), that you receive source code or can get it if you
|
||||||
|
want it, that you can change the software or use pieces of it in new
|
||||||
|
free programs; and that you know you can do these things.
|
||||||
|
|
||||||
|
To protect your rights, we need to make restrictions that forbid anyone
|
||||||
|
to deny you these rights or to ask you to surrender the rights. These
|
||||||
|
restrictions translate to certain responsibilities for you if you
|
||||||
|
distribute copies of the software, or if you modify it.
|
||||||
|
|
||||||
|
For example, if you distribute copies of such a program, whether gratis
|
||||||
|
or for a fee, you must give the recipients all the rights that you
|
||||||
|
have. You must make sure that they, too, receive or can get the source
|
||||||
|
code. And you must show them these terms so they know their rights.
|
||||||
|
|
||||||
|
We protect your rights with two steps: (1) copyright the software, and
|
||||||
|
(2) offer you this license which gives you legal permission to copy,
|
||||||
|
distribute and/or modify the software.
|
||||||
|
|
||||||
|
Also, for each author's protection and ours, we want to make certain
|
||||||
|
that everyone understands that there is no warranty for this free
|
||||||
|
software. If the software is modified by someone else and passed on, we
|
||||||
|
want its recipients to know that what they have is not the original, so
|
||||||
|
that any problems introduced by others will not reflect on the original
|
||||||
|
authors' reputations.
|
||||||
|
|
||||||
|
Finally, any free program is threatened constantly by software patents.
|
||||||
|
We wish to avoid the danger that redistributors of a free program will
|
||||||
|
individually obtain patent licenses, in effect making the program
|
||||||
|
proprietary. To prevent this, we have made it clear that any patent
|
||||||
|
must be licensed for everyone's free use or not licensed at all.
|
||||||
|
|
||||||
|
The precise terms and conditions for copying, distribution and
|
||||||
|
modification follow.
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||||
|
|
||||||
|
0. This License applies to any program or other work which contains a
|
||||||
|
notice placed by the copyright holder saying it may be distributed
|
||||||
|
under the terms of this General Public License. The "Program", below,
|
||||||
|
refers to any such program or work, and a "work based on the Program"
|
||||||
|
means either the Program or any derivative work under copyright law:
|
||||||
|
that is to say, a work containing the Program or a portion of it,
|
||||||
|
either verbatim or with modifications and/or translated into another
|
||||||
|
language. (Hereinafter, translation is included without limitation in
|
||||||
|
the term "modification".) Each licensee is addressed as "you".
|
||||||
|
|
||||||
|
Activities other than copying, distribution and modification are not
|
||||||
|
covered by this License; they are outside its scope. The act of running
|
||||||
|
the Program is not restricted, and the output from the Program is
|
||||||
|
covered only if its contents constitute a work based on the Program
|
||||||
|
(independent of having been made by running the Program). Whether that
|
||||||
|
is true depends on what the Program does.
|
||||||
|
|
||||||
|
1. You may copy and distribute verbatim copies of the Program's source
|
||||||
|
code as you receive it, in any medium, provided that you conspicuously
|
||||||
|
and appropriately publish on each copy an appropriate copyright notice
|
||||||
|
and disclaimer of warranty; keep intact all the notices that refer to
|
||||||
|
this License and to the absence of any warranty; and give any other
|
||||||
|
recipients of the Program a copy of this License along with the
|
||||||
|
Program.
|
||||||
|
|
||||||
|
You may charge a fee for the physical act of transferring a copy, and
|
||||||
|
you may at your option offer warranty protection in exchange for a fee.
|
||||||
|
|
||||||
|
2. You may modify your copy or copies of the Program or any portion of
|
||||||
|
it, thus forming a work based on the Program, and copy and distribute
|
||||||
|
such modifications or work under the terms of Section 1 above, provided
|
||||||
|
that you also meet all of these conditions:
|
||||||
|
|
||||||
|
a) You must cause the modified files to carry prominent notices
|
||||||
|
stating that you changed the files and the date of any change.
|
||||||
|
|
||||||
|
b) You must cause any work that you distribute or publish, that in
|
||||||
|
whole or in part contains or is derived from the Program or any
|
||||||
|
part thereof, to be licensed as a whole at no charge to all third
|
||||||
|
parties under the terms of this License.
|
||||||
|
|
||||||
|
c) If the modified program normally reads commands interactively
|
||||||
|
when run, you must cause it, when started running for such
|
||||||
|
interactive use in the most ordinary way, to print or display an
|
||||||
|
announcement including an appropriate copyright notice and a
|
||||||
|
notice that there is no warranty (or else, saying that you provide
|
||||||
|
a warranty) and that users may redistribute the program under
|
||||||
|
these conditions, and telling the user how to view a copy of this
|
||||||
|
License. (Exception: if the Program itself is interactive but does
|
||||||
|
not normally print such an announcement, your work based on the
|
||||||
|
Program is not required to print an announcement.)
|
||||||
|
|
||||||
|
These requirements apply to the modified work as a whole. If
|
||||||
|
identifiable sections of that work are not derived from the Program,
|
||||||
|
and can be reasonably considered independent and separate works in
|
||||||
|
themselves, then this License, and its terms, do not apply to those
|
||||||
|
sections when you distribute them as separate works. But when you
|
||||||
|
distribute the same sections as part of a whole which is a work based
|
||||||
|
on the Program, the distribution of the whole must be on the terms of
|
||||||
|
this License, whose permissions for other licensees extend to the
|
||||||
|
entire whole, and thus to each and every part regardless of who wrote
|
||||||
|
it.
|
||||||
|
|
||||||
|
Thus, it is not the intent of this section to claim rights or contest
|
||||||
|
your rights to work written entirely by you; rather, the intent is to
|
||||||
|
exercise the right to control the distribution of derivative or
|
||||||
|
collective works based on the Program.
|
||||||
|
|
||||||
|
In addition, mere aggregation of another work not based on the Program
|
||||||
|
with the Program (or with a work based on the Program) on a volume of a
|
||||||
|
storage or distribution medium does not bring the other work under the
|
||||||
|
scope of this License.
|
||||||
|
|
||||||
|
3. You may copy and distribute the Program (or a work based on it,
|
||||||
|
under Section 2) in object code or executable form under the terms of
|
||||||
|
Sections 1 and 2 above provided that you also do one of the following:
|
||||||
|
|
||||||
|
a) Accompany it with the complete corresponding machine-readable
|
||||||
|
source code, which must be distributed under the terms of Sections
|
||||||
|
1 and 2 above on a medium customarily used for software
|
||||||
|
interchange; or,
|
||||||
|
|
||||||
|
b) Accompany it with a written offer, valid for at least three
|
||||||
|
years, to give any third party, for a charge no more than your cost
|
||||||
|
of physically performing source distribution, a complete
|
||||||
|
machine-readable copy of the corresponding source code, to be
|
||||||
|
distributed under the terms of Sections 1 and 2 above on a medium
|
||||||
|
customarily used for software interchange; or,
|
||||||
|
|
||||||
|
c) Accompany it with the information you received as to the offer
|
||||||
|
to distribute corresponding source code. (This alternative is
|
||||||
|
allowed only for noncommercial distribution and only if you
|
||||||
|
received the program in object code or executable form with such
|
||||||
|
an offer, in accord with Subsection b above.)
|
||||||
|
|
||||||
|
The source code for a work means the preferred form of the work for
|
||||||
|
making modifications to it. For an executable work, complete source
|
||||||
|
code means all the source code for all modules it contains, plus any
|
||||||
|
associated interface definition files, plus the scripts used to control
|
||||||
|
compilation and installation of the executable. However, as a special
|
||||||
|
exception, the source code distributed need not include anything that
|
||||||
|
is normally distributed (in either source or binary form) with the
|
||||||
|
major components (compiler, kernel, and so on) of the operating system
|
||||||
|
on which the executable runs, unless that component itself accompanies
|
||||||
|
the executable.
|
||||||
|
|
||||||
|
If distribution of executable or object code is made by offering access
|
||||||
|
to copy from a designated place, then offering equivalent access to
|
||||||
|
copy the source code from the same place counts as distribution of the
|
||||||
|
source code, even though third parties are not compelled to copy the
|
||||||
|
source along with the object code.
|
||||||
|
|
||||||
|
4. You may not copy, modify, sublicense, or distribute the Program
|
||||||
|
except as expressly provided under this License. Any attempt otherwise
|
||||||
|
to copy, modify, sublicense or distribute the Program is void, and will
|
||||||
|
automatically terminate your rights under this License. However,
|
||||||
|
parties who have received copies, or rights, from you under this License
|
||||||
|
will not have their licenses terminated so long as such parties remain
|
||||||
|
in full compliance.
|
||||||
|
|
||||||
|
5. You are not required to accept this License, since you have not
|
||||||
|
signed it. However, nothing else grants you permission to modify or
|
||||||
|
distribute the Program or its derivative works. These actions are
|
||||||
|
prohibited by law if you do not accept this License. Therefore, by
|
||||||
|
modifying or distributing the Program (or any work based on the
|
||||||
|
Program), you indicate your acceptance of this License to do so, and
|
||||||
|
all its terms and conditions for copying, distributing or modifying
|
||||||
|
the Program or works based on it.
|
||||||
|
|
||||||
|
6. Each time you redistribute the Program (or any work based on the
|
||||||
|
Program), the recipient automatically receives a license from the
|
||||||
|
original licensor to copy, distribute or modify the Program subject to
|
||||||
|
these terms and conditions. You may not impose any further restrictions
|
||||||
|
on the recipients' exercise of the rights granted herein. You are not
|
||||||
|
responsible for enforcing compliance by third parties to this License.
|
||||||
|
|
||||||
|
7. If, as a consequence of a court judgment or allegation of patent
|
||||||
|
infringement or for any other reason (not limited to patent issues),
|
||||||
|
conditions are imposed on you (whether by court order, agreement or
|
||||||
|
otherwise) that contradict the conditions of this License, they do not
|
||||||
|
excuse you from the conditions of this License. If you cannot
|
||||||
|
distribute so as to satisfy simultaneously your obligations under this
|
||||||
|
License and any other pertinent obligations, then as a consequence you
|
||||||
|
may not distribute the Program at all. For example, if a patent license
|
||||||
|
would not permit royalty-free redistribution of the Program by all
|
||||||
|
those who receive copies directly or indirectly through you, then the
|
||||||
|
only way you could satisfy both it and this License would be to refrain
|
||||||
|
entirely from distribution of the Program.
|
||||||
|
|
||||||
|
If any portion of this section is held invalid or unenforceable under
|
||||||
|
any particular circumstance, the balance of the section is intended to
|
||||||
|
apply and the section as a whole is intended to apply in other
|
||||||
|
circumstances.
|
||||||
|
|
||||||
|
It is not the purpose of this section to induce you to infringe any
|
||||||
|
patents or other property right claims or to contest validity of any
|
||||||
|
such claims; this section has the sole purpose of protecting the
|
||||||
|
integrity of the free software distribution system, which is
|
||||||
|
implemented by public license practices. Many people have made
|
||||||
|
generous contributions to the wide range of software distributed
|
||||||
|
through that system in reliance on consistent application of that
|
||||||
|
system; it is up to the author/donor to decide if he or she is willing
|
||||||
|
to distribute software through any other system and a licensee cannot
|
||||||
|
impose that choice.
|
||||||
|
|
||||||
|
This section is intended to make thoroughly clear what is believed to
|
||||||
|
be a consequence of the rest of this License.
|
||||||
|
|
||||||
|
8. If the distribution and/or use of the Program is restricted in
|
||||||
|
certain countries either by patents or by copyrighted interfaces, the
|
||||||
|
original copyright holder who places the Program under this License may
|
||||||
|
add an explicit geographical distribution limitation excluding those
|
||||||
|
countries, so that distribution is permitted only in or among countries
|
||||||
|
not thus excluded. In such case, this License incorporates the limitation
|
||||||
|
as if written in the body of this License.
|
||||||
|
|
||||||
|
9. The Free Software Foundation may publish revised and/or new versions
|
||||||
|
of the General Public License from time to time. Such new versions will
|
||||||
|
be similar in spirit to the present version, but may differ in detail
|
||||||
|
to address new problems or concerns.
|
||||||
|
|
||||||
|
Each version is given a distinguishing version number. If the Program
|
||||||
|
specifies a version number of this License which applies to it and "any
|
||||||
|
later version", you have the option of following the terms and
|
||||||
|
conditions either of that version or of any later version published by
|
||||||
|
the Free Software Foundation. If the Program does not specify a version
|
||||||
|
number of this License, you may choose any version ever published by
|
||||||
|
the Free Software Foundation.
|
||||||
|
|
||||||
|
10. If you wish to incorporate parts of the Program into other free
|
||||||
|
programs whose distribution conditions are different, write to the
|
||||||
|
author to ask for permission. For software which is copyrighted by
|
||||||
|
the Free Software Foundation, write to the Free Software Foundation;
|
||||||
|
we sometimes make exceptions for this. Our decision will be guided by
|
||||||
|
the two goals of preserving the free status of all derivatives of our
|
||||||
|
free software and of promoting the sharing and reuse of software
|
||||||
|
generally.
|
||||||
|
|
||||||
|
NO WARRANTY
|
||||||
|
|
||||||
|
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||||
|
WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||||
|
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||||
|
OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
|
||||||
|
ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH
|
||||||
|
YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
|
||||||
|
NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||||
|
|
||||||
|
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||||
|
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
|
||||||
|
MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE
|
||||||
|
TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||||
|
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||||
|
PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||||
|
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||||
|
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF
|
||||||
|
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||||
|
DAMAGES.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
@@ -1,3 +1,15 @@
|
|||||||
|
GNU GENERAL PUBLIC LICENSE
|
||||||
|
|
||||||
|
The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd.
|
||||||
|
Contact: http://www.qt.io/licensing/
|
||||||
|
|
||||||
|
You may use, distribute and copy the Qt Toolkit under the terms of
|
||||||
|
GNU Lesser General Public License version 3. That license references
|
||||||
|
the General Public License version 3, that is displayed below. Other
|
||||||
|
portions of the Qt Toolkit may be licensed directly under this license.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
GNU GENERAL PUBLIC LICENSE
|
||||||
Version 3, 29 June 2007
|
Version 3, 29 June 2007
|
||||||
|
|
||||||
514
LICENSE.LGPLv21
Normal file
514
LICENSE.LGPLv21
Normal file
@@ -0,0 +1,514 @@
|
|||||||
|
GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
|
||||||
|
The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd.
|
||||||
|
Contact: http://www.qt.io/licensing/
|
||||||
|
|
||||||
|
You may use, distribute and copy the Qt Toolkit under the terms of
|
||||||
|
GNU Lesser General Public License version 2.1, which is displayed below.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
Version 2.1, February 1999
|
||||||
|
|
||||||
|
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||||
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
|
[This is the first released version of the Lesser GPL. It also counts
|
||||||
|
as the successor of the GNU Library Public License, version 2, hence
|
||||||
|
the version number 2.1.]
|
||||||
|
|
||||||
|
Preamble
|
||||||
|
|
||||||
|
The licenses for most software are designed to take away your
|
||||||
|
freedom to share and change it. By contrast, the GNU General Public
|
||||||
|
Licenses are intended to guarantee your freedom to share and change
|
||||||
|
free software--to make sure the software is free for all its users.
|
||||||
|
|
||||||
|
This license, the Lesser General Public License, applies to some
|
||||||
|
specially designated software packages--typically libraries--of the
|
||||||
|
Free Software Foundation and other authors who decide to use it. You
|
||||||
|
can use it too, but we suggest you first think carefully about whether
|
||||||
|
this license or the ordinary General Public License is the better
|
||||||
|
strategy to use in any particular case, based on the explanations below.
|
||||||
|
|
||||||
|
When we speak of free software, we are referring to freedom of use,
|
||||||
|
not price. Our General Public Licenses are designed to make sure that
|
||||||
|
you have the freedom to distribute copies of free software (and charge
|
||||||
|
for this service if you wish); that you receive source code or can get
|
||||||
|
it if you want it; that you can change the software and use pieces of
|
||||||
|
it in new free programs; and that you are informed that you can do
|
||||||
|
these things.
|
||||||
|
|
||||||
|
To protect your rights, we need to make restrictions that forbid
|
||||||
|
distributors to deny you these rights or to ask you to surrender these
|
||||||
|
rights. These restrictions translate to certain responsibilities for
|
||||||
|
you if you distribute copies of the library or if you modify it.
|
||||||
|
|
||||||
|
For example, if you distribute copies of the library, whether gratis
|
||||||
|
or for a fee, you must give the recipients all the rights that we gave
|
||||||
|
you. You must make sure that they, too, receive or can get the source
|
||||||
|
code. If you link other code with the library, you must provide
|
||||||
|
complete object files to the recipients, so that they can relink them
|
||||||
|
with the library after making changes to the library and recompiling
|
||||||
|
it. And you must show them these terms so they know their rights.
|
||||||
|
|
||||||
|
We protect your rights with a two-step method: (1) we copyright the
|
||||||
|
library, and (2) we offer you this license, which gives you legal
|
||||||
|
permission to copy, distribute and/or modify the library.
|
||||||
|
|
||||||
|
To protect each distributor, we want to make it very clear that
|
||||||
|
there is no warranty for the free library. Also, if the library is
|
||||||
|
modified by someone else and passed on, the recipients should know
|
||||||
|
that what they have is not the original version, so that the original
|
||||||
|
author's reputation will not be affected by problems that might be
|
||||||
|
introduced by others.
|
||||||
|
|
||||||
|
Finally, software patents pose a constant threat to the existence of
|
||||||
|
any free program. We wish to make sure that a company cannot
|
||||||
|
effectively restrict the users of a free program by obtaining a
|
||||||
|
restrictive license from a patent holder. Therefore, we insist that
|
||||||
|
any patent license obtained for a version of the library must be
|
||||||
|
consistent with the full freedom of use specified in this license.
|
||||||
|
|
||||||
|
Most GNU software, including some libraries, is covered by the
|
||||||
|
ordinary GNU General Public License. This license, the GNU Lesser
|
||||||
|
General Public License, applies to certain designated libraries, and
|
||||||
|
is quite different from the ordinary General Public License. We use
|
||||||
|
this license for certain libraries in order to permit linking those
|
||||||
|
libraries into non-free programs.
|
||||||
|
|
||||||
|
When a program is linked with a library, whether statically or using
|
||||||
|
a shared library, the combination of the two is legally speaking a
|
||||||
|
combined work, a derivative of the original library. The ordinary
|
||||||
|
General Public License therefore permits such linking only if the
|
||||||
|
entire combination fits its criteria of freedom. The Lesser General
|
||||||
|
Public License permits more lax criteria for linking other code with
|
||||||
|
the library.
|
||||||
|
|
||||||
|
We call this license the "Lesser" General Public License because it
|
||||||
|
does Less to protect the user's freedom than the ordinary General
|
||||||
|
Public License. It also provides other free software developers Less
|
||||||
|
of an advantage over competing non-free programs. These disadvantages
|
||||||
|
are the reason we use the ordinary General Public License for many
|
||||||
|
libraries. However, the Lesser license provides advantages in certain
|
||||||
|
special circumstances.
|
||||||
|
|
||||||
|
For example, on rare occasions, there may be a special need to
|
||||||
|
encourage the widest possible use of a certain library, so that it becomes
|
||||||
|
a de-facto standard. To achieve this, non-free programs must be
|
||||||
|
allowed to use the library. A more frequent case is that a free
|
||||||
|
library does the same job as widely used non-free libraries. In this
|
||||||
|
case, there is little to gain by limiting the free library to free
|
||||||
|
software only, so we use the Lesser General Public License.
|
||||||
|
|
||||||
|
In other cases, permission to use a particular library in non-free
|
||||||
|
programs enables a greater number of people to use a large body of
|
||||||
|
free software. For example, permission to use the GNU C Library in
|
||||||
|
non-free programs enables many more people to use the whole GNU
|
||||||
|
operating system, as well as its variant, the GNU/Linux operating
|
||||||
|
system.
|
||||||
|
|
||||||
|
Although the Lesser General Public License is Less protective of the
|
||||||
|
users' freedom, it does ensure that the user of a program that is
|
||||||
|
linked with the Library has the freedom and the wherewithal to run
|
||||||
|
that program using a modified version of the Library.
|
||||||
|
|
||||||
|
The precise terms and conditions for copying, distribution and
|
||||||
|
modification follow. Pay close attention to the difference between a
|
||||||
|
"work based on the library" and a "work that uses the library". The
|
||||||
|
former contains code derived from the library, whereas the latter must
|
||||||
|
be combined with the library in order to run.
|
||||||
|
|
||||||
|
GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||||
|
|
||||||
|
0. This License Agreement applies to any software library or other
|
||||||
|
program which contains a notice placed by the copyright holder or
|
||||||
|
other authorized party saying it may be distributed under the terms of
|
||||||
|
this Lesser General Public License (also called "this License").
|
||||||
|
Each licensee is addressed as "you".
|
||||||
|
|
||||||
|
A "library" means a collection of software functions and/or data
|
||||||
|
prepared so as to be conveniently linked with application programs
|
||||||
|
(which use some of those functions and data) to form executables.
|
||||||
|
|
||||||
|
The "Library", below, refers to any such software library or work
|
||||||
|
which has been distributed under these terms. A "work based on the
|
||||||
|
Library" means either the Library or any derivative work under
|
||||||
|
copyright law: that is to say, a work containing the Library or a
|
||||||
|
portion of it, either verbatim or with modifications and/or translated
|
||||||
|
straightforwardly into another language. (Hereinafter, translation is
|
||||||
|
included without limitation in the term "modification".)
|
||||||
|
|
||||||
|
"Source code" for a work means the preferred form of the work for
|
||||||
|
making modifications to it. For a library, complete source code means
|
||||||
|
all the source code for all modules it contains, plus any associated
|
||||||
|
interface definition files, plus the scripts used to control compilation
|
||||||
|
and installation of the library.
|
||||||
|
|
||||||
|
Activities other than copying, distribution and modification are not
|
||||||
|
covered by this License; they are outside its scope. The act of
|
||||||
|
running a program using the Library is not restricted, and output from
|
||||||
|
such a program is covered only if its contents constitute a work based
|
||||||
|
on the Library (independent of the use of the Library in a tool for
|
||||||
|
writing it). Whether that is true depends on what the Library does
|
||||||
|
and what the program that uses the Library does.
|
||||||
|
|
||||||
|
1. You may copy and distribute verbatim copies of the Library's
|
||||||
|
complete source code as you receive it, in any medium, provided that
|
||||||
|
you conspicuously and appropriately publish on each copy an
|
||||||
|
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||||
|
all the notices that refer to this License and to the absence of any
|
||||||
|
warranty; and distribute a copy of this License along with the
|
||||||
|
Library.
|
||||||
|
|
||||||
|
You may charge a fee for the physical act of transferring a copy,
|
||||||
|
and you may at your option offer warranty protection in exchange for a
|
||||||
|
fee.
|
||||||
|
|
||||||
|
2. You may modify your copy or copies of the Library or any portion
|
||||||
|
of it, thus forming a work based on the Library, and copy and
|
||||||
|
distribute such modifications or work under the terms of Section 1
|
||||||
|
above, provided that you also meet all of these conditions:
|
||||||
|
|
||||||
|
a) The modified work must itself be a software library.
|
||||||
|
|
||||||
|
b) You must cause the files modified to carry prominent notices
|
||||||
|
stating that you changed the files and the date of any change.
|
||||||
|
|
||||||
|
c) You must cause the whole of the work to be licensed at no
|
||||||
|
charge to all third parties under the terms of this License.
|
||||||
|
|
||||||
|
d) If a facility in the modified Library refers to a function or a
|
||||||
|
table of data to be supplied by an application program that uses
|
||||||
|
the facility, other than as an argument passed when the facility
|
||||||
|
is invoked, then you must make a good faith effort to ensure that,
|
||||||
|
in the event an application does not supply such function or
|
||||||
|
table, the facility still operates, and performs whatever part of
|
||||||
|
its purpose remains meaningful.
|
||||||
|
|
||||||
|
(For example, a function in a library to compute square roots has
|
||||||
|
a purpose that is entirely well-defined independent of the
|
||||||
|
application. Therefore, Subsection 2d requires that any
|
||||||
|
application-supplied function or table used by this function must
|
||||||
|
be optional: if the application does not supply it, the square
|
||||||
|
root function must still compute square roots.)
|
||||||
|
|
||||||
|
These requirements apply to the modified work as a whole. If
|
||||||
|
identifiable sections of that work are not derived from the Library,
|
||||||
|
and can be reasonably considered independent and separate works in
|
||||||
|
themselves, then this License, and its terms, do not apply to those
|
||||||
|
sections when you distribute them as separate works. But when you
|
||||||
|
distribute the same sections as part of a whole which is a work based
|
||||||
|
on the Library, the distribution of the whole must be on the terms of
|
||||||
|
this License, whose permissions for other licensees extend to the
|
||||||
|
entire whole, and thus to each and every part regardless of who wrote
|
||||||
|
it.
|
||||||
|
|
||||||
|
Thus, it is not the intent of this section to claim rights or contest
|
||||||
|
your rights to work written entirely by you; rather, the intent is to
|
||||||
|
exercise the right to control the distribution of derivative or
|
||||||
|
collective works based on the Library.
|
||||||
|
|
||||||
|
In addition, mere aggregation of another work not based on the Library
|
||||||
|
with the Library (or with a work based on the Library) on a volume of
|
||||||
|
a storage or distribution medium does not bring the other work under
|
||||||
|
the scope of this License.
|
||||||
|
|
||||||
|
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||||
|
License instead of this License to a given copy of the Library. To do
|
||||||
|
this, you must alter all the notices that refer to this License, so
|
||||||
|
that they refer to the ordinary GNU General Public License, version 2,
|
||||||
|
instead of to this License. (If a newer version than version 2 of the
|
||||||
|
ordinary GNU General Public License has appeared, then you can specify
|
||||||
|
that version instead if you wish.) Do not make any other change in
|
||||||
|
these notices.
|
||||||
|
|
||||||
|
Once this change is made in a given copy, it is irreversible for
|
||||||
|
that copy, so the ordinary GNU General Public License applies to all
|
||||||
|
subsequent copies and derivative works made from that copy.
|
||||||
|
|
||||||
|
This option is useful when you wish to copy part of the code of
|
||||||
|
the Library into a program that is not a library.
|
||||||
|
|
||||||
|
4. You may copy and distribute the Library (or a portion or
|
||||||
|
derivative of it, under Section 2) in object code or executable form
|
||||||
|
under the terms of Sections 1 and 2 above provided that you accompany
|
||||||
|
it with the complete corresponding machine-readable source code, which
|
||||||
|
must be distributed under the terms of Sections 1 and 2 above on a
|
||||||
|
medium customarily used for software interchange.
|
||||||
|
|
||||||
|
If distribution of object code is made by offering access to copy
|
||||||
|
from a designated place, then offering equivalent access to copy the
|
||||||
|
source code from the same place satisfies the requirement to
|
||||||
|
distribute the source code, even though third parties are not
|
||||||
|
compelled to copy the source along with the object code.
|
||||||
|
|
||||||
|
5. A program that contains no derivative of any portion of the
|
||||||
|
Library, but is designed to work with the Library by being compiled or
|
||||||
|
linked with it, is called a "work that uses the Library". Such a
|
||||||
|
work, in isolation, is not a derivative work of the Library, and
|
||||||
|
therefore falls outside the scope of this License.
|
||||||
|
|
||||||
|
However, linking a "work that uses the Library" with the Library
|
||||||
|
creates an executable that is a derivative of the Library (because it
|
||||||
|
contains portions of the Library), rather than a "work that uses the
|
||||||
|
library". The executable is therefore covered by this License.
|
||||||
|
Section 6 states terms for distribution of such executables.
|
||||||
|
|
||||||
|
When a "work that uses the Library" uses material from a header file
|
||||||
|
that is part of the Library, the object code for the work may be a
|
||||||
|
derivative work of the Library even though the source code is not.
|
||||||
|
Whether this is true is especially significant if the work can be
|
||||||
|
linked without the Library, or if the work is itself a library. The
|
||||||
|
threshold for this to be true is not precisely defined by law.
|
||||||
|
|
||||||
|
If such an object file uses only numerical parameters, data
|
||||||
|
structure layouts and accessors, and small macros and small inline
|
||||||
|
functions (ten lines or less in length), then the use of the object
|
||||||
|
file is unrestricted, regardless of whether it is legally a derivative
|
||||||
|
work. (Executables containing this object code plus portions of the
|
||||||
|
Library will still fall under Section 6.)
|
||||||
|
|
||||||
|
Otherwise, if the work is a derivative of the Library, you may
|
||||||
|
distribute the object code for the work under the terms of Section 6.
|
||||||
|
Any executables containing that work also fall under Section 6,
|
||||||
|
whether or not they are linked directly with the Library itself.
|
||||||
|
|
||||||
|
6. As an exception to the Sections above, you may also combine or
|
||||||
|
link a "work that uses the Library" with the Library to produce a
|
||||||
|
work containing portions of the Library, and distribute that work
|
||||||
|
under terms of your choice, provided that the terms permit
|
||||||
|
modification of the work for the customer's own use and reverse
|
||||||
|
engineering for debugging such modifications.
|
||||||
|
|
||||||
|
You must give prominent notice with each copy of the work that the
|
||||||
|
Library is used in it and that the Library and its use are covered by
|
||||||
|
this License. You must supply a copy of this License. If the work
|
||||||
|
during execution displays copyright notices, you must include the
|
||||||
|
copyright notice for the Library among them, as well as a reference
|
||||||
|
directing the user to the copy of this License. Also, you must do one
|
||||||
|
of these things:
|
||||||
|
|
||||||
|
a) Accompany the work with the complete corresponding
|
||||||
|
machine-readable source code for the Library including whatever
|
||||||
|
changes were used in the work (which must be distributed under
|
||||||
|
Sections 1 and 2 above); and, if the work is an executable linked
|
||||||
|
with the Library, with the complete machine-readable "work that
|
||||||
|
uses the Library", as object code and/or source code, so that the
|
||||||
|
user can modify the Library and then relink to produce a modified
|
||||||
|
executable containing the modified Library. (It is understood
|
||||||
|
that the user who changes the contents of definitions files in the
|
||||||
|
Library will not necessarily be able to recompile the application
|
||||||
|
to use the modified definitions.)
|
||||||
|
|
||||||
|
b) Use a suitable shared library mechanism for linking with the
|
||||||
|
Library. A suitable mechanism is one that (1) uses at run time a
|
||||||
|
copy of the library already present on the user's computer system,
|
||||||
|
rather than copying library functions into the executable, and (2)
|
||||||
|
will operate properly with a modified version of the library, if
|
||||||
|
the user installs one, as long as the modified version is
|
||||||
|
interface-compatible with the version that the work was made with.
|
||||||
|
|
||||||
|
c) Accompany the work with a written offer, valid for at
|
||||||
|
least three years, to give the same user the materials
|
||||||
|
specified in Subsection 6a, above, for a charge no more
|
||||||
|
than the cost of performing this distribution.
|
||||||
|
|
||||||
|
d) If distribution of the work is made by offering access to copy
|
||||||
|
from a designated place, offer equivalent access to copy the above
|
||||||
|
specified materials from the same place.
|
||||||
|
|
||||||
|
e) Verify that the user has already received a copy of these
|
||||||
|
materials or that you have already sent this user a copy.
|
||||||
|
|
||||||
|
For an executable, the required form of the "work that uses the
|
||||||
|
Library" must include any data and utility programs needed for
|
||||||
|
reproducing the executable from it. However, as a special exception,
|
||||||
|
the materials to be distributed need not include anything that is
|
||||||
|
normally distributed (in either source or binary form) with the major
|
||||||
|
components (compiler, kernel, and so on) of the operating system on
|
||||||
|
which the executable runs, unless that component itself accompanies
|
||||||
|
the executable.
|
||||||
|
|
||||||
|
It may happen that this requirement contradicts the license
|
||||||
|
restrictions of other proprietary libraries that do not normally
|
||||||
|
accompany the operating system. Such a contradiction means you cannot
|
||||||
|
use both them and the Library together in an executable that you
|
||||||
|
distribute.
|
||||||
|
|
||||||
|
7. You may place library facilities that are a work based on the
|
||||||
|
Library side-by-side in a single library together with other library
|
||||||
|
facilities not covered by this License, and distribute such a combined
|
||||||
|
library, provided that the separate distribution of the work based on
|
||||||
|
the Library and of the other library facilities is otherwise
|
||||||
|
permitted, and provided that you do these two things:
|
||||||
|
|
||||||
|
a) Accompany the combined library with a copy of the same work
|
||||||
|
based on the Library, uncombined with any other library
|
||||||
|
facilities. This must be distributed under the terms of the
|
||||||
|
Sections above.
|
||||||
|
|
||||||
|
b) Give prominent notice with the combined library of the fact
|
||||||
|
that part of it is a work based on the Library, and explaining
|
||||||
|
where to find the accompanying uncombined form of the same work.
|
||||||
|
|
||||||
|
8. You may not copy, modify, sublicense, link with, or distribute
|
||||||
|
the Library except as expressly provided under this License. Any
|
||||||
|
attempt otherwise to copy, modify, sublicense, link with, or
|
||||||
|
distribute the Library is void, and will automatically terminate your
|
||||||
|
rights under this License. However, parties who have received copies,
|
||||||
|
or rights, from you under this License will not have their licenses
|
||||||
|
terminated so long as such parties remain in full compliance.
|
||||||
|
|
||||||
|
9. You are not required to accept this License, since you have not
|
||||||
|
signed it. However, nothing else grants you permission to modify or
|
||||||
|
distribute the Library or its derivative works. These actions are
|
||||||
|
prohibited by law if you do not accept this License. Therefore, by
|
||||||
|
modifying or distributing the Library (or any work based on the
|
||||||
|
Library), you indicate your acceptance of this License to do so, and
|
||||||
|
all its terms and conditions for copying, distributing or modifying
|
||||||
|
the Library or works based on it.
|
||||||
|
|
||||||
|
10. Each time you redistribute the Library (or any work based on the
|
||||||
|
Library), the recipient automatically receives a license from the
|
||||||
|
original licensor to copy, distribute, link with or modify the Library
|
||||||
|
subject to these terms and conditions. You may not impose any further
|
||||||
|
restrictions on the recipients' exercise of the rights granted herein.
|
||||||
|
You are not responsible for enforcing compliance by third parties with
|
||||||
|
this License.
|
||||||
|
|
||||||
|
11. If, as a consequence of a court judgment or allegation of patent
|
||||||
|
infringement or for any other reason (not limited to patent issues),
|
||||||
|
conditions are imposed on you (whether by court order, agreement or
|
||||||
|
otherwise) that contradict the conditions of this License, they do not
|
||||||
|
excuse you from the conditions of this License. If you cannot
|
||||||
|
distribute so as to satisfy simultaneously your obligations under this
|
||||||
|
License and any other pertinent obligations, then as a consequence you
|
||||||
|
may not distribute the Library at all. For example, if a patent
|
||||||
|
license would not permit royalty-free redistribution of the Library by
|
||||||
|
all those who receive copies directly or indirectly through you, then
|
||||||
|
the only way you could satisfy both it and this License would be to
|
||||||
|
refrain entirely from distribution of the Library.
|
||||||
|
|
||||||
|
If any portion of this section is held invalid or unenforceable under any
|
||||||
|
particular circumstance, the balance of the section is intended to apply,
|
||||||
|
and the section as a whole is intended to apply in other circumstances.
|
||||||
|
|
||||||
|
It is not the purpose of this section to induce you to infringe any
|
||||||
|
patents or other property right claims or to contest validity of any
|
||||||
|
such claims; this section has the sole purpose of protecting the
|
||||||
|
integrity of the free software distribution system which is
|
||||||
|
implemented by public license practices. Many people have made
|
||||||
|
generous contributions to the wide range of software distributed
|
||||||
|
through that system in reliance on consistent application of that
|
||||||
|
system; it is up to the author/donor to decide if he or she is willing
|
||||||
|
to distribute software through any other system and a licensee cannot
|
||||||
|
impose that choice.
|
||||||
|
|
||||||
|
This section is intended to make thoroughly clear what is believed to
|
||||||
|
be a consequence of the rest of this License.
|
||||||
|
|
||||||
|
12. If the distribution and/or use of the Library is restricted in
|
||||||
|
certain countries either by patents or by copyrighted interfaces, the
|
||||||
|
original copyright holder who places the Library under this License may add
|
||||||
|
an explicit geographical distribution limitation excluding those countries,
|
||||||
|
so that distribution is permitted only in or among countries not thus
|
||||||
|
excluded. In such case, this License incorporates the limitation as if
|
||||||
|
written in the body of this License.
|
||||||
|
|
||||||
|
13. The Free Software Foundation may publish revised and/or new
|
||||||
|
versions of the Lesser General Public License from time to time.
|
||||||
|
Such new versions will be similar in spirit to the present version,
|
||||||
|
but may differ in detail to address new problems or concerns.
|
||||||
|
|
||||||
|
Each version is given a distinguishing version number. If the Library
|
||||||
|
specifies a version number of this License which applies to it and
|
||||||
|
"any later version", you have the option of following the terms and
|
||||||
|
conditions either of that version or of any later version published by
|
||||||
|
the Free Software Foundation. If the Library does not specify a
|
||||||
|
license version number, you may choose any version ever published by
|
||||||
|
the Free Software Foundation.
|
||||||
|
|
||||||
|
14. If you wish to incorporate parts of the Library into other free
|
||||||
|
programs whose distribution conditions are incompatible with these,
|
||||||
|
write to the author to ask for permission. For software which is
|
||||||
|
copyrighted by the Free Software Foundation, write to the Free
|
||||||
|
Software Foundation; we sometimes make exceptions for this. Our
|
||||||
|
decision will be guided by the two goals of preserving the free status
|
||||||
|
of all derivatives of our free software and of promoting the sharing
|
||||||
|
and reuse of software generally.
|
||||||
|
|
||||||
|
NO WARRANTY
|
||||||
|
|
||||||
|
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||||
|
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||||
|
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||||
|
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||||
|
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||||
|
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||||
|
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||||
|
|
||||||
|
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||||
|
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||||
|
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||||
|
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||||
|
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||||
|
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||||
|
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||||
|
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||||
|
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||||
|
DAMAGES.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
How to Apply These Terms to Your New Libraries
|
||||||
|
|
||||||
|
If you develop a new library, and you want it to be of the greatest
|
||||||
|
possible use to the public, we recommend making it free software that
|
||||||
|
everyone can redistribute and change. You can do so by permitting
|
||||||
|
redistribution under these terms (or, alternatively, under the terms of the
|
||||||
|
ordinary General Public License).
|
||||||
|
|
||||||
|
To apply these terms, attach the following notices to the library. It is
|
||||||
|
safest to attach them to the start of each source file to most effectively
|
||||||
|
convey the exclusion of warranty; and each file should have at least the
|
||||||
|
"copyright" line and a pointer to where the full notice is found.
|
||||||
|
|
||||||
|
<one line to give the library's name and a brief idea of what it does.>
|
||||||
|
Copyright (C) <year> <name of author>
|
||||||
|
|
||||||
|
This library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
This library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with this library; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
Also add information on how to contact you by electronic and paper mail.
|
||||||
|
|
||||||
|
You should also get your employer (if you work as a programmer) or your
|
||||||
|
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||||
|
necessary. Here is a sample; alter the names:
|
||||||
|
|
||||||
|
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||||
|
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||||
|
|
||||||
|
<signature of Ty Coon>, 1 April 1990
|
||||||
|
Ty Coon, President of Vice
|
||||||
|
|
||||||
|
That's all there is to it!
|
||||||
|
|
||||||
|
|
||||||
175
LICENSE.LGPLv3
Normal file
175
LICENSE.LGPLv3
Normal file
@@ -0,0 +1,175 @@
|
|||||||
|
GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
|
||||||
|
The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd.
|
||||||
|
Contact: http://www.qt.io/licensing/
|
||||||
|
|
||||||
|
You may use, distribute and copy the Qt Toolkit under the terms of
|
||||||
|
GNU Lesser General Public License version 3, which is displayed below.
|
||||||
|
This license makes reference to the version 3 of the GNU General
|
||||||
|
Public License, which you can find in the LICENSE.GPLv3 file.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
Version 3, 29 June 2007
|
||||||
|
|
||||||
|
Copyright © 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||||
|
Everyone is permitted to copy and distribute verbatim copies of this
|
||||||
|
licensedocument, but changing it is not allowed.
|
||||||
|
|
||||||
|
This version of the GNU Lesser General Public License incorporates
|
||||||
|
the terms and conditions of version 3 of the GNU General Public
|
||||||
|
License, supplemented by the additional permissions listed below.
|
||||||
|
|
||||||
|
0. Additional Definitions.
|
||||||
|
|
||||||
|
As used herein, “this License” refers to version 3 of the GNU Lesser
|
||||||
|
General Public License, and the “GNU GPL” refers to version 3 of the
|
||||||
|
GNU General Public License.
|
||||||
|
|
||||||
|
“The Library” refers to a covered work governed by this License,
|
||||||
|
other than an Application or a Combined Work as defined below.
|
||||||
|
|
||||||
|
An “Application” is any work that makes use of an interface provided
|
||||||
|
by the Library, but which is not otherwise based on the Library.
|
||||||
|
Defining a subclass of a class defined by the Library is deemed a mode
|
||||||
|
of using an interface provided by the Library.
|
||||||
|
|
||||||
|
A “Combined Work” is a work produced by combining or linking an
|
||||||
|
Application with the Library. The particular version of the Library
|
||||||
|
with which the Combined Work was made is also called the “Linked
|
||||||
|
Version”.
|
||||||
|
|
||||||
|
The “Minimal Corresponding Source” for a Combined Work means the
|
||||||
|
Corresponding Source for the Combined Work, excluding any source code
|
||||||
|
for portions of the Combined Work that, considered in isolation, are
|
||||||
|
based on the Application, and not on the Linked Version.
|
||||||
|
|
||||||
|
The “Corresponding Application Code” for a Combined Work means the
|
||||||
|
object code and/or source code for the Application, including any data
|
||||||
|
and utility programs needed for reproducing the Combined Work from the
|
||||||
|
Application, but excluding the System Libraries of the Combined Work.
|
||||||
|
|
||||||
|
1. Exception to Section 3 of the GNU GPL.
|
||||||
|
|
||||||
|
You may convey a covered work under sections 3 and 4 of this License
|
||||||
|
without being bound by section 3 of the GNU GPL.
|
||||||
|
|
||||||
|
2. Conveying Modified Versions.
|
||||||
|
|
||||||
|
If you modify a copy of the Library, and, in your modifications, a
|
||||||
|
facility refers to a function or data to be supplied by an Application
|
||||||
|
that uses the facility (other than as an argument passed when the
|
||||||
|
facility is invoked), then you may convey a copy of the modified
|
||||||
|
version:
|
||||||
|
|
||||||
|
a) under this License, provided that you make a good faith effort
|
||||||
|
to ensure that, in the event an Application does not supply the
|
||||||
|
function or data, the facility still operates, and performs
|
||||||
|
whatever part of its purpose remains meaningful, or
|
||||||
|
|
||||||
|
b) under the GNU GPL, with none of the additional permissions of
|
||||||
|
this License applicable to that copy.
|
||||||
|
|
||||||
|
3. Object Code Incorporating Material from Library Header Files.
|
||||||
|
|
||||||
|
The object code form of an Application may incorporate material from
|
||||||
|
a header file that is part of the Library. You may convey such object
|
||||||
|
code under terms of your choice, provided that, if the incorporated
|
||||||
|
material is not limited to numerical parameters, data structure
|
||||||
|
layouts and accessors, or small macros, inline functions and templates
|
||||||
|
(ten or fewer lines in length), you do both of the following:
|
||||||
|
|
||||||
|
a) Give prominent notice with each copy of the object code that
|
||||||
|
the Library is used in it and that the Library and its use are
|
||||||
|
covered by this License.
|
||||||
|
|
||||||
|
b) Accompany the object code with a copy of the GNU GPL and this
|
||||||
|
license document.
|
||||||
|
|
||||||
|
4. Combined Works.
|
||||||
|
|
||||||
|
You may convey a Combined Work under terms of your choice that, taken
|
||||||
|
together, effectively do not restrict modification of the portions of
|
||||||
|
the Library contained in the Combined Work and reverse engineering for
|
||||||
|
debugging such modifications, if you also do each of the following:
|
||||||
|
|
||||||
|
a) Give prominent notice with each copy of the Combined Work that
|
||||||
|
the Library is used in it and that the Library and its use are
|
||||||
|
covered by this License.
|
||||||
|
|
||||||
|
b) Accompany the Combined Work with a copy of the GNU GPL and this
|
||||||
|
license document.
|
||||||
|
|
||||||
|
c) For a Combined Work that displays copyright notices during
|
||||||
|
execution, include the copyright notice for the Library among
|
||||||
|
these notices, as well as a reference directing the user to the
|
||||||
|
copies of the GNU GPL and this license document.
|
||||||
|
|
||||||
|
d) Do one of the following:
|
||||||
|
|
||||||
|
0) Convey the Minimal Corresponding Source under the terms of
|
||||||
|
this License, and the Corresponding Application Code in a form
|
||||||
|
suitable for, and under terms that permit, the user to
|
||||||
|
recombine or relink the Application with a modified version of
|
||||||
|
the Linked Version to produce a modified Combined Work, in the
|
||||||
|
manner specified by section 6 of the GNU GPL for conveying
|
||||||
|
Corresponding Source.
|
||||||
|
|
||||||
|
1) Use a suitable shared library mechanism for linking with
|
||||||
|
the Library. A suitable mechanism is one that (a) uses at run
|
||||||
|
time a copy of the Library already present on the user's
|
||||||
|
computer system, and (b) will operate properly with a modified
|
||||||
|
version of the Library that is interface-compatible with the
|
||||||
|
Linked Version.
|
||||||
|
|
||||||
|
e) Provide Installation Information, but only if you would
|
||||||
|
otherwise be required to provide such information under section 6
|
||||||
|
of the GNU GPL, and only to the extent that such information is
|
||||||
|
necessary to install and execute a modified version of the
|
||||||
|
Combined Work produced by recombining or relinking the Application
|
||||||
|
with a modified version of the Linked Version. (If you use option
|
||||||
|
4d0, the Installation Information must accompany the Minimal
|
||||||
|
Corresponding Source and Corresponding Application Code. If you
|
||||||
|
use option 4d1, you must provide the Installation Information in
|
||||||
|
the manner specified by section 6 of the GNU GPL for conveying
|
||||||
|
Corresponding Source.)
|
||||||
|
|
||||||
|
5. Combined Libraries.
|
||||||
|
|
||||||
|
You may place library facilities that are a work based on the Library
|
||||||
|
side by side in a single library together with other library
|
||||||
|
facilities that are not Applications and are not covered by this
|
||||||
|
License, and convey such a combined library under terms of your
|
||||||
|
choice, if you do both of the following:
|
||||||
|
|
||||||
|
a) Accompany the combined library with a copy of the same work
|
||||||
|
based on the Library, uncombined with any other library
|
||||||
|
facilities, conveyed under the terms of this License.
|
||||||
|
|
||||||
|
b) Give prominent notice with the combined library that part of
|
||||||
|
it is a work based on the Library, and explaining where to find
|
||||||
|
the accompanying uncombined form of the same work.
|
||||||
|
|
||||||
|
6. Revised Versions of the GNU Lesser General Public License.
|
||||||
|
|
||||||
|
The Free Software Foundation may publish revised and/or new versions
|
||||||
|
of the GNU Lesser General Public License from time to time. Such new
|
||||||
|
versions will be similar in spirit to the present version, but may
|
||||||
|
differ in detail to address new problems or concerns.
|
||||||
|
|
||||||
|
Each version is given a distinguishing version number. If the Library
|
||||||
|
as you received it specifies that a certain numbered version of the
|
||||||
|
GNU Lesser General Public License “or any later version” applies to
|
||||||
|
it, you have the option of following the terms and conditions either
|
||||||
|
of that published version or of any later version published by the
|
||||||
|
Free Software Foundation. If the Library as you received it does not
|
||||||
|
specify a version number of the GNU Lesser General Public License,
|
||||||
|
you may choose any version of the GNU Lesser General Public License
|
||||||
|
ever published by the Free Software Foundation.
|
||||||
|
|
||||||
|
If the Library as you received it specifies that a proxy can decide
|
||||||
|
whether future versions of the GNU Lesser General Public License shall
|
||||||
|
apply, that proxy's public statement of acceptance of any version is
|
||||||
|
permanent authorization for you to choose that version for the Library.
|
||||||
|
|
||||||
1331
LICENSE.QT-LICENSE-AGREEMENT
Normal file
1331
LICENSE.QT-LICENSE-AGREEMENT
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,339 +0,0 @@
|
|||||||
GNU GENERAL PUBLIC LICENSE
|
|
||||||
Version 2, June 1991
|
|
||||||
|
|
||||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
|
|
||||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies
|
|
||||||
of this license document, but changing it is not allowed.
|
|
||||||
|
|
||||||
Preamble
|
|
||||||
|
|
||||||
The licenses for most software are designed to take away your
|
|
||||||
freedom to share and change it. By contrast, the GNU General Public
|
|
||||||
License is intended to guarantee your freedom to share and change free
|
|
||||||
software--to make sure the software is free for all its users. This
|
|
||||||
General Public License applies to most of the Free Software
|
|
||||||
Foundation's software and to any other program whose authors commit to
|
|
||||||
using it. (Some other Free Software Foundation software is covered by
|
|
||||||
the GNU Lesser General Public License instead.) You can apply it to
|
|
||||||
your programs, too.
|
|
||||||
|
|
||||||
When we speak of free software, we are referring to freedom, not
|
|
||||||
price. Our General Public Licenses are designed to make sure that you
|
|
||||||
have the freedom to distribute copies of free software (and charge for
|
|
||||||
this service if you wish), that you receive source code or can get it
|
|
||||||
if you want it, that you can change the software or use pieces of it
|
|
||||||
in new free programs; and that you know you can do these things.
|
|
||||||
|
|
||||||
To protect your rights, we need to make restrictions that forbid
|
|
||||||
anyone to deny you these rights or to ask you to surrender the rights.
|
|
||||||
These restrictions translate to certain responsibilities for you if you
|
|
||||||
distribute copies of the software, or if you modify it.
|
|
||||||
|
|
||||||
For example, if you distribute copies of such a program, whether
|
|
||||||
gratis or for a fee, you must give the recipients all the rights that
|
|
||||||
you have. You must make sure that they, too, receive or can get the
|
|
||||||
source code. And you must show them these terms so they know their
|
|
||||||
rights.
|
|
||||||
|
|
||||||
We protect your rights with two steps: (1) copyright the software, and
|
|
||||||
(2) offer you this license which gives you legal permission to copy,
|
|
||||||
distribute and/or modify the software.
|
|
||||||
|
|
||||||
Also, for each author's protection and ours, we want to make certain
|
|
||||||
that everyone understands that there is no warranty for this free
|
|
||||||
software. If the software is modified by someone else and passed on, we
|
|
||||||
want its recipients to know that what they have is not the original, so
|
|
||||||
that any problems introduced by others will not reflect on the original
|
|
||||||
authors' reputations.
|
|
||||||
|
|
||||||
Finally, any free program is threatened constantly by software
|
|
||||||
patents. We wish to avoid the danger that redistributors of a free
|
|
||||||
program will individually obtain patent licenses, in effect making the
|
|
||||||
program proprietary. To prevent this, we have made it clear that any
|
|
||||||
patent must be licensed for everyone's free use or not licensed at all.
|
|
||||||
|
|
||||||
The precise terms and conditions for copying, distribution and
|
|
||||||
modification follow.
|
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
|
||||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
|
||||||
|
|
||||||
0. This License applies to any program or other work which contains
|
|
||||||
a notice placed by the copyright holder saying it may be distributed
|
|
||||||
under the terms of this General Public License. The "Program", below,
|
|
||||||
refers to any such program or work, and a "work based on the Program"
|
|
||||||
means either the Program or any derivative work under copyright law:
|
|
||||||
that is to say, a work containing the Program or a portion of it,
|
|
||||||
either verbatim or with modifications and/or translated into another
|
|
||||||
language. (Hereinafter, translation is included without limitation in
|
|
||||||
the term "modification".) Each licensee is addressed as "you".
|
|
||||||
|
|
||||||
Activities other than copying, distribution and modification are not
|
|
||||||
covered by this License; they are outside its scope. The act of
|
|
||||||
running the Program is not restricted, and the output from the Program
|
|
||||||
is covered only if its contents constitute a work based on the
|
|
||||||
Program (independent of having been made by running the Program).
|
|
||||||
Whether that is true depends on what the Program does.
|
|
||||||
|
|
||||||
1. You may copy and distribute verbatim copies of the Program's
|
|
||||||
source code as you receive it, in any medium, provided that you
|
|
||||||
conspicuously and appropriately publish on each copy an appropriate
|
|
||||||
copyright notice and disclaimer of warranty; keep intact all the
|
|
||||||
notices that refer to this License and to the absence of any warranty;
|
|
||||||
and give any other recipients of the Program a copy of this License
|
|
||||||
along with the Program.
|
|
||||||
|
|
||||||
You may charge a fee for the physical act of transferring a copy, and
|
|
||||||
you may at your option offer warranty protection in exchange for a fee.
|
|
||||||
|
|
||||||
2. You may modify your copy or copies of the Program or any portion
|
|
||||||
of it, thus forming a work based on the Program, and copy and
|
|
||||||
distribute such modifications or work under the terms of Section 1
|
|
||||||
above, provided that you also meet all of these conditions:
|
|
||||||
|
|
||||||
a) You must cause the modified files to carry prominent notices
|
|
||||||
stating that you changed the files and the date of any change.
|
|
||||||
|
|
||||||
b) You must cause any work that you distribute or publish, that in
|
|
||||||
whole or in part contains or is derived from the Program or any
|
|
||||||
part thereof, to be licensed as a whole at no charge to all third
|
|
||||||
parties under the terms of this License.
|
|
||||||
|
|
||||||
c) If the modified program normally reads commands interactively
|
|
||||||
when run, you must cause it, when started running for such
|
|
||||||
interactive use in the most ordinary way, to print or display an
|
|
||||||
announcement including an appropriate copyright notice and a
|
|
||||||
notice that there is no warranty (or else, saying that you provide
|
|
||||||
a warranty) and that users may redistribute the program under
|
|
||||||
these conditions, and telling the user how to view a copy of this
|
|
||||||
License. (Exception: if the Program itself is interactive but
|
|
||||||
does not normally print such an announcement, your work based on
|
|
||||||
the Program is not required to print an announcement.)
|
|
||||||
|
|
||||||
These requirements apply to the modified work as a whole. If
|
|
||||||
identifiable sections of that work are not derived from the Program,
|
|
||||||
and can be reasonably considered independent and separate works in
|
|
||||||
themselves, then this License, and its terms, do not apply to those
|
|
||||||
sections when you distribute them as separate works. But when you
|
|
||||||
distribute the same sections as part of a whole which is a work based
|
|
||||||
on the Program, the distribution of the whole must be on the terms of
|
|
||||||
this License, whose permissions for other licensees extend to the
|
|
||||||
entire whole, and thus to each and every part regardless of who wrote it.
|
|
||||||
|
|
||||||
Thus, it is not the intent of this section to claim rights or contest
|
|
||||||
your rights to work written entirely by you; rather, the intent is to
|
|
||||||
exercise the right to control the distribution of derivative or
|
|
||||||
collective works based on the Program.
|
|
||||||
|
|
||||||
In addition, mere aggregation of another work not based on the Program
|
|
||||||
with the Program (or with a work based on the Program) on a volume of
|
|
||||||
a storage or distribution medium does not bring the other work under
|
|
||||||
the scope of this License.
|
|
||||||
|
|
||||||
3. You may copy and distribute the Program (or a work based on it,
|
|
||||||
under Section 2) in object code or executable form under the terms of
|
|
||||||
Sections 1 and 2 above provided that you also do one of the following:
|
|
||||||
|
|
||||||
a) Accompany it with the complete corresponding machine-readable
|
|
||||||
source code, which must be distributed under the terms of Sections
|
|
||||||
1 and 2 above on a medium customarily used for software interchange; or,
|
|
||||||
|
|
||||||
b) Accompany it with a written offer, valid for at least three
|
|
||||||
years, to give any third party, for a charge no more than your
|
|
||||||
cost of physically performing source distribution, a complete
|
|
||||||
machine-readable copy of the corresponding source code, to be
|
|
||||||
distributed under the terms of Sections 1 and 2 above on a medium
|
|
||||||
customarily used for software interchange; or,
|
|
||||||
|
|
||||||
c) Accompany it with the information you received as to the offer
|
|
||||||
to distribute corresponding source code. (This alternative is
|
|
||||||
allowed only for noncommercial distribution and only if you
|
|
||||||
received the program in object code or executable form with such
|
|
||||||
an offer, in accord with Subsection b above.)
|
|
||||||
|
|
||||||
The source code for a work means the preferred form of the work for
|
|
||||||
making modifications to it. For an executable work, complete source
|
|
||||||
code means all the source code for all modules it contains, plus any
|
|
||||||
associated interface definition files, plus the scripts used to
|
|
||||||
control compilation and installation of the executable. However, as a
|
|
||||||
special exception, the source code distributed need not include
|
|
||||||
anything that is normally distributed (in either source or binary
|
|
||||||
form) with the major components (compiler, kernel, and so on) of the
|
|
||||||
operating system on which the executable runs, unless that component
|
|
||||||
itself accompanies the executable.
|
|
||||||
|
|
||||||
If distribution of executable or object code is made by offering
|
|
||||||
access to copy from a designated place, then offering equivalent
|
|
||||||
access to copy the source code from the same place counts as
|
|
||||||
distribution of the source code, even though third parties are not
|
|
||||||
compelled to copy the source along with the object code.
|
|
||||||
|
|
||||||
4. You may not copy, modify, sublicense, or distribute the Program
|
|
||||||
except as expressly provided under this License. Any attempt
|
|
||||||
otherwise to copy, modify, sublicense or distribute the Program is
|
|
||||||
void, and will automatically terminate your rights under this License.
|
|
||||||
However, parties who have received copies, or rights, from you under
|
|
||||||
this License will not have their licenses terminated so long as such
|
|
||||||
parties remain in full compliance.
|
|
||||||
|
|
||||||
5. You are not required to accept this License, since you have not
|
|
||||||
signed it. However, nothing else grants you permission to modify or
|
|
||||||
distribute the Program or its derivative works. These actions are
|
|
||||||
prohibited by law if you do not accept this License. Therefore, by
|
|
||||||
modifying or distributing the Program (or any work based on the
|
|
||||||
Program), you indicate your acceptance of this License to do so, and
|
|
||||||
all its terms and conditions for copying, distributing or modifying
|
|
||||||
the Program or works based on it.
|
|
||||||
|
|
||||||
6. Each time you redistribute the Program (or any work based on the
|
|
||||||
Program), the recipient automatically receives a license from the
|
|
||||||
original licensor to copy, distribute or modify the Program subject to
|
|
||||||
these terms and conditions. You may not impose any further
|
|
||||||
restrictions on the recipients' exercise of the rights granted herein.
|
|
||||||
You are not responsible for enforcing compliance by third parties to
|
|
||||||
this License.
|
|
||||||
|
|
||||||
7. If, as a consequence of a court judgment or allegation of patent
|
|
||||||
infringement or for any other reason (not limited to patent issues),
|
|
||||||
conditions are imposed on you (whether by court order, agreement or
|
|
||||||
otherwise) that contradict the conditions of this License, they do not
|
|
||||||
excuse you from the conditions of this License. If you cannot
|
|
||||||
distribute so as to satisfy simultaneously your obligations under this
|
|
||||||
License and any other pertinent obligations, then as a consequence you
|
|
||||||
may not distribute the Program at all. For example, if a patent
|
|
||||||
license would not permit royalty-free redistribution of the Program by
|
|
||||||
all those who receive copies directly or indirectly through you, then
|
|
||||||
the only way you could satisfy both it and this License would be to
|
|
||||||
refrain entirely from distribution of the Program.
|
|
||||||
|
|
||||||
If any portion of this section is held invalid or unenforceable under
|
|
||||||
any particular circumstance, the balance of the section is intended to
|
|
||||||
apply and the section as a whole is intended to apply in other
|
|
||||||
circumstances.
|
|
||||||
|
|
||||||
It is not the purpose of this section to induce you to infringe any
|
|
||||||
patents or other property right claims or to contest validity of any
|
|
||||||
such claims; this section has the sole purpose of protecting the
|
|
||||||
integrity of the free software distribution system, which is
|
|
||||||
implemented by public license practices. Many people have made
|
|
||||||
generous contributions to the wide range of software distributed
|
|
||||||
through that system in reliance on consistent application of that
|
|
||||||
system; it is up to the author/donor to decide if he or she is willing
|
|
||||||
to distribute software through any other system and a licensee cannot
|
|
||||||
impose that choice.
|
|
||||||
|
|
||||||
This section is intended to make thoroughly clear what is believed to
|
|
||||||
be a consequence of the rest of this License.
|
|
||||||
|
|
||||||
8. If the distribution and/or use of the Program is restricted in
|
|
||||||
certain countries either by patents or by copyrighted interfaces, the
|
|
||||||
original copyright holder who places the Program under this License
|
|
||||||
may add an explicit geographical distribution limitation excluding
|
|
||||||
those countries, so that distribution is permitted only in or among
|
|
||||||
countries not thus excluded. In such case, this License incorporates
|
|
||||||
the limitation as if written in the body of this License.
|
|
||||||
|
|
||||||
9. The Free Software Foundation may publish revised and/or new versions
|
|
||||||
of the General Public License from time to time. Such new versions will
|
|
||||||
be similar in spirit to the present version, but may differ in detail to
|
|
||||||
address new problems or concerns.
|
|
||||||
|
|
||||||
Each version is given a distinguishing version number. If the Program
|
|
||||||
specifies a version number of this License which applies to it and "any
|
|
||||||
later version", you have the option of following the terms and conditions
|
|
||||||
either of that version or of any later version published by the Free
|
|
||||||
Software Foundation. If the Program does not specify a version number of
|
|
||||||
this License, you may choose any version ever published by the Free Software
|
|
||||||
Foundation.
|
|
||||||
|
|
||||||
10. If you wish to incorporate parts of the Program into other free
|
|
||||||
programs whose distribution conditions are different, write to the author
|
|
||||||
to ask for permission. For software which is copyrighted by the Free
|
|
||||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
|
||||||
make exceptions for this. Our decision will be guided by the two goals
|
|
||||||
of preserving the free status of all derivatives of our free software and
|
|
||||||
of promoting the sharing and reuse of software generally.
|
|
||||||
|
|
||||||
NO WARRANTY
|
|
||||||
|
|
||||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
|
||||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
|
||||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
|
||||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
|
||||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
|
||||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
|
||||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
|
||||||
REPAIR OR CORRECTION.
|
|
||||||
|
|
||||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
|
||||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
|
||||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
|
||||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
|
||||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
|
||||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
|
||||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
|
||||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
|
||||||
POSSIBILITY OF SUCH DAMAGES.
|
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
|
||||||
|
|
||||||
How to Apply These Terms to Your New Programs
|
|
||||||
|
|
||||||
If you develop a new program, and you want it to be of the greatest
|
|
||||||
possible use to the public, the best way to achieve this is to make it
|
|
||||||
free software which everyone can redistribute and change under these terms.
|
|
||||||
|
|
||||||
To do so, attach the following notices to the program. It is safest
|
|
||||||
to attach them to the start of each source file to most effectively
|
|
||||||
convey the exclusion of warranty; and each file should have at least
|
|
||||||
the "copyright" line and a pointer to where the full notice is found.
|
|
||||||
|
|
||||||
<one line to give the program's name and a brief idea of what it does.>
|
|
||||||
Copyright (C) <year> <name of author>
|
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License along
|
|
||||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
|
||||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
||||||
|
|
||||||
Also add information on how to contact you by electronic and paper mail.
|
|
||||||
|
|
||||||
If the program is interactive, make it output a short notice like this
|
|
||||||
when it starts in an interactive mode:
|
|
||||||
|
|
||||||
Gnomovision version 69, Copyright (C) year name of author
|
|
||||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
|
||||||
This is free software, and you are welcome to redistribute it
|
|
||||||
under certain conditions; type `show c' for details.
|
|
||||||
|
|
||||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
|
||||||
parts of the General Public License. Of course, the commands you use may
|
|
||||||
be called something other than `show w' and `show c'; they could even be
|
|
||||||
mouse-clicks or menu items--whatever suits your program.
|
|
||||||
|
|
||||||
You should also get your employer (if you work as a programmer) or your
|
|
||||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
|
||||||
necessary. Here is a sample; alter the names:
|
|
||||||
|
|
||||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
|
||||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
|
||||||
|
|
||||||
<signature of Ty Coon>, 1 April 1989
|
|
||||||
Ty Coon, President of Vice
|
|
||||||
|
|
||||||
This General Public License does not permit incorporating your program into
|
|
||||||
proprietary programs. If your program is a subroutine library, you may
|
|
||||||
consider it more useful to permit linking proprietary applications with the
|
|
||||||
library. If this is what you want to do, use the GNU Lesser General
|
|
||||||
Public License instead of this License.
|
|
||||||
@@ -1,165 +0,0 @@
|
|||||||
GNU LESSER GENERAL PUBLIC LICENSE
|
|
||||||
Version 3, 29 June 2007
|
|
||||||
|
|
||||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies
|
|
||||||
of this license document, but changing it is not allowed.
|
|
||||||
|
|
||||||
|
|
||||||
This version of the GNU Lesser General Public License incorporates
|
|
||||||
the terms and conditions of version 3 of the GNU General Public
|
|
||||||
License, supplemented by the additional permissions listed below.
|
|
||||||
|
|
||||||
0. Additional Definitions.
|
|
||||||
|
|
||||||
As used herein, "this License" refers to version 3 of the GNU Lesser
|
|
||||||
General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
|
||||||
General Public License.
|
|
||||||
|
|
||||||
"The Library" refers to a covered work governed by this License,
|
|
||||||
other than an Application or a Combined Work as defined below.
|
|
||||||
|
|
||||||
An "Application" is any work that makes use of an interface provided
|
|
||||||
by the Library, but which is not otherwise based on the Library.
|
|
||||||
Defining a subclass of a class defined by the Library is deemed a mode
|
|
||||||
of using an interface provided by the Library.
|
|
||||||
|
|
||||||
A "Combined Work" is a work produced by combining or linking an
|
|
||||||
Application with the Library. The particular version of the Library
|
|
||||||
with which the Combined Work was made is also called the "Linked
|
|
||||||
Version".
|
|
||||||
|
|
||||||
The "Minimal Corresponding Source" for a Combined Work means the
|
|
||||||
Corresponding Source for the Combined Work, excluding any source code
|
|
||||||
for portions of the Combined Work that, considered in isolation, are
|
|
||||||
based on the Application, and not on the Linked Version.
|
|
||||||
|
|
||||||
The "Corresponding Application Code" for a Combined Work means the
|
|
||||||
object code and/or source code for the Application, including any data
|
|
||||||
and utility programs needed for reproducing the Combined Work from the
|
|
||||||
Application, but excluding the System Libraries of the Combined Work.
|
|
||||||
|
|
||||||
1. Exception to Section 3 of the GNU GPL.
|
|
||||||
|
|
||||||
You may convey a covered work under sections 3 and 4 of this License
|
|
||||||
without being bound by section 3 of the GNU GPL.
|
|
||||||
|
|
||||||
2. Conveying Modified Versions.
|
|
||||||
|
|
||||||
If you modify a copy of the Library, and, in your modifications, a
|
|
||||||
facility refers to a function or data to be supplied by an Application
|
|
||||||
that uses the facility (other than as an argument passed when the
|
|
||||||
facility is invoked), then you may convey a copy of the modified
|
|
||||||
version:
|
|
||||||
|
|
||||||
a) under this License, provided that you make a good faith effort to
|
|
||||||
ensure that, in the event an Application does not supply the
|
|
||||||
function or data, the facility still operates, and performs
|
|
||||||
whatever part of its purpose remains meaningful, or
|
|
||||||
|
|
||||||
b) under the GNU GPL, with none of the additional permissions of
|
|
||||||
this License applicable to that copy.
|
|
||||||
|
|
||||||
3. Object Code Incorporating Material from Library Header Files.
|
|
||||||
|
|
||||||
The object code form of an Application may incorporate material from
|
|
||||||
a header file that is part of the Library. You may convey such object
|
|
||||||
code under terms of your choice, provided that, if the incorporated
|
|
||||||
material is not limited to numerical parameters, data structure
|
|
||||||
layouts and accessors, or small macros, inline functions and templates
|
|
||||||
(ten or fewer lines in length), you do both of the following:
|
|
||||||
|
|
||||||
a) Give prominent notice with each copy of the object code that the
|
|
||||||
Library is used in it and that the Library and its use are
|
|
||||||
covered by this License.
|
|
||||||
|
|
||||||
b) Accompany the object code with a copy of the GNU GPL and this license
|
|
||||||
document.
|
|
||||||
|
|
||||||
4. Combined Works.
|
|
||||||
|
|
||||||
You may convey a Combined Work under terms of your choice that,
|
|
||||||
taken together, effectively do not restrict modification of the
|
|
||||||
portions of the Library contained in the Combined Work and reverse
|
|
||||||
engineering for debugging such modifications, if you also do each of
|
|
||||||
the following:
|
|
||||||
|
|
||||||
a) Give prominent notice with each copy of the Combined Work that
|
|
||||||
the Library is used in it and that the Library and its use are
|
|
||||||
covered by this License.
|
|
||||||
|
|
||||||
b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
|
||||||
document.
|
|
||||||
|
|
||||||
c) For a Combined Work that displays copyright notices during
|
|
||||||
execution, include the copyright notice for the Library among
|
|
||||||
these notices, as well as a reference directing the user to the
|
|
||||||
copies of the GNU GPL and this license document.
|
|
||||||
|
|
||||||
d) Do one of the following:
|
|
||||||
|
|
||||||
0) Convey the Minimal Corresponding Source under the terms of this
|
|
||||||
License, and the Corresponding Application Code in a form
|
|
||||||
suitable for, and under terms that permit, the user to
|
|
||||||
recombine or relink the Application with a modified version of
|
|
||||||
the Linked Version to produce a modified Combined Work, in the
|
|
||||||
manner specified by section 6 of the GNU GPL for conveying
|
|
||||||
Corresponding Source.
|
|
||||||
|
|
||||||
1) Use a suitable shared library mechanism for linking with the
|
|
||||||
Library. A suitable mechanism is one that (a) uses at run time
|
|
||||||
a copy of the Library already present on the user's computer
|
|
||||||
system, and (b) will operate properly with a modified version
|
|
||||||
of the Library that is interface-compatible with the Linked
|
|
||||||
Version.
|
|
||||||
|
|
||||||
e) Provide Installation Information, but only if you would otherwise
|
|
||||||
be required to provide such information under section 6 of the
|
|
||||||
GNU GPL, and only to the extent that such information is
|
|
||||||
necessary to install and execute a modified version of the
|
|
||||||
Combined Work produced by recombining or relinking the
|
|
||||||
Application with a modified version of the Linked Version. (If
|
|
||||||
you use option 4d0, the Installation Information must accompany
|
|
||||||
the Minimal Corresponding Source and Corresponding Application
|
|
||||||
Code. If you use option 4d1, you must provide the Installation
|
|
||||||
Information in the manner specified by section 6 of the GNU GPL
|
|
||||||
for conveying Corresponding Source.)
|
|
||||||
|
|
||||||
5. Combined Libraries.
|
|
||||||
|
|
||||||
You may place library facilities that are a work based on the
|
|
||||||
Library side by side in a single library together with other library
|
|
||||||
facilities that are not Applications and are not covered by this
|
|
||||||
License, and convey such a combined library under terms of your
|
|
||||||
choice, if you do both of the following:
|
|
||||||
|
|
||||||
a) Accompany the combined library with a copy of the same work based
|
|
||||||
on the Library, uncombined with any other library facilities,
|
|
||||||
conveyed under the terms of this License.
|
|
||||||
|
|
||||||
b) Give prominent notice with the combined library that part of it
|
|
||||||
is a work based on the Library, and explaining where to find the
|
|
||||||
accompanying uncombined form of the same work.
|
|
||||||
|
|
||||||
6. Revised Versions of the GNU Lesser General Public License.
|
|
||||||
|
|
||||||
The Free Software Foundation may publish revised and/or new versions
|
|
||||||
of the GNU Lesser General Public License from time to time. Such new
|
|
||||||
versions will be similar in spirit to the present version, but may
|
|
||||||
differ in detail to address new problems or concerns.
|
|
||||||
|
|
||||||
Each version is given a distinguishing version number. If the
|
|
||||||
Library as you received it specifies that a certain numbered version
|
|
||||||
of the GNU Lesser General Public License "or any later version"
|
|
||||||
applies to it, you have the option of following the terms and
|
|
||||||
conditions either of that published version or of any later version
|
|
||||||
published by the Free Software Foundation. If the Library as you
|
|
||||||
received it does not specify a version number of the GNU Lesser
|
|
||||||
General Public License, you may choose any version of the GNU Lesser
|
|
||||||
General Public License ever published by the Free Software Foundation.
|
|
||||||
|
|
||||||
If the Library as you received it specifies that a proxy can decide
|
|
||||||
whether future versions of the GNU Lesser General Public License shall
|
|
||||||
apply, that proxy's public statement of acceptance of any version is
|
|
||||||
permanent authorization for you to choose that version for the
|
|
||||||
Library.
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
Licensees holding valid commercial Qt licenses may use this software in
|
|
||||||
accordance with the the terms contained in a written agreement between
|
|
||||||
you and The Qt Company. Alternatively, the terms and conditions that were
|
|
||||||
accepted by the licensee when buying and/or downloading the
|
|
||||||
software do apply.
|
|
||||||
|
|
||||||
For the latest licensing terms and conditions, see https://www.qt.io/terms-conditions.
|
|
||||||
For further information use the contact form at https://www.qt.io/contact-us.
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
The Qt Company GPL Exception 1.0
|
|
||||||
|
|
||||||
Exception 1:
|
|
||||||
|
|
||||||
As a special exception you may create a larger work which contains the
|
|
||||||
output of this application and distribute that work under terms of your
|
|
||||||
choice, so long as the work is not otherwise derived from or based on
|
|
||||||
this application and so long as the work does not in itself generate
|
|
||||||
output that contains the output from this application in its original
|
|
||||||
or modified form.
|
|
||||||
|
|
||||||
Exception 2:
|
|
||||||
|
|
||||||
As a special exception, you have permission to combine this application
|
|
||||||
with Plugins licensed under the terms of your choice, to produce an
|
|
||||||
executable, and to copy and distribute the resulting executable under
|
|
||||||
the terms of your choice. However, the executable must be accompanied
|
|
||||||
by a prominent notice offering all users of the executable the entire
|
|
||||||
source code to this application, excluding the source code of the
|
|
||||||
independent modules, but including any changes you have made to this
|
|
||||||
application, under the terms of this license.
|
|
||||||
|
|
||||||
134
README
Normal file
134
README
Normal file
@@ -0,0 +1,134 @@
|
|||||||
|
HOW TO BUILD QT5
|
||||||
|
================
|
||||||
|
|
||||||
|
|
||||||
|
Synopsis
|
||||||
|
========
|
||||||
|
|
||||||
|
System requirements
|
||||||
|
------------------
|
||||||
|
|
||||||
|
- Perl 5.8 or later
|
||||||
|
- Python 2.7 or later
|
||||||
|
- C++ compiler supporting the C++11 standard
|
||||||
|
|
||||||
|
For other platform specific requirements,
|
||||||
|
please see section "Setting up your machine" on:
|
||||||
|
http://wiki.qt.io/Get_The_Source
|
||||||
|
|
||||||
|
Licensing:
|
||||||
|
----------
|
||||||
|
|
||||||
|
Opensource users:
|
||||||
|
|
||||||
|
<license> = -opensource
|
||||||
|
|
||||||
|
Commercial users:
|
||||||
|
|
||||||
|
<license> = -commercial
|
||||||
|
|
||||||
|
Linux, Mac:
|
||||||
|
-----------
|
||||||
|
|
||||||
|
cd <path>/<source_package>
|
||||||
|
./configure -prefix $PWD/qtbase <license> -nomake tests
|
||||||
|
make -j 4
|
||||||
|
|
||||||
|
Windows:
|
||||||
|
--------
|
||||||
|
|
||||||
|
Open a command prompt.
|
||||||
|
Ensure that the following tools can be found in the path:
|
||||||
|
* Supported compiler (Visual Studio 2012 or later,
|
||||||
|
MinGW-builds gcc 4.9 or later)
|
||||||
|
* Perl version 5.12 or later [http://www.activestate.com/activeperl/]
|
||||||
|
* Python version 2.7 or later [http://www.activestate.com/activepython/]
|
||||||
|
* Ruby version 1.9.3 or later [http://rubyinstaller.org/]
|
||||||
|
|
||||||
|
cd <path>\<source_package>
|
||||||
|
configure -prefix %CD%\qtbase <license> -nomake tests
|
||||||
|
nmake // jom // mingw32-make
|
||||||
|
|
||||||
|
To accelerate the bootstrap of qmake with MSVC, it may be useful to pass
|
||||||
|
"-make-tool jom" on the configure command line. If you do not use jom,
|
||||||
|
adding "/MP" to the CL environment variable is a good idea.
|
||||||
|
|
||||||
|
More details follow.
|
||||||
|
|
||||||
|
Build!
|
||||||
|
======
|
||||||
|
|
||||||
|
A typical `configure; make' build process is used.
|
||||||
|
|
||||||
|
Some relevant configure options (see configure -help):
|
||||||
|
|
||||||
|
-release Compile and link Qt with debugging turned off.
|
||||||
|
-debug Compile and link Qt with debugging turned on.
|
||||||
|
-nomake tests Disable building of tests to speed up compilation
|
||||||
|
-nomake examples Disable building of examples to speed up compilation
|
||||||
|
-confirm-license Automatically acknowledge the LGPL 2.1 license.
|
||||||
|
|
||||||
|
Example for a release build:
|
||||||
|
(adjust the `-jN' parameter as appropriate for your system)
|
||||||
|
|
||||||
|
./configure -prefix $PWD/qtbase <license>
|
||||||
|
make -j4
|
||||||
|
|
||||||
|
Example for a developer build:
|
||||||
|
(enables more autotests, builds debug version of libraries, ...)
|
||||||
|
|
||||||
|
./configure -developer-build <license>
|
||||||
|
make -j4
|
||||||
|
|
||||||
|
See output of `./configure -help' for documentation on various options to
|
||||||
|
configure.
|
||||||
|
|
||||||
|
The above examples will build whatever Qt5 modules have been enabled by
|
||||||
|
default in the build system.
|
||||||
|
|
||||||
|
It is possible to build selected modules with their dependencies by doing
|
||||||
|
a `make module-<foo>'. For example, to build only qtdeclarative,
|
||||||
|
and the modules it depends on:
|
||||||
|
|
||||||
|
./configure -prefix $PWD/qtbase <license>
|
||||||
|
make -j4 module-qtdeclarative
|
||||||
|
|
||||||
|
This can save a lot of time if you are only interested in a subset of Qt5.
|
||||||
|
|
||||||
|
|
||||||
|
Hints
|
||||||
|
=====
|
||||||
|
|
||||||
|
The submodule repository qtrepotools contains useful scripts for
|
||||||
|
developers and release engineers. Consider adding qtrepotools/bin
|
||||||
|
to your PATH environment variable to access them.
|
||||||
|
|
||||||
|
The qt5_tool in qtrepotools has some more features which may be of interest.
|
||||||
|
Try `qt5_tool --help'.
|
||||||
|
|
||||||
|
|
||||||
|
Building Qt5 from git
|
||||||
|
=====================
|
||||||
|
See http://wiki.qt.io/Building_Qt_5_from_Git and README.git
|
||||||
|
for more information.
|
||||||
|
See http://wiki.qt.io/Qt_5 for the reference platforms.
|
||||||
|
|
||||||
|
|
||||||
|
Documentation
|
||||||
|
=============
|
||||||
|
|
||||||
|
After configuring and compiling Qt, building the documentation is possible by running
|
||||||
|
"make docs".
|
||||||
|
|
||||||
|
After having built the documentation, you need to install it with the following
|
||||||
|
command:
|
||||||
|
|
||||||
|
make install_docs
|
||||||
|
|
||||||
|
The documentation is installed in the path set to $QT_INSTALL_DOCS.
|
||||||
|
Running "qmake -query" will list the value of QT_INSTALL_DOCS.
|
||||||
|
|
||||||
|
Information about Qt 5's documentation is located in qtbase/doc/README
|
||||||
|
or in the following page: http://wiki.qt.io/Qt5DocumentationProject
|
||||||
|
|
||||||
|
Note: Building the documentation is only tested on desktop platforms.
|
||||||
14
README.git
14
README.git
@@ -1,19 +1,17 @@
|
|||||||
OBTAINING QT 6 FROM GIT
|
OBTAINING QT5 FROM GIT
|
||||||
=======================
|
======================
|
||||||
|
|
||||||
Synopsis
|
Synopsis
|
||||||
========
|
========
|
||||||
|
|
||||||
For a more in-depth description on how to build Qt 6 from git,
|
For a more in-depth description on how to build Qt5 from git,
|
||||||
please see: http://wiki.qt.io/Building_Qt_6_from_Git
|
please see: http://wiki.qt.io/Building_Qt_5_from_Git
|
||||||
|
|
||||||
Note that, although the git module is called qt5.git, the dev and 6.x branches
|
|
||||||
do contain Qt 6!
|
|
||||||
|
|
||||||
Get The Submodules
|
Get The Submodules
|
||||||
==================
|
==================
|
||||||
|
|
||||||
Cloning qt5.git does not automatically clone all submodules.
|
Cloning Qt5 does not automatically clone all submodules.
|
||||||
To get the submodules, it is recommended to use the `init-repository' script.
|
To get the submodules, it is recommended to use the `init-repository' script.
|
||||||
|
|
||||||
./init-repository
|
./init-repository
|
||||||
@@ -51,7 +49,7 @@ OBTAINING QT 6 FROM GIT
|
|||||||
|
|
||||||
|
|
||||||
Developing and Contributing to Qt
|
Developing and Contributing to Qt
|
||||||
=================================
|
================================
|
||||||
|
|
||||||
For more information on how to develop and contribute to Qt, please see:
|
For more information on how to develop and contribute to Qt, please see:
|
||||||
http://wiki.qt.io/Category:Developing_Qt
|
http://wiki.qt.io/Category:Developing_Qt
|
||||||
|
|||||||
127
README.md
127
README.md
@@ -1,127 +0,0 @@
|
|||||||
HOW TO BUILD Qt 6
|
|
||||||
=================
|
|
||||||
|
|
||||||
|
|
||||||
Synopsis
|
|
||||||
========
|
|
||||||
|
|
||||||
System requirements
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
* C++ compiler supporting the C++17 standard
|
|
||||||
* CMake
|
|
||||||
* Ninja
|
|
||||||
* Python 3
|
|
||||||
|
|
||||||
For more details, see also https://doc.qt.io/qt-6/build-sources.html
|
|
||||||
|
|
||||||
Linux, Mac:
|
|
||||||
-----------
|
|
||||||
|
|
||||||
```
|
|
||||||
cd <path>/<source_package>
|
|
||||||
./configure -prefix $PWD/qtbase
|
|
||||||
cmake --build .
|
|
||||||
```
|
|
||||||
|
|
||||||
Windows:
|
|
||||||
--------
|
|
||||||
|
|
||||||
1. Open a command prompt.
|
|
||||||
2. Ensure that the following tools can be found in the path:
|
|
||||||
* Supported compiler (Visual Studio 2019 or later, or MinGW-builds gcc 11.2 or later)
|
|
||||||
* Python 3 ([https://www.python.org/downloads/windows/] or from Microsoft Store)
|
|
||||||
|
|
||||||
```
|
|
||||||
cd <path>\<source_package>
|
|
||||||
configure -prefix %CD%\qtbase
|
|
||||||
cmake --build .
|
|
||||||
```
|
|
||||||
|
|
||||||
More details follow.
|
|
||||||
|
|
||||||
|
|
||||||
Build!
|
|
||||||
======
|
|
||||||
|
|
||||||
Qt is built with CMake, and a typical
|
|
||||||
`configure && cmake --build .` build process is used.
|
|
||||||
|
|
||||||
If Ninja is installed, it is automatically chosen as CMake generator.
|
|
||||||
|
|
||||||
Some relevant configure options (see configure -help):
|
|
||||||
|
|
||||||
* `-release` Compile and link Qt with debugging turned off.
|
|
||||||
* `-debug` Compile and link Qt with debugging turned on.
|
|
||||||
|
|
||||||
Example for a release build:
|
|
||||||
|
|
||||||
```
|
|
||||||
./configure -prefix $PWD/qtbase
|
|
||||||
cmake --build .
|
|
||||||
```
|
|
||||||
|
|
||||||
Example for a developer build:
|
|
||||||
(enables more autotests, builds debug version of libraries, ...)
|
|
||||||
|
|
||||||
```
|
|
||||||
./configure -developer-build
|
|
||||||
cmake --build .
|
|
||||||
```
|
|
||||||
|
|
||||||
See output of `./configure -help` for documentation on various options to
|
|
||||||
configure.
|
|
||||||
|
|
||||||
The above examples will build whatever Qt modules have been enabled
|
|
||||||
by default in the build system.
|
|
||||||
|
|
||||||
It is possible to build selected repositories with their dependencies by doing
|
|
||||||
a `ninja <repo-name>/all`. For example, to build only qtdeclarative,
|
|
||||||
and the modules it depends on:
|
|
||||||
|
|
||||||
```
|
|
||||||
./configure
|
|
||||||
ninja qtdeclarative/all
|
|
||||||
```
|
|
||||||
|
|
||||||
This can save a lot of time if you are only interested in a subset of Qt.
|
|
||||||
|
|
||||||
|
|
||||||
Hints
|
|
||||||
=====
|
|
||||||
|
|
||||||
The submodule repository `qtrepotools` contains useful scripts for
|
|
||||||
developers and release engineers. Consider adding qtrepotools/bin
|
|
||||||
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)
|
|
||||||
for more information.
|
|
||||||
See http://wiki.qt.io/Qt_6 for the reference platforms.
|
|
||||||
|
|
||||||
|
|
||||||
Documentation
|
|
||||||
=============
|
|
||||||
|
|
||||||
After configuring and compiling Qt, building the documentation is possible by running
|
|
||||||
|
|
||||||
```
|
|
||||||
cmake --build . --target docs
|
|
||||||
```
|
|
||||||
|
|
||||||
After having built the documentation, you need to install it with the following
|
|
||||||
command:
|
|
||||||
|
|
||||||
```
|
|
||||||
cmake --build . --target install_docs
|
|
||||||
```
|
|
||||||
|
|
||||||
The documentation is installed in the path specified with the
|
|
||||||
configure argument `-docdir`.
|
|
||||||
|
|
||||||
Information about Qt's documentation is located in qtbase/doc/README
|
|
||||||
|
|
||||||
Note: Building the documentation is only tested on desktop platforms.
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
## Qt Package/Repository Name
|
|
||||||
|
|
||||||
### Package Brief
|
|
||||||
|
|
||||||
### Documentation
|
|
||||||
The documentation can be found in the following places:
|
|
||||||
* The online Qt documentation:
|
|
||||||
* [<Qt module> documentation](https://doc.qt.io/qt-6/<qtmodule>-index.html)
|
|
||||||
* Build from source:
|
|
||||||
* [Building Qt Documentation](https://wiki.qt.io/Building_Qt_Documentation)
|
|
||||||
|
|
||||||
*Note that the documentation links in this document will always be for the
|
|
||||||
latest Qt 6 version. If you need to browse the documentation for a specific
|
|
||||||
version, you can [browse the archives](https://doc.qt.io/archives/).*
|
|
||||||
|
|
||||||
### Build Process
|
|
||||||
Building the package/repository does depend on the Qt packages listed in dependencies.yaml.
|
|
||||||
Further dependencies to system packages are listed in the configure output.
|
|
||||||
|
|
||||||
See the [documentation](https://doc.qt.io/qt-6/build-sources.html) for general
|
|
||||||
advice on building the Qt framework and its modules from sources. Further
|
|
||||||
information on how to build from source is also available in the
|
|
||||||
[wiki](https://wiki.qt.io/Building_Qt_6_from_Git).
|
|
||||||
|
|
||||||
### Report an Issue
|
|
||||||
If you spot a bug, follow [these](https://doc.qt.io/qt-6/bughowto.html)
|
|
||||||
steps to report it.
|
|
||||||
|
|
||||||
### Contribute to Qt
|
|
||||||
We welcome contributions to Qt! If you'd like to contribute, read the
|
|
||||||
[Qt Contribution Guidelines](https://wiki.qt.io/Qt_Contribution_Guidelines).
|
|
||||||
|
|
||||||
### Licensing
|
|
||||||
Qt is available under various licenses. For details, check out the
|
|
||||||
[license documentation](https://doc.qt.io/qt-6/licensing.html).
|
|
||||||
|
|
||||||
*Note that this README.md.template serves as a guideline for README.md files,
|
|
||||||
and that further sections can be added to individual README.md files if
|
|
||||||
necessary.*
|
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
# Webkit style was loosely based on the Qt style
|
# Webkit style was loosely based on the Qt style
|
||||||
BasedOnStyle: WebKit
|
BasedOnStyle: WebKit
|
||||||
|
|
||||||
Standard: c++17
|
Standard: Cpp11
|
||||||
|
|
||||||
# Column width is limited to 100 in accordance with Qt Coding Style.
|
# Column width is limited to 100 in accordance with Qt Coding Style.
|
||||||
# https://wiki.qt.io/Qt_Coding_Style
|
# https://wiki.qt.io/Qt_Coding_Style
|
||||||
@@ -20,16 +20,15 @@ ColumnLimit: 100
|
|||||||
# How much weight do extra characters after the line length limit have.
|
# How much weight do extra characters after the line length limit have.
|
||||||
# PenaltyExcessCharacter: 4
|
# PenaltyExcessCharacter: 4
|
||||||
|
|
||||||
# Disable reflow of some specific comments
|
# Disable reflow of qdoc comments: indentation rules are different.
|
||||||
# qdoc comments: indentation rules are different.
|
# Translation comments are also excluded.
|
||||||
# Translation comments and SPDX license identifiers are also excluded.
|
CommentPragmas: "^!|^:"
|
||||||
CommentPragmas: "^!|^:|^ SPDX-License-Identifier:"
|
|
||||||
|
|
||||||
# We want a space between the type and the star for pointer types.
|
# We want a space between the type and the star for pointer types.
|
||||||
PointerBindsToType: false
|
PointerBindsToType: false
|
||||||
|
|
||||||
# We generally use "template <" with space.
|
# We use template< without space.
|
||||||
SpaceAfterTemplateKeyword: true
|
SpaceAfterTemplateKeyword: false
|
||||||
|
|
||||||
# We want to break before the operators, but not before a '='.
|
# We want to break before the operators, but not before a '='.
|
||||||
BreakBeforeBinaryOperators: NonAssignment
|
BreakBeforeBinaryOperators: NonAssignment
|
||||||
@@ -62,8 +61,6 @@ NamespaceIndentation: None
|
|||||||
|
|
||||||
# Allow indentation for preprocessing directives (if/ifdef/endif). https://reviews.llvm.org/rL312125
|
# Allow indentation for preprocessing directives (if/ifdef/endif). https://reviews.llvm.org/rL312125
|
||||||
IndentPPDirectives: AfterHash
|
IndentPPDirectives: AfterHash
|
||||||
# We only indent with 2 spaces for preprocessor directives
|
|
||||||
PPIndentWidth: 2
|
|
||||||
|
|
||||||
# Horizontally align arguments after an open bracket.
|
# Horizontally align arguments after an open bracket.
|
||||||
# The coding style does not specify the following, but this is what gives
|
# The coding style does not specify the following, but this is what gives
|
||||||
@@ -86,29 +83,3 @@ ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH, forever, Q_FOREVER, QBENCH
|
|||||||
|
|
||||||
# Break constructor initializers before the colon and after the commas.
|
# Break constructor initializers before the colon and after the commas.
|
||||||
BreakConstructorInitializers: BeforeColon
|
BreakConstructorInitializers: BeforeColon
|
||||||
|
|
||||||
# Add "// namespace <namespace>" comments on closing brace for a namespace
|
|
||||||
# Ignored for namespaces that qualify as a short namespace,
|
|
||||||
# see 'ShortNamespaceLines'
|
|
||||||
FixNamespaceComments: true
|
|
||||||
|
|
||||||
# Definition of how short a short namespace is, default 1
|
|
||||||
ShortNamespaceLines: 1
|
|
||||||
|
|
||||||
# When escaping newlines in a macro attach the '\' as far left as possible, e.g.
|
|
||||||
##define a \
|
|
||||||
# something; \
|
|
||||||
# other; \
|
|
||||||
# thelastlineislong;
|
|
||||||
AlignEscapedNewlines: Left
|
|
||||||
|
|
||||||
# Avoids the addition of a space between an identifier and the
|
|
||||||
# initializer list in list-initialization.
|
|
||||||
SpaceBeforeCpp11BracedList: false
|
|
||||||
|
|
||||||
---
|
|
||||||
# Use the Google-based style for .proto files.
|
|
||||||
Language: Proto
|
|
||||||
BasedOnStyle: Google
|
|
||||||
IndentWidth: 4
|
|
||||||
ColumnLimit: 100
|
|
||||||
|
|||||||
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,423 +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 COMMON)
|
|
||||||
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
|
|
||||||
# COMMON - the argument is common for init-repository and configure scripts
|
|
||||||
#
|
|
||||||
# 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)
|
|
||||||
|
|
||||||
if(arg_COMMON)
|
|
||||||
set(commandline_option_${name}_common "true" PARENT_SCOPE)
|
|
||||||
if(NOT "${arg_TYPE}" STREQUAL "boolean")
|
|
||||||
message(FATAL_ERROR "${name} is '${arg_TYPE}', but COMMON arguments can be"
|
|
||||||
" 'boolean' only.")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
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 "UNSUPPORTED")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(common "")
|
|
||||||
if(arg_COMMON)
|
|
||||||
set(common "COMMON")
|
|
||||||
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}
|
|
||||||
${common}
|
|
||||||
)
|
|
||||||
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()
|
|
||||||
elseif(commandline_option_${opt}_common AND arg_IGNORE_UNKNOWN_ARGS)
|
|
||||||
message(DEBUG "Common command line option '${arg}'. Collecting.")
|
|
||||||
qt_ir_append_unknown_args("${arg}")
|
|
||||||
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)
|
|
||||||
string(REPLACE "," ";" 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 COMMON)
|
|
||||||
|
|
||||||
# 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,16 +0,0 @@
|
|||||||
# 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:
|
|
||||||
# cmake [-DQT_BUILD_SUBMODULES="<repo;..>"] [-BUILD_<repo>=<TRUE|FALSE>] \
|
|
||||||
# -P <path/to>/qt6/cmake/QtSortModuleDependencies.cmake
|
|
||||||
cmake_minimum_required(VERSION 3.16)
|
|
||||||
|
|
||||||
include(${CMAKE_CURRENT_LIST_DIR}/QtTopLevelHelpers.cmake)
|
|
||||||
|
|
||||||
qt_internal_collect_modules_only(result "${QT_BUILD_SUBMODULES}")
|
|
||||||
|
|
||||||
list(JOIN result " " result)
|
|
||||||
message("${result}")
|
|
||||||
@@ -1,64 +1,3 @@
|
|||||||
# Copyright (C) 2024 The Qt Company Ltd.
|
include(cmake/QtTopLevelHelpers.cmake)
|
||||||
# SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
|
|
||||||
# This script is to be called (ideally from a git-sync-to alias script):
|
qt_internal_sync_to(${SYNC_TO_MODULE} ${SYNC_TO_BRANCH})
|
||||||
# cmake -DSYNC_TO_MODULE="$1" -DSYNC_TO_BRANCH="$2" -P cmake/QtSynchronizeRepo.cmake
|
|
||||||
|
|
||||||
# Or as follows (ideally from a git-qt-foreach alias script):
|
|
||||||
# cmake -DQT_FOREACH=TRUE "-DARGS=$*" -P cmake/QtSynchronizeRepo.cmake
|
|
||||||
#
|
|
||||||
# The script can take additional options.
|
|
||||||
#
|
|
||||||
# SYNC_REF_SPEC - an alias for SYNC_TO_BRANCH, can be a tag, branch or commit sha1.
|
|
||||||
#
|
|
||||||
# REMOTE_NAME - remote name to use for fetching, default is origin.
|
|
||||||
#
|
|
||||||
# GIT_DEPTH - corresponds to git's --depth option, will be passed to git clone and git submodule
|
|
||||||
# update --init operations.
|
|
||||||
#
|
|
||||||
# SHOW_PROGRESS - passes --progress to git submodule update operations
|
|
||||||
#
|
|
||||||
# VERBOSE - enables more verbose output
|
|
||||||
#
|
|
||||||
# The script also takes the following environment variables:
|
|
||||||
#
|
|
||||||
# QT_TL_SUBMODULE_UPDATE_FLAGS - additional flags to pass to git submodule update calls.
|
|
||||||
#
|
|
||||||
# To run the script in full debug mode use:
|
|
||||||
# cmake -DSYNC_TO_MODULE="$1" -DSYNC_TO_BRANCH="$2" -DSHOW_PROGRESS=1 -DVERBOSE=1
|
|
||||||
# -P cmake/QtSynchronizeRepo.cmake --log-level=DEBUG --trace-redirect=log.txt --trace-expand
|
|
||||||
|
|
||||||
cmake_policy(VERSION 3.16)
|
|
||||||
include("${CMAKE_CURRENT_LIST_DIR}/QtTopLevelHelpers.cmake")
|
|
||||||
if(QT_FOREACH)
|
|
||||||
qt_internal_foreach_repo_run(ARGS ${ARGS})
|
|
||||||
else()
|
|
||||||
set(args "")
|
|
||||||
|
|
||||||
if(SYNC_REF_SPEC)
|
|
||||||
set(ref_spec "${SYNC_REF_SPEC}")
|
|
||||||
elseif(SYNC_TO_BRANCH)
|
|
||||||
set(ref_spec "${SYNC_TO_BRANCH}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(REMOTE_NAME)
|
|
||||||
list(APPEND args REMOTE_NAME "${REMOTE_NAME}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(GIT_DEPTH)
|
|
||||||
list(APPEND args GIT_DEPTH "${GIT_DEPTH}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(SHOW_PROGRESS)
|
|
||||||
list(APPEND args SHOW_PROGRESS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VERBOSE)
|
|
||||||
list(APPEND args VERBOSE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
qt_internal_sync_to(${SYNC_TO_MODULE}
|
|
||||||
SYNC_REF ${ref_spec}
|
|
||||||
${args}
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|||||||
@@ -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()
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -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}")
|
|
||||||
148
cmake/TopologicalSort.cmake
Normal file
148
cmake/TopologicalSort.cmake
Normal file
@@ -0,0 +1,148 @@
|
|||||||
|
##############################################################################
|
||||||
|
# @file TopologicalSort.cmake
|
||||||
|
# @brief CMake implementation of topological sorting algorithm.
|
||||||
|
#
|
||||||
|
# Perform a reverse topological sort on the given LIST.
|
||||||
|
#
|
||||||
|
# topological_sort(my_list "MY_" "_EDGES")
|
||||||
|
#
|
||||||
|
# LIST is the name of a variable containing a list of elements to be
|
||||||
|
# sorted in reverse topological order. Each element in the list has a
|
||||||
|
# set of outgoing edges (for example, those other list elements that
|
||||||
|
# it depends on). In the resulting reverse topological ordering
|
||||||
|
# (written back into the variable named LIST), an element will come
|
||||||
|
# later in the list than any of the elements that can be reached by
|
||||||
|
# following its outgoing edges and the outgoing edges of any vertices
|
||||||
|
# they target, recursively. Thus, if the edges represent dependencies
|
||||||
|
# on build targets, for example, the reverse topological ordering is
|
||||||
|
# the order in which one would build those targets.
|
||||||
|
#
|
||||||
|
# For each element E in this list, the edges for E are contained in
|
||||||
|
# the variable named ${PREFIX}${E}${SUFFIX}. If no such variable
|
||||||
|
# exists, then it is assumed that there are no edges. For example, if
|
||||||
|
# my_list contains a, b, and c, one could provide a dependency graph
|
||||||
|
# using the following variables:
|
||||||
|
#
|
||||||
|
# MY_A_EDGES b
|
||||||
|
# MY_B_EDGES
|
||||||
|
# MY_C_EDGES a b
|
||||||
|
#
|
||||||
|
# With the involcation of topological_sort shown above and these
|
||||||
|
# variables, the resulting reverse topological ordering will be b, a, c.
|
||||||
|
#
|
||||||
|
# @verbatim
|
||||||
|
##############################################################################
|
||||||
|
# Modified from Boost Utilities
|
||||||
|
#
|
||||||
|
# Copyright 2010 Kitware, Inc.
|
||||||
|
##############################################################################
|
||||||
|
# Copyright 2007 Douglas Gregor <doug.gregor@gmail.com>
|
||||||
|
# Copyright 2007 Troy Straszheim
|
||||||
|
#
|
||||||
|
# Distributed under the Boost Software License, Version 1.0.
|
||||||
|
##############################################################################
|
||||||
|
# Boost Software License - Version 1.0 - August 17th, 2003
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person or organization
|
||||||
|
# obtaining a copy of the software and accompanying documentation covered by
|
||||||
|
# this license (the "Software") to use, reproduce, display, distribute,
|
||||||
|
# execute, and transmit the Software, and to prepare derivative works of the
|
||||||
|
# Software, and to permit third-parties to whom the Software is furnished to
|
||||||
|
# do so, all subject to the following:
|
||||||
|
#
|
||||||
|
# The copyright notices in the Software and this entire statement, including
|
||||||
|
# the above license grant, this restriction and the following disclaimer,
|
||||||
|
# must be included in all copies of the Software, in whole or in part, and
|
||||||
|
# all derivative works of the Software, unless such copies or derivative
|
||||||
|
# works are solely in the form of machine-executable object code generated by
|
||||||
|
# a source language processor.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||||
|
# SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||||
|
# FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||||
|
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
|
# DEALINGS IN THE SOFTWARE.
|
||||||
|
##############################################################################
|
||||||
|
# @endverbatim
|
||||||
|
#
|
||||||
|
# @ingroup CMakeUtilities
|
||||||
|
##############################################################################
|
||||||
|
|
||||||
|
function(topological_sort LIST PREFIX SUFFIX)
|
||||||
|
# Clear the stack and output variable
|
||||||
|
set(VERTICES "${${LIST}}")
|
||||||
|
set(STACK)
|
||||||
|
set(${LIST})
|
||||||
|
|
||||||
|
# Loop over all of the vertices, starting the topological sort from
|
||||||
|
# each one.
|
||||||
|
foreach(VERTEX ${VERTICES})
|
||||||
|
|
||||||
|
# If we haven't already processed this vertex, start a depth-first
|
||||||
|
# search from where.
|
||||||
|
if (NOT FOUND_${VERTEX})
|
||||||
|
# Push this vertex onto the stack with all of its outgoing edges
|
||||||
|
string(REPLACE ";" " " NEW_ELEMENT
|
||||||
|
"${VERTEX};${${PREFIX}${VERTEX}${SUFFIX}}")
|
||||||
|
list(APPEND STACK ${NEW_ELEMENT})
|
||||||
|
|
||||||
|
# We've now seen this vertex
|
||||||
|
set(FOUND_${VERTEX} TRUE)
|
||||||
|
|
||||||
|
# While the depth-first search stack is not empty
|
||||||
|
list(LENGTH STACK STACK_LENGTH)
|
||||||
|
while(STACK_LENGTH GREATER 0)
|
||||||
|
# Remove the vertex and its remaining out-edges from the top
|
||||||
|
# of the stack
|
||||||
|
list(GET STACK -1 OUT_EDGES)
|
||||||
|
list(REMOVE_AT STACK -1)
|
||||||
|
|
||||||
|
# Get the source vertex and the list of out-edges
|
||||||
|
separate_arguments(OUT_EDGES)
|
||||||
|
list(GET OUT_EDGES 0 SOURCE)
|
||||||
|
list(REMOVE_AT OUT_EDGES 0)
|
||||||
|
|
||||||
|
# While there are still out-edges remaining
|
||||||
|
list(LENGTH OUT_EDGES OUT_DEGREE)
|
||||||
|
while (OUT_DEGREE GREATER 0)
|
||||||
|
# Pull off the first outgoing edge
|
||||||
|
list(GET OUT_EDGES 0 TARGET)
|
||||||
|
list(REMOVE_AT OUT_EDGES 0)
|
||||||
|
|
||||||
|
if (NOT FOUND_${TARGET})
|
||||||
|
# We have not seen the target before, so we will traverse
|
||||||
|
# its outgoing edges before coming back to our
|
||||||
|
# source. This is the key to the depth-first traversal.
|
||||||
|
|
||||||
|
# We've now seen this vertex
|
||||||
|
set(FOUND_${TARGET} TRUE)
|
||||||
|
|
||||||
|
# Push the remaining edges for the current vertex onto the
|
||||||
|
# stack
|
||||||
|
string(REPLACE ";" " " NEW_ELEMENT
|
||||||
|
"${SOURCE};${OUT_EDGES}")
|
||||||
|
list(APPEND STACK ${NEW_ELEMENT})
|
||||||
|
|
||||||
|
# Setup the new source and outgoing edges
|
||||||
|
set(SOURCE ${TARGET})
|
||||||
|
set(OUT_EDGES
|
||||||
|
${${PREFIX}${SOURCE}${SUFFIX}})
|
||||||
|
endif(NOT FOUND_${TARGET})
|
||||||
|
|
||||||
|
list(LENGTH OUT_EDGES OUT_DEGREE)
|
||||||
|
endwhile (OUT_DEGREE GREATER 0)
|
||||||
|
|
||||||
|
# We have finished all of the outgoing edges for
|
||||||
|
# SOURCE; add it to the resulting list.
|
||||||
|
list(APPEND ${LIST} ${SOURCE})
|
||||||
|
|
||||||
|
# Check the length of the stack
|
||||||
|
list(LENGTH STACK STACK_LENGTH)
|
||||||
|
endwhile(STACK_LENGTH GREATER 0)
|
||||||
|
endif (NOT FOUND_${VERTEX})
|
||||||
|
endforeach(VERTEX)
|
||||||
|
|
||||||
|
set(${LIST} ${${LIST}} PARENT_SCOPE)
|
||||||
|
endfunction(topological_sort)
|
||||||
23
cmake/TopologicalSort_LICENSE.txt
Normal file
23
cmake/TopologicalSort_LICENSE.txt
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
Boost Software License - Version 1.0 - August 17th, 2003
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person or organization
|
||||||
|
obtaining a copy of the software and accompanying documentation covered by
|
||||||
|
this license (the "Software") to use, reproduce, display, distribute,
|
||||||
|
execute, and transmit the Software, and to prepare derivative works of the
|
||||||
|
Software, and to permit third-parties to whom the Software is furnished to
|
||||||
|
do so, all subject to the following:
|
||||||
|
|
||||||
|
The copyright notices in the Software and this entire statement, including
|
||||||
|
the above license grant, this restriction and the following disclaimer,
|
||||||
|
must be included in all copies of the Software, in whole or in part, and
|
||||||
|
all derivative works of the Software, unless such copies or derivative
|
||||||
|
works are solely in the form of machine-executable object code generated by
|
||||||
|
a source language processor.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||||
|
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||||
|
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||||
|
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
|
DEALINGS IN THE SOFTWARE.
|
||||||
14
cmake/qt_attribution.json
Normal file
14
cmake/qt_attribution.json
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"Id": "cmake_topological_sort",
|
||||||
|
"Name": "CMake Topological Sort",
|
||||||
|
"QDocModule": "qt",
|
||||||
|
"QtParts": ["tools"],
|
||||||
|
"QtUsage": "Used in the CMake super build project file",
|
||||||
|
"Files": "TopologicalSort.cmake",
|
||||||
|
|
||||||
|
"Description": "CMake implementation of the topological sort algorithm",
|
||||||
|
"License": "Boost Software License - Version 1.0",
|
||||||
|
"LicenseFile": "TopologicalSort_LICENSE.txt",
|
||||||
|
"Copyright": "Copyright 2010 Kitware, Inc."
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
type: Group
|
|
||||||
instructions:
|
|
||||||
- type: EnvironmentVariable
|
|
||||||
variableName: QT_MODULE_TO_TEST
|
|
||||||
variableValue: "qt=QtConcurrent,QtCore,QtDBus,QtDesigner,QtGui,QtHelp,QtNetwork,QtOpenGL,QtPrintSupport,QtQml,QtQuick,QtQuickTest,QtSql,QtSvg,QtTest,QtWidgets,QtXml;{{.SourceDir}}/qtbase"
|
|
||||||
- type: EnvironmentVariable
|
|
||||||
variableName: QTDIR
|
|
||||||
variableValue: "{{.InstallDir}}"
|
|
||||||
- type: PrependToEnvironmentVariable
|
|
||||||
variableName: PATH
|
|
||||||
variableValue: "{{.InstallDir}}/bin:"
|
|
||||||
- type: ChangeDirectory
|
|
||||||
directory: "{{.SourceDir}}/qtqa/tests/postbuild/bic"
|
|
||||||
- type: ExecuteCommand
|
|
||||||
command: ["{{.InstallDir}}/bin/qmake"]
|
|
||||||
maxTimeInSeconds: 3600
|
|
||||||
maxTimeBetweenOutput: 300
|
|
||||||
userMessageOnFailure: "Failed to execute qmake for bic tests"
|
|
||||||
- type: ExecuteCommand
|
|
||||||
command: ["make", "check", "-j1"]
|
|
||||||
maxTimeInSeconds: 7200
|
|
||||||
maxTimeBetweenOutput: 300
|
|
||||||
userMessageOnFailure: "Failed to execute bic tests"
|
|
||||||
enable_if:
|
|
||||||
condition: and
|
|
||||||
conditions:
|
|
||||||
- condition: property
|
|
||||||
property: features
|
|
||||||
contains_value: Packaging
|
|
||||||
- condition: property
|
|
||||||
property: target.os
|
|
||||||
equals_value: Linux
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
type: Group
|
|
||||||
instructions:
|
|
||||||
- type: ExecuteCommand
|
|
||||||
command: "{{.Env.ENV_PREFIX}} cmake --build . --target qtbase/src/plugins/platforms/all qtbase/src/plugins/sqldrivers/all qttools/all --parallel -v"
|
|
||||||
maxTimeInSeconds: 12000
|
|
||||||
maxTimeBetweenOutput: 1200
|
|
||||||
userMessageOnFailure: >
|
|
||||||
Failed to build sources.
|
|
||||||
- type: ExecuteCommand
|
|
||||||
command: "{{.Env.ENV_PREFIX}} cmake --build . --target docs -v"
|
|
||||||
maxTimeInSeconds: 12000
|
|
||||||
maxTimeBetweenOutput: 1200
|
|
||||||
userMessageOnFailure: >
|
|
||||||
Failed to generate docs.
|
|
||||||
- type: ExecuteCommand
|
|
||||||
command: "cp -r {{.BuildDir}}/qtbase/doc/config {{.BuildDir}}/doc"
|
|
||||||
maxTimeInSeconds: 12000
|
|
||||||
maxTimeBetweenOutput: 1200
|
|
||||||
userMessageOnFailure: "Failed to copy qtbase/doc/config to documentation directory."
|
|
||||||
- type: ExecuteCommand
|
|
||||||
command: "cp -r {{.BuildDir}}/qtbase/doc/global {{.BuildDir}}/doc"
|
|
||||||
maxTimeInSeconds: 12000
|
|
||||||
maxTimeBetweenOutput: 1200
|
|
||||||
userMessageOnFailure: "Failed to copy qtbase/doc/global to documentation directory."
|
|
||||||
- type: UploadArtifact
|
|
||||||
archiveDirectory: '{{.BuildDir}}/doc'
|
|
||||||
transferType: UploadModuleDocumentation
|
|
||||||
maxTimeInSeconds: 1800
|
|
||||||
maxTimeBetweenOutput: 1800
|
|
||||||
enable_if:
|
|
||||||
condition: property
|
|
||||||
property: features
|
|
||||||
contains_value: "Documentation"
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
type: Group
|
|
||||||
instructions:
|
|
||||||
- !include "{{qt/qt5}}/coin_qt_configure.yaml"
|
|
||||||
- !include "{{qt/qt5}}/coin_qt_build_docs.yaml"
|
|
||||||
disable_if:
|
|
||||||
condition: property
|
|
||||||
property: features
|
|
||||||
contains_value: "TargetBuildOnly"
|
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
type: Group
|
|
||||||
instructions:
|
|
||||||
- !include "{{qt/qtbase}}/prepare_building_env.yaml"
|
|
||||||
- type: MakeDirectory
|
|
||||||
directory: .git
|
|
||||||
- type: SetBuildDirectory
|
|
||||||
directory: "{{.SourceDir}}"
|
|
||||||
- type: ChangeDirectory
|
|
||||||
directory: "{{.BuildDir}}"
|
|
||||||
|
|
||||||
- !include "{{qt/qt5}}/prepare_configure_executable.yaml"
|
|
||||||
|
|
||||||
- type: EnvironmentVariable
|
|
||||||
variableName: COIN_CONFIGURE_ARGS
|
|
||||||
variableValue: "{{.Env.CONFIGURE_ARGS}}"
|
|
||||||
- type: EnvironmentVariable
|
|
||||||
variableName: COIN_CMAKE_ARGS
|
|
||||||
# Use unix separators even on Windows, to avoid escaping issues in the configure script.
|
|
||||||
variableValue: "{{.Env.CMAKE_ARGS}} {{.Env.COMMON_CMAKE_ARGS}} -DCMAKE_INSTALL_PREFIX:PATH={{unixPathSeparators .InstallDir}}"
|
|
||||||
- type: EnvironmentVariable
|
|
||||||
variableName: CONFIGURE_ENV_PREFIX
|
|
||||||
variableValue: "{{.Env.ENV_PREFIX}}"
|
|
||||||
|
|
||||||
- type: ExecuteCommand
|
|
||||||
# There is no SourceDir on purpose, because configure is called directly from qtbase,
|
|
||||||
# so the script knows it's own source dir.
|
|
||||||
# TODO: Consider removing these instructions, and using the ones in qtbase/call_configure_qtbase.yaml
|
|
||||||
# once all dependencies are propagated.
|
|
||||||
command: "{{.Env.CONFIGURE_ENV_PREFIX}} {{.Env.CONFIGURE_EXECUTABLE}} {{.Env.COIN_CONFIGURE_ARGS}} -- {{.Env.COIN_CMAKE_ARGS}}"
|
|
||||||
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
|
|
||||||
maxTimeInSeconds: 6000
|
|
||||||
maxTimeBetweenOutput: 1200
|
|
||||||
userMessageOnFailure: >
|
|
||||||
Failed to call cmake.
|
|
||||||
enable_if:
|
|
||||||
condition: property
|
|
||||||
property: features
|
|
||||||
contains_value: UseConfigure
|
|
||||||
- type: ExecuteCommand
|
|
||||||
command: "{{.Env.CONFIGURE_ENV_PREFIX}} {{.Env.CONFIGURE_EXECUTABLE}} {{.SourceDir}} {{.Env.COIN_CONFIGURE_ARGS}} {{.Env.COIN_CMAKE_ARGS}}"
|
|
||||||
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
|
|
||||||
maxTimeInSeconds: 6000
|
|
||||||
maxTimeBetweenOutput: 1200
|
|
||||||
userMessageOnFailure: >
|
|
||||||
Failed to call cmake.
|
|
||||||
disable_if:
|
|
||||||
condition: property
|
|
||||||
property: features
|
|
||||||
contains_value: UseConfigure
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
# Call either cmake or configure depending on whether the
|
|
||||||
# UseConfigure platform configuration feature is set.
|
|
||||||
# We should remove the cmake branch, once all platform configurations
|
|
||||||
# are ported to use configure.
|
|
||||||
# TODO: Remove this file, and reference the one in qtbase, once all
|
|
||||||
# all dependencies are propagated.
|
|
||||||
type: Group
|
|
||||||
instructions:
|
|
||||||
- type: Group
|
|
||||||
enable_if:
|
|
||||||
condition: property
|
|
||||||
property: features
|
|
||||||
contains_value: UseConfigure
|
|
||||||
instructions:
|
|
||||||
- type: EnvironmentVariable
|
|
||||||
variableName: CONFIGURE_EXECUTABLE
|
|
||||||
variableValue: "{{.SourceDir}}/configure"
|
|
||||||
disable_if:
|
|
||||||
condition: property
|
|
||||||
property: host.os
|
|
||||||
equals_value: Windows
|
|
||||||
- type: EnvironmentVariable
|
|
||||||
variableName: CONFIGURE_EXECUTABLE
|
|
||||||
variableValue: "{{.SourceDir}}\\configure.bat"
|
|
||||||
enable_if:
|
|
||||||
condition: property
|
|
||||||
property: host.os
|
|
||||||
equals_value: Windows
|
|
||||||
- type: Group
|
|
||||||
disable_if:
|
|
||||||
condition: property
|
|
||||||
property: features
|
|
||||||
contains_value: UseConfigure
|
|
||||||
instructions:
|
|
||||||
- type: EnvironmentVariable
|
|
||||||
variableName: CONFIGURE_EXECUTABLE
|
|
||||||
variableValue: "cmake"
|
|
||||||
@@ -6,7 +6,48 @@ accept_configuration:
|
|||||||
|
|
||||||
instructions:
|
instructions:
|
||||||
Build:
|
Build:
|
||||||
- !include "{{qt/qt5}}/coin_qt_build_template.yaml"
|
- !include "{{qt/qtbase}}/prepare_building_env.yaml"
|
||||||
|
- type: MakeDirectory
|
||||||
|
directory: .git
|
||||||
|
- type: SetBuildDirectory
|
||||||
|
directory: "{{.SourceDir}}"
|
||||||
|
- type: ChangeDirectory
|
||||||
|
directory: "{{.BuildDir}}"
|
||||||
|
- type: ExecuteCommand
|
||||||
|
command: "{{.Env.ENV_PREFIX}} cmake {{.Env.CONFIGURE_ARGS}} -DCMAKE_INSTALL_PREFIX:PATH={{.InstallDir}} -DQT_BUILD_TESTS=OFF {{.SourceDir}}"
|
||||||
|
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
|
||||||
|
maxTimeInSeconds: 6000
|
||||||
|
maxTimeBetweenOutput: 1200
|
||||||
|
userMessageOnFailure: >
|
||||||
|
Failed to call cmake.
|
||||||
|
|
||||||
|
- type: Group
|
||||||
|
instructions:
|
||||||
|
- type: ExecuteCommand
|
||||||
|
command: "{{.Env.ENV_PREFIX}} cmake --build . --target qttools/all --parallel -v"
|
||||||
|
maxTimeInSeconds: 12000
|
||||||
|
maxTimeBetweenOutput: 1200
|
||||||
|
userMessageOnFailure: >
|
||||||
|
Failed to build sources.
|
||||||
|
- type: ExecuteCommand
|
||||||
|
command: "{{.Env.ENV_PREFIX}} cmake --build . --target generate_docs -v"
|
||||||
|
maxTimeInSeconds: 12000
|
||||||
|
maxTimeBetweenOutput: 1200
|
||||||
|
userMessageOnFailure: >
|
||||||
|
Failed to generate docs.
|
||||||
|
- type: MakeDirectory
|
||||||
|
directory: "{{.BuildDir}}/qtbase/doc/global"
|
||||||
|
- type: UploadArtifact
|
||||||
|
archiveDirectory: '{{.BuildDir}}/doc'
|
||||||
|
transferType: UploadModuleDocumentation
|
||||||
|
maxTimeInSeconds: 1800
|
||||||
|
maxTimeBetweenOutput: 1800
|
||||||
|
enable_if:
|
||||||
|
condition: property
|
||||||
|
property: features
|
||||||
|
contains_value: "Documentation"
|
||||||
|
|
||||||
Test:
|
Test:
|
||||||
- !include "{{qt/qt5}}/coin_bic_tests.yaml"
|
- type: EnvironmentVariable
|
||||||
|
variableName: Dummy
|
||||||
|
variableValue: dummy
|
||||||
|
|||||||
@@ -1,12 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'opensuse-15.5-host-asan'
|
|
||||||
Template: 'qtci-linux-openSUSE-15.5-x86_64-52'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure', 'UseAddressSanitizer']
|
|
||||||
Configure arguments: '-nomake examples -developer-build'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE'
|
|
||||||
]
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,302 +1,145 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Include: [
|
Include: [
|
||||||
cmake_platforms_qemu.yaml,
|
cmake_platforms_qemu.yaml,
|
||||||
cmake_platforms_qemu_qnx710.yaml,
|
cmake_platforms_target_android_host_linux.yaml,
|
||||||
cmake_platforms_target_android.yaml,
|
cmake_platforms_target_android_host_macos.yaml,
|
||||||
cmake_platforms_wasm.yaml,
|
cmake_platforms_target_android_host_windows.yaml
|
||||||
macos.yaml
|
|
||||||
]
|
]
|
||||||
Configurations:
|
Configurations:
|
||||||
# Build on Ubuntu 22.04 and test on both X11 and Wayland later
|
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-22.04-documentation'
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'Documentation', 'UseConfigure', 'DoNotRunTests']
|
Features: ['Sccache']
|
||||||
Configure arguments: '-make examples -developer-build -c++std c++20 -linker gold -qtlibinfix TestInfix -qtnamespace TestNamespace'
|
Configure arguments: '-DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_widgets=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE']
|
Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-22.04'
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests', 'GenerateSBOM', 'VerifySBOM']
|
Features: ['Sccache', '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'
|
Configure arguments: '-DFEATURE_developer_build=ON -DFEATURE_gui=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON -DQT_DEPLOY_FFMPEG=TRUE'
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
]
|
|
||||||
# Test on Ubuntu 22.04 X11
|
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-22.04-documentation-x11-tests'
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'TestDocs', 'TestOnly']
|
Features: ['Sccache', 'Documentation']
|
||||||
Platform dependency: 'ubuntu-22.04-documentation'
|
Configure arguments: '-DQT_BUILD_EXAMPLES=ON -DFEATURE_developer_build=ON -DWARNINGS_ARE_ERRORS=OFF -DQT_LIBINFIX=TestInfix -DQT_NAMESPACE=TestNamespace -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-22.04-x11-tests'
|
Id: 'Ubuntu-20.04-host'
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'TestOnly']
|
Features: ['Sccache']
|
||||||
Platform dependency: 'ubuntu-22.04'
|
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_system_jpeg=OFF -DFEATURE_system_png=OFF -DFEATURE_system_pcre2=OFF -DFEATURE_system_harfbuzz=OFF -DFEATURE_system_doubleconversion=OFF -DFEATURE_libudev=OFF -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
# Build on Ubuntu 24.04 ARM64 Wayland and test on offscreen and Wayland later
|
Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-arm64-documentation'
|
Template: 'qtci-linux-openSUSE-15.1-x86_64'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'Documentation', 'UseConfigure', 'DoNotRunTests']
|
Features: ['Sccache', 'InsignificantTests']
|
||||||
Configure arguments: '-make examples -developer-build -c++std c++20 -linker lld -qtlibinfix TestInfix -qtnamespace TestNamespace -qpa offscreen\;xcb'
|
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DFEATURE_developer_build=ON -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-SLES-15_SP2-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['Sccache', 'DisableTests']
|
||||||
|
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DBUILD_SHARED_LIBS=OFF -DFEATURE_sql_mysql=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Id: 'macos-10.14-host'
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['Packaging', 'Sccache']
|
||||||
|
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_headersclean=ON -DFEATURE_framework=ON -DCMAKE_OSX_SYSROOT:PATH=/Applications/Xcode11.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.14 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DODBC_ROOT=/usr/local/opt/libiodbc -DPostgreSQL_ROOT={{.Env.POSTGRESQLBINPATH}}/..'
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'COMMON_TEST_CMAKE_ARGS=-DQT_SKIP_DOCKER_COMPOSE=ON',
|
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE'
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
]
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['DisableTests', 'Sccache']
|
||||||
|
Configure arguments: '-DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_framework=OFF -DQT_NAMESPACE=TestNamespace -DQT_BUILD_EXAMPLES=OFF -DCMAKE_OSX_SYSROOT:PATH=/Applications/Xcode11.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.14 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
Environment variables: [
|
||||||
|
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
]
|
||||||
|
-
|
||||||
|
Id: 'macos-10.15-host'
|
||||||
|
Template: 'qtci-macos-10.15-x86_64-100'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['Packaging', 'Sccache', 'InsignificantTests']
|
||||||
|
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_headersclean=ON -DFEATURE_framework=ON -DCMAKE_OSX_SYSROOT:PATH=/Applications/Xcode12.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DODBC_ROOT=/usr/local/opt/libiodbc -DPostgreSQL_ROOT={{.Env.POSTGRESQLBINPATH}}/..'
|
||||||
|
Environment variables: [
|
||||||
|
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
]
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.15-x86_64-100'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['Sccache', 'InsignificantTests']
|
||||||
|
Configure arguments: '-DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_PCH=OFF -DFEATURE_framework=OFF -DQT_NAMESPACE=TestNamespace -DQT_BUILD_EXAMPLES=ON -DCMAKE_OSX_SYSROOT:PATH=/Applications/Xcode12.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
Environment variables: [
|
||||||
|
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
]
|
||||||
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Compiler: 'MSVC2019'
|
||||||
|
Features: ['Packaging', 'Sccache', "DebugAndRelease"]
|
||||||
|
Configure arguments: '-G"Ninja Multi-Config" -DCMAKE_CONFIGURATION_TYPES="RelWithDebInfo;Debug" -DFEATURE_msvc_obj_debug_info=ON -DFEATURE_headersclean=ON -DQT_BUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DFEATURE_system_zlib=OFF -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\.. -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
Environment variables: [
|
||||||
|
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}'
|
||||||
]
|
]
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-arm64'
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
Compiler: 'MSVC2019'
|
||||||
|
Features: ['Sccache', "DebugAndRelease"]
|
||||||
|
Configure arguments: '-G"Ninja Multi-Config" -DQT_BUILD_EXAMPLES=ON -DFEATURE_developer_build=ON -DCMAKE_CONFIGURATION_TYPES="RelWithDebInfo;Debug" -DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DFEATURE_system_zlib=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
|
Environment variables: [
|
||||||
|
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Id: 'CentOS-8.1-host'
|
||||||
|
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['Sccache', 'Packaging', 'UseConfigure', 'DoNotRunTests', 'GenerateSBOM', 'VerifySBOM']
|
Features: ['Packaging', 'Sccache']
|
||||||
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 -qpa offscreen\;xcb'
|
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_headersclean=ON -DFEATURE_separate_debug_info=ON -DFEATURE_system_jpeg=OFF -DFEATURE_system_png=OFF -DFEATURE_system_pcre2=OFF -DFEATURE_system_harfbuzz=OFF -DFEATURE_system_doubleconversion=OFF -DFEATURE_libudev=OFF -DINPUT_bundled_xcb_xinput=yes -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DOpenGL_GL_PREFERENCE=LEGACY'
|
||||||
Environment variables: [
|
Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
'COMMON_TEST_CMAKE_ARGS=-DQT_SKIP_DOCKER_COMPOSE=ON',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON'
|
|
||||||
]
|
|
||||||
# Test on Ubuntu 24.04 ARM64 offscreen
|
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-arm64-offscreen-tests'
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['TestOnly']
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
|
||||||
'QT_QPA_OFFSCREEN_NO_GLX=1',
|
|
||||||
'QT_QPA_PLATFORM=offscreen'
|
|
||||||
]
|
|
||||||
Platform dependency: 'ubuntu-24.04-arm64'
|
|
||||||
# Build on Ubuntu 24.04 x64 Wayland and test on both X11 and Wayland (Wayland=default)
|
|
||||||
-
|
|
||||||
Id: 'ubuntu-24.04-x64-documentation'
|
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'Documentation', 'UseConfigure', 'DoNotRunTests']
|
|
||||||
Configure arguments: '-make examples -developer-build -c++std c++20 -linker gold -qtlibinfix TestInfix -qtnamespace TestNamespace'
|
|
||||||
Environment variables: [
|
|
||||||
'COMMON_TEST_CMAKE_ARGS=-DQT_SKIP_DOCKER_COMPOSE=ON',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'ubuntu-24.04-x64'
|
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', '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',
|
|
||||||
'COMMON_TEST_CMAKE_ARGS=-DQT_SKIP_DOCKER_COMPOSE=ON',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON'
|
|
||||||
]
|
|
||||||
# Test on Ubuntu 24.04 x64 X11
|
|
||||||
-
|
|
||||||
Id: 'ubuntu-24.04-x64-documentation-x11-tests'
|
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
|
|
||||||
Platform dependency: 'ubuntu-24.04-x64-documentation'
|
|
||||||
-
|
|
||||||
Id: 'ubuntu-24.04-x64-x11-tests'
|
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
|
|
||||||
Platform dependency: 'ubuntu-24.04-x64'
|
|
||||||
-
|
|
||||||
Id: 'opensuse-15.5-developer-build'
|
|
||||||
Template: 'qtci-linux-openSUSE-15.5-x86_64-52'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure']
|
|
||||||
Configure arguments: '-nomake examples -developer-build'
|
|
||||||
Environment variables: [
|
|
||||||
'PATH={{.Env.CMAKE_MIN_SUPPORTED_BIN_PATH}}:{{.Env.PATH}}',
|
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'sles-15_sp5-static'
|
|
||||||
Template: 'qtci-linux-SLES-15_SP5-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Configure arguments: '-nomake examples -static -no-sql-mysql'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'windows-10_22h2-msvc2022'
|
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Sccache', "DebugAndRelease", 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
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_clangcpp=OFF -DINPUT_headersclean=ON',
|
|
||||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'windows-11_23H2-msvc2022'
|
|
||||||
Template: 'qtci-windows-11_23H2-x86_64-53'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Sccache', "DebugAndRelease", 'UseConfigure', 'Packaging', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
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_clangcpp=OFF -DINPUT_headersclean=ON',
|
|
||||||
'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-54'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Packaging', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -no-sql-psql -no-opengl'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS= -DFEATURE_clangcpp=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE',
|
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'windows-11_23H2-msvc2022-arm64'
|
|
||||||
Template: 'qtci-windows-11_23H2-x86_64-53'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Target arch: 'arm64'
|
|
||||||
Features: ['Sccache', 'DisableTests', 'TargetBuildOnly', 'Packaging', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Platform dependency: 'windows-11_23H2-msvc2022'
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc',
|
|
||||||
'TARGET_CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ROOT_DIR_x64_arm64}}',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE',
|
|
||||||
'OPENSSL_CONF_x64={{.Env.OPENSSL_CONF_x64_arm64}}',
|
|
||||||
'OPENSSL_INCLUDE_x64={{.Env.OPENSSL_INCLUDE_x64_arm64}}',
|
|
||||||
'OPENSSL_LIB_x64={{.Env.OPENSSL_LIB_x64_arm64}}',
|
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'windows-11_23H2-msvc2022-developer-build'
|
|
||||||
Template: 'qtci-windows-11_23H2-x86_64-53'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
|
|
||||||
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}}',
|
|
||||||
'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: 'rhel-8.10'
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
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}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON'
|
|
||||||
]
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'rhel-9.2'
|
|
||||||
Template: 'qtci-linux-RHEL-9.2-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
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}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'rhel-9.4'
|
|
||||||
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests']
|
|
||||||
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}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'ios-universal'
|
|
||||||
Template: 'qtci-macos-14-arm-106'
|
|
||||||
Target os: 'IOS_ANY'
|
Target os: 'IOS_ANY'
|
||||||
Target arch: 'arm64'
|
Target arch: 'arm64'
|
||||||
Compiler: 'Clang'
|
Compiler: 'Clang'
|
||||||
Target compiler: 'Clang'
|
Target compiler: 'Clang'
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
Platform dependency: 'macos-10.14-host'
|
||||||
Features: ['Packaging', 'Sccache', 'DebugAndRelease', 'DisableTests', 'UseConfigure', 'WarningsAreErrors', 'GenerateSBOM', 'VerifySBOM']
|
Features: ['Packaging', 'Sccache', 'DebugAndRelease']
|
||||||
Environment variables: [
|
Environment variables: ['TARGET_CONFIGURE_ARGS=-G"Ninja Multi-Config" -DCMAKE_CONFIGURATION_TYPES="Release;Debug" -DQT_BUILD_EXAMPLES=OFF -DCMAKE_SYSTEM_NAME=iOS', 'NON_QTBASE_TARGET_CONFIGURE_ARGS=']
|
||||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include -DFFMPEG_DIR={{.Env.FFMPEG_DIR_IOS}} -DQT_DEPLOY_FFMPEG=TRUE',
|
|
||||||
]
|
|
||||||
-
|
-
|
||||||
Id: 'windows-10_22h2-mingw13'
|
Id: 'Windows10-Mingw8-x64-host'
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
Compiler: 'Mingw'
|
Compiler: 'Mingw'
|
||||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
Features: ['Packaging', 'Sccache']
|
||||||
Configure arguments: '-release -force-debug-info -separate-debug-info -nomake examples'
|
Configure arguments: '-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DQT_BUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DFEATURE_system_zlib=OFF -DFEATURE_system_tiff=OFF -DFEATURE_system_freetype=OFF -DFEATURE_system_jpeg=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DPostgreSQL_ROOT={{.Env.POSTGRESQL_LIB_x64}}\..'
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
'Path={{.Env.MINGW810}}\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_CONFIGURE_ARGS=-DFEATURE_system_tiff=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MINGW}} -DQT_DEPLOY_FFMPEG=TRUE -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_mingw}}',
|
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_mingw}}'
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_mingw}}',
|
|
||||||
]
|
]
|
||||||
-
|
-
|
||||||
Id: 'windows-11_23H2-llvm'
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
Template: 'qtci-windows-11_23H2-x86_64-53'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Packaging','Sccache', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
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={{.Env.LLVM_INSTALL_DIR_llvm_mingw}}',
|
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_llvm_mingw}}',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'windows-11_23H2-mingw13-developer-build'
|
|
||||||
Template: 'qtci-windows-11_23H2-x86_64-53'
|
|
||||||
Compiler: 'Mingw'
|
Compiler: 'Mingw'
|
||||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure']
|
Environment variables: ['PATH=C:\MINGW810\mingw64\bin;$PATH']
|
||||||
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -separate-debug-info -make examples'
|
Features: ['Sccache', 'InsignificantTests']
|
||||||
Environment variables: [
|
Configure arguments: '-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DBUILD_EXAMPLES=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DFEATURE_system_zlib=OFF -DFEATURE_system_tiff=OFF -DFEATURE_system_freetype=OFF -DFEATURE_system_jpeg=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
|
||||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
Environment variables: ['Path={{.Env.MINGW810}}\bin;{{.Env.Path}}', 'NON_QTBASE_CONFIGURE_ARGS=-DFEATURE_system_tiff=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
'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}}',
|
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache','LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_mingw}}']
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MINGW}} -DQT_DEPLOY_FFMPEG=TRUE -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c',
|
|
||||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_mingw}}',
|
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_mingw}}',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'jammy-arm64-debian-pkg-packaging'
|
|
||||||
Template: 'qtci-linux-Debian-11.6-aarch64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Packaging','DebianPackaging','DisableTests', 'Insignificant']
|
|
||||||
Environment variables: [
|
|
||||||
'DEBIAN_RULES_REF=6.8_dev',
|
|
||||||
'COIN_TARGET_DIST=tqtc-jammy',
|
|
||||||
'COIN_EXTRA_DEBIAN_PACKAGES={{.Env.HOME}}/debian_packages/',
|
|
||||||
'COIN_SBUILD_CHROOT=jammy-arm64-sbuild',
|
|
||||||
'COIN_EXTRA_DEBIAN_REPO=deb http://ports.ubuntu.com/ubuntu-ports/ jammy main universe multiverse',
|
|
||||||
'COIN_SKIP_DEBIAN_MODULES=qt5 qtqa qtactiveqt qtdoc qtwebengine qtwebview',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'jammy-amd64-debian-pkg-packaging'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Packaging','DebianPackaging','DisableTests', 'Insignificant']
|
|
||||||
Environment variables: [
|
|
||||||
'DEBIAN_RULES_REF=6.8_dev',
|
|
||||||
'COIN_TARGET_DIST=tqtc-jammy',
|
|
||||||
'COIN_EXTRA_DEBIAN_PACKAGES={{.Env.HOME}}/debian_packages/',
|
|
||||||
'COIN_SBUILD_CHROOT=jammy-amd64-sbuild',
|
|
||||||
'COIN_EXTRA_DEBIAN_REPO=deb http://archive.ubuntu.com/ubuntu/ jammy main universe multiverse',
|
|
||||||
'COIN_SKIP_DEBIAN_MODULES=qt5 qtqa qtactiveqt qtdoc qtwebengine qtwebview',
|
|
||||||
]
|
|
||||||
|
|||||||
@@ -1,53 +1,49 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Configurations:
|
Configurations:
|
||||||
-
|
-
|
||||||
Id: 'qemu-armv7-developer-build'
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Target os: 'QEMU'
|
Target os: 'QEMU'
|
||||||
Target arch: 'armv7'
|
Target arch: 'armv7'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Platform dependency: 'ubuntu-22.04'
|
Platform dependency: 'Ubuntu-20.04-host'
|
||||||
Features: ['Sccache', 'UseConfigure', 'InsignificantTests']
|
Features: ['Sccache', 'InsignificantTests']
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'TARGET_CONFIGURE_ARGS=-release -force-asserts -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_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DQT_BUILD_TOOLS_WHEN_CROSSCOMPILING=ON -DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}/../x86_64-pokysdk-linux/usr/share/cmake/OEToolchainConfig.cmake -DQT_FEATURE_system_harfbuzz=OFF -DQT_QMAKE_TARGET_MKSPEC=devices/linux-imx7-g++ -DQT_QMAKE_DEVICE_OPTIONS="CROSS_COMPILE=/opt/yocto-armv7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-;DISTRO_OPTS=hard-float boot2qt" -DCMAKE_STAGING_PREFIX=/home/qt/work/install/target -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DFEATURE_forkfd_pidfd=OFF -DWARNINGS_ARE_ERRORS=OFF',
|
||||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARMV7_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
|
'QT_YOCTO_ENVSETUP={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}/../../environment-setup-armv7at2hf-neon-poky-linux-gnueabi',
|
||||||
'QT_YOCTO_ENVSETUP={{.Env.QEMUARMV7_TOOLCHAIN_ENVSETUP}}',
|
"QT_CMAKE_DIR=/opt/cmake-3.19.2/bin",
|
||||||
"QT_CMAKE_DIR=/opt/cmake-3.30.5/bin",
|
|
||||||
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}',
|
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}',
|
||||||
'GST_PLUGIN_SCANNER={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
|
'GST_PLUGIN_SCANNER=/opt/yocto-armv7/sysroots/armv7at2hf-neon-poky-linux-gnueabi/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
|
||||||
'QT_QUICK_BACKEND=software',
|
'QT_QUICK_BACKEND=software',
|
||||||
]
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TARGET_TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
-
|
-
|
||||||
Id: 'qemu-arm64-developer-build'
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Target os: 'QEMU'
|
Target os: 'QEMU'
|
||||||
Target arch: 'arm64'
|
Target arch: 'arm64'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Platform dependency: 'ubuntu-22.04'
|
Platform dependency: 'Ubuntu-20.04-host'
|
||||||
Features: ['Sccache', 'UseConfigure', 'InsignificantTests']
|
Features: ['Sccache', 'InsignificantTests']
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'TARGET_CONFIGURE_ARGS=-release -force-asserts -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_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DQT_BUILD_TOOLS_WHEN_CROSSCOMPILING=ON -DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}/../x86_64-pokysdk-linux/usr/share/cmake/OEToolchainConfig.cmake -DQT_FEATURE_system_harfbuzz=OFF -DQT_QMAKE_TARGET_MKSPEC=devices/linux-generic-g++ -DQT_QMAKE_DEVICE_OPTIONS="CROSS_COMPILE=/opt/yocto-arm64/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-;DISTRO_OPTS=boot2qt" -DCMAKE_STAGING_PREFIX=/home/qt/work/install/target -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DFEATURE_forkfd_pidfd=OFF -DWARNINGS_ARE_ERRORS=OFF',
|
||||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARM64_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
|
'QT_YOCTO_ENVSETUP={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}/../../environment-setup-aarch64-poky-linux',
|
||||||
'QT_YOCTO_ENVSETUP={{.Env.QEMUARM64_TOOLCHAIN_ENVSETUP}}',
|
"QT_CMAKE_DIR=/opt/cmake-3.19.2/bin",
|
||||||
"QT_CMAKE_DIR=/opt/cmake-3.30.5/bin",
|
|
||||||
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}',
|
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}',
|
||||||
'GST_PLUGIN_SCANNER={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
|
'GST_PLUGIN_SCANNER=/opt/yocto-arm64/sysroots/aarch64-poky-linux/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
|
||||||
'QT_QUICK_BACKEND=software',
|
'QT_QUICK_BACKEND=software',
|
||||||
]
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TARGET_TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
-
|
-
|
||||||
Id: 'qemu-mips64-developer-build'
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Target os: 'QEMU'
|
Target os: 'QEMU'
|
||||||
Target arch: 'mips64'
|
Target arch: 'mips64'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Platform dependency: 'ubuntu-22.04'
|
Platform dependency: 'Ubuntu-20.04-host'
|
||||||
Features: ['Sccache', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
Features: ['Sccache', 'InsignificantTests', 'DisableTests']
|
||||||
Environment variables: [
|
Environment variables: [
|
||||||
'TARGET_CONFIGURE_ARGS=-release -force-asserts -force-debug-info -developer-build -no-warnings-are-errors -nomake examples -qt-harfbuzz -device linux-generic-g++ -device-option "CROSS_COMPILE={{.Env.QEMUMIPS64_TOOLCHAIN_CROSS_COMPILE}}" -device-option "DISTRO_OPTS=boot2qt" -no-feature-forkfd_pidfd',
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DQT_BUILD_TOOLS_WHEN_CROSSCOMPILING=ON -DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUMIPS64_TOOLCHAIN_SYSROOT}}/../x86_64-pokysdk-linux/usr/share/cmake/OEToolchainConfig.cmake -DQT_FEATURE_system_harfbuzz=OFF -DQT_QMAKE_TARGET_MKSPEC=devices/linux-generic-g++ -DQT_QMAKE_DEVICE_OPTIONS="CROSS_COMPILE=/opt/yocto-mips64/sysroots/x86_64-pokysdk-linux/usr/bin/mips64-poky-linux/mips64-poky-linux-;DISTRO_OPTS=boot2qt" -DCMAKE_STAGING_PREFIX=/home/qt/work/install/target -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DFEATURE_forkfd_pidfd=OFF -DWARNINGS_ARE_ERRORS=OFF',
|
||||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUMIPS64_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
|
'QT_YOCTO_ENVSETUP={{.Env.QEMUMIPS64_TOOLCHAIN_SYSROOT}}/../../environment-setup-mips64r2-poky-linux',
|
||||||
'QT_YOCTO_ENVSETUP={{.Env.QEMUMIPS64_TOOLCHAIN_ENVSETUP}}',
|
"QT_CMAKE_DIR=/opt/cmake-3.19.2/bin",
|
||||||
"QT_CMAKE_DIR=/opt/cmake-3.30.5/bin",
|
|
||||||
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUMIPS64_TOOLCHAIN_SYSROOT}}',
|
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUMIPS64_TOOLCHAIN_SYSROOT}}',
|
||||||
'GST_PLUGIN_SCANNER={{.Env.QEMUMIPS64_TOOLCHAIN_SYSROOT}}/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
|
|
||||||
'QT_QUICK_BACKEND=software',
|
'QT_QUICK_BACKEND=software',
|
||||||
]
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'TARGET_TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
|||||||
@@ -1,46 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'qnx-710-x86_64-developer-build-on-linux'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Target os: 'QNX_710'
|
|
||||||
Target arch: 'x86_64'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target compiler: 'QCC'
|
|
||||||
Platform dependency: 'ubuntu-22.04'
|
|
||||||
Features: ['Packaging', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -developer-build -no-dbus -nomake examples',
|
|
||||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QNX_710}}/qnx-toolchain-x8664.cmake -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
|
||||||
'QT_CMAKE_DIR=/opt/cmake-3.30.5/bin',
|
|
||||||
'QNX_TEST_ENV=LD_LIBRARY_PATH={{.Env.QNX_QEMU_LD_LIBRARY_PATH}} QSG_RHI_BACKEND=software QT_QPA_PLATFORM=offscreen QTEST_ENVIRONMENT=ci',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'qnx-710-arm64-on-linux'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Target os: 'QNX_710'
|
|
||||||
Target arch: 'arm64'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target compiler: 'QCC'
|
|
||||||
Platform dependency: 'ubuntu-22.04'
|
|
||||||
Features: ['Packaging', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -no-dbus -nomake examples',
|
|
||||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QNX_710}}/qnx-toolchain-aarch64le.cmake -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'qnx-710-armv7-on-linux'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Target os: 'QNX_710'
|
|
||||||
Target arch: 'armv7'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target compiler: 'QCC'
|
|
||||||
Platform dependency: 'ubuntu-22.04'
|
|
||||||
Features: ['Packaging', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -no-dbus -nomake examples',
|
|
||||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QNX_710}}/qnx-toolchain-armv7le.cmake -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
|
||||||
]
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'vxworks-imx6'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Target os: 'VxWorks'
|
|
||||||
Target arch: 'ARMv7'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'ubuntu-22.04'
|
|
||||||
Features: ['VMSize8', 'UseConfigure', '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'
|
|
||||||
]
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'vxworks-imx6-buildtest'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Target os: 'VxWorks'
|
|
||||||
Target arch: 'ARMv7'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'ubuntu-22.04'
|
|
||||||
Features: ['VMSize8', 'UseConfigure', 'DoNotRunTests', 'DoNotUploadTests']
|
|
||||||
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'
|
|
||||||
]
|
|
||||||
@@ -1,72 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'windows-11_23H2-msvc2022-minimal-static-test'
|
|
||||||
Template: 'qtci-windows-11_23H2-x86_64-53'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Sccache', 'UseConfigure', 'Packaging', 'MinimalStaticTests']
|
|
||||||
Configure arguments: '-static -release -headersclean -nomake examples -qt-libjpeg -no-icu -qt-doubleconversion -qt-zlib -c++std c++20 -no-feature-sql-psql'
|
|
||||||
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=-DCMAKE_BUILD_TYPE=Release -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_native_grpc=OFF -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
|
|
||||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'windows-11_22h2-arm64-msvc2022-minimal-static-test'
|
|
||||||
Template: 'qtci-windows-11_22H2-aarch64-53'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['UseConfigure', 'InsignificantTests', 'Packaging', 'MinimalStaticTests']
|
|
||||||
Configure arguments: '-static -release -headersclean -nomake examples -qt-libjpeg -no-icu -qt-doubleconversion -qt-zlib -c++std c++17 -no-sql-psql'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DCMAKE_BUILD_TYPE=Release -DFEATURE_native_grpc=OFF -DFEATURE_clangcpp=OFF -DFEATURE_qdoc=OFF',
|
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'rhel-8.10-minimal-static-test'
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'MinimalStaticTests']
|
|
||||||
Configure arguments: '-static -nomake examples -release -qt-libjpeg -no-icu -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=-DCMAKE_BUILD_TYPE=Release -DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DFEATURE_native_grpc=OFF'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'ubuntu-24.04-arm64'
|
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Packaging', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests']
|
|
||||||
Configure arguments: '-static -nomake examples -release -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -no-libudev -bundled-xcb-xinput -no-icu -qt-doubleconversion'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DCMAKE_BUILD_TYPE=Release'
|
|
||||||
]
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-universal-on-x86_64-minimal-static-test'
|
|
||||||
Template: 'qtci-macos-14-x86_64-105'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Target arch: 'x86_64-arm64'
|
|
||||||
Features: ['Packaging', 'Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'MinimalStaticTests']
|
|
||||||
Configure arguments: '-static -nomake examples -release -no-framework -no-icu -qt-doubleconversion -no-feature-sql-psql'
|
|
||||||
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=-DCMAKE_BUILD_TYPE=Release -DFEATURE_gds=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DFEATURE_native_grpc=OFF',
|
|
||||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf'
|
|
||||||
]
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-14-minimal-static-tests-x86_64'
|
|
||||||
Template: 'qtci-macos-14-x86_64-105'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64-minimal-static-test'
|
|
||||||
-
|
|
||||||
Id: 'macos-14-minimal-static-tests-arm64'
|
|
||||||
Template: 'qtci-macos-14-arm-106'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64-minimal-static-test'
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'sles-15_sp5-minimal-static'
|
|
||||||
Template: 'qtci-linux-SLES-15_SP5-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
|
|
||||||
Configure arguments: '-nomake examples -static -no-sql-mysql'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'windows-11_23H2-minimal-static'
|
|
||||||
Template: 'qtci-windows-11_23H2-x86_64-53'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
|
|
||||||
Configure arguments: '-release -force-debug-info -static -nomake examples -qt-zlib'
|
|
||||||
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}}',
|
|
||||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
|
||||||
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'macos-minimal-static'
|
|
||||||
Template: 'qtci-macos-14-arm-106'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
|
|
||||||
Configure arguments: '-nomake examples -release -force-debug-info -static -no-framework'
|
|
||||||
@@ -1,82 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'android-arm64-on-macos'
|
|
||||||
Template: 'qtci-macos-13-x86_64-103'
|
|
||||||
Target os: 'Android_ANY'
|
|
||||||
Target arch: 'arm64'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
|
||||||
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis arm64-v8a',
|
|
||||||
'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=/usr/local -DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
|
||||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'android-armv7-on-windows'
|
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
|
||||||
Target os: 'Android_ANY'
|
|
||||||
Target arch: 'armv7'
|
|
||||||
Compiler: 'Mingw'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'windows-10_22h2-mingw13'
|
|
||||||
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'Path={{.Env.MINGW_PATH}}\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}} -DQT_DEPLOY_FFMPEG=TRUE -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'
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
|
||||||
Target os: 'Android_ANY'
|
|
||||||
Target arch: 'x86'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'rhel-8.10'
|
|
||||||
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
|
|
||||||
'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}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
|
||||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}',
|
|
||||||
'ANDROID_EMULATOR=emulator_x86_api_28'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'android-14-x86_64-on-linux'
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
|
||||||
Target os: 'Android_ANY'
|
|
||||||
Target arch: 'x86_64'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'rhel-8.10'
|
|
||||||
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
|
|
||||||
'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_64}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
|
||||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}',
|
|
||||||
'ANDROID_EMULATOR=emulator_x86_64_api_34'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'android-15-x86_64-on-linux'
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-50'
|
|
||||||
Target os: 'Android_ANY'
|
|
||||||
Target arch: 'x86_64'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'rhel-8.10'
|
|
||||||
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
|
|
||||||
'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_64}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
|
||||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}',
|
|
||||||
'ANDROID_EMULATOR=emulator_x86_64_api_35'
|
|
||||||
]
|
|
||||||
|
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
Version: 2
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'arm64'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'CentOS-8.1-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=arm64-v8a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'armv7'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'CentOS-8.1-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=armeabi-v7a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'x86'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'CentOS-8.1-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=x86 -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'x86_64'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'CentOS-8.1-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=x86_64 -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
Version: 2
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'arm64'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'macos-10.14-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=arm64-v8a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'armv7'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'macos-10.14-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=armeabi-v7a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'x86'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'macos-10.14-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=x86 -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'x86_64'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'macos-10.14-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=x86_64 -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
@@ -0,0 +1,50 @@
|
|||||||
|
Version: 2
|
||||||
|
Configurations:
|
||||||
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'arm64'
|
||||||
|
Compiler: 'Mingw'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'Windows10-Mingw8-x64-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'Path={{.Env.MINGW810}}\bin;{{.Env.Path}}',
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=arm64-v8a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DFEATURE_pkg_config=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'armv7'
|
||||||
|
Compiler: 'Mingw'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'Windows10-Mingw8-x64-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'Path={{.Env.MINGW810}}\bin;{{.Env.Path}}',
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=armeabi-v7a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DFEATURE_pkg_config=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'x86'
|
||||||
|
Compiler: 'Mingw'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'Windows10-Mingw8-x64-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'Path={{.Env.MINGW810}}\bin;{{.Env.Path}}',
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=x86 -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DFEATURE_pkg_config=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Target os: 'Android_ANY'
|
||||||
|
Target arch: 'x86_64'
|
||||||
|
Compiler: 'Mingw'
|
||||||
|
Target compiler: 'Clang'
|
||||||
|
Platform dependency: 'Windows10-Mingw8-x64-host'
|
||||||
|
Features: ['Packaging', 'Sccache', 'DisableTests']
|
||||||
|
Environment variables: [
|
||||||
|
'Path={{.Env.MINGW810}}\bin;{{.Env.Path}}',
|
||||||
|
'TARGET_CONFIGURE_ARGS=-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=x86_64 -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DFEATURE_pkg_config=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
|
||||||
|
'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'webassembly-linux-thread-asyncify'
|
|
||||||
Template: 'qtci-linux-openSUSE-15.5-x86_64-52'
|
|
||||||
Target os: 'WebAssembly'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Platform dependency: 'opensuse-15.5-developer-build'
|
|
||||||
Features: ['Sccache', 'DoNotRunTests', 'UseConfigure']
|
|
||||||
Environment variables: [
|
|
||||||
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
|
|
||||||
"TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -nomake examples -feature-thread \
|
|
||||||
-DQT_QMAKE_DEVICE_OPTIONS=\"QT_EMSCRIPTEN_ASYNCIFY=1\""
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'webassembly-windows'
|
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
|
||||||
Target os: 'WebAssembly'
|
|
||||||
Compiler: 'Mingw'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'windows-10_22h2-mingw13'
|
|
||||||
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'Path={{.Env.EMSDK_PATH}};{{.Env.MINGW_PATH}}\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',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_pkg_config=OFF -DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH={{.Env.Protobuf_ROOT_mingw}} -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR={{.Env.Protobuf_ROOT_mingw}}/include',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'webassembly-linux-thread'
|
|
||||||
Template: 'qtci-linux-openSUSE-15.5-x86_64-52'
|
|
||||||
Target os: 'WebAssembly'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Platform dependency: 'opensuse-15.5-developer-build'
|
|
||||||
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
Environment variables: [
|
|
||||||
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
|
|
||||||
'TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -nomake examples -feature-thread',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH=/usr/local -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
|
||||||
'TARGET_CMAKE_ARGS=-DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON'
|
|
||||||
]
|
|
||||||
@@ -1,12 +1,89 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Configurations:
|
Configurations:
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-22.04-license-check'
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
Compiler: 'MSVC2019'
|
||||||
Compiler: 'GCC'
|
Features: ['UseLegacyInstructions']
|
||||||
Features: ['TestOnly', 'LicenseCheckV2']
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -headersclean -force-debug-info -nomake tests -opengl dynamic -nomake examples -openssl -I %OPENSSL_INCLUDE_x64% -L %OPENSSL_LIB_x64% -no-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x64% -L %MYSQL_LIB_x64% -plugin-sql-psql -I %POSTGRESQL_INCLUDE_x64% -L %POSTGRESQL_LIB_x64% -qt-zlib'
|
||||||
-
|
-
|
||||||
Id: 'ubuntu-24.04-x64-license-check'
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['TestOnly', 'LicenseCheckV2']
|
Features: ['UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -force-debug-info -nomake tests -no-widgets -R . -openssl'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['UseLegacyInstructions', 'DisableTests']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -developer-build -nomake tests -no-gui -R . -openssl'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['OutOfSourceBuild', 'Documentation', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -developer-build -no-warnings-are-errors -nomake tests -R . -qtlibinfix TestInfix -qtnamespace TestNamespace -openssl'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-openSUSE-15.1-x86_64'
|
||||||
|
Target os: 'WebAssembly'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['DisableTests', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -developer-build -release -static -nomake tests -nomake examples -no-sql-mysql -no-pch -no-dbus -no-headersclean -no-ssl -no-warnings-are-errors -no-feature-thread -xplatform wasm-emscripten'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-SLES-15_SP2-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['DisableTests', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -developer-build -no-sql-mysql -no-pch -R . -openssl'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -headersclean -force-debug-info -separate-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -xcb -bundled-xcb-xinput -sysconfdir /etc/xdg -openssl -qt-pcre -qt-harfbuzz -R . QMAKE_LFLAGS_APP+=-s'
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /Users/qt/work/install -debug-and-release -release -headersclean -separate-debug-info -nomake tests -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -sysconfdir /Library/Preferences/Qt -I/usr/local/opt/openssl/include'
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['DisableTests', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /Users/qt/work/install -developer-build -release -no-pch -no-framework -qtnamespace TestNamespace -nomake tests -nomake examples -I/usr/local/opt/openssl/include'
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.14-x86_64'
|
||||||
|
Target os: 'IOS_ANY'
|
||||||
|
Target arch: 'multi'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['DisableTests', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /Users/qt/work/install -debug-and-release -nomake tests -no-icu -nomake examples -no-sql-mysql -no-sql-psql -plugin-sql-sqlite -static -xplatform macx-ios-clang'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Target os: 'QEMU'
|
||||||
|
Target arch: 'armv7'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['UseLegacyInstructions', 'InsignificantTests']
|
||||||
|
Environment variables: ['GST_PLUGIN_SCANNER=/opt/yocto-armv7/sysroots/armv7at2hf-neon-poky-linux-gnueabi/usr/libexec/gstreamer-1.0/gst-plugin-scanner', 'QT_QUICK_BACKEND=software']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -developer-build -release -nomake tests -nomake examples -no-xcb -R . -openssl -device linux-imx7-g++ -device-option CROSS_COMPILE=/opt/yocto-armv7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi- -device-option DISTRO_OPTS="hard-float boot2qt" -sysroot /opt/yocto-armv7/sysroots/armv7at2hf-neon-poky-linux-gnueabi -extprefix /home/qt/work/install -mysql_config /opt/yocto-armv7/sysroots/armv7at2hf-neon-poky-linux-gnueabi/usr/bin/mysql_config -psql_config /dev/null -tslib -no-feature-forkfd_pidfd -no-warnings-are-errors'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Target os: 'QEMU'
|
||||||
|
Target arch: 'arm64'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['UseLegacyInstructions', 'InsignificantTests']
|
||||||
|
Environment variables: ['GST_PLUGIN_SCANNER=/opt/yocto-arm64/sysroots/aarch64-poky-linux/usr/libexec/gstreamer-1.0/gst-plugin-scanner', 'QT_QUICK_BACKEND=software']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -developer-build -release -nomake tests -nomake examples -no-xcb -R . -openssl -device linux-generic-g++ -device-option CROSS_COMPILE=/opt/yocto-arm64/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux- -device-option DISTRO_OPTS=boot2qt -sysroot /opt/yocto-arm64/sysroots/aarch64-poky-linux -extprefix /home/qt/work/install -mysql_config /opt/yocto-arm64/sysroots/aarch64-poky-linux/usr/bin/mysql_config -psql_config /dev/null -tslib -no-feature-forkfd_pidfd -no-warnings-are-errors'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Target os: 'QEMU'
|
||||||
|
Target arch: 'mips64'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['DisableTests', 'UseLegacyInstructions']
|
||||||
|
Environment variables: ['QT_QUICK_BACKEND=software']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-xcb -R . -openssl -device linux-generic-g++ -device-option CROSS_COMPILE=/opt/yocto-mips64/sysroots/x86_64-pokysdk-linux/usr/bin/mips64-poky-linux/mips64-poky-linux- -device-option DISTRO_OPTS=boot2qt -sysroot /opt/yocto-mips64/sysroots/mips64r2-poky-linux -extprefix /home/qt/work/install -mysql_config /opt/yocto-mips64/sysroots/mips64r2-poky-linux/usr/bin/mysql_config -psql_config /dev/null -tslib -no-feature-forkfd_pidfd -no-warnings-are-errors'
|
||||||
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Compiler: 'Mingw'
|
||||||
|
Environment variables: ['PATH=C:\MINGW810\mingw64\bin;$PATH']
|
||||||
|
Features: ['DisableTests', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -release -force-debug-info -separate-debug-info -nomake tests -nomake examples -opengl dynamic -openssl -I %OPENSSL_INCLUDE_x64% -L %OPENSSL_LIB_x64% -no-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x64% -L %MYSQL_LIB_x64% -plugin-sql-psql -I %POSTGRESQL_INCLUDE_x64% -L %POSTGRESQL_LIB_x64% -platform win32-g++ QMAKE_LFLAGS_APP+=-s -qt-zlib'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['TestOnly', 'LicenseCheck', 'UseLegacyInstructions']
|
||||||
|
|||||||
@@ -1,4 +1,23 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Module only: True
|
Module only: True
|
||||||
Include: [cmake_platforms_static_release.yaml]
|
Configurations:
|
||||||
Configurations: []
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Compiler: 'MSVC2019'
|
||||||
|
Features: ['Packaging', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -force-debug-info -nomake tests -opengl dynamic -nomake examples -openssl -I %OPENSSL_INCLUDE_x64% -L %OPENSSL_LIB_x64% -no-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x64% -L %MYSQL_LIB_x64% -plugin-sql-psql -I %POSTGRESQL_INCLUDE_x64% -L %POSTGRESQL_LIB_x64% -static -no-icu'
|
||||||
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Compiler: 'MSVC2019'
|
||||||
|
Target arch: 'x86'
|
||||||
|
Features: ['Packaging', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -force-debug-info -nomake tests -nomake examples -opengl dynamic -openssl -I %OPENSSL_INCLUDE_x86% -L %OPENSSL_LIB_x86% -no-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x86% -L %MYSQL_LIB_x86% -plugin-sql-psql -I %POSTGRESQL_INCLUDE_x86% -L %POSTGRESQL_LIB_x86% -static -no-icu'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['Packaging', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -force-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -qt-xcb -sysconfdir /etc/xdg -qt-pcre -openssl -qt-harfbuzz QMAKE_LFLAGS_APP+=-s -static -no-icu'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['TestOnly', 'LicenseCheck', 'UseLegacyInstructions']
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: "integrity-arm64"
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target os: 'INTEGRITY'
|
|
||||||
Platform dependency: 'ubuntu-22.04'
|
|
||||||
Features: ['MinimalStaticTests', 'DoNotRunTests', 'VMSize16', 'UseConfigure']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-nomake examples -device integrity-armv8-SA8155P -no-feature-library -no-feature-printdialog -no-dbus -no-feature-gtk3 -no-feature-glib -no-feature-libudev -qt-harfbuzz -qt-pcre -no-sql-mysql -no-feature-brotli',
|
|
||||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE=/home/qt/integrity_toolchain/toolchain.cmake -DCMAKE_C_COMPILER=cxintarm64 -DCMAKE_CXX_COMPILER=cxintarm64 -DBUILD_qtdoc=OFF -DBUILD_qttranslations=OFF -DUNIX=ON --debug-trycompile',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_system_webp=OFF -DQT_FEATURE_timezone=OFF',
|
|
||||||
'INTEGRITY_DIR=/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/integrity',
|
|
||||||
'INTEGRITY_BSP=platform-sa8155', 'INTEGRITY_BUILD_TARGET=rel',
|
|
||||||
'QC_MULTIMEDIA_INC_DIR=/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/qc_bsp/include/amss/multimedia',
|
|
||||||
'GL_INC_DIR=/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/qc_bsp/AMSS/multimedia/graphics/include/public',
|
|
||||||
'GL_LIB_DIR=/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/qc_bsp/out/rel/libs/base:/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/qc_bsp/out/rel/libs/multimedia/display:/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/qc_bsp/out/rel/libs/multimedia/graphics:/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/qc_bsp/out/rel/libs/platform/:/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/qc_bsp/AMSS/multimedia/graphics/opengl/esx/build/integrity/prebuilt/',
|
|
||||||
'PATH=/home/qt/integrity_toolchain/hlos_dev_boot/apps/ghs_apps_proc/comp:$PATH',
|
|
||||||
]
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: "ios-tests-on-macos"
|
|
||||||
Template: 'qtci-macos-13-x86_64-103'
|
|
||||||
Target os: 'IOS_ANY'
|
|
||||||
Target arch: 'arm64'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease', 'MinimalStaticTests', 'UseConfigure']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang'
|
|
||||||
]
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'android-x86-developer-build-testrun-on-linux'
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
|
||||||
Target os: 'Android_ANY'
|
|
||||||
Target arch: 'x86'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: 'rhel-8.10'
|
|
||||||
Features: ['Packaging', 'Sccache', 'AndroidTestRun', 'UseConfigure']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-nomake examples -debug -developer-build -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
|
|
||||||
'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=',
|
|
||||||
'ANDROID_EMULATOR=emulator_x86_api_28']
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'android-9-multi-abi'
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
|
||||||
Target os: 'Android_ANY'
|
|
||||||
Target arch: 'multi'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Target compiler: 'Clang'
|
|
||||||
Platform dependency: [
|
|
||||||
'rhel-8.10',
|
|
||||||
'android-9-x86-on-linux',
|
|
||||||
'android-14-x86_64-on-linux'
|
|
||||||
]
|
|
||||||
Features: [
|
|
||||||
'Sccache',
|
|
||||||
'WarningsAreErrors',
|
|
||||||
'AndroidTestRun',
|
|
||||||
'MinimalAndroidMultiABITests',
|
|
||||||
'InstallDepsPerPlatformSubdir'
|
|
||||||
]
|
|
||||||
Environment variables: [
|
|
||||||
'QT_CI_ARTIFACT_ID_PATH_Android-host=QT_CI_ARTIFACT_ID_PATH_rhel-8.10',
|
|
||||||
'QT_CI_ARTIFACT_ID_PATH_Android-x86=QT_CI_ARTIFACT_ID_PATH_android-9-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'
|
|
||||||
]
|
|
||||||
@@ -1,154 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
|
|
||||||
# =========================================================================
|
|
||||||
# Packaging. Universal build with both x86_64 and arm64 architectures.
|
|
||||||
# =========================================================================
|
|
||||||
|
|
||||||
# Build on recent macOS version with latest Xcode
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-universal-on-x86_64'
|
|
||||||
Template: 'qtci-macos-14-x86_64-105'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Target arch: 'x86_64-arm64'
|
|
||||||
Features: ['Packaging', 'Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
|
||||||
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 -DINPUT_headersclean=ON -DQT_FEATURE_open62541_security=OFF',
|
|
||||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf'
|
|
||||||
]
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-universal-on-arm64'
|
|
||||||
Template: 'qtci-macos-14-arm-106'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Target arch: 'x86_64-arm64'
|
|
||||||
Features: ['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"',
|
|
||||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON',
|
|
||||||
]
|
|
||||||
|
|
||||||
# Test on all supported macOS versions (deployment targets)
|
|
||||||
|
|
||||||
# On x86_64
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-12-x86_64-tests'
|
|
||||||
Template: 'qtci-macos-12-x86_64-107'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
|
||||||
-
|
|
||||||
Id: 'macos-13-x86_64-tests'
|
|
||||||
Template: 'qtci-macos-13-x86_64-103'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
|
||||||
-
|
|
||||||
Id: 'macos-14-x86_64-tests'
|
|
||||||
Template: 'qtci-macos-14-x86_64-105'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
|
||||||
|
|
||||||
# And arm64
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-12-arm64-tests'
|
|
||||||
Template: 'qtci-macos-12-arm-102'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
|
||||||
-
|
|
||||||
Id: 'macos-13-arm64-tests'
|
|
||||||
Template: 'qtci-macos-13-arm-107'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
|
||||||
-
|
|
||||||
Id: 'macos-14-arm64-tests'
|
|
||||||
Template: 'qtci-macos-14-arm-106'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['TestOnly', 'Packaging']
|
|
||||||
Platform dependency: 'macos-universal-on-x86_64'
|
|
||||||
|
|
||||||
# Test the universal packaging built on arm64
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-12-arm-on-arm64-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-107'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly']
|
|
||||||
Platform dependency: 'macos-universal-on-arm64'
|
|
||||||
-
|
|
||||||
Id: 'macos-13-arm-on-x86_64-tests'
|
|
||||||
Template: 'qtci-macos-13-x86_64-103'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly']
|
|
||||||
Platform dependency: 'macos-universal-on-arm64'
|
|
||||||
-
|
|
||||||
Id: 'macos-14-arm-on-x86_64-tests'
|
|
||||||
Template: 'qtci-macos-14-x86_64-105'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly']
|
|
||||||
Platform dependency: 'macos-universal-on-arm64'
|
|
||||||
|
|
||||||
# =========================================================================
|
|
||||||
# Developer build. Single architecture builds.
|
|
||||||
# =========================================================================
|
|
||||||
|
|
||||||
# Build on recent macOS version with latest Xcode
|
|
||||||
|
|
||||||
-
|
|
||||||
Id: 'macos-14-x86_64-developer-build'
|
|
||||||
Template: 'qtci-macos-14-x86_64-105'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
|
|
||||||
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -no-pch -no-framework -qtnamespace TestNamespace -make examples'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
|
|
||||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'macos-14-arm64-developer-build'
|
|
||||||
Template: 'qtci-macos-14-arm-106'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
|
|
||||||
Configure arguments: '-developer-build -nomake examples -release -force-asserts -force-debug-info -separate-debug-info -framework'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
|
||||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
|
|
||||||
]
|
|
||||||
|
|
||||||
# Test on all supported macOS versions (deployment targets)
|
|
||||||
-
|
|
||||||
Id: 'macos-12-arm64-developer-build-tests'
|
|
||||||
Template: 'qtci-macos-12-arm-102'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['TestOnly']
|
|
||||||
Platform dependency: 'macos-14-arm64-developer-build'
|
|
||||||
-
|
|
||||||
Id: 'macos-13-arm64-developer-build-tests'
|
|
||||||
Template: 'qtci-macos-13-arm-107'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['TestOnly']
|
|
||||||
Platform dependency: 'macos-14-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'
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +1,43 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Module only: True
|
Module only: True
|
||||||
Include: [yocto.yaml]
|
Configurations:
|
||||||
Configurations: []
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET1'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET2'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET3'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET4'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET5'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET6'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET7'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET8'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET9'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'Yocto'
|
||||||
|
Target arch: 'TARGET10'
|
||||||
|
|||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [yocto.yaml]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Module only: True
|
Module only: True
|
||||||
Include: [yocto.yaml]
|
Include: [meta-boot2qt.yaml]
|
||||||
Configurations: []
|
Configurations: []
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'macos-14-arm64-developer-build'
|
|
||||||
Template: 'qtci-macos-14-arm64'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
|
|
||||||
Configure arguments: '-developer-build -release -force-debug-info -no-pch -no-framework -qtnamespace TestNamespace -make examples'
|
|
||||||
Environment variables: [
|
|
||||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
|
|
||||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}',
|
|
||||||
'Protobuf_ROOT=/usr/local/lib/cmake/protobuf',
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'macos-14-arm64-developer-build-tests'
|
|
||||||
Template: 'qtci-macos-14-arm64'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'TestOnly']
|
|
||||||
Platform dependency: 'macos-14-arm64-developer-build'
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Include: [
|
|
||||||
cmake_platforms.yaml: [
|
|
||||||
windows-10_22h2-msvc2019-developer-build
|
|
||||||
]
|
|
||||||
]
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'qnx-710-arm64-on-windows'
|
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
|
||||||
Target os: 'QNX_710'
|
|
||||||
Target arch: 'arm64'
|
|
||||||
Compiler: 'MSVC2019'
|
|
||||||
Target compiler: 'QCC'
|
|
||||||
Platform dependency: 'windows-10_22h2-msvc2019-developer-build'
|
|
||||||
Features: ['DisableTests', 'UseConfigure']
|
|
||||||
Environment variables: [
|
|
||||||
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -no-dbus -nomake examples -no-pch',
|
|
||||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QNX_710}}\qnx-toolchain-aarch64le.cmake -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON -G "Ninja"',
|
|
||||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON'
|
|
||||||
]
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Id: 'ubuntu-22.04-axivion'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Axivion', 'DisableTests', 'UseConfigure', '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'
|
|
||||||
]
|
|
||||||
@@ -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'
|
|
||||||
]
|
|
||||||
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
# QTQAINFRA-5404
|
|
||||||
-
|
|
||||||
Id: 'ubuntu-20.04-c++17'
|
|
||||||
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'UseConfigure']
|
|
||||||
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}} -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON'
|
|
||||||
]
|
|
||||||
@@ -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'
|
|
||||||
]
|
|
||||||
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
# cmake_platforms.yaml
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'Documentation', 'TestDocs', 'UseConfigure']
|
|
||||||
Configure arguments: '-make examples -developer-build -c++std c++20 -qtlibinfix TestInfix -qtnamespace TestNamespace'
|
|
||||||
-
|
|
||||||
Id: 'Ubuntu-22.04-xwayland-host'
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
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'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
# default.yaml
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['TestOnly', 'LicenseCheck', 'UseLegacyInstructions']
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [
|
|
||||||
cmake_platforms.yaml: [
|
|
||||||
"ubuntu-22.04"
|
|
||||||
],
|
|
||||||
cmake_platforms_qemu_vxworks.yaml: [
|
|
||||||
"vxworks-imx6"
|
|
||||||
]
|
|
||||||
]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Include: [
|
|
||||||
cmake_platforms.yaml: [
|
|
||||||
"ubuntu-22.04",
|
|
||||||
"ubuntu-22.04-documentation",
|
|
||||||
"ubuntu-22.04-documentation-x11-tests",
|
|
||||||
"windows-11_23H2-msvc2022-developer-build",
|
|
||||||
"ios-universal"
|
|
||||||
],
|
|
||||||
macos.yaml: [
|
|
||||||
"macos-14-arm64-developer-build",
|
|
||||||
"macos-14-arm64-developer-build-tests",
|
|
||||||
],
|
|
||||||
cmake_platforms_target_android.yaml: [
|
|
||||||
"android-arm64-on-macos"
|
|
||||||
],
|
|
||||||
cmake_platforms_qemu.yaml: [
|
|
||||||
"qemu-armv7-developer-build"
|
|
||||||
],
|
|
||||||
cmake_platforms_qemu_qnx710.yaml: [
|
|
||||||
"qnx-710-x86_64-developer-build-on-linux"
|
|
||||||
]
|
|
||||||
]
|
|
||||||
Configurations: []
|
|
||||||
@@ -3,7 +3,7 @@ Module only: True
|
|||||||
Include: [cmake_platforms.yaml]
|
Include: [cmake_platforms.yaml]
|
||||||
Configurations:
|
Configurations:
|
||||||
-
|
-
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
Template: 'qtci-linux-Ubuntu-18.04-x86_64'
|
||||||
Compiler: 'GCC'
|
Compiler: 'GCC'
|
||||||
Features: ['TestOnly', 'LicenseCheck']
|
Features: ['TestOnly', 'LicenseCheck']
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,28 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Module only: True
|
Module only: True
|
||||||
Include: [cmake_platforms_static_release.yaml]
|
Configurations:
|
||||||
Configurations: []
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Compiler: 'MSVC2015'
|
||||||
|
Target arch: 'x86'
|
||||||
|
Features: ['Packaging', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -nomake tests -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -force-debug-info -opengl dynamic -static -no-icu -nomake examples -openssl -I %OPENSSL_INCLUDE_x86% -L %OPENSSL_LIB_x86% -plugin-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x86% -L %MYSQL_LIB_x86%'
|
||||||
|
-
|
||||||
|
Template: 'qtci-windows-10-x86_64-52'
|
||||||
|
Compiler: 'MSVC2015'
|
||||||
|
Features: ['Packaging', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -nomake tests -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -force-debug-info -opengl dynamic -static -no-icu -nomake examples -openssl -I %OPENSSL_INCLUDE_x64% -L %OPENSSL_LIB_x64% -plugin-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x64% -L %MYSQL_LIB_x64%'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['Packaging', 'UseLegacyInstructions']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -force-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -qt-xcb -sysconfdir /etc/xdg -qt-pcre -openssl -qt-harfbuzz QMAKE_LFLAGS_APP+=-s -static -no-icu'
|
||||||
|
-
|
||||||
|
Template: 'qtci-macos-10.13-x86_64-2'
|
||||||
|
Compiler: 'Clang'
|
||||||
|
Features: ['Packaging']
|
||||||
|
Configure arguments: '-qmake -opensource -confirm-license -verbose -prefix /Users/qt/work/install -debug-and-release -release -nomake tests -nomake examples -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -sysconfdir /Library/Preferences/Qt -I/usr/local/opt/openssl/include -static -no-icu'
|
||||||
|
-
|
||||||
|
Template: 'qtci-linux-Ubuntu-20.04-x86_64-50'
|
||||||
|
Compiler: 'GCC'
|
||||||
|
Features: ['TestOnly', 'LicenseCheck', 'UseLegacyInstructions']
|
||||||
|
|||||||
@@ -1,23 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
|
||||||
Compiler: 'MSVC2019'
|
|
||||||
Features: ['DisableTests']
|
|
||||||
-
|
|
||||||
Template: 'qtci-macos-13-x86_64-103'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['DisableTests']
|
|
||||||
-
|
|
||||||
Template: 'qtci-linux-RHEL-9.2-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['DisableTests']
|
|
||||||
-
|
|
||||||
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['DisableTests']
|
|
||||||
-
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['TestOnly', 'LicenseCheck', 'UseLegacyInstructions']
|
|
||||||
@@ -1,61 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Module only: True
|
|
||||||
Configurations:
|
|
||||||
-
|
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease']
|
|
||||||
Configure arguments: ''
|
|
||||||
Environment variables: []
|
|
||||||
Environment script: ['%ProgramFiles%\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
|
|
||||||
-
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease']
|
|
||||||
Configure arguments: ''
|
|
||||||
Environment variables: []
|
|
||||||
-
|
|
||||||
Template: 'qtci-linux-Debian-11.6-aarch64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease']
|
|
||||||
Configure arguments: ''
|
|
||||||
Environment variables: []
|
|
||||||
-
|
|
||||||
Template: 'qtci-macos-14-arm-106'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease']
|
|
||||||
Configure arguments: ''
|
|
||||||
Environment variables: []
|
|
||||||
# without tests
|
|
||||||
-
|
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease', 'DisableTests']
|
|
||||||
Configure arguments: ''
|
|
||||||
Environment variables: []
|
|
||||||
Environment script: ['%ProgramFiles%\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
|
|
||||||
# oldest Qt version
|
|
||||||
-
|
|
||||||
Template: 'qtci-windows-10_22H2-x86_64-52'
|
|
||||||
Compiler: 'MSVC2022'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease', 'OldestQt']
|
|
||||||
Configure arguments: ''
|
|
||||||
Environment variables: []
|
|
||||||
Environment script: ['%ProgramFiles%\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
|
|
||||||
-
|
|
||||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease', 'OldestQt']
|
|
||||||
Configure arguments: ''
|
|
||||||
Environment variables: []
|
|
||||||
-
|
|
||||||
Template: 'qtci-macos-14-arm-106'
|
|
||||||
Compiler: 'Clang'
|
|
||||||
Features: ['Sccache', 'DebugAndRelease', 'OldestQt']
|
|
||||||
Configure arguments: ''
|
|
||||||
Environment variables: []
|
|
||||||
# license check
|
|
||||||
-
|
|
||||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['TestOnly', 'LicenseCheck']
|
|
||||||
@@ -1,6 +1,3 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Include: [
|
Include: [cmake_platforms.yaml]
|
||||||
cmake_platforms.yaml,
|
|
||||||
address_sanitizer_platforms.yaml
|
|
||||||
]
|
|
||||||
Configurations: []
|
Configurations: []
|
||||||
|
|||||||
@@ -1,6 +1,3 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Include: [
|
Include: [cmake_platforms.yaml]
|
||||||
cmake_platforms.yaml,
|
|
||||||
address_sanitizer_platforms.yaml
|
|
||||||
]
|
|
||||||
Configurations: []
|
Configurations: []
|
||||||
|
|||||||
@@ -1,5 +1,3 @@
|
|||||||
Version: 2
|
Version: 2
|
||||||
Include: [
|
Include: [cmake_platforms.yaml]
|
||||||
cmake_platforms.yaml
|
|
||||||
]
|
|
||||||
Configurations: []
|
Configurations: []
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Include: [
|
|
||||||
cmake_platforms.yaml,
|
|
||||||
address_sanitizer_platforms.yaml
|
|
||||||
]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
Version: 2
|
|
||||||
Include: [
|
|
||||||
cmake_platforms.yaml,
|
|
||||||
address_sanitizer_platforms.yaml
|
|
||||||
]
|
|
||||||
Configurations: []
|
|
||||||
@@ -1,25 +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'
|
|
||||||
]
|
|
||||||
-
|
|
||||||
Id: 'rhel-9.4-gcc12'
|
|
||||||
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
|
|
||||||
Compiler: 'GCC'
|
|
||||||
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests', 'InsignificantTests']
|
|
||||||
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'
|
|
||||||
]
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user