mirror of
git://code.qt.io/qt/qt5.git
synced 2025-12-24 17:06:14 +08:00
Compare commits
78 Commits
v6.9.0-bet
...
6.9.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a99aafab4c | ||
|
|
fb46e46207 | ||
|
|
cc4796d925 | ||
|
|
5e012b5f8f | ||
|
|
36728128d2 | ||
|
|
667e66be76 | ||
|
|
407fc722e8 | ||
|
|
436890850f | ||
|
|
0b585e72bd | ||
|
|
dcf0ce644b | ||
|
|
56c03772c7 | ||
|
|
a6b86bf58c | ||
|
|
43d9b6bee3 | ||
|
|
5457ea47e1 | ||
|
|
8f5f00b3d0 | ||
|
|
52a03b3046 | ||
|
|
fc3521a291 | ||
|
|
1a1d923c83 | ||
|
|
ea84dba313 | ||
|
|
144715f585 | ||
|
|
a1427fbd4c | ||
|
|
6d7ce3ee6e | ||
|
|
910069f72d | ||
|
|
7437ef45f9 | ||
|
|
6d5955d1a5 | ||
|
|
e0e3e4738c | ||
|
|
68b4ef5b4e | ||
|
|
5df9315b1f | ||
|
|
999e66fb4a | ||
|
|
f95d6b1fdb | ||
|
|
5393e187d3 | ||
|
|
139837ad9c | ||
|
|
ca26b90f26 | ||
|
|
6f01dea4d8 | ||
|
|
7a1b5e4e13 | ||
|
|
033cc2c181 | ||
|
|
faf67533c3 | ||
|
|
7d17c5a0a1 | ||
|
|
8605087d3a | ||
|
|
42e0846a18 | ||
|
|
bc51840128 | ||
|
|
16981acca4 | ||
|
|
fb187295fc | ||
|
|
a2620ffd1f | ||
|
|
4b1de19ea9 | ||
|
|
f2118bfad1 | ||
|
|
998814c9e3 | ||
|
|
b6f64b9ef0 | ||
|
|
3dff41a447 | ||
|
|
62d9b4200c | ||
|
|
6d85e52e64 | ||
|
|
bcd7a6168c | ||
|
|
e6386a1a18 | ||
|
|
c2fcaa2820 | ||
|
|
faa1c2ba7a | ||
|
|
ad3f5109f8 | ||
|
|
207ba9b605 | ||
|
|
b8778d4e63 | ||
|
|
a47c2b4ec7 | ||
|
|
7228be7f72 | ||
|
|
345aae01f5 | ||
|
|
6e5ad2a7e8 | ||
|
|
be88fababd | ||
|
|
626a22cc74 | ||
|
|
db2d504099 | ||
|
|
c03c22faae | ||
|
|
3b9008ca75 | ||
|
|
27be5c2f98 | ||
|
|
77a614d592 | ||
|
|
55ef82de88 | ||
|
|
1bb142175a | ||
|
|
27b0c6daff | ||
|
|
ffb6de83c9 | ||
|
|
e732ea40d7 | ||
|
|
4eac58fb7c | ||
|
|
1b6c7cfa17 | ||
|
|
3579a0c95c | ||
|
|
f537715537 |
86
.gitmodules
vendored
86
.gitmodules
vendored
@@ -1,40 +1,40 @@
|
||||
[submodule "qtbase"]
|
||||
path = qtbase
|
||||
url = ../qtbase.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = essential
|
||||
[submodule "qtsvg"]
|
||||
depends = qtbase
|
||||
path = qtsvg
|
||||
url = ../qtsvg.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtdeclarative"]
|
||||
depends = qtbase
|
||||
recommends = qtimageformats qtshadertools qtsvg qtlanguageserver
|
||||
path = qtdeclarative
|
||||
url = ../qtdeclarative.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = essential
|
||||
[submodule "qtactiveqt"]
|
||||
depends = qtbase
|
||||
path = qtactiveqt
|
||||
url = ../qtactiveqt.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtmultimedia"]
|
||||
depends = qtbase qtshadertools
|
||||
recommends = qtdeclarative qtquick3d
|
||||
path = qtmultimedia
|
||||
url = ../qtmultimedia.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qttools"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtactiveqt
|
||||
path = qttools
|
||||
url = ../qttools.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = essential
|
||||
[submodule "qtxmlpatterns"]
|
||||
depends = qtbase
|
||||
@@ -47,7 +47,7 @@
|
||||
depends = qttools
|
||||
path = qttranslations
|
||||
url = ../qttranslations.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = essential
|
||||
priority = 30
|
||||
[submodule "qtdoc"]
|
||||
@@ -55,7 +55,7 @@
|
||||
recommends = qtmultimedia qtshadertools qtwebengine
|
||||
path = qtdoc
|
||||
url = ../qtdoc.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = essential
|
||||
priority = 40
|
||||
[submodule "qtrepotools"]
|
||||
@@ -68,7 +68,7 @@
|
||||
depends = qtbase
|
||||
path = qtqa
|
||||
url = ../qtqa.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = essential
|
||||
priority = 50
|
||||
[submodule "qtlocation"]
|
||||
@@ -76,21 +76,21 @@
|
||||
recommends = qtdeclarative
|
||||
path = qtlocation
|
||||
url = ../qtlocation.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = preview
|
||||
[submodule "qtpositioning"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtserialport
|
||||
path = qtpositioning
|
||||
url = ../qtpositioning.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtsensors"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtsensors
|
||||
url = ../qtsensors.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtsystems"]
|
||||
depends = qtbase
|
||||
@@ -117,61 +117,61 @@
|
||||
recommends = qtdeclarative
|
||||
path = qtconnectivity
|
||||
url = ../qtconnectivity.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtwayland"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtwayland
|
||||
url = ../qtwayland.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qt3d"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtshadertools qtmultimedia
|
||||
path = qt3d
|
||||
url = ../qt3d.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = deprecated
|
||||
[submodule "qtimageformats"]
|
||||
depends = qtbase
|
||||
path = qtimageformats
|
||||
url = ../qtimageformats.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtserialbus"]
|
||||
depends = qtbase
|
||||
recommends = qtserialport
|
||||
path = qtserialbus
|
||||
url = ../qtserialbus.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtserialport"]
|
||||
depends = qtbase
|
||||
path = qtserialport
|
||||
url = ../qtserialport.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtwebsockets"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtwebsockets
|
||||
url = ../qtwebsockets.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtwebchannel"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtwebsockets
|
||||
path = qtwebchannel
|
||||
url = ../qtwebchannel.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtwebengine"]
|
||||
depends = qtdeclarative
|
||||
recommends = qtwebchannel qttools qtpositioning
|
||||
path = qtwebengine
|
||||
url = ../qtwebengine.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
priority = 10
|
||||
[submodule "qtcanvas3d"]
|
||||
@@ -185,28 +185,28 @@
|
||||
recommends = qtwebengine
|
||||
path = qtwebview
|
||||
url = ../qtwebview.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtcharts"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtmultimedia
|
||||
path = qtcharts
|
||||
url = ../qtcharts.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtdatavis3d"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative qtmultimedia
|
||||
path = qtdatavis3d
|
||||
url = ../qtdatavis3d.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtvirtualkeyboard"]
|
||||
depends = qtbase qtdeclarative qtsvg
|
||||
recommends = qtmultimedia
|
||||
path = qtvirtualkeyboard
|
||||
url = ../qtvirtualkeyboard.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtgamepad"]
|
||||
depends = qtbase
|
||||
@@ -219,27 +219,27 @@
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtscxml
|
||||
url = ../qtscxml.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtspeech"]
|
||||
depends = qtbase qtmultimedia
|
||||
recommends = qtdeclarative
|
||||
path = qtspeech
|
||||
url = ../qtspeech.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtnetworkauth"]
|
||||
depends = qtbase
|
||||
path = qtnetworkauth
|
||||
url = ../qtnetworkauth.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtremoteobjects"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtremoteobjects
|
||||
url = ../qtremoteobjects.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtwebglplugin"]
|
||||
depends = qtbase qtwebsockets
|
||||
@@ -252,88 +252,88 @@
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtlottie
|
||||
url = ../qtlottie.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtquicktimeline"]
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtquicktimeline
|
||||
url = ../qtquicktimeline
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtquick3d"]
|
||||
depends = qtbase qtdeclarative qtshadertools
|
||||
recommends = qtquicktimeline
|
||||
path = qtquick3d
|
||||
url = ../qtquick3d.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtshadertools"]
|
||||
depends = qtbase
|
||||
path = qtshadertools
|
||||
url = ../qtshadertools.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qt5compat"]
|
||||
depends = qtbase qtdeclarative
|
||||
path = qt5compat
|
||||
url = ../qt5compat.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = deprecated
|
||||
[submodule "qtcoap"]
|
||||
depends = qtbase
|
||||
path = qtcoap
|
||||
url = ../qtcoap.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtmqtt"]
|
||||
depends = qtbase qtdeclarative
|
||||
recommends = qtwebsockets
|
||||
path = qtmqtt
|
||||
url = ../qtmqtt.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtopcua"]
|
||||
depends = qtbase qtdeclarative
|
||||
path = qtopcua
|
||||
url = ../qtopcua.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtlanguageserver"]
|
||||
depends = qtbase
|
||||
path = qtlanguageserver
|
||||
url = ../qtlanguageserver.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = preview
|
||||
[submodule "qthttpserver"]
|
||||
depends = qtbase
|
||||
recommends = qtwebsockets
|
||||
path = qthttpserver
|
||||
url = ../qthttpserver.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtquick3dphysics"]
|
||||
depends = qtbase qtdeclarative qtquick3d qtshadertools
|
||||
path = qtquick3dphysics
|
||||
url = ../qtquick3dphysics.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtgrpc"]
|
||||
depends = qtbase
|
||||
recommends = qtdeclarative
|
||||
path = qtgrpc
|
||||
url = ../qtgrpc.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtquickeffectmaker"]
|
||||
depends = qtbase qtdeclarative qtshadertools
|
||||
recommends = qtquick3d
|
||||
path = qtquickeffectmaker
|
||||
url = ../qtquickeffectmaker.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
[submodule "qtgraphs"]
|
||||
depends = qtbase qtdeclarative qtquick3d
|
||||
path = qtgraphs
|
||||
url = ../qtgraphs.git
|
||||
branch = 6.9
|
||||
branch = 6.9.1
|
||||
status = addon
|
||||
|
||||
4
.gitreview
Normal file
4
.gitreview
Normal file
@@ -0,0 +1,4 @@
|
||||
[gerrit]
|
||||
host=codereview.qt-project.org
|
||||
project=qt/qt5
|
||||
defaultbranch=dev
|
||||
@@ -16,9 +16,13 @@ project(Qt
|
||||
VERSION "${QT_REPO_MODULE_VERSION}"
|
||||
DESCRIPTION "Qt Libraries"
|
||||
HOMEPAGE_URL "https://qt.io/"
|
||||
LANGUAGES CXX C ASM
|
||||
LANGUAGES CXX C
|
||||
)
|
||||
|
||||
if(UNIX AND NOT ANDROID)
|
||||
enable_language(ASM)
|
||||
endif()
|
||||
|
||||
qt_internal_top_level_setup_after_project()
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
||||
|
||||
9
LICENSES/BSD-3-Clause.txt
Normal file
9
LICENSES/BSD-3-Clause.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
Copyright (c) <year> <owner>.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
||||
2. 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.
|
||||
3. Neither the name of the copyright holder nor the names of its 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.
|
||||
451
LICENSES/GFDL-1.3-no-invariants-only.txt
Normal file
451
LICENSES/GFDL-1.3-no-invariants-only.txt
Normal file
@@ -0,0 +1,451 @@
|
||||
|
||||
GNU Free Documentation License
|
||||
Version 1.3, 3 November 2008
|
||||
|
||||
|
||||
Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
|
||||
<https://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
|
||||
https://www.gnu.org/licenses/.
|
||||
|
||||
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.
|
||||
39
REUSE.toml
Normal file
39
REUSE.toml
Normal file
@@ -0,0 +1,39 @@
|
||||
version = 1
|
||||
|
||||
[[annotations]]
|
||||
path = ["tests/**"]
|
||||
comment = "tests"
|
||||
precedence = "closest"
|
||||
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
|
||||
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GPL-3.0-only"
|
||||
|
||||
[[annotations]]
|
||||
path = ["coin/**", "cmake/**", "**.pro", "**.qrc", "**CMakeLists.txt", ".cmake.conf", "**.yaml",
|
||||
"coin/axivion/ci_config_linux.json",
|
||||
"**.cfg", "**.plist", "**.pri", "**.prf", "configure.json"]
|
||||
precedence = "closest"
|
||||
comment = "build system"
|
||||
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
|
||||
SPDX-License-Identifier = "BSD-3-Clause"
|
||||
|
||||
[[annotations]]
|
||||
path = [".tag", "**/.gitattributes", "**.gitignore",
|
||||
".gitmodules"]
|
||||
precedence = "closest"
|
||||
comment = "version control system. Licensed as build system"
|
||||
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
|
||||
SPDX-License-Identifier = "BSD-3-Clause"
|
||||
|
||||
[[annotations]]
|
||||
path = ["**README*", "CONTRIBUTING.md", ".commit-template", ".github/pull_request_template.md"]
|
||||
comment = "documentation"
|
||||
precedence = "closest"
|
||||
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
|
||||
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"
|
||||
|
||||
[[annotations]]
|
||||
path = ["**.toml", "licenseRule.json"]
|
||||
comment = "documentation"
|
||||
precedence = "override"
|
||||
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
|
||||
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"
|
||||
@@ -1,7 +1,5 @@
|
||||
# Copyright (C) 2016 Olivier Goffart <ogoffart@woboq.com>
|
||||
#
|
||||
# You may use this file under the terms of the 3-clause BSD license.
|
||||
# See the file LICENSE from this package for details.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
# This is the clang-format configuration style to be used by Qt,
|
||||
# based on the rules from https://wiki.qt.io/Qt_Coding_Style and
|
||||
|
||||
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"
|
||||
}
|
||||
@@ -8,7 +8,6 @@ macro(qt_ir_include_all_helpers)
|
||||
include(QtIROptionsHelpers)
|
||||
include(QtIRParsingHelpers)
|
||||
include(QtIRProcessHelpers)
|
||||
include(QtIRTestHelpers)
|
||||
include(QtTopLevelHelpers)
|
||||
endmacro()
|
||||
|
||||
|
||||
@@ -7,7 +7,6 @@ cmake_minimum_required(VERSION 3.16)
|
||||
macro(qt_ir_setup_include_paths)
|
||||
list(APPEND CMAKE_MODULE_PATH
|
||||
"${CMAKE_CURRENT_LIST_DIR}"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/3rdparty/cmake"
|
||||
)
|
||||
include(QtIRHelpers)
|
||||
endmacro()
|
||||
|
||||
@@ -7,7 +7,6 @@ cmake_minimum_required(VERSION 3.16)
|
||||
macro(qt_tl_setup_include_paths)
|
||||
list(APPEND CMAKE_MODULE_PATH
|
||||
"${CMAKE_CURRENT_LIST_DIR}"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/3rdparty/cmake"
|
||||
)
|
||||
include(QtTopLevelHelpers)
|
||||
endmacro()
|
||||
|
||||
@@ -4,7 +4,7 @@ Configurations:
|
||||
Id: 'opensuse-15.6-host-asan'
|
||||
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'WarningsAreErrors', 'UseConfigure', 'UseAddressSanitizer']
|
||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure', 'UseAddressSanitizer']
|
||||
Configure arguments: '-nomake examples -developer-build'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
|
||||
|
||||
@@ -30,13 +30,13 @@ Configurations:
|
||||
Id: 'ubuntu-22.04-developer-build-x11-tests'
|
||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'TestOnly']
|
||||
Features: ['Sccache', 'TestOnly']
|
||||
Platform dependency: 'ubuntu-22.04-developer-build'
|
||||
-
|
||||
Id: 'ubuntu-22.04-x11-tests'
|
||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'TestOnly']
|
||||
Features: ['Sccache', 'TestOnly']
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
# Build on Ubuntu 24.04 ARM64 Wayland and test on offscreen and Wayland later
|
||||
-
|
||||
@@ -65,7 +65,7 @@ Configurations:
|
||||
Id: 'ubuntu-24.04-arm64-offscreen-tests'
|
||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'TestOnly']
|
||||
Features: ['TestOnly']
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
|
||||
'QT_QPA_OFFSCREEN_NO_GLX=1',
|
||||
@@ -99,19 +99,19 @@ Configurations:
|
||||
Id: 'ubuntu-24.04-x64-developer-build-x11-tests'
|
||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
|
||||
Platform dependency: 'ubuntu-24.04-x64-developer-build'
|
||||
-
|
||||
Id: 'ubuntu-24.04-x64-x11-tests'
|
||||
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['Sccache', 'TestOnly']
|
||||
Platform dependency: 'ubuntu-24.04-x64'
|
||||
-
|
||||
Id: 'opensuse-15.6-developer-build'
|
||||
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'WarningsAreErrors', 'UseConfigure']
|
||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure']
|
||||
Configure arguments: '-nomake examples -developer-build'
|
||||
Environment variables: [
|
||||
'PATH={{.Env.CMAKE_MIN_SUPPORTED_BIN_PATH}}:{{.Env.PATH}}',
|
||||
@@ -120,7 +120,7 @@ Configurations:
|
||||
]
|
||||
-
|
||||
Id: 'sles-15_sp5-static'
|
||||
Template: 'qtci-linux-SLES-15_SP5-x86_64-50'
|
||||
Template: 'qtci-linux-SLES-15_SP5-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Sccache', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Configure arguments: '-nomake examples -static -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer'
|
||||
@@ -142,7 +142,7 @@ Configurations:
|
||||
Id: 'windows-10_22h2-msvc2022'
|
||||
Template: 'qtci-windows-10_22H2-x86_64-53'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['PinCores', 'Sccache', "DebugAndRelease", 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
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}}',
|
||||
@@ -154,7 +154,7 @@ Configurations:
|
||||
Id: 'windows-11_23H2-msvc2022'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-54'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['PinCores', 'Sccache', "DebugAndRelease", 'UseConfigure', 'Packaging', 'GenerateSBOM', 'VerifySBOM']
|
||||
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}}\..',
|
||||
@@ -166,7 +166,7 @@ Configurations:
|
||||
Id: 'windows-11_22h2-arm64-msvc2022'
|
||||
Template: 'qtci-windows-11_22H2-aarch64-55'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['PinCores', 'Packaging', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Features: ['Packaging', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -no-opengl -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..',
|
||||
@@ -193,7 +193,7 @@ Configurations:
|
||||
Id: 'windows-11_23H2-msvc2022-developer-build'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-54'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['PinCores', 'Sccache', 'DebugAndRelease', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
|
||||
Features: ['Sccache', 'DebugAndRelease', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
|
||||
Configure arguments: '-debug-and-release -force-asserts -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}}',
|
||||
@@ -205,7 +205,7 @@ Configurations:
|
||||
Id: 'rhel-8.10'
|
||||
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Packaging', 'Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM']
|
||||
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}}',
|
||||
@@ -215,7 +215,7 @@ Configurations:
|
||||
Id: 'rhel-9.4'
|
||||
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM']
|
||||
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',
|
||||
@@ -238,7 +238,7 @@ Configurations:
|
||||
Id: 'windows-10_22h2-mingw13'
|
||||
Template: 'qtci-windows-10_22H2-x86_64-53'
|
||||
Compiler: 'Mingw'
|
||||
Features: ['PinCores', 'Packaging', 'Sccache', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Configure arguments: '-release -force-debug-info -separate-debug-info -nomake examples'
|
||||
Environment variables: [
|
||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
@@ -251,7 +251,7 @@ Configurations:
|
||||
Id: 'windows-11_23H2-llvm'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-54'
|
||||
Compiler: 'Clang'
|
||||
Features: ['PinCores', 'Packaging','Sccache', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
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}}',
|
||||
@@ -264,7 +264,7 @@ Configurations:
|
||||
Id: 'windows-11_23H2-mingw13-developer-build'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-54'
|
||||
Compiler: 'Mingw'
|
||||
Features: ['PinCores', 'Sccache', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
|
||||
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
|
||||
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -separate-debug-info -make examples'
|
||||
Environment variables: [
|
||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
@@ -299,7 +299,19 @@ Configurations:
|
||||
'COIN_EXTRA_DEBIAN_REPO=deb http://archive.ubuntu.com/ubuntu/ jammy main universe multiverse',
|
||||
'COIN_SKIP_DEBIAN_MODULES=qt5 qtqa qtactiveqt qtdoc qtwebengine qtwebview',
|
||||
]
|
||||
|
||||
-
|
||||
Id: 'bookworm-gles-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.9_gles',
|
||||
'COIN_TARGET_DIST=tqtc-bookworm',
|
||||
'COIN_EXTRA_DEBIAN_PACKAGES={{.Env.HOME}}/debian_packages/',
|
||||
'COIN_SBUILD_CHROOT=stable-arm64-sbuild',
|
||||
'COIN_EXTRA_DEBIAN_REPO=deb http://deb.debian.org/debian/ bookworm main',
|
||||
'COIN_SKIP_DEBIAN_MODULES=qt5 qtqa qtactiveqt qtdoc qtwebengine qtwebview',
|
||||
]
|
||||
-
|
||||
# This configuration runs for every submodule, using externally
|
||||
# built qdoc and qattributionscanner binaries, to ensure that no
|
||||
@@ -309,6 +321,6 @@ Configurations:
|
||||
Id: 'documentation-warnings'
|
||||
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'TestOnly', 'TestDocs', 'DoNotRunTestsButCreateTestWorkItem', 'DocsGenerationV2']
|
||||
Features: ['Sccache', 'TestOnly', 'TestDocs', 'DoNotRunTestsButCreateTestWorkItem', 'DocsGenerationV2']
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ Configurations:
|
||||
Target arch: 'armv7'
|
||||
Compiler: 'GCC'
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
Features: ['PinCores', 'Sccache', 'UseConfigure', 'InsignificantTests', 'StandaloneExamples']
|
||||
Features: ['Sccache', 'UseConfigure', 'InsignificantTests', 'StandaloneExamples']
|
||||
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_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARMV7_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
|
||||
@@ -24,7 +24,7 @@ Configurations:
|
||||
Target arch: 'arm64'
|
||||
Compiler: 'GCC'
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
Features: ['PinCores', 'Sccache', 'UseConfigure', 'InsignificantTests']
|
||||
Features: ['Sccache', 'UseConfigure', 'InsignificantTests']
|
||||
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_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARM64_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
|
||||
|
||||
@@ -8,13 +8,14 @@ Configurations:
|
||||
Compiler: 'GCC'
|
||||
Target compiler: 'QCC'
|
||||
Platform dependency: 'ubuntu-22.04'
|
||||
Features: ['PinCores', 'Packaging', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
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',
|
||||
'QNX_QEMU={{.Env.QNX_710_QEMU}}',
|
||||
]
|
||||
-
|
||||
Id: 'qnx-710-arm64-on-linux'
|
||||
|
||||
@@ -8,7 +8,7 @@ Configurations:
|
||||
Compiler: 'Clang'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'vxworks-imx6-buildtest'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Environment variables: [
|
||||
'WIND_CC_SYSROOT=/opt/fsl_imx6_2_0_6_2_VSB',
|
||||
'VXWORKS_TEST_LIBS_PATH=/opt/fsl_imx6_2_0_6_2_VSB/usr/lib/common;/opt/fsl_imx6_2_0_6_2_VSB/usr/root/llvm/bin;/opt/fsl_imx6_2_0_6_2_VSB/usr/3pp/develop/usr/lib;/home/qt/work/install/target/lib',
|
||||
@@ -23,7 +23,7 @@ Configurations:
|
||||
Compiler: 'Clang'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'vxworks-x86_64-buildtest'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Environment variables: [
|
||||
'WIND_CC_SYSROOT=/opt/itl_generic_skylake_VSB',
|
||||
'VXWORKS_TEST_LIBS_PATH=/opt/itl_generic_skylake_VSB/usr/lib/common;/opt/itl_generic_skylake_VSB/usr/root/llvm/bin;/opt/itl_generic_skylake_VSB/usr/3pp/develop/usr/lib;/home/qt/work/install/target/lib',
|
||||
|
||||
@@ -53,9 +53,8 @@ Configurations:
|
||||
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}}',
|
||||
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -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'
|
||||
]
|
||||
|
||||
-
|
||||
|
||||
@@ -2,9 +2,9 @@ Version: 2
|
||||
Configurations:
|
||||
-
|
||||
Id: 'sles-15_sp5-minimal-static'
|
||||
Template: 'qtci-linux-SLES-15_SP5-x86_64-50'
|
||||
Template: 'qtci-linux-SLES-15_SP5-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'MinimalStaticTests', 'UseConfigure']
|
||||
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
|
||||
Configure arguments: '-nomake examples -static -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}'
|
||||
@@ -13,7 +13,7 @@ Configurations:
|
||||
Id: 'sles-15_sp6-minimal-static'
|
||||
Template: 'qtci-linux-SLES-15_SP6-x86_64-51'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'MinimalStaticTests', 'UseConfigure', 'InsignificantTests']
|
||||
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure', 'InsignificantTests']
|
||||
Configure arguments: '-nomake examples -static -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}'
|
||||
@@ -22,7 +22,7 @@ Configurations:
|
||||
Id: 'windows-11_23H2-minimal-static'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-54'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['PinCores', 'Sccache', 'MinimalStaticTests', 'UseConfigure']
|
||||
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
|
||||
Configure arguments: '-release -force-debug-info -static -nomake examples -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\..',
|
||||
@@ -34,5 +34,5 @@ Configurations:
|
||||
Id: 'macos-minimal-static'
|
||||
Template: 'qtci-macos-14-arm-106'
|
||||
Compiler: 'Clang'
|
||||
Features: ['PinCores', 'Sccache', 'MinimalStaticTests', 'UseConfigure']
|
||||
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -static -no-framework'
|
||||
|
||||
@@ -39,7 +39,7 @@ Configurations:
|
||||
Compiler: 'GCC'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'rhel-8.10'
|
||||
Features: ['PinCores', 'Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
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',
|
||||
@@ -47,22 +47,6 @@ Configurations:
|
||||
'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: ['PinCores', '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-51'
|
||||
@@ -71,7 +55,7 @@ Configurations:
|
||||
Compiler: 'GCC'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'rhel-8.10'
|
||||
Features: ['PinCores', 'Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests']
|
||||
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',
|
||||
|
||||
@@ -6,11 +6,12 @@ Configurations:
|
||||
Target os: 'WebAssembly'
|
||||
Compiler: 'GCC'
|
||||
Platform dependency: 'opensuse-15.6-developer-build'
|
||||
Features: ['Sccache', 'DoNotRunTests', 'UseConfigure']
|
||||
Features: ['DoNotRunTests', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
|
||||
"TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -nomake examples -feature-thread \
|
||||
-feature-exceptions -DQT_QMAKE_DEVICE_OPTIONS=\"QT_EMSCRIPTEN_ASYNCIFY=1\""
|
||||
-feature-exceptions -DQT_QMAKE_DEVICE_OPTIONS=\"QT_EMSCRIPTEN_ASYNCIFY=1\"",
|
||||
'HEADLESS_CHROME_FOR_TESTING=true'
|
||||
]
|
||||
-
|
||||
Id: 'webassembly-windows'
|
||||
@@ -19,7 +20,7 @@ Configurations:
|
||||
Compiler: 'Mingw'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'windows-10_22h2-mingw13'
|
||||
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Features: ['Packaging','DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Environment variables: [
|
||||
'Path={{.Env.EMSDK_PATH}};{{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
|
||||
@@ -33,7 +34,7 @@ Configurations:
|
||||
Target os: 'WebAssembly'
|
||||
Compiler: 'GCC'
|
||||
Platform dependency: 'opensuse-15.6-developer-build'
|
||||
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Features: ['Packaging', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Environment variables: [
|
||||
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
|
||||
'TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -nomake examples -feature-thread',
|
||||
@@ -46,7 +47,7 @@ Configurations:
|
||||
Target os: 'WebAssembly'
|
||||
Compiler: 'GCC'
|
||||
Platform dependency: 'opensuse-15.6-developer-build'
|
||||
Features: ['Sccache', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Features: ['DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
|
||||
Environment variables: [
|
||||
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
|
||||
'TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -no-feature-thread -nomake tests -nomake examples -shared',
|
||||
|
||||
@@ -8,7 +8,7 @@ Configurations:
|
||||
Compiler: 'Clang'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'macos-universal-on-x86_64'
|
||||
Features: ['PinCores', 'Sccache', 'DebugAndRelease', 'MinimalStaticTests', 'UseConfigure']
|
||||
Features: ['Sccache', 'DebugAndRelease', 'MinimalStaticTests', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang'
|
||||
]
|
||||
|
||||
@@ -10,10 +10,9 @@ Configurations:
|
||||
Platform dependency: [
|
||||
'rhel-8.10',
|
||||
'android-9-x86-on-linux',
|
||||
'android-14-x86_64-on-linux'
|
||||
'android-15-x86_64-on-linux'
|
||||
]
|
||||
Features: [
|
||||
'PinCores',
|
||||
'Sccache',
|
||||
'WarningsAreErrors',
|
||||
'AndroidTestRun',
|
||||
@@ -23,7 +22,7 @@ Configurations:
|
||||
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',
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-x86_64=QT_CI_ARTIFACT_ID_PATH_android-15-x86_64-on-linux',
|
||||
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_ANDROID_ABIS="x86;x86_64"',
|
||||
'ANDROID_EMULATOR=emulator_x86_api_28'
|
||||
]
|
||||
|
||||
@@ -9,15 +9,14 @@ Configurations:
|
||||
|
||||
-
|
||||
Id: 'macos-universal-on-x86_64'
|
||||
Template: 'qtci-macos-14-x86_64-105'
|
||||
Template: 'qtci-macos-15-x86_64-103'
|
||||
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}}',
|
||||
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -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'
|
||||
]
|
||||
|
||||
-
|
||||
@@ -29,7 +28,6 @@ Configurations:
|
||||
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',
|
||||
]
|
||||
|
||||
@@ -53,7 +51,7 @@ Configurations:
|
||||
Id: 'macos-15-x86_64-tests'
|
||||
Template: 'qtci-macos-15-x86_64-103'
|
||||
Compiler: 'Clang'
|
||||
Features: ['Sccache', 'TestOnly', 'Packaging', 'InsignificantTests']
|
||||
Features: ['Sccache', 'TestOnly', 'Packaging']
|
||||
Platform dependency: 'macos-universal-on-x86_64'
|
||||
|
||||
# And arm64
|
||||
@@ -74,7 +72,7 @@ Configurations:
|
||||
Id: 'macos-15-arm64-tests'
|
||||
Template: 'qtci-macos-15-arm-104'
|
||||
Compiler: 'Clang'
|
||||
Features: ['TestOnly', 'Packaging', 'InsignificantTests']
|
||||
Features: ['TestOnly', 'Packaging']
|
||||
Platform dependency: 'macos-universal-on-x86_64'
|
||||
|
||||
# Test the universal packaging built on arm64
|
||||
@@ -119,7 +117,6 @@ Configurations:
|
||||
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'
|
||||
@@ -129,7 +126,6 @@ Configurations:
|
||||
Configure arguments: '-developer-build -nomake examples -debug -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',
|
||||
]
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml: [
|
||||
windows-10_22h2-msvc2019-developer-build
|
||||
windows-10_22h2-mingw13
|
||||
]
|
||||
]
|
||||
Configurations:
|
||||
@@ -10,12 +10,13 @@ Configurations:
|
||||
Template: 'qtci-windows-10_22H2-x86_64-53'
|
||||
Target os: 'QNX_710'
|
||||
Target arch: 'arm64'
|
||||
Compiler: 'MSVC2019'
|
||||
Compiler: 'Mingw'
|
||||
Target compiler: 'QCC'
|
||||
Platform dependency: 'windows-10_22h2-msvc2019-developer-build'
|
||||
Platform dependency: 'windows-10_22h2-mingw13'
|
||||
Features: ['DisableTests', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
|
||||
'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'
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QNX_710}}\qnx-toolchain-aarch64le.cmake -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON -DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH={{.Env.Protobuf_ROOT_mingw}} -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR={{.Env.Protobuf_ROOT_mingw}}/include'
|
||||
]
|
||||
|
||||
@@ -53,6 +53,5 @@ Configurations:
|
||||
Configure arguments: '-make examples -debug -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 -DQT_UNITY_BUILD=ON',
|
||||
]
|
||||
|
||||
@@ -9,7 +9,7 @@ Include: [
|
||||
"ios-universal"
|
||||
],
|
||||
macos.yaml: [
|
||||
"macos-14-arm64-developer-build",
|
||||
"macos-arm64-developer-build",
|
||||
"macos-14-arm64-developer-build-tests",
|
||||
],
|
||||
cmake_platforms_target_android.yaml: [
|
||||
|
||||
@@ -2,7 +2,7 @@ Version: 2
|
||||
Module only: True
|
||||
Configurations:
|
||||
-
|
||||
Template: 'qtci-windows-10_22H2-x86_64-53'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-54'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['Sccache', 'DebugAndRelease']
|
||||
Configure arguments: ''
|
||||
@@ -15,7 +15,7 @@ Configurations:
|
||||
Configure arguments: ''
|
||||
Environment variables: []
|
||||
-
|
||||
Template: 'qtci-linux-Debian-11.6-aarch64-50'
|
||||
Template: 'qtci-linux-Ubuntu-24.04-aarch64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Sccache', 'DebugAndRelease']
|
||||
Configure arguments: ''
|
||||
@@ -28,7 +28,7 @@ Configurations:
|
||||
Environment variables: []
|
||||
# without tests
|
||||
-
|
||||
Template: 'qtci-windows-10_22H2-x86_64-53'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-54'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['Sccache', 'DebugAndRelease', 'DisableTests']
|
||||
Configure arguments: ''
|
||||
@@ -36,7 +36,7 @@ Configurations:
|
||||
Environment script: ['%ProgramFiles%\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
|
||||
# oldest Qt version
|
||||
-
|
||||
Template: 'qtci-windows-10_22H2-x86_64-53'
|
||||
Template: 'qtci-windows-11_23H2-x86_64-54'
|
||||
Compiler: 'MSVC2022'
|
||||
Features: ['Sccache', 'DebugAndRelease', 'OldestQt']
|
||||
Configure arguments: ''
|
||||
|
||||
@@ -17,4 +17,4 @@ Overrides:
|
||||
# Make VxWorks tests insignificant.
|
||||
-
|
||||
Id: 'vxworks-x86_64-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
|
||||
@@ -10,7 +10,7 @@ Overrides:
|
||||
# Make VxWorks tests insignificant.
|
||||
-
|
||||
Id: 'vxworks-imx6-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
-
|
||||
Id: 'vxworks-x86_64-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
|
||||
@@ -14,7 +14,7 @@ Overrides:
|
||||
# Make VxWorks tests insignificant.
|
||||
-
|
||||
Id: 'vxworks-imx6-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
-
|
||||
Id: 'vxworks-x86_64-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
|
||||
@@ -11,4 +11,4 @@ Overrides:
|
||||
# Make VxWorks x86_64 tests insignificant.
|
||||
-
|
||||
Id: 'vxworks-x86_64-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
|
||||
@@ -11,4 +11,4 @@ Overrides:
|
||||
# Make VxWorks x86_64 tests insignificant.
|
||||
-
|
||||
Id: 'vxworks-x86_64-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
|
||||
@@ -10,7 +10,7 @@ Overrides:
|
||||
# Make VxWorks tests insignificant.
|
||||
-
|
||||
Id: 'vxworks-imx6-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
-
|
||||
Id: 'vxworks-x86_64-tests'
|
||||
Features: ['PinCores', 'VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml: [
|
||||
"documentation-warnings",
|
||||
"rhel-8.10",
|
||||
'windows-10_22h2-mingw13',
|
||||
'ubuntu-22.04-developer-build',
|
||||
@@ -13,7 +14,7 @@ Include: [
|
||||
'android-arm64-on-macos',
|
||||
'android-armv7-on-windows',
|
||||
'android-9-x86-on-linux',
|
||||
'android-14-x86_64-on-linux'
|
||||
'android-15-x86_64-on-linux'
|
||||
],
|
||||
offline_documentation.yaml
|
||||
]
|
||||
|
||||
@@ -5,5 +5,5 @@ Configurations:
|
||||
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
|
||||
Target os: 'WebAssembly'
|
||||
Compiler: 'GCC'
|
||||
Features: ['PinCores', 'Sccache', 'TestOnly']
|
||||
Features: ['Sccache', 'TestOnly']
|
||||
Platform dependency: 'webassembly-linux-thread-asyncify'
|
||||
|
||||
@@ -4,12 +4,12 @@ plugins {
|
||||
|
||||
android {
|
||||
namespace 'com.example.gradle_project'
|
||||
compileSdk 34
|
||||
compileSdk 35
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.example.gradle_project"
|
||||
minSdk 28
|
||||
targetSdk 34
|
||||
targetSdk 35
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[versions]
|
||||
agp = "8.6.0"
|
||||
agp = "8.8.0"
|
||||
core = "1.13.1"
|
||||
appcompat = "1.6.1"
|
||||
material = "1.11.0"
|
||||
@@ -15,4 +15,3 @@ constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayo
|
||||
androidApplication = { id = "com.android.application", version.ref = "agp" }
|
||||
|
||||
[bundles]
|
||||
|
||||
|
||||
@@ -24,20 +24,15 @@ basePath="http://ci-files01-hki.ci.qt.io/input/android"
|
||||
|
||||
toolsVersion="2.1"
|
||||
toolsFile="commandlinetools-linux-6609375_latest.zip"
|
||||
ndkVersionLatest="r26b"
|
||||
ndkVersionLatest="r27c"
|
||||
ndkVersionDefault=$ndkVersionLatest
|
||||
sdkBuildToolsVersion="34.0.0"
|
||||
sdkApiLevel="android-34"
|
||||
sdkBuildToolsVersion="35.0.1"
|
||||
sdkApiLevel="android-35"
|
||||
|
||||
toolsSha1="9172381ff070ee2a416723c1989770cf4b0d1076"
|
||||
ndkSha1Latest="fdf33d9f6c1b3f16e5459d53a82c7d2201edbcc4"
|
||||
ndkSha1Latest="090e8083a715fdb1a3e402d0763c388abb03fb4e"
|
||||
ndkSha1Default=$ndkSha1Latest
|
||||
|
||||
# Android 14 avd zip
|
||||
android14SystemZipName="android14system_UE1A_230829_036.tar.gz"
|
||||
android14SystemZipSha="ede80c6901e8fad1895c97a86542b8e072bb1ee5"
|
||||
android14SystemPath="$basePath/$android14SystemZipName"
|
||||
|
||||
# Android Automotive max SDK level image
|
||||
sdkApiLevelAutomotiveMax="android-34"
|
||||
androidAutomotiveMaxUrl="$basePath/${sdkApiLevelAutomotiveMax}_automotive.tar.gz"
|
||||
@@ -162,13 +157,20 @@ echo "Unzipping the Android 9 to $minVersionDestination"
|
||||
sudo unzip -o -q "$minVersionFilePath" -d "$minVersionDestination"
|
||||
rm "$minVersionFilePath"
|
||||
|
||||
echo "y" | ./sdkmanager --install "system-images;android-35;google_apis;x86_64" \
|
||||
| eval "$sdkmanager_no_progress_bar_cmd"
|
||||
echo "Download and unzip Android 15 System Image"
|
||||
maxVersionFileName="x86_64-35_r08.zip"
|
||||
maxVersionDestination="$sdkTargetFolder/system-images/android-35/google_apis/"
|
||||
maxVersionFilePath="$maxVersionDestination/$maxVersionFileName"
|
||||
maxVersionCiUrl="$basePath/system-images/google_apis/$maxVersionFileName"
|
||||
maxVersionUrl="https://dl.google.com/android/repository/sys-img/google_apis/$maxVersionFileName"
|
||||
maxVersionSha1="d79169884cabc6680cb29d32c2112ad46c858c1b"
|
||||
|
||||
echo "Extract stored Android 14 Beta $android14SystemZipName"
|
||||
DownloadURL "$android14SystemPath" "$android14SystemPath" "$android14SystemZipSha" \
|
||||
"/tmp/$android14SystemZipName"
|
||||
sudo tar -xzf "/tmp/$android14SystemZipName" -C "$sdkTargetFolder/system-images"
|
||||
mkdir -p "$maxVersionDestination"
|
||||
DownloadURL "$maxVersionCiUrl" "$maxVersionUrl" "$maxVersionSha1" "$maxVersionFilePath"
|
||||
|
||||
echo "Unzipping the Android 15 to $maxVersionDestination"
|
||||
sudo unzip -o -q "$maxVersionFilePath" -d "$maxVersionDestination"
|
||||
rm "$maxVersionFilePath"
|
||||
|
||||
echo "Checking the contents of Android SDK again..."
|
||||
ls -l "$sdkTargetFolder"
|
||||
@@ -176,9 +178,6 @@ ls -l "$sdkTargetFolder"
|
||||
echo "no" | ./avdmanager create avd -n emulator_x86_api_28 -c 2048M -f \
|
||||
-k "system-images;android-28;google_apis;x86"
|
||||
|
||||
echo "no" | ./avdmanager create avd -n emulator_x86_64_api_34 -c 2048M -f \
|
||||
-k "system-images;android-34;google_apis;x86_64"
|
||||
|
||||
echo "no" | ./avdmanager create avd -n emulator_x86_64_api_35 -c 2048M -f \
|
||||
-k "system-images;android-35;google_apis;x86_64"
|
||||
|
||||
@@ -211,7 +210,7 @@ cp -r "${scripts_dir_name}/android/gradle_project" /tmp/gradle_project
|
||||
cd /tmp/gradle_project
|
||||
# Get Gradle files from qtbase
|
||||
qtbaseGradleUrl="https://code.qt.io/cgit/qt/qtbase.git/plain/src/3rdparty/gradle"
|
||||
commit_sha="8436455e2740000a817e0b8154e13f47e6abb68c"
|
||||
commit_sha="e5f79573fe2f21cf7bea8f63386f39bb18b351f0"
|
||||
curl "$qtbaseGradleUrl/gradle.properties?h=$commit_sha" > gradle.properties
|
||||
curl "$qtbaseGradleUrl/gradlew?h=$commit_sha" > gradlew
|
||||
curl "$qtbaseGradleUrl/gradlew.bat?h=$commit_sha" > gradlew.bat
|
||||
|
||||
17
coin/provisioning/common/linux/configure-gnome-shell.sh
Executable file
17
coin/provisioning/common/linux/configure-gnome-shell.sh
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2024 The Qt Company Ltd
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script modifies GNOME based Linux configurations
|
||||
|
||||
set -ex
|
||||
|
||||
# Desktop
|
||||
echo "Disable blank screen power saving (timeout 0 = never)"
|
||||
gsettings set org.gnome.desktop.session idle-delay 0
|
||||
echo "Disable Automatic screen lock when screensaver goes active"
|
||||
gsettings set org.gnome.desktop.screensaver lock-enabled false
|
||||
echo "Disable window animations."
|
||||
gsettings set org.gnome.desktop.interface enable-animations false
|
||||
echo "Disable hot corner feature"
|
||||
gsettings set org.gnome.desktop.interface enable-hot-corners false
|
||||
99
coin/provisioning/common/linux/install-ffmpeg-linux.sh
Executable file
99
coin/provisioning/common/linux/install-ffmpeg-linux.sh
Executable file
@@ -0,0 +1,99 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script builds and installs FFmpeg static or shared (default) libs
|
||||
set -ex
|
||||
|
||||
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
|
||||
|
||||
build_type=$(get_ffmpeg_build_type "$1")
|
||||
|
||||
ffmpeg_source_dir=$(download_ffmpeg)
|
||||
ffmpeg_name=$(basename "$ffmpeg_source_dir")
|
||||
ffmpeg_config_options=$(get_ffmpeg_config_options "$build_type")
|
||||
prefix="/usr/local/$ffmpeg_name"
|
||||
pkgconfig_path="$PKG_CONFIG_PATH"
|
||||
|
||||
install_ff_nvcodec_headers() {
|
||||
local nv_codec_version="11.1" # use 11.1 to ensure compatibility with 470 nvidia drivers; might be upated to 12.0
|
||||
local nv_codec_url_public="https://github.com/FFmpeg/nv-codec-headers/archive/refs/heads/sdk/$nv_codec_version.zip"
|
||||
local nv_codec_url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/nv-codec-headers/nv-codec-headers-sdk-$nv_codec_version.zip"
|
||||
local nv_codec_sha1="ceb4966ab01b2e41f02074675a8ac5b331bf603e"
|
||||
#nv_codec_sha1="4f30539f8dd31945da4c3da32e66022f9ca59c08" // 12.0
|
||||
local target_dir="$HOME"
|
||||
local nv_codec_dir="$target_dir/nv-codec-headers-sdk-$nv_codec_version"
|
||||
|
||||
if [ ! -d "$nv_codec_dir" ]; then
|
||||
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
|
||||
InstallFromCompressedFileFromURL "$nv_codec_url_cached" "$nv_codec_url_public" "$nv_codec_sha1" "$target_dir" ""
|
||||
fi
|
||||
|
||||
sudo make -C "$nv_codec_dir" install -j
|
||||
|
||||
# Might be not detected by default on RHEL
|
||||
pkgconfig_path="$pkgconfig_path:/usr/local/lib/pkgconfig"
|
||||
}
|
||||
|
||||
fix_openssl3_pc_files() {
|
||||
# On RHEL 8, openssl3 pc files are libopenssl3.pc, libssl3.pc, libcrypto3.pc,
|
||||
# and FFmpeg cannot find them. Instead, it finds FFmpeg 1.x.x if it's installed.
|
||||
# The function fixes the files with copying them to a custom directory
|
||||
|
||||
# assign to 'local' to ignore failure exit codes
|
||||
local -r openssl3_pcfiledir=$(pkg-config --variable=pcfiledir openssl3)
|
||||
if [ -z "$openssl3_pcfiledir" ]; then
|
||||
return
|
||||
fi
|
||||
|
||||
local pcfiles=("libssl" "libcrypto" "openssl")
|
||||
|
||||
for pcfile in "${pcfiles[@]}"; do
|
||||
if [ ! -f "$openssl3_pcfiledir/${pcfile}3.pc" ]; then
|
||||
echo "pkgconfig has found openssl3 but the file $openssl3_pcfiledir/${pcfile}3.pc does't exist"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
local new_pkgconfig_dir="$ffmpeg_source_dir/openssl3_pkgconfig"
|
||||
mkdir -p "$new_pkgconfig_dir"
|
||||
|
||||
for pcfile in "${pcfiles[@]}"; do
|
||||
sed -E '/^Requires(\.private)?:/s/ (libssl|libcrypto)3/ \1/g;' "$openssl3_pcfiledir/${pcfile}3.pc" > "$new_pkgconfig_dir/${pcfile}.pc"
|
||||
done
|
||||
|
||||
pkgconfig_path="$new_pkgconfig_dir:$pkgconfig_path"
|
||||
}
|
||||
|
||||
build_ffmpeg() {
|
||||
local build_dir="$ffmpeg_source_dir/build"
|
||||
mkdir -p "$build_dir"
|
||||
pushd "$build_dir"
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
PKG_CONFIG_PATH="$pkgconfig_path" "$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$prefix"
|
||||
# shellcheck disable=
|
||||
|
||||
# on RHEL patchelf is not visible under sudo, so we install to a temporary directory
|
||||
make install DESTDIR="$build_dir/installed" -j
|
||||
popd
|
||||
}
|
||||
|
||||
|
||||
ffmpeg_config_options+=" --enable-openssl"
|
||||
fix_openssl3_pc_files
|
||||
echo "pkg-config openssl version: $(pkg-config --modversion openssl)"
|
||||
|
||||
install_ff_nvcodec_headers
|
||||
|
||||
build_ffmpeg
|
||||
|
||||
output_dir="$ffmpeg_source_dir/build/installed/$prefix"
|
||||
|
||||
if [ "$build_type" == "shared" ]; then
|
||||
fix_dependencies="${BASH_SOURCE%/*}/../shared/fix_ffmpeg_dependencies.sh"
|
||||
"$fix_dependencies" "$output_dir"
|
||||
fi
|
||||
|
||||
sudo mv "$output_dir" "/usr/local"
|
||||
set_ffmpeg_dir_env_var "FFMPEG_DIR" "$prefix"
|
||||
@@ -26,12 +26,12 @@ DownloadAndExtract () {
|
||||
aarch64le_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-aarch64le.cmake"
|
||||
armv7le_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-armv7le.cmake"
|
||||
x8664_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-x8664.cmake"
|
||||
QNX_qemu_bld_files_dir="${BASH_SOURCE%/*}/qnx_qemu_build_files/"
|
||||
QNX_qemu_bld_files_dir="${BASH_SOURCE%/*}/qnx_qemu_build_files/710/"
|
||||
|
||||
targetFolder="/opt/"
|
||||
folderName="qnx710"
|
||||
targetPath="$targetFolder$folderName"
|
||||
qemuTargetPath="$HOME/QNX"
|
||||
qemuTargetPath="$HOME/QNX710"
|
||||
qemuIpAddress="172.31.1.10"
|
||||
export qemuNetwork="172.31.1.1"
|
||||
qemuSSHuser="root"
|
||||
@@ -81,7 +81,7 @@ fi
|
||||
|
||||
# Set env variables
|
||||
SetEnvVar "QNX_710" "$targetPath"
|
||||
SetEnvVar "QNX_QEMU" "$qemuTargetPath"
|
||||
SetEnvVar "QNX_710_QEMU" "$qemuTargetPath"
|
||||
SetEnvVar "QNX_QEMU_IPADDR" "$qemuIpAddress"
|
||||
SetEnvVar "QNX_QEMU_SSH" "$qemuSSHurl"
|
||||
SetEnvVar "QNX_QEMU_LD_LIBRARY_PATH" "$qemuLDpath"
|
||||
|
||||
@@ -26,12 +26,12 @@ DownloadAndExtract () {
|
||||
aarch64le_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-aarch64le.cmake"
|
||||
armv7le_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-armv7le.cmake"
|
||||
x8664_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-x8664.cmake"
|
||||
QNX_qemu_bld_files_dir="${BASH_SOURCE%/*}/qnx_qemu_build_files/"
|
||||
QNX_qemu_bld_files_dir="${BASH_SOURCE%/*}/qnx_qemu_build_files/800/"
|
||||
|
||||
targetFolder="/opt/"
|
||||
folderName="qnx800"
|
||||
targetPath="$targetFolder$folderName"
|
||||
qemuTargetPath="$HOME/QNX"
|
||||
qemuTargetPath="$HOME/QNX800"
|
||||
qemuIpAddress="172.31.1.10"
|
||||
export qemuNetwork="172.31.1.1"
|
||||
qemuSSHuser="root"
|
||||
@@ -43,9 +43,9 @@ if [ ! -d "$targetFolder" ]; then
|
||||
fi
|
||||
|
||||
# QNX SDP
|
||||
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx800-linux-20240510.tar.xz"
|
||||
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx800-windows-linux-20240930.tar.xz"
|
||||
targetFile="qnx800.tar.xz"
|
||||
sha1="93245a5bc11b88563328f0763573942fd25b5e18"
|
||||
sha1="a86d6e001e4ad46f50ed430fb85e8230e730751b"
|
||||
DownloadAndExtract "$sourceFile" "$sha1" "$targetFile" "$targetFolder"
|
||||
|
||||
sudo cp "$aarch64le_toolchain" "$targetPath"
|
||||
@@ -81,5 +81,11 @@ fi
|
||||
|
||||
# Set env variables
|
||||
SetEnvVar "QNX_800" "$targetPath"
|
||||
SetEnvVar "QNX_800_QEMU" "$qemuTargetPath"
|
||||
# These are common defines with QNX710
|
||||
SetEnvVar "QNX_QEMU_IPADDR" "$qemuIpAddress"
|
||||
SetEnvVar "QNX_QEMU_SSH" "$qemuSSHurl"
|
||||
SetEnvVar "QNX_QEMU_LD_LIBRARY_PATH" "$qemuLDpath"
|
||||
|
||||
|
||||
echo "QNX SDP = 8.0.0" >> ~/versions.txt
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# Need to add all testserver names statically
|
||||
# as current Docker uses Multicast DNS (mDNS) (avahi)
|
||||
# Which does not work with QNX qemu
|
||||
172.31.1.1 apache2 apache2.test-net.qt.local
|
||||
172.31.1.1 squid squid.test-net.qt.local
|
||||
172.31.1.1 vsftpd vsftpd.test-net.qt.local
|
||||
172.31.1.1 ftp-proxy ftp-proxy.test-net.qt.local
|
||||
172.31.1.1 danted danted.test-net.qt.local
|
||||
172.31.1.1 cyrus cyrus.test-net.qt.local
|
||||
172.31.1.1 echo echo.test-net.qt.local
|
||||
172.31.1.1 iptables iptables.test-net.qt.local
|
||||
|
||||
# For network test server which is still used on some test
|
||||
# like networkselftest for local dns resolution
|
||||
172.31.1.1 qt-test-server
|
||||
|
||||
# QtCoap testservers
|
||||
172.31.1.1 californium californium.test-net.qt.local
|
||||
172.31.1.1 freecoap freecoap.test-net.qt.local
|
||||
@@ -0,0 +1,2 @@
|
||||
search test-net.qt.local
|
||||
nameserver 172.31.1.1
|
||||
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
function brief()
|
||||
{
|
||||
echo "--nfs=[<mount>|no]"
|
||||
}
|
||||
|
||||
function help()
|
||||
{
|
||||
brief
|
||||
cat <<EOF
|
||||
If yes, the given nfs share "<mount>" will be mounted at <mount>
|
||||
|
||||
The default is no.
|
||||
EOF
|
||||
}
|
||||
|
||||
function validate() {
|
||||
exit 0
|
||||
}
|
||||
|
||||
function configure()
|
||||
{
|
||||
if [ "$OPT_NFS_QT" != no ]; then
|
||||
cat >output/option_files/post_start.opt_nfs <<EOF
|
||||
|
||||
echo "---> Starting NFS"
|
||||
STARTU_P(fs_nfs3_t,__FS_NFS3_ID__) fs-nfs3 -t 172.31.1.1:$OPT_NFS_QT $OPT_NFS_QT
|
||||
EOF
|
||||
fi
|
||||
|
||||
exit 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
brief)
|
||||
brief;;
|
||||
help)
|
||||
help;;
|
||||
validate)
|
||||
validate;;
|
||||
configure)
|
||||
configure;;
|
||||
default)
|
||||
echo no;;
|
||||
esac
|
||||
@@ -0,0 +1,88 @@
|
||||
OPT_ABLELOCK='no'
|
||||
DEF_OPT_ABLELOCK='no'
|
||||
OPT_ARCH='x86_64'
|
||||
DEF_OPT_ARCH='x86_64'
|
||||
OPT_ASLR='yes'
|
||||
DEF_OPT_ASLR='yes'
|
||||
OPT_CERTICOM='no'
|
||||
DEF_OPT_CERTICOM='no'
|
||||
OPT_CRYPTODEV='no'
|
||||
DEF_OPT_CRYPTODEV='no'
|
||||
OPT_DATA_INODES='3000'
|
||||
DEF_OPT_DATA_INODES='3000'
|
||||
OPT_DATA_SIZE='512'
|
||||
DEF_OPT_DATA_SIZE='60'
|
||||
OPT_EXTRA_DIRS='none'
|
||||
DEF_OPT_EXTRA_DIRS='none'
|
||||
OPT_GRAPHICS='no'
|
||||
DEF_OPT_GRAPHICS='no'
|
||||
OPT_GUEST='none'
|
||||
DEF_OPT_GUEST='none'
|
||||
OPT_HOSTNAME='qnx_QEMU_CI'
|
||||
DEF_OPT_HOSTNAME='noname'
|
||||
OPT_IP='172.31.1.69'
|
||||
DEF_OPT_IP='dhcp'
|
||||
OPT_MACADDR='52:54:00:f1:c4:92'
|
||||
DEF_OPT_MACADDR='generate'
|
||||
OPT_NFS='no'
|
||||
DEF_OPT_NFS='no'
|
||||
OPT_NFS_QT='/home/qt/work'
|
||||
DEF_OPT_NFS_QT='/home/qt/work'
|
||||
OPT_PATHTRUST='no'
|
||||
DEF_OPT_PATHTRUST='no'
|
||||
OPT_PERL='no'
|
||||
DEF_OPT_PERL='no'
|
||||
OPT_POLICY='none'
|
||||
DEF_OPT_POLICY='none'
|
||||
OPT_PYTHON='no'
|
||||
DEF_OPT_PYTHON='no'
|
||||
OPT_QAUDIT='no'
|
||||
DEF_OPT_QAUDIT='no'
|
||||
OPT_QFIM='no'
|
||||
DEF_OPT_QFIM='no'
|
||||
OPT_QTD='no'
|
||||
DEF_OPT_QTD='no'
|
||||
OPT_QVM='no'
|
||||
DEF_OPT_QVM='no'
|
||||
OPT_REPOS='$QNX_STAGE_nto:$QNX_TARGET'
|
||||
DEF_OPT_REPOS='$QNX_STAGE_nto:$QNX_TARGET'
|
||||
OPT_ROOT='no'
|
||||
DEF_OPT_ROOT='no'
|
||||
OPT_SAFE='no'
|
||||
DEF_OPT_SAFE='no'
|
||||
OPT_SECPOL='no'
|
||||
DEF_OPT_SECPOL='no'
|
||||
OPT_SECURE_DATA='no'
|
||||
DEF_OPT_SECURE_DATA='no'
|
||||
OPT_SECURE_PROCFS='yes'
|
||||
DEF_OPT_SECURE_PROCFS='yes'
|
||||
OPT_SLM='no'
|
||||
DEF_OPT_SLM='no'
|
||||
OPT_SSHD_PREGEN='yes'
|
||||
DEF_OPT_SSHD_PREGEN='yes'
|
||||
OPT_SSH_IDENT='prompt'
|
||||
DEF_OPT_SSH_IDENT='prompt'
|
||||
OPT_SYS_INODES='1000'
|
||||
DEF_OPT_SYS_INODES='1000'
|
||||
OPT_SYS_SIZE='20'
|
||||
DEF_OPT_SYS_SIZE='20'
|
||||
OPT_TCG='no'
|
||||
DEF_OPT_TCG='no'
|
||||
OPT_TELNET='no'
|
||||
DEF_OPT_TELNET='no'
|
||||
OPT_TOMCRYPT='no'
|
||||
DEF_OPT_TOMCRYPT='no'
|
||||
OPT_TOYBOX='no'
|
||||
DEF_OPT_TOYBOX='no'
|
||||
OPT_TYPE='qemu'
|
||||
DEF_OPT_TYPE='qemu'
|
||||
OPT_TZ='UTC0'
|
||||
DEF_OPT_TZ='UTC0'
|
||||
OPT_UNION='yes'
|
||||
DEF_OPT_UNION='yes'
|
||||
OPT_USB='no'
|
||||
DEF_OPT_USB='no'
|
||||
OPT_VALGRIND='no'
|
||||
DEF_OPT_VALGRIND='no'
|
||||
OPT_ZONEINFO='no'
|
||||
DEF_OPT_ZONEINFO='no'
|
||||
@@ -0,0 +1,25 @@
|
||||
# local/snippets/data_files.custom
|
||||
# Placeholder for local list of files to add to data partition
|
||||
|
||||
home/root/.ssh/environment = {
|
||||
TERM=qansi
|
||||
PATH=__IFS_PATH__:/system/xbin:.
|
||||
#LD_LIBRARY_PATH=__PROC_LIB__:/home/qt/work/install/target/lib
|
||||
#QSG_RHI_BACKEND=software
|
||||
#QT_QPA_PLATFORM=offscreen
|
||||
}
|
||||
|
||||
[uid=0 gid=0 dperms=755 type=dir] var/share
|
||||
var/share/zoneinfo=usr/share/zoneinfo
|
||||
|
||||
[uid=0 gid=0 dperms=755 type=dir] var/share/fonts
|
||||
var/etc/fontconfig/fonts.conf=etc/fontconfig/fonts.conf
|
||||
var/share/fonts=usr/share/fonts
|
||||
|
||||
var/etc/hosts=local/misc_files/etc/hosts
|
||||
var/etc/resolv.conf=local/misc_files/etc/resolv.conf
|
||||
var/etc/nsswitch.conf=etc/nsswitch.conf
|
||||
|
||||
[uid=0 gid=0 dperms=755 type=dir] var/etc/ssl/certs
|
||||
var/share/ca-certificates=local/misc_files/ca-certificates
|
||||
var/etc/ssl/certs=local/misc_files/etc/ssl/certs
|
||||
@@ -0,0 +1,12 @@
|
||||
# Add root HOME env variable
|
||||
procmgr_symlink /data/home/root/ /home/root
|
||||
HOME=/home/root
|
||||
|
||||
# Needed for timezone related tests
|
||||
TZ=Europe/Oslo
|
||||
procmgr_symlink /data/var/share /usr/share
|
||||
procmgr_symlink /data/var/share/zoneinfo/Europe/Oslo /data/var/etc/localtime
|
||||
|
||||
# fontconfig
|
||||
#procmgr_symlink /data/var/etc/fontconfig/fonts.conf /etc/fontconfig/fonts.conf
|
||||
#procmgr_symlink /data/var/share/fonts /usr/share/fonts
|
||||
@@ -0,0 +1,3 @@
|
||||
root:x:0:0:Superuser:/data/home/root:/bin/sh
|
||||
sshd:x:15:6:sshd:/data/var/chroot/sshd:/bin/false
|
||||
qnxuser:x:__QNXUSER_UID__:__QNXUSER_GID__:User9:/data/home/qnxuser:/bin/sh
|
||||
@@ -0,0 +1,29 @@
|
||||
# local/snippets/post_start.custom
|
||||
# Commands executed from post_startup.sh. Executed at the end of system startup whether slm is in use
|
||||
# or not
|
||||
#
|
||||
# To allow resource managers to be run properly with and without security policies, command lines
|
||||
# should be written in one of the following forms:
|
||||
#
|
||||
# START(resmgr_t) resmgr DROPROOT(resmgr_uid)
|
||||
# STARTU(resmgr_t, resmgr_uid) resmgr
|
||||
# Where resmgr_t is the security type name (arbitrary but usually the name of the resmgr with _t appended),
|
||||
# and resmgr_uid is the id to use for both uid and gid. DROPROOT is used only in cases where the
|
||||
# resource manager supports a -U option for switching to non-root.
|
||||
echo "---> Starting Filesystem event manager (fsevmgr)"
|
||||
STARTU_P(fsevmg_t,__FSEVMG_ID__) fsevmgr -d -F __DEVB_ID__ -N __DEVB_ID__
|
||||
|
||||
echo "---> Remove large fonts"
|
||||
rm -rf /data/var/share/fonts/NotoSansCJK*
|
||||
rm -rf /data/var/share/fonts/NotoSansMonoCJK*
|
||||
echo "---> Create fontconfig cache"
|
||||
fc-cache &
|
||||
|
||||
echo "---> Restart ssh daemon"
|
||||
slay sshd
|
||||
/system/xbin/sshd -f /system/data/etc/ssh/sshd_config
|
||||
|
||||
# Add default route so QNX knows where to send
|
||||
# requests for unknown network
|
||||
echo "---> Add default route"
|
||||
route add default 172.31.1.1
|
||||
@@ -0,0 +1,2 @@
|
||||
root::1475759054:0:0
|
||||
qnxuser:@S@f0J4xZibUbKllVqPMzetauCHLRi+9C8wTsxYXE5r7Pfhda5FI7zkObEmKogy01pAX5f/1niG2S2eLXbLs3xoww==@YjBmOTQwNzZiNzYwMzY3N2RkMGQ1NTZmNzA5MDFhMWY=:1476890273:0:0
|
||||
@@ -0,0 +1,65 @@
|
||||
# local/snippets/system_files.custom
|
||||
# Placeholder for local list of files to add to system partition
|
||||
|
||||
[perms=444] data/etc/ssh/sshd_config={
|
||||
HostKey /data/var/ssh/ssh_host_rsa_key
|
||||
HostKey /data/var/ssh/ssh_host_ed25519_key
|
||||
AuthorizedKeysFile .ssh/authorized_keys
|
||||
PermitUserEnvironment yes
|
||||
AuthenticationMethods none
|
||||
PermitEmptyPasswords yes
|
||||
PermitRootLogin yes
|
||||
PidFile none
|
||||
Subsystem sftp /system/xbin/sftp-server
|
||||
}
|
||||
|
||||
# libraries Qt requires
|
||||
lib/libicuuc.so.67=usr/lib/libicuuc.so.67
|
||||
lib/libicudata.so.67=usr/lib/libicudata.so.67
|
||||
lib/libicui18n.so.67=usr/lib/libicui18n.so.67
|
||||
lib/libGLESv2.so.1=usr/lib/libGLESv2.so.1
|
||||
lib/libEGL.so.1=usr/lib/libEGL.so.1
|
||||
lib/libz.so.2=usr/lib/libz.so.2
|
||||
lib/libzstd.so.1=usr/lib/libzstd.so.1
|
||||
lib/libxml2.so.2=usr/lib/libxml2.so.2
|
||||
lib/libfreetype.so.24=usr/lib/libfreetype.so.24
|
||||
lib/libbz2.so.1=usr/lib/libbz2.so.1
|
||||
lib/liblzma.so.5=usr/lib/liblzma.so.5
|
||||
lib/libdbus-1.so=usr/lib//libdbus-1.so
|
||||
lib/libdbus-1.so.22=usr/lib//libdbus-1.so.22
|
||||
lib/libbacktrace.so.1=lib/libbacktrace.so.1
|
||||
lib/libm.so.3=lib/libm.so.3
|
||||
|
||||
#############################################
|
||||
### Image support
|
||||
#############################################
|
||||
etc/system/config/img.conf=etc/system/config/img.conf
|
||||
lib/libpng16.so.16=usr/lib/libpng16.so.16
|
||||
lib/libjpeg.so.9=lib/libjpeg.so.9
|
||||
lib/libimg.so.1=lib/libimg.so.1
|
||||
lib/dll/img_codec_bmp.so=lib/dll/img_codec_bmp.so
|
||||
lib/dll/img_codec_gif.so=lib/dll/img_codec_gif.so
|
||||
lib/dll/img_codec_jpg.so=lib/dll/img_codec_jpg.so
|
||||
lib/dll/img_codec_png.so=lib/dll/img_codec_png.so
|
||||
lib/dll/img_codec_sgi.so=lib/dll/img_codec_sgi.so
|
||||
lib/dll/img_codec_tga.so=lib/dll/img_codec_tga.so
|
||||
lib/dll/img_codec_tif.so=lib/dll/img_codec_tif.so
|
||||
|
||||
# for inotify
|
||||
xbin/fsevmgr=sbin/fsevmgr
|
||||
|
||||
##############################################
|
||||
### Sreen support
|
||||
##############################################
|
||||
lib/libscreen.so.1=usr/lib/libscreen.so.1
|
||||
|
||||
# for fontconfig
|
||||
lib/libfontconfig.so.1=usr/lib/libfontconfig.so.1
|
||||
xbin/fc-cache=bin/fc-cache
|
||||
xbin/fc-match=local/misc_files/fc-match
|
||||
|
||||
# network
|
||||
lib/libssl.so=usr/lib/libssl.so
|
||||
xbin/nslookup=usr/bin/nslookup
|
||||
xbin/unbound=sbin/unbound
|
||||
xbin/curl=usr/bin/curl
|
||||
@@ -0,0 +1 @@
|
||||
#define __FSEVMG_ID__ 50
|
||||
@@ -21,12 +21,12 @@ InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder"
|
||||
SetEnvVar "VXWORKS_HOME" "/opt/vxworks"
|
||||
SetEnvVar "VXWORKS_SSH" "WindRiver@172.31.1.10"
|
||||
|
||||
VXWORKS_BUILD_VER="07-11-2024"
|
||||
VXWORKS_BUILD_VER="18-12-2024"
|
||||
######### VXworks toolchain #########
|
||||
# Installs to /opt/fsl_imx6_2_0_6_2_VSB
|
||||
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_arm_vsb_${VXWORKS_BUILD_VER}.tar.gz"
|
||||
AltUrl=""
|
||||
sha1="f4745e9b84a781fe2c0a44abee189fcdf1c2c100"
|
||||
sha1="6b5a264d08a9d34b03ff13cb28e690c5c5178569"
|
||||
targetFolder="/opt/"
|
||||
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
|
||||
SetEnvVar "WIND_CC_SYSROOT" "/opt/fsl_imx6_2_0_6_2_VSB"
|
||||
@@ -35,20 +35,20 @@ SetEnvVar "WIND_CC_SYSROOT" "/opt/fsl_imx6_2_0_6_2_VSB"
|
||||
# Installs to /opt/fsl_imx6_2_0_6_2_VIP_QEMU
|
||||
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_arm_vip_${VXWORKS_BUILD_VER}.tar.gz"
|
||||
AltUrl=""
|
||||
sha1="186d7da071005d67d898a56cf57b7bec664bb89e"
|
||||
sha1="117af91a6c93ac89727f8d8bfe4cf840ce4485c9"
|
||||
targetFolder="/opt/"
|
||||
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
|
||||
|
||||
# Installs to /opt/itl_generic_skylake_VSB
|
||||
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_intel_vsb_${VXWORKS_BUILD_VER}.tar.gz"
|
||||
AltUrl=""
|
||||
sha1="d5b76b92099dff0304ab97901ff1ad683dd6153d"
|
||||
sha1="c1b2f2e2903540e8005237ce3641fc043ced0ddf"
|
||||
targetFolder="/opt/"
|
||||
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
|
||||
# Installs to /opt/itl_generic_skylake_VIP_QEMU
|
||||
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_intel_vip_${VXWORKS_BUILD_VER}.tar.gz"
|
||||
AltUrl=""
|
||||
sha1="1943696ead5d13fba92a5af416bd3f599395fe24"
|
||||
sha1="2fa12dac1f1460019a418da49b095c743a9fe282"
|
||||
targetFolder="/opt/"
|
||||
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
|
||||
|
||||
|
||||
@@ -20,11 +20,11 @@ toolsVersion="2.1"
|
||||
# toolsFile dertermines tools version
|
||||
toolsFile="commandlinetools-mac-6609375_latest.zip"
|
||||
|
||||
ndkVersionLatest="r26b"
|
||||
ndkVersionLatest="r27c"
|
||||
ndkVersionDefault="$ndkVersionLatest"
|
||||
sdkBuildToolsVersion="34.0.0"
|
||||
sdkBuildToolsVersion="35.0.1"
|
||||
# this is compile sdk version
|
||||
sdkApiLevel="android-34"
|
||||
sdkApiLevel="android-35"
|
||||
|
||||
toolsSourceFile="$basePath/$toolsFile"
|
||||
|
||||
|
||||
@@ -1,23 +1,71 @@
|
||||
#!/bin/bash
|
||||
#Copyright (C) 2023 The Qt Company Ltd
|
||||
#Copyright (C) 2025 The Qt Company Ltd
|
||||
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
|
||||
# Will install homebrew package manager for macOS.
|
||||
# WARNING: Requires commandlinetools
|
||||
|
||||
|
||||
set -e
|
||||
|
||||
INSTALLTYPE="$1"
|
||||
VERSION="$2"
|
||||
CHECKSUM="$3"
|
||||
|
||||
DEFAULT_PKG_VERSION="4.4.21"
|
||||
DEFAULT_PKG_VERSION_CHECKSUM="cd83c4123d5db7d07eb3042f1c785ed7f599183c5c542040bc6abfa722583861"
|
||||
DEFAULT_GIT_VERSION="deb02e27d99fd2cb27ae16760e3a5272b612fded"
|
||||
DEFAULT_GIT_VERSION_CHECKSUM="a30b9fbf0d5c2cff3eb1d0643cceee30d8ba6ea1bb7bcabf60d3188bd62e6ba6"
|
||||
|
||||
source "$(dirname "$0")"/../../common/unix/DownloadURL.sh
|
||||
source "$(dirname "$0")"/../../common/unix/SetEnvVar.sh
|
||||
|
||||
installPkg() {
|
||||
if [ "$VERSION" == "" ]; then
|
||||
VERSION="$DEFAULT_PKG_VERSION"
|
||||
CHECKSUM="$DEFAULT_PKG_VERSION_CHECKSUM"
|
||||
fi
|
||||
DownloadURL \
|
||||
"http://ci-files01-hki.ci.qt.io/input/mac/homebrew/$VERSION/Homebrew-$VERSION.pkg" \
|
||||
"https://github.com/Homebrew/brew/releases/download/$VERSION/Homebrew-$VERSION.pkg" \
|
||||
"$CHECKSUM" \
|
||||
"/tmp/Homebrew-$VERSION.pkg"
|
||||
|
||||
DownloadURL \
|
||||
http://ci-files01-hki.ci.qt.io/input/mac/homebrew-install.c744a716f9845988d01e6e238eee7117b8c366c9.rb \
|
||||
https://raw.githubusercontent.com/Homebrew/install/c744a716f9845988d01e6e238eee7117b8c366c9/install \
|
||||
b9782cc0b550229de77b429b56ffce04157e60486ab9df00461ccf3dad565b0a \
|
||||
/tmp/homebrew_install
|
||||
/usr/bin/ruby /tmp/homebrew_install </dev/null
|
||||
sudo installer -pkg "/tmp/Homebrew-$VERSION.pkg" -target /
|
||||
# Add homebrew to PATH
|
||||
SetEnvVar "PATH" "/opt/homebrew/bin:\$PATH"
|
||||
|
||||
# No need to manually do `brew update`, the homebrew installer script does it.
|
||||
### brew update
|
||||
echo "Homebrew = $VERSION" >> ~/versions.txt
|
||||
}
|
||||
|
||||
installGit() {
|
||||
if [ "$VERSION" == "" ]; then
|
||||
VERSION="$DEFAULT_GIT_VERSION"
|
||||
CHECKSUM="$DEFAULT_GIT_VERSION_CHECKSUM"
|
||||
fi
|
||||
|
||||
export HOMEBREW_BREW_GIT_REMOTE="https://git.intra.qt.io/external-repository-mirrors/homebrew/brew.git" # put your Git mirror of Homebrew/brew here
|
||||
export HOMEBREW_CORE_GIT_REMOTE="https://git.intra.qt.io/external-repository-mirrors/homebrew/homebrew-core.git" # put your Git mirror of Homebrew/homebrew-core here
|
||||
DownloadURL \
|
||||
"https://git.intra.qt.io/external-repository-mirrors/homebrew/install/-/raw/$VERSION/install.sh" \
|
||||
"https://git.intra.qt.io/external-repository-mirrors/homebrew/install/-/raw/$VERSION/install.sh" \
|
||||
$CHECKSUM \
|
||||
/tmp/homebrew_install.sh
|
||||
|
||||
DownloadURL "http://ci-files01-hki.ci.qt.io/input/semisecure/sign/pw" "http://ci-files01-hki.ci.qt.io/input/semisecure/sign/pw" "aae58d00d0a1b179a09f21cfc67f9d16fb95ff36" "/Users/qt/pw"
|
||||
{ pw=$(cat "/Users/qt/pw"); } 2> /dev/null
|
||||
sudo chmod 755 /tmp/homebrew_install.sh
|
||||
{ (echo "$pw" | /tmp/homebrew_install.sh); } 2> /dev/null
|
||||
rm -f "/Users/qt/pw"
|
||||
}
|
||||
|
||||
if [ "$INSTALLTYPE" == "GIT" ]; then
|
||||
installGit
|
||||
else
|
||||
installPkg
|
||||
fi
|
||||
|
||||
# Disable non-ascii output for homebrew to make logs more readable
|
||||
SetEnvVar "HOMEBREW_NO_COLOR" "1"
|
||||
SetEnvVar "HOMEBREW_NO_EMOJI" "1"
|
||||
SetEnvVar "HOMEBREW_NO_ENV_HINTS" "1"
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2021 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# Will install homebrew package manager for macOS.
|
||||
# WARNING: Requires commandlinetools
|
||||
|
||||
|
||||
set -e
|
||||
|
||||
. "$(dirname "$0")"/../unix/DownloadURL.sh
|
||||
. "$(dirname "$0")"/../unix/SetEnvVar.sh
|
||||
|
||||
|
||||
DownloadURL \
|
||||
http://ci-files01-hki.ci.qt.io/input/mac/homebrew/be699a568315f57b65519df576d7fc5840b8a5cc/install.sh \
|
||||
https://raw.githubusercontent.com/Homebrew/install/be699a568315f57b65519df576d7fc5840b8a5cc/install \
|
||||
f20e4a577f0cafbab5a44b4d239886d725b3b985 \
|
||||
/tmp/homebrew_install.sh
|
||||
|
||||
DownloadURL "http://ci-files01-hki.ci.qt.io/input/semisecure/sign/pw" "http://ci-files01-hki.ci.qt.io/input/semisecure/sign/pw" "aae58d00d0a1b179a09f21cfc67f9d16fb95ff36" "/Users/qt/pw"
|
||||
{ pw=$(cat "/Users/qt/pw"); } 2> /dev/null
|
||||
sudo chmod 755 /tmp/homebrew_install.sh
|
||||
{ (echo "$pw" | /tmp/homebrew_install.sh); } 2> /dev/null
|
||||
rm -f "/Users/qt/pw"
|
||||
|
||||
# No need to manually do `brew update`, the homebrew installer script does it.
|
||||
### brew update
|
||||
|
||||
SetEnvVar "PATH" "\$PATH:/opt/homebrew/bin"
|
||||
66
coin/provisioning/common/macos/install-ffmpeg-macos.sh
Executable file
66
coin/provisioning/common/macos/install-ffmpeg-macos.sh
Executable file
@@ -0,0 +1,66 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script builds and installs FFmpeg shared libs
|
||||
|
||||
set -ex
|
||||
|
||||
os="$1"
|
||||
|
||||
if [ "$os" != "macos" ] && [ "$os" != "macos-universal" ]; then
|
||||
>&2 echo "invalid os paremeter: $os"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
|
||||
|
||||
ffmpeg_source_dir=$(download_ffmpeg)
|
||||
ffmpeg_name=$(basename "$ffmpeg_source_dir")
|
||||
ffmpeg_config_options=$(get_ffmpeg_config_options "shared")
|
||||
prefix="/usr/local/$ffmpeg_name"
|
||||
|
||||
build_ffmpeg() {
|
||||
local arch="$1"
|
||||
local build_dir="$ffmpeg_source_dir/build/$arch"
|
||||
mkdir -p "$build_dir"
|
||||
pushd "$build_dir"
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
if [ -n "$arch" ]; then
|
||||
local cc="clang -arch $arch"
|
||||
"$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$prefix" --enable-cross-compile --arch="$arch" --cc="$cc"
|
||||
else
|
||||
"$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$prefix"
|
||||
fi
|
||||
# shellcheck disable=
|
||||
|
||||
make install DESTDIR="$build_dir/installed" -j4
|
||||
popd
|
||||
}
|
||||
|
||||
brew install yasm
|
||||
export MACOSX_DEPLOYMENT_TARGET=12
|
||||
fix_relative_dependencies="${BASH_SOURCE%/*}/../macos/fix_relative_dependencies.sh"
|
||||
|
||||
if [ "$os" == "macos" ]; then
|
||||
build_ffmpeg
|
||||
|
||||
install_dir="$ffmpeg_source_dir/build/installed"
|
||||
"$fix_relative_dependencies" "$install_dir/usr/local/$ffmpeg_name/lib"
|
||||
sudo mv "$install_dir/usr/local/$ffmpeg_name" "/usr/local"
|
||||
else
|
||||
build_ffmpeg "arm64"
|
||||
build_ffmpeg "x86_64"
|
||||
|
||||
arm64_install_dir="$ffmpeg_source_dir/build/arm64/installed"
|
||||
x86_64_install_dir="$ffmpeg_source_dir/build/x86_64/installed"
|
||||
|
||||
"$fix_relative_dependencies" "$arm64_install_dir/usr/local/$ffmpeg_name/lib"
|
||||
"$fix_relative_dependencies" "$x86_64_install_dir/usr/local/$ffmpeg_name/lib"
|
||||
|
||||
sudo rm -rf "/usr/local/$ffmpeg_name" # lipo fails upon 2nd run
|
||||
sudo "${BASH_SOURCE%/*}/../macos/makeuniversal.sh" "$arm64_install_dir" "$x86_64_install_dir"
|
||||
fi
|
||||
|
||||
set_ffmpeg_dir_env_var "FFMPEG_DIR" "/usr/local/$ffmpeg_name"
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2018 The Qt Company Ltd.
|
||||
# Copyright (C) 2025 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# Install libiodbc
|
||||
@@ -11,12 +11,9 @@ source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||
|
||||
brew install --formula "${BASH_SOURCE%/*}/libiodbc.rb" "$@"
|
||||
|
||||
# CPLUS_INCLUDE_PATH is set so clang and configure can find libiodbc
|
||||
|
||||
read -r -a arr <<< "$(brew list --versions libiodbc)"
|
||||
version=${arr[1]}
|
||||
|
||||
SetEnvVar "CPLUS_INCLUDE_PATH" "/usr/local/Cellar/libiodbc/$version/include${CPLUS_INCLUDE_PATH:+:}${CPLUS_INCLUDE_PATH}"
|
||||
SetEnvVar "LIBRARY_PATH" "/usr/local/Cellar/libiodbc/$version/lib${LIBRARY_PATH:+:}${LIBRARY_PATH}"
|
||||
SetEnvVar "ODBC_ROOT" "$(brew --prefix libiodbc)"
|
||||
|
||||
echo "libiodbc = $version" >> ~/versions.txt
|
||||
|
||||
@@ -37,5 +37,5 @@ umount "$mountpoint"
|
||||
echo "Removing $packageName"
|
||||
rm "/tmp/$packageName"
|
||||
|
||||
SetEnvVar "POSTGRESQLBINPATH" "/Applications/Postgres.app/Contents/Versions/$psqlVersion/bin"
|
||||
SetEnvVar "PostgreSQL_ROOT" "/Applications/Postgres.app/Contents/Versions/$psqlVersion"
|
||||
echo "PostgreSQL = $psqlVersion ($psqlAppVersion)" >> ~/versions.txt
|
||||
|
||||
@@ -25,5 +25,6 @@ set(CMAKE_CXX_COMPILER_TARGET ${_qnx_toolchain_arch})
|
||||
|
||||
set(CMAKE_STRIP $ENV{QNX_HOST}/usr/bin/ntoaarch64-strip)
|
||||
set(CMAKE_AR $ENV{QNX_HOST}/usr/bin/ntoaarch64-ar)
|
||||
set(CMAKE_OBJCOPY $ENV{QNX_HOST}/usr/bin/ntoaarch64-objcopy)
|
||||
|
||||
set(CMAKE_SYSROOT $ENV{QNX_TARGET})
|
||||
|
||||
@@ -25,5 +25,6 @@ set(CMAKE_CXX_COMPILER_TARGET ${_qnx_toolchain_arch})
|
||||
|
||||
set(CMAKE_STRIP $ENV{QNX_HOST}/usr/bin/ntoarmv7-strip)
|
||||
set(CMAKE_AR $ENV{QNX_HOST}/usr/bin/ntoarmv7-ar)
|
||||
set(CMAKE_OBJCOPY $ENV{QNX_HOST}/usr/bin/ntoarmv7-objcopy)
|
||||
|
||||
set(CMAKE_SYSROOT $ENV{QNX_TARGET})
|
||||
|
||||
@@ -25,5 +25,6 @@ set(CMAKE_CXX_COMPILER_TARGET ${_qnx_toolchain_arch})
|
||||
|
||||
set(CMAKE_STRIP $ENV{QNX_HOST}/usr/bin/ntox86_64-strip)
|
||||
set(CMAKE_AR $ENV{QNX_HOST}/usr/bin/ntox86_64-ar)
|
||||
set(CMAKE_OBJCOPY $ENV{QNX_HOST}/usr/bin/ntox86_64-objcopy)
|
||||
|
||||
set(CMAKE_SYSROOT $ENV{QNX_TARGET})
|
||||
|
||||
@@ -15,10 +15,12 @@ if [ "$(uname -s)" = "Darwin" ]; then
|
||||
fi
|
||||
|
||||
ffmpeg_libs=("avcodec" "avdevice" "avfilter" "avformat" "avutil" "swresample" "swscale")
|
||||
stub_prefix="Qt6FFmpegStub-"
|
||||
|
||||
for lib_name in "${ffmpeg_libs[@]}"; do
|
||||
lib_path="$lib_dir/lib$lib_name.so"
|
||||
pkg_config_file_path="$lib_dir/pkgconfig/lib$lib_name.pc"
|
||||
stubs_required_versions=""
|
||||
|
||||
if [ ! -f "$lib_path" ]; then
|
||||
echo "FFmpeg lib $lib_path hasn't been found"
|
||||
@@ -30,21 +32,46 @@ for lib_name in "${ffmpeg_libs[@]}"; do
|
||||
exit 1
|
||||
fi
|
||||
|
||||
read_needed_deps() {
|
||||
readelf -d "$lib_path" | grep '(NEEDED)'
|
||||
}
|
||||
|
||||
while read -r line; do
|
||||
if [[ $line =~ .*\[(lib((ssl|crypto|va|va-x11|va-drm)(_3)?\.so(\.[0-9]+)*))\].* ]]; then
|
||||
stub_name="libQt6FFmpegStub-${BASH_REMATCH[2]}"
|
||||
if [[ ${BASH_REMATCH[4]} == "_3" ]]; then
|
||||
stub_name="${stub_name/_3/}" # Remove "_3" from stub_name
|
||||
stub_name="lib$stub_prefix${BASH_REMATCH[2]}"
|
||||
android_ssl_suffix=${BASH_REMATCH[4]}
|
||||
soversion=${BASH_REMATCH[5]}
|
||||
|
||||
if [ -n "$android_ssl_suffix" ] && [ -n "$soversion" ]; then
|
||||
>&2 echo "both, android_ssl_suffix $android_ssl_suffix and soversion $soversion are found"
|
||||
continue
|
||||
fi
|
||||
|
||||
if [[ "$android_ssl_suffix" == "_3" ]]; then
|
||||
stub_name="${stub_name/_3/}" # Remove "_3" from stub_name
|
||||
stubs_required_versions+=" ${stub_name/.so/ = 3},"
|
||||
elif [[ -n "$soversion" ]]; then
|
||||
stubs_required_versions+=" ${stub_name/.so./ = },"
|
||||
fi
|
||||
|
||||
if [[ -n "$additional_suffix" ]]; then
|
||||
stub_name="${stub_name%%.*}${additional_suffix}.${stub_name#*.}" # Add additional_suffix
|
||||
fi
|
||||
patchelf --replace-needed "${BASH_REMATCH[1]}" "${stub_name}" $lib_path
|
||||
fi
|
||||
done <<< "$(readelf -d $lib_path | grep '(NEEDED)' )"
|
||||
|
||||
sed -i.bak -E '/^Libs.private:/s/ -l(va|va-x11|va-drm|ssl|crypto)/ -lQt6FFmpegStub-\1/g;' $pkg_config_file_path && rm -f ${pkg_config_file_path}.bak
|
||||
patchelf --replace-needed "${BASH_REMATCH[1]}" "${stub_name}" "$lib_path"
|
||||
fi
|
||||
done <<< "$(read_needed_deps)"
|
||||
|
||||
sed_cmd="/^Libs.private:/s/ -l(va|va-x11|va-drm|ssl|crypto)/ -l$stub_prefix\\1/g;"
|
||||
if [[ -n "$stubs_required_versions" ]]; then
|
||||
stubs_required_versions="${stubs_required_versions%?}" # remove the last comma
|
||||
sed_cmd+="s/(^Requires.private:[^,]*(,)?.*$)/\\1\\2$stubs_required_versions/g;"
|
||||
fi
|
||||
|
||||
# sed -i doesn't work without parameter on macOS 13
|
||||
sed -i.bak -E "$sed_cmd" "$pkg_config_file_path" && rm -f "${pkg_config_file_path}.bak"
|
||||
if [[ "$set_rpath" == "yes" ]]; then
|
||||
patchelf --set-rpath '$ORIGIN' $lib_path
|
||||
# shellcheck disable=SC2016
|
||||
patchelf --set-rpath '$ORIGIN' "$lib_path"
|
||||
fi
|
||||
done
|
||||
|
||||
@@ -27,6 +27,9 @@ function InstallFromCompressedFileFromURL {
|
||||
DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile"
|
||||
echo "Uncompress $targetFile"
|
||||
case $extension in
|
||||
"tgz")
|
||||
tar -xzf "$targetFile" --directory "$targetDirectory"
|
||||
;;
|
||||
"tar.gz")
|
||||
tar -xzf "$targetFile" --directory "$targetDirectory"
|
||||
;;
|
||||
|
||||
@@ -8,15 +8,15 @@ source "${BASH_SOURCE%/*}/SetEnvVar.sh"
|
||||
# shellcheck source=./DownloadURL.sh
|
||||
source "${BASH_SOURCE%/*}/DownloadURL.sh"
|
||||
|
||||
version="3.1.56"
|
||||
version="3.1.70"
|
||||
versionNode="v16.20.0"
|
||||
tarBallVersion="${version//./_}"
|
||||
if uname -a | grep -q Darwin; then
|
||||
tarBallPackage="emsdk_macos_${tarBallVersion}.tar.gz"
|
||||
sha="24c49db971da4fd7c68f6b71984c3d7775fdfb84"
|
||||
sha="eafd7b96ab12d84183d2eaa62e8d39bb12c252bf"
|
||||
else
|
||||
tarBallPackage="emsdk_linux_${tarBallVersion}.tar.gz"
|
||||
sha="410c93bb2ab3b244190c2cb5f0ff1ce5d6ac4eb5"
|
||||
sha="047a3da9048edc71fb56af544c4bb2448d6c0644"
|
||||
fi
|
||||
cacheUrl="https://ci-files01-hki.ci.qt.io/input/emsdk/${tarBallPackage}"
|
||||
target="/tmp/${tarBallPackage}"
|
||||
|
||||
67
coin/provisioning/common/unix/ffmpeg-installation-utils.sh
Executable file
67
coin/provisioning/common/unix/ffmpeg-installation-utils.sh
Executable file
@@ -0,0 +1,67 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2024 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
download_ffmpeg() {
|
||||
local version="${1:-n7.1.1}"
|
||||
local sha1="${2:-479291e8555fe036ca760f95cea829a21e9b8365}"
|
||||
|
||||
local ffmpeg_name="FFmpeg-$version"
|
||||
local target_dir="$HOME"
|
||||
local ffmpeg_source_dir="$target_dir/$ffmpeg_name"
|
||||
|
||||
if [ ! -d "$ffmpeg_source_dir" ]; then
|
||||
local url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
|
||||
local url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/$version.tar.gz"
|
||||
local app_prefix=""
|
||||
|
||||
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
|
||||
InstallFromCompressedFileFromURL "$url_cached" "$url_public" "$sha1" "$target_dir" "$app_prefix" > /dev/null
|
||||
fi
|
||||
|
||||
echo "$ffmpeg_source_dir"
|
||||
}
|
||||
|
||||
get_ffmpeg_config_options() {
|
||||
local build_type="$1"
|
||||
local result
|
||||
|
||||
result=$(cat "${BASH_SOURCE%/*}/../shared/ffmpeg_config_options.txt")
|
||||
|
||||
if [ "$build_type" != "static" ]; then
|
||||
result+=" --enable-shared --disable-static"
|
||||
fi
|
||||
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
|
||||
get_ffmpeg_build_type() {
|
||||
local result="${1:-shared}"
|
||||
|
||||
if [ "$result" != "static" ] && [ "$result" != "shared" ]; then
|
||||
>&2 echo "Invalid build_type: $result. The shared build type will be used."
|
||||
result="shared"
|
||||
fi
|
||||
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
set_ffmpeg_dir_env_var() {
|
||||
local envvar="$1"
|
||||
local dir="$2"
|
||||
|
||||
if [ ! -d "$dir" ]; then
|
||||
>&2 echo "the FFmpeg dir $dir doesn't exist"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# minimal validity check, more checks can be added
|
||||
if [ ! -d "$dir/include" ] || [ ! -d "$dir/lib" ]; then
|
||||
>&2 echo "The FFmpeg dir $dir is not valid"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||
SetEnvVar "$envvar" "$dir"
|
||||
}
|
||||
@@ -4,123 +4,117 @@
|
||||
|
||||
# This script will build and install FFmpeg shared libs
|
||||
set -ex
|
||||
|
||||
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
|
||||
|
||||
os="$1"
|
||||
|
||||
# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
|
||||
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
|
||||
# shellcheck source=../unix/SetEnvVar.sh
|
||||
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||
|
||||
version="n7.1"
|
||||
url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
|
||||
sha1="f008a93710a7577e3f85a90f4b632cc615164712"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/$version.tar.gz"
|
||||
ffmpeg_name="FFmpeg-$version"
|
||||
|
||||
target_dir="$HOME"
|
||||
app_prefix=""
|
||||
ffmpeg_source_dir="$target_dir/$ffmpeg_name"
|
||||
|
||||
if [ ! -d "$ffmpeg_source_dir" ];
|
||||
then
|
||||
InstallFromCompressedFileFromURL "$url_cached" "$url_public" "$sha1" "$target_dir" "$app_prefix"
|
||||
fi
|
||||
# Optional parameter to set output installation directory. Useful for local builds.
|
||||
target_install_dir_param="$2"
|
||||
build_type=$(get_ffmpeg_build_type)
|
||||
ffmpeg_source_dir=$(download_ffmpeg)
|
||||
|
||||
build_ffmpeg_android() {
|
||||
local target_arch=$1
|
||||
local target_dir=$2
|
||||
|
||||
target_arch=$1
|
||||
target_dir=$2
|
||||
shared="${3:-no}"
|
||||
sudo mkdir -p "$target_dir"
|
||||
|
||||
sudo mkdir -p "$target_dir"
|
||||
local openssl_include="$OPENSSL_ANDROID_HOME_DEFAULT/include"
|
||||
local openssl_libs
|
||||
local libs_prefix
|
||||
local target_cpu
|
||||
local target_toolchain_arch
|
||||
|
||||
openssl_include="$OPENSSL_ANDROID_HOME_DEFAULT/include"
|
||||
openssl_libs=""
|
||||
libs_prefix=""
|
||||
if [ "$target_arch" == "x86_64" ]; then
|
||||
target_toolchain_arch="x86_64-linux-android"
|
||||
target_arch=x86_64
|
||||
target_cpu=x86-64
|
||||
openssl_libs="$OPENSSL_ANDROID_HOME_DEFAULT/x86_64"
|
||||
libs_prefix="_x86_64"
|
||||
elif [ "$target_arch" == "x86" ]; then
|
||||
target_toolchain_arch="i686-linux-android"
|
||||
target_arch=x86
|
||||
target_cpu=i686
|
||||
openssl_libs="$OPENSSL_ANDROID_HOME_DEFAULT/x86"
|
||||
libs_prefix="_x86"
|
||||
elif [ "$target_arch" == "arm64" ]; then
|
||||
target_toolchain_arch="aarch64-linux-android"
|
||||
target_arch=aarch64
|
||||
target_cpu=armv8-a
|
||||
openssl_libs="$OPENSSL_ANDROID_HOME_DEFAULT/arm64-v8a"
|
||||
libs_prefix="_arm64-v8a"
|
||||
fi
|
||||
if [ "$target_arch" == "x86_64" ]; then
|
||||
target_toolchain_arch="x86_64-linux-android"
|
||||
target_arch=x86_64
|
||||
target_cpu=x86-64
|
||||
openssl_libs="$OPENSSL_ANDROID_HOME_DEFAULT/x86_64"
|
||||
libs_prefix="_x86_64"
|
||||
elif [ "$target_arch" == "x86" ]; then
|
||||
target_toolchain_arch="i686-linux-android"
|
||||
target_arch=x86
|
||||
target_cpu=i686
|
||||
openssl_libs="$OPENSSL_ANDROID_HOME_DEFAULT/x86"
|
||||
libs_prefix="_x86"
|
||||
elif [ "$target_arch" == "arm64" ]; then
|
||||
target_toolchain_arch="aarch64-linux-android"
|
||||
target_arch=aarch64
|
||||
target_cpu=armv8-a
|
||||
openssl_libs="$OPENSSL_ANDROID_HOME_DEFAULT/arm64-v8a"
|
||||
libs_prefix="_arm64-v8a"
|
||||
fi
|
||||
|
||||
ln -Ffs "${openssl_libs}/libcrypto_3.so" "${openssl_libs}/libcrypto.so"
|
||||
ln -Ffs "${openssl_libs}/libssl_3.so" "${openssl_libs}/libssl.so"
|
||||
ln -Ffs "${openssl_libs}/libcrypto_3.so" "${openssl_libs}/libcrypto.so"
|
||||
ln -Ffs "${openssl_libs}/libssl_3.so" "${openssl_libs}/libssl.so"
|
||||
|
||||
api_version=24
|
||||
local api_version=24
|
||||
|
||||
ndk_root=$ANDROID_NDK_ROOT_DEFAULT
|
||||
if uname -a |grep -q "Darwin"; then
|
||||
ndk_host=darwin-x86_64
|
||||
else
|
||||
ndk_host=linux-x86_64
|
||||
fi
|
||||
local ndk_root=$ANDROID_NDK_ROOT_DEFAULT
|
||||
local ndk_host
|
||||
if uname -a |grep -q "Darwin"; then
|
||||
ndk_host=darwin-x86_64
|
||||
else
|
||||
ndk_host=linux-x86_64
|
||||
fi
|
||||
|
||||
toolchain=${ndk_root}/toolchains/llvm/prebuilt/${ndk_host}
|
||||
toolchain_bin=${toolchain}/bin
|
||||
sysroot=${toolchain}/sysroot
|
||||
cxx=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang++
|
||||
cc=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang
|
||||
ar=${toolchain_bin}/llvm-ar
|
||||
ranlib=${toolchain_bin}/llvm-ranlib
|
||||
local toolchain=${ndk_root}/toolchains/llvm/prebuilt/${ndk_host}
|
||||
local toolchain_bin=${toolchain}/bin
|
||||
local sysroot=${toolchain}/sysroot
|
||||
local cxx=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang++
|
||||
local cc=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang
|
||||
local ar=${toolchain_bin}/llvm-ar
|
||||
local ranlib=${toolchain_bin}/llvm-ranlib
|
||||
local ffmpeg_config_options
|
||||
|
||||
ffmpeg_config_options=$(cat "${BASH_SOURCE%/*}/../shared/ffmpeg_config_options.txt")
|
||||
ffmpeg_config_options+=" --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-openssl --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera"
|
||||
if [[ "$shared" == "yes" ]]; then
|
||||
ffmpeg_config_options+=" --enable-shared --disable-static"
|
||||
fi
|
||||
ffmpeg_config_options+=" --arch=$target_arch --cpu=${target_cpu} --sysroot=${sysroot} --sysinclude=${sysroot}/usr/include/"
|
||||
ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib}"
|
||||
ffmpeg_config_options+=" --extra-cflags=-I${openssl_include} --extra-ldflags=-L${openssl_libs}"
|
||||
ffmpeg_config_options=$(get_ffmpeg_config_options $build_type)
|
||||
ffmpeg_config_options+=" --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-openssl --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera"
|
||||
ffmpeg_config_options+=" --arch=$target_arch --cpu=${target_cpu} --sysroot=${sysroot} --sysinclude=${sysroot}/usr/include/"
|
||||
ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib}"
|
||||
ffmpeg_config_options+=" --extra-cflags=-I${openssl_include} --extra-ldflags=-L${openssl_libs}"
|
||||
|
||||
local build_dir="$ffmpeg_source_dir/build/$target_arch"
|
||||
sudo mkdir -p "$build_dir"
|
||||
pushd "$build_dir"
|
||||
local build_dir="$ffmpeg_source_dir/build_android/$target_arch"
|
||||
mkdir -p "$build_dir"
|
||||
pushd "$build_dir"
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
sudo "$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$target_dir"
|
||||
# shellcheck disable=SC2086
|
||||
sudo "$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$target_dir"
|
||||
# shellcheck disable=
|
||||
|
||||
sudo make install -j4
|
||||
sudo make install -j4
|
||||
|
||||
popd
|
||||
popd
|
||||
|
||||
rm -f "${openssl_libs}/libcrypto.so"
|
||||
rm -f "${openssl_libs}/libssl.so"
|
||||
rm -f "${openssl_libs}/libcrypto.so"
|
||||
rm -f "${openssl_libs}/libssl.so"
|
||||
|
||||
if [[ "$shared" == "yes" ]]; then
|
||||
fix_dependencies="${BASH_SOURCE%/*}/../shared/fix_ffmpeg_dependencies.sh"
|
||||
sudo "${fix_dependencies}" "${target_dir}" "${libs_prefix}" "no"
|
||||
fi
|
||||
if [[ "$build_type" == "shared" ]]; then
|
||||
local fix_dependencies="${BASH_SOURCE%/*}/../shared/fix_ffmpeg_dependencies.sh"
|
||||
sudo "${fix_dependencies}" "${target_dir}" "${libs_prefix}" "no"
|
||||
fi
|
||||
}
|
||||
|
||||
if [ "$os" == "android-x86" ]; then
|
||||
target_arch=x86
|
||||
target_dir="/usr/local/android/ffmpeg-x86"
|
||||
|
||||
SetEnvVar "FFMPEG_DIR_ANDROID_X86" "$target_dir"
|
||||
target_arch=x86
|
||||
target_dir="/usr/local/android/ffmpeg-x86"
|
||||
envvar="FFMPEG_DIR_ANDROID_X86"
|
||||
elif [ "$os" == "android-x86_64" ]; then
|
||||
target_arch=x86_64
|
||||
target_dir="/usr/local/android/ffmpeg-x86_64"
|
||||
|
||||
SetEnvVar "FFMPEG_DIR_ANDROID_X86_64" "$target_dir"
|
||||
target_arch=x86_64
|
||||
target_dir="/usr/local/android/ffmpeg-x86_64"
|
||||
envvar="FFMPEG_DIR_ANDROID_X86_64"
|
||||
elif [ "$os" == "android-arm64" ]; then
|
||||
target_arch=arm64
|
||||
target_dir="/usr/local/android/ffmpeg-arm64"
|
||||
|
||||
SetEnvVar "FFMPEG_DIR_ANDROID_ARM64" "$target_dir"
|
||||
target_arch=arm64
|
||||
target_dir="/usr/local/android/ffmpeg-arm64"
|
||||
envvar="FFMPEG_DIR_ANDROID_ARM64"
|
||||
else
|
||||
>&2 echo "Unhandled android os param: $os"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
build_ffmpeg_android "$target_arch" "$target_dir" "yes"
|
||||
# If parameter is set, use it as the target output directory.
|
||||
if [ ! -z $target_install_dir_param ]; then
|
||||
target_dir=$target_install_dir_param
|
||||
fi
|
||||
|
||||
build_ffmpeg_android "$target_arch" "$target_dir"
|
||||
set_ffmpeg_dir_env_var "$envvar" "$target_dir"
|
||||
|
||||
@@ -5,71 +5,55 @@
|
||||
# This script will build and install FFmpeg static libs
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
|
||||
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
|
||||
# shellcheck source=../unix/SetEnvVar.sh
|
||||
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
|
||||
|
||||
version="n7.1"
|
||||
url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
|
||||
sha1="f008a93710a7577e3f85a90f4b632cc615164712"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/$version.tar.gz"
|
||||
ffmpeg_name="FFmpeg-$version"
|
||||
|
||||
target_dir="$HOME"
|
||||
ffmpeg_source_dir="$target_dir/$ffmpeg_name"
|
||||
ffmpeg_source_dir=$(download_ffmpeg)
|
||||
ffmpeg_config_options=$(get_ffmpeg_config_options "shared")
|
||||
prefix="/usr/local/ios/ffmpeg"
|
||||
|
||||
if [ ! -d "$ffmpeg_source_dir" ];
|
||||
then
|
||||
InstallFromCompressedFileFromURL "$url_cached" "$url_public" "$sha1" "$target_dir"
|
||||
fi
|
||||
|
||||
ffmpeg_config_options=$(cat "${BASH_SOURCE%/*}/../shared/ffmpeg_config_options.txt")
|
||||
dylib_regex="^@rpath/.*\.dylib$"
|
||||
|
||||
build_ffmpeg_ios() {
|
||||
local target_arch=$1
|
||||
local target_platform=$1
|
||||
local target_cpu_arch=""
|
||||
if [ "$target_platform" == "arm64-simulator" ]; then
|
||||
target_sdk="iphonesimulator"
|
||||
target_cpu_arch="arm64"
|
||||
minos="-mios-simulator-version-min=16.0"
|
||||
elif [ "$target_platform" == "x86_64-simulator" ]; then
|
||||
target_sdk="iphonesimulator"
|
||||
target_cpu_arch="x86_64"
|
||||
minos="-mios-simulator-version-min=16.0"
|
||||
elif [ "$target_platform" == "arm64-iphoneos" ]; then
|
||||
target_sdk="iphoneos"
|
||||
target_cpu_arch="arm64"
|
||||
minos="-miphoneos-version-min=16.0"
|
||||
else
|
||||
echo "Error when building FFmpeg for iOS. Unknown parameter given for target_platform: '${target_platform}'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$target_arch" == "x86_64" ]; then
|
||||
target_sdk="iphonesimulator"
|
||||
target_arch="x86_64"
|
||||
minos="-mios-simulator-version-min=13.0"
|
||||
else
|
||||
target_sdk="iphoneos"
|
||||
target_arch="arm64"
|
||||
minos="-miphoneos-version-min=13.0"
|
||||
fi
|
||||
local build_dir="$ffmpeg_source_dir/build_ios/$target_platform"
|
||||
sudo mkdir -p "$build_dir"
|
||||
pushd "$build_dir"
|
||||
|
||||
local build_dir="$ffmpeg_source_dir/build_ios/$target_arch"
|
||||
sudo mkdir -p "$build_dir"
|
||||
pushd "$build_dir"
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
sudo "$ffmpeg_source_dir/configure" $ffmpeg_config_options \
|
||||
# shellcheck disable=SC2086
|
||||
sudo "$ffmpeg_source_dir/configure" $ffmpeg_config_options \
|
||||
--sysroot="$(xcrun --sdk "$target_sdk" --show-sdk-path)" \
|
||||
--enable-cross-compile \
|
||||
--enable-optimizations \
|
||||
--prefix=$prefix \
|
||||
--arch=$target_arch \
|
||||
--cc="xcrun --sdk ${target_sdk} clang -arch $target_arch" \
|
||||
--cxx="xcrun --sdk ${target_sdk} clang++ -arch $target_arch" \
|
||||
--ar="$(xcrun --sdk ${target_sdk} --find ar)" \
|
||||
--ranlib="$(xcrun --sdk ${target_sdk} --find ranlib)" \
|
||||
--strip="$(xcrun --sdk ${target_sdk} --find strip)" \
|
||||
--nm="$(xcrun --sdk ${target_sdk} --find nm)" \
|
||||
--target-os=darwin \
|
||||
--extra-cflags="$minos" \
|
||||
--extra-cxxflags="$minos" \
|
||||
--enable-cross-compile \
|
||||
--enable-shared \
|
||||
--disable-static \
|
||||
--install-name-dir='@rpath/Frameworks' \
|
||||
--enable-swscale \
|
||||
--enable-pthreads \
|
||||
--disable-audiotoolbox
|
||||
--enable-cross-compile \
|
||||
--enable-optimizations \
|
||||
--prefix=$prefix \
|
||||
--arch=$target_cpu_arch \
|
||||
--cc="xcrun --sdk ${target_sdk} clang -arch $target_cpu_arch" \
|
||||
--cxx="xcrun --sdk ${target_sdk} clang++ -arch $target_cpu_arch" \
|
||||
--target-os=darwin \
|
||||
--extra-ldflags="$minos" \
|
||||
--enable-shared \
|
||||
--disable-static \
|
||||
--install-name-dir='@rpath' \
|
||||
--disable-audiotoolbox
|
||||
|
||||
sudo make install DESTDIR="$build_dir/installed" -j4
|
||||
popd
|
||||
sudo make install DESTDIR="$build_dir/installed" -j4
|
||||
popd
|
||||
}
|
||||
|
||||
install_ffmpeg() {
|
||||
@@ -98,11 +82,110 @@ install_ffmpeg() {
|
||||
popd >/dev/null
|
||||
done
|
||||
sudo cp -r $1$prefix/include $prefix
|
||||
echo "LS done."
|
||||
}
|
||||
|
||||
build_ffmpeg_ios "x86_64"
|
||||
build_ffmpeg_ios "arm64"
|
||||
build_info_plist() {
|
||||
local file_path="$1"
|
||||
local framework_name="$2"
|
||||
local framework_id="$3"
|
||||
|
||||
install_ffmpeg "$ffmpeg_source_dir/build_ios/x86_64/installed" "$ffmpeg_source_dir/build_ios/arm64/installed"
|
||||
SetEnvVar "FFMPEG_DIR_IOS" $prefix
|
||||
local minimum_version_key="MinimumOSVersion"
|
||||
local minimum_os_version="16.0"
|
||||
local supported_platforms="iPhoneOS"
|
||||
|
||||
# TODO: This should be filled out with the actual version of FFmpeg that we are
|
||||
# deploying.
|
||||
info_plist="<?xml version=\"1.0\" encoding=\"UTF-8\"?>
|
||||
<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">
|
||||
<plist version=\"1.0\">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${framework_name}</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>${framework_id}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${framework_name}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>7.0.2</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>7.0.2</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>${minimum_version_key}</key>
|
||||
<string>${minimum_os_version}</string>
|
||||
<key>CFBundleSupportedPlatforms</key>
|
||||
<array>
|
||||
<string>${supported_platforms}</string>
|
||||
</array>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
</dict>
|
||||
</plist>"
|
||||
echo $info_plist | sudo tee ${file_path} 1>/dev/null
|
||||
}
|
||||
|
||||
create_framework() {
|
||||
# Create a 'traditional' framework from the corresponding dylib.
|
||||
local framework_name="$1"
|
||||
local platform="$2" # For now it's either arm64 or arm64-simulator, see below.
|
||||
local ffmpeg_library_path="$ffmpeg_source_dir/build_ios/${platform}/installed/usr/local/ios/ffmpeg"
|
||||
local framework_complete_path="${ffmpeg_library_path}/framework/${framework_name}.framework/${framework_name}"
|
||||
|
||||
sudo mkdir -p "${ffmpeg_library_path}/framework/${framework_name}.framework"
|
||||
sudo cp "${ffmpeg_library_path}/lib/${framework_name}.dylib" "${ffmpeg_library_path}/framework/${framework_name}.framework/${framework_name}"
|
||||
|
||||
# Fix LC_ID_DYLIB (to be libavcodec.framework/libavcodec instead of @rpath/libavcodec.xx.yy.dylib
|
||||
sudo install_name_tool -id @rpath/${framework_name}.framework/${framework_name} "${framework_complete_path}"
|
||||
|
||||
build_info_plist "${ffmpeg_library_path}/framework/${framework_name}.framework/Info.plist" "${framework_name}" "io.qt.ffmpegkit."${framework_name}
|
||||
|
||||
# Fix all FFmpeg-related LC_LOAD_DYLIB, similar to how we fixed LC_ID_DYLIB above:
|
||||
otool -L "$framework_complete_path" | awk '/\t/ {print $1}' | egrep "$dylib_regex" | while read -r dependency_path; do
|
||||
found_name=$(tmp=${dependency_path/*\/}; echo ${tmp/\.*})
|
||||
if [ "$found_name" != "$framework_name" ]
|
||||
then
|
||||
sudo install_name_tool -change "$dependency_path" @rpath/${found_name}.framework/${found_name} "${framework_complete_path}"
|
||||
fi
|
||||
done
|
||||
#sudo mkdir -p "$prefix/framework/"
|
||||
#sudo cp -r "${ffmpeg_library_path}/framework/${framework_name}.framework" "$prefix/framework/"
|
||||
}
|
||||
|
||||
create_xcframework() {
|
||||
# Create 'traditional' framework from the corresponding dylib,
|
||||
# also creating
|
||||
local framework_name="$1"
|
||||
local target_platform_a="$2"
|
||||
local target_platform_b="$3"
|
||||
|
||||
local fw_a="$ffmpeg_source_dir/build_ios/${target_platform_a}/installed/usr/local/ios/ffmpeg/framework/${framework_name}.framework"
|
||||
local fw_b="$ffmpeg_source_dir/build_ios/${target_platform_b}/installed/usr/local/ios/ffmpeg/framework/${framework_name}.framework"
|
||||
|
||||
sudo mkdir -p "$prefix/framework/"
|
||||
sudo xcodebuild -create-xcframework -framework $fw_a -framework $fw_b -output "${prefix}/framework/${framework_name}.xcframework"
|
||||
}
|
||||
|
||||
build_ffmpeg_ios "x86_64-simulator"
|
||||
build_ffmpeg_ios "arm64-iphoneos"
|
||||
|
||||
ffmpeg_libs="libavcodec libavformat libavutil libswresample libswscale"
|
||||
|
||||
for name in $ffmpeg_libs; do
|
||||
create_framework $name "arm64-iphoneos"
|
||||
create_framework $name "x86_64-simulator"
|
||||
done
|
||||
|
||||
# Create corresponding (xc)frameworks containing both arm64 and arm64-simulator frameworks:
|
||||
for name in $ffmpeg_libs; do
|
||||
create_xcframework $name "arm64-iphoneos" "x86_64-simulator"
|
||||
done
|
||||
|
||||
install_ffmpeg "$ffmpeg_source_dir/build_ios/x86_64-simulator/installed" "$ffmpeg_source_dir/build_ios/arm64-iphoneos/installed"
|
||||
|
||||
set_ffmpeg_dir_env_var "FFMPEG_DIR_IOS" $prefix
|
||||
|
||||
@@ -1,156 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script will build and install FFmpeg static libs
|
||||
set -ex
|
||||
os="$1"
|
||||
build_type="$2"
|
||||
|
||||
if [ ! -n "$build_type" ] && [ "$build_type" != "static" ] && [ "$build_type" != "shared" ]; then
|
||||
>&2 echo "Invalid build_type: $build_type. The shared build type will be used."
|
||||
build_type="shared"
|
||||
fi
|
||||
|
||||
# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
|
||||
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
|
||||
# shellcheck source=../unix/SetEnvVar.sh
|
||||
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||
|
||||
version="n7.1"
|
||||
url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
|
||||
sha1="f008a93710a7577e3f85a90f4b632cc615164712"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/$version.tar.gz"
|
||||
ffmpeg_name="FFmpeg-$version"
|
||||
|
||||
target_dir="$HOME"
|
||||
app_prefix=""
|
||||
ffmpeg_source_dir="$target_dir/$ffmpeg_name"
|
||||
|
||||
if [ ! -d "$ffmpeg_source_dir" ]
|
||||
then
|
||||
InstallFromCompressedFileFromURL "$url_cached" "$url_public" "$sha1" "$target_dir" "$app_prefix"
|
||||
fi
|
||||
|
||||
ffmpeg_config_options=$(cat "${BASH_SOURCE%/*}/../shared/ffmpeg_config_options.txt")
|
||||
if [ "$build_type" != "static" ]; then
|
||||
ffmpeg_config_options+=" --enable-shared --disable-static"
|
||||
fi
|
||||
|
||||
install_ff_nvcodec_headers() {
|
||||
nv_codec_version="11.1" # use 11.1 to ensure compatibility with 470 nvidia drivers; might be upated to 12.0
|
||||
nv_codec_url_public="https://github.com/FFmpeg/nv-codec-headers/archive/refs/heads/sdk/$nv_codec_version.zip"
|
||||
nv_codec_url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/nv-codec-headers/nv-codec-headers-sdk-$nv_codec_version.zip"
|
||||
nv_codec_sha1="ceb4966ab01b2e41f02074675a8ac5b331bf603e"
|
||||
#nv_codec_sha1="4f30539f8dd31945da4c3da32e66022f9ca59c08" // 12.0
|
||||
nv_codec_dir="$target_dir/nv-codec-headers-sdk-$nv_codec_version"
|
||||
if [ ! -d "$nv_codec_dir" ]
|
||||
then
|
||||
InstallFromCompressedFileFromURL "$nv_codec_url_cached" "$nv_codec_url_public" "$nv_codec_sha1" "$target_dir" ""
|
||||
fi
|
||||
|
||||
sudo make -C "$nv_codec_dir" install -j
|
||||
|
||||
# Might be not detected by default on RHEL
|
||||
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig"
|
||||
}
|
||||
|
||||
fix_openssl3_pc_files() {
|
||||
# On RHEL 8, openssl3 pc files are libopenssl3.pc, libssl3.pc, libcrypto3.pc,
|
||||
# and FFmpeg cannot find them. Instead, it finds FFmpeg 1.x.x if it's installed.
|
||||
# The function fixes the files with copying them to a custom directory
|
||||
|
||||
local openssl3_pcfiledir=$(pkg-config --variable=pcfiledir openssl3)
|
||||
if [ ! -n "$openssl3_pcfiledir" ]; then
|
||||
return
|
||||
fi
|
||||
|
||||
local pcfiles=("libssl" "libcrypto" "openssl")
|
||||
|
||||
for pcfile in ${pcfiles[@]}; do
|
||||
if [ ! -f "$openssl3_pcfiledir/${pcfile}3.pc" ]; then
|
||||
echo "pkgconfig has found openssl3 but the file $openssl3_pcfiledir/${pcfile}3.pc does't exist"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
local new_pkgconfig_dir="$ffmpeg_source_dir/openssl3_pkgconfig"
|
||||
mkdir -p $new_pkgconfig_dir
|
||||
|
||||
for pcfile in ${pcfiles[@]}; do
|
||||
sed -E '/^Requires(\.private)?:/s/ (libssl|libcrypto)3/ \1/g;' "$openssl3_pcfiledir/${pcfile}3.pc" > "$new_pkgconfig_dir/${pcfile}.pc"
|
||||
done
|
||||
|
||||
export PKG_CONFIG_PATH="$new_pkgconfig_dir:$PKG_CONFIG_PATH"
|
||||
}
|
||||
|
||||
build_ffmpeg() {
|
||||
local arch="$1"
|
||||
local prefix="$2"
|
||||
local build_dir="$ffmpeg_source_dir/build/$arch"
|
||||
mkdir -p "$build_dir"
|
||||
pushd "$build_dir"
|
||||
|
||||
if [ -z "$prefix" ]
|
||||
then prefix="/usr/local/$ffmpeg_name"
|
||||
fi
|
||||
|
||||
if [ -n "$arch" ]
|
||||
then cc="clang -arch $arch"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
if [ -n "$arch" ]
|
||||
then "$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$prefix" --enable-cross-compile --arch="$arch" --cc="$cc"
|
||||
else "$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$prefix"
|
||||
fi
|
||||
make install DESTDIR="$build_dir/installed" -j4
|
||||
popd
|
||||
}
|
||||
|
||||
if [ "$os" == "linux" ]; then
|
||||
install_ff_nvcodec_headers
|
||||
|
||||
ffmpeg_config_options+=" --enable-openssl"
|
||||
fix_openssl3_pc_files
|
||||
echo "pkg-config openssl version: $(pkg-config --modversion openssl)"
|
||||
|
||||
build_ffmpeg
|
||||
|
||||
output_dir="$ffmpeg_source_dir/build/installed/usr/local/$ffmpeg_name"
|
||||
|
||||
if [ "$build_type" != "static" ]; then
|
||||
fix_dependencies="${BASH_SOURCE%/*}/../shared/fix_ffmpeg_dependencies.sh"
|
||||
"$fix_dependencies" "$output_dir"
|
||||
fi
|
||||
|
||||
sudo mv "$output_dir" "/usr/local"
|
||||
SetEnvVar "FFMPEG_DIR" "/usr/local/$ffmpeg_name"
|
||||
|
||||
elif [ "$os" == "macos" ] || [ "$os" == "macos-universal" ]; then
|
||||
brew install yasm
|
||||
export MACOSX_DEPLOYMENT_TARGET=12
|
||||
fix_relative_dependencies="${BASH_SOURCE%/*}/../macos/fix_relative_dependencies.sh"
|
||||
|
||||
if [ "$os" == "macos" ]; then
|
||||
build_ffmpeg
|
||||
install_dir="$ffmpeg_source_dir/build/installed"
|
||||
"$fix_relative_dependencies" "$install_dir/usr/local/$ffmpeg_name/lib"
|
||||
sudo mv "$install_dir/usr/local/$ffmpeg_name" "/usr/local"
|
||||
else
|
||||
build_ffmpeg "arm64"
|
||||
build_ffmpeg "x86_64"
|
||||
|
||||
arm64_install_dir="$ffmpeg_source_dir/build/arm64/installed"
|
||||
x86_64_install_dir="$ffmpeg_source_dir/build/x86_64/installed"
|
||||
|
||||
"$fix_relative_dependencies" "$arm64_install_dir/usr/local/$ffmpeg_name/lib"
|
||||
"$fix_relative_dependencies" "$x86_64_install_dir/usr/local/$ffmpeg_name/lib"
|
||||
|
||||
sudo "${BASH_SOURCE%/*}/../macos/makeuniversal.sh" "$arm64_install_dir" "$x86_64_install_dir"
|
||||
fi
|
||||
|
||||
SetEnvVar "FFMPEG_DIR" "/usr/local/$ffmpeg_name"
|
||||
fi
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
|
||||
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
|
||||
# version 0.18.0 doesn't work correctly for Android binaries, so we use 0.17.2
|
||||
patchelf_version="0.17.2"
|
||||
|
||||
url_cached="https://ci-files01-hki.ci.qt.io/input/android/patchelf/$patchelf_version.tar.gz"
|
||||
|
||||
@@ -92,6 +92,8 @@ cmake "$targetDir" -G"Ninja Multi-Config" \
|
||||
ninja all:all
|
||||
sudo env "PATH=$PATH" ninja install:all
|
||||
|
||||
SetEnvVar "protobuf_ROOT" "$installPrefix/lib/cmake/protobuf"
|
||||
|
||||
# Refresh shared library cache if OS isn't macOS
|
||||
if uname -a |grep -qv "Darwin"; then
|
||||
sudo ldconfig
|
||||
|
||||
@@ -20,38 +20,38 @@ PROVISIONING_DIR="$(dirname "$0")/../../"
|
||||
# shellcheck source=./common.sourced.sh
|
||||
source "$PROVISIONING_DIR"/common/unix/common.sourced.sh
|
||||
|
||||
libclang_version="18.1.7"
|
||||
libclang_version="20.1.0"
|
||||
|
||||
if uname -a |grep -q Darwin; then
|
||||
version=$libclang_version
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_${version}-based-mac.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-release_${version}-based-mac.7z"
|
||||
sha1="9ea511576645ef4abee6d4c27550406e929334d5"
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-llvmorg-${version}-macos-universal.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-llvmorg-${version}-macos-universal.7z"
|
||||
sha1="a0061a2b7a7411323ae3d81fdb2071ad522ddd5f"
|
||||
elif test -f /etc/redhat-release && grep "Red Hat" /etc/redhat-release | grep "9" ; then
|
||||
version=$libclang_version
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_${version}-based-linux-Rhel9.2-gcc10.0-x86_64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-release_${version}-based-linux-Rhel9.2-gcc10.0-x86_64.7z"
|
||||
sha1="32c29d8df726b035e0a97e767c5c3e392aa331e1"
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-llvmorg-${version}-linux-Rhel9.4-gcc11.4-x86_64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-llvmorg-${version}-linux-Rhel9.4-gcc11.4-x86_64.7z"
|
||||
sha1="041036bb2b360c18448c993671507bbb16b9b76d"
|
||||
elif test "$PROVISIONING_OS_ID" == "debian" && test "$PROVISIONING_ARCH" == "arm64" ; then
|
||||
version=$libclang_version
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_${version}-based-linux-Debian11.6-gcc10.0-arm64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-release_${version}-based-linux-Debian11.6-gcc10.0-arm64.7z"
|
||||
sha1="8d876f60c2fe9c55e18fbac0be2acb70bd20d5d1"
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-llvmorg-${version}-linux-Debian11.6-gcc10.0-arm64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-llvmorg-${version}-linux-Debian11.6-gcc10.0-arm64.7z"
|
||||
sha1="ad3244f76cb5dab8e3d5dfe839e21a9bac3039e9"
|
||||
elif test "$PROVISIONING_OS_ID" == "ubuntu" && test "$PROVISIONING_ARCH" == "arm64" ; then
|
||||
version=$libclang_version
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_${version}-based-linux-Ubuntu24.04-gcc11.2-arm64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-release_${version}-based-linux-Ubuntu24.04-gcc11.2-arm64.7z"
|
||||
sha1="5a7bda4fbd2c52ae66557034591d977ba617482c"
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-llvmorg-${version}-linux-Ubuntu24.04-gcc11.2-arm64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-llvmorg-${version}-linux-Ubuntu24.04-gcc11.2-arm64.7z"
|
||||
sha1="bde39a28872cc618983d231ffd1df2c104ff1992"
|
||||
elif test "$PROVISIONING_OS_ID" == "ubuntu" && test "$PROVISIONING_ARCH" == "x86_64" ; then
|
||||
version=$libclang_version
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_${version}-based-linux-Ubuntu22.04-gcc11.2-x86_64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-release_${version}-based-linux-Ubuntu22.04-gcc11.2-x86_64.7z"
|
||||
sha1="b9f8735a148342174d7d763b5475175cd0827441"
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-llvmorg-${version}-linux-Ubuntu22.04-gcc11.2-x86_64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-llvmorg-${version}-linux-Ubuntu22.04-gcc11.2-x86_64.7z"
|
||||
sha1="3f5e5214cf31adfb01be21fcf4f27b9adf8f13b0"
|
||||
else
|
||||
version=$libclang_version
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_${version}-based-linux-Rhel8.8-gcc10.0-x86_64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-release_${version}-based-linux-Rhel8.8-gcc10.0-x86_64.7z"
|
||||
sha1="a51c5562c9b071250e7971390d55ef21924271ca"
|
||||
url="https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-llvmorg-${version}-linux-Rhel8.10-gcc10.0-x86_64.7z"
|
||||
url_cached="http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-llvmorg-${version}-linux-Rhel8.10-gcc10.0-x86_64.7z"
|
||||
sha1="1fdc23ae0fce48ed82508b1bad0c68d2e5a30c8b"
|
||||
fi
|
||||
|
||||
zip="/tmp/libclang.7z"
|
||||
|
||||
@@ -12,12 +12,12 @@ source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
|
||||
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||
|
||||
version="3.0.7"
|
||||
ndkVersionLatest="r26b"
|
||||
ndkVersionLatest="r27c"
|
||||
ndkVersionDefault=$ndkVersionLatest
|
||||
prebuiltOpensslNdkShaLatest="ea925d5a5b696916fb3650403a2eb3189c52b5ce"
|
||||
prebuiltOpensslNdkShaLatest="733cff853b6ee7738e78b90f46b5f028c8490e1e"
|
||||
prebuiltOpensslNdkShaDefault=$prebuiltOpensslNdkShaLatest
|
||||
|
||||
: <<'EOB' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK 25
|
||||
: <<'EOB' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK r27c
|
||||
# Source built requires GCC and Perl to be in PATH. Rhel "requires yum install perl-IPC-Cmd"
|
||||
exports_file="/tmp/export.sh"
|
||||
# source previously made environmental variables.
|
||||
@@ -32,7 +32,7 @@ else
|
||||
fi
|
||||
|
||||
# ANDROID_NDK_ROOT is required during Configure
|
||||
export ANDROID_NDK_ROOT=/opt/android/android-ndk-r26b
|
||||
export ANDROID_NDK_ROOT=/opt/android/android-ndk-r27c
|
||||
|
||||
officialUrl="https://www.openssl.org/source/openssl-$version.tar.gz"
|
||||
cachedUrl="http://ci-files01-hki.ci.qt.io/input/openssl/openssl-$version.tar.gz"
|
||||
|
||||
@@ -12,12 +12,12 @@ source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
|
||||
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
|
||||
|
||||
version="3.0.7"
|
||||
ndkVersionLatest="r26b"
|
||||
ndkVersionLatest="r27c"
|
||||
ndkVersionDefault=$ndkVersionLatest
|
||||
prebuiltOpensslNdkShaLatest="ea925d5a5b696916fb3650403a2eb3189c52b5ce"
|
||||
prebuiltOpensslNdkShaLatest="733cff853b6ee7738e78b90f46b5f028c8490e1e"
|
||||
prebuiltOpensslNdkShaDefault=$prebuiltOpensslNdkShaLatest
|
||||
|
||||
: <<'EOB' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK r26b
|
||||
: <<'EOB' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK r27c
|
||||
# Source built requires GCC and Perl to be in PATH. Rhel "requires yum install perl-IPC-Cmd"
|
||||
exports_file="/tmp/export.sh"
|
||||
# source previously made environmental variables.
|
||||
|
||||
@@ -16,11 +16,11 @@ if (Is64BitWinHost) {
|
||||
# More info and building instructions can be found from http://doc.qt.io/qt-5/opensslsupport.html
|
||||
|
||||
$openssl_version = "3.0.7"
|
||||
$ndk_version_latest = "r26b"
|
||||
$ndk_version_latest = "r27c"
|
||||
$ndk_version_default = "$ndk_version_latest"
|
||||
$openssl_compressed = Get-DownloadLocation ("openssl-${openssl_version}.tar.gz")
|
||||
$openssl_sha1 = "f20736d6aae36bcbfa9aba0d358c71601833bf27"
|
||||
$prebuilt_sha1_ndk_latest = "ea925d5a5b696916fb3650403a2eb3189c52b5ce"
|
||||
$prebuilt_sha1_ndk_latest = "733cff853b6ee7738e78b90f46b5f028c8490e1e"
|
||||
$prebuilt_sha1_ndk_default = "$prebuilt_sha1_ndk_latest"
|
||||
$destination_prefix = "C:\Utils\prebuilt-openssl-${openssl_version}-for-android-ndk"
|
||||
|
||||
@@ -70,7 +70,7 @@ function Install($1, $2) {
|
||||
}
|
||||
|
||||
# ANDROID_NDK_ROOT needs to be in environment variables before running this script
|
||||
# Set-EnvironmentVariable "ANDROID_NDK_ROOT" "C:\Utils\Android\android-ndk-r26b"
|
||||
# Set-EnvironmentVariable "ANDROID_NDK_ROOT" "C:\Utils\Android\android-ndk-r27c"
|
||||
|
||||
$make_install = Start-Process -NoNewWindow -Wait -PassThru -ErrorAction Stop -FilePath "$msys_bash" -ArgumentList ("-lc", "`"yes | pacman -S make`"")
|
||||
CheckExitCode $make_install
|
||||
|
||||
@@ -10,9 +10,9 @@
|
||||
# That's why we need to use Andoid-21 API version in Qt 5.9.
|
||||
|
||||
# NDK
|
||||
$ndkVersionLatest = "r26b"
|
||||
$ndkVersionLatest = "r27c"
|
||||
$ndkVersionDefault = $ndkVersionLatest
|
||||
$ndkChecksumLatest = "17453c61a59e848cffb8634f2c7b322417f1732e"
|
||||
$ndkChecksumLatest = "ac5f7762764b1f15341094e148ad4f847d050c38"
|
||||
$ndkChecksumDefault = $ndkChecksumLatest
|
||||
$ndkCachedUrlLatest = "\\ci-files01-hki.ci.qt.io\provisioning\android\android-ndk-$ndkVersionLatest-windows.zip"
|
||||
$ndkOfficialUrlLatest = "https://dl.google.com/android/repository/android-ndk-$ndkVersionLatest-windows.zip"
|
||||
@@ -24,8 +24,8 @@ $ndkZip = "C:\Windows\Temp\android_ndk.zip"
|
||||
$toolsVersion = "2.1"
|
||||
$toolsFile = "commandlinetools-win-6609375_latest.zip"
|
||||
$sdkApi = "ANDROID_API_VERSION"
|
||||
$sdkApiLevel = "android-34"
|
||||
$sdkBuildToolsVersion = "34.0.0"
|
||||
$sdkApiLevel = "android-35"
|
||||
$sdkBuildToolsVersion = "35.0.1"
|
||||
$toolsCachedUrl= "\\ci-files01-hki.ci.qt.io\provisioning\android\$toolsFile"
|
||||
$toolsOfficialUrl = "https://dl.google.com/android/repository/$toolsFile"
|
||||
$toolsChecksum = "e2e19c2ff584efa87ef0cfdd1987f92881323208"
|
||||
|
||||
12
coin/provisioning/common/windows/certificate-updates.ps1
Normal file
12
coin/provisioning/common/windows/certificate-updates.ps1
Normal file
@@ -0,0 +1,12 @@
|
||||
# Copyright (C) 2025 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script updates Windows Root Certifications which are usually updated weekly by Windows update
|
||||
|
||||
. "$PSScriptRoot\helpers.ps1"
|
||||
|
||||
$sstCerts = "C:\Windows\Temp\certificates.sst"
|
||||
Run-Executable "certutil.exe" "-generateSSTFromWU $sstCerts"
|
||||
$sstCertsPath = (Get-ChildItem -Path $sstCerts)
|
||||
$sstCertsPath | Import-Certificate -CertStoreLocation "Cert:\LocalMachine\Root" | Out-String | Measure-Object -Line
|
||||
Remove-Item -Path $sstCerts
|
||||
@@ -0,0 +1,8 @@
|
||||
# Copyright (C) 2025 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script disables the Delivery Optimization service
|
||||
|
||||
. "$PSScriptRoot\helpers.ps1"
|
||||
|
||||
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\DoSvc" -Name "Start" -Value 4
|
||||
@@ -5,11 +5,11 @@
|
||||
|
||||
# This script will install emscripten needed by WebAssembly
|
||||
|
||||
$version = "3.1.56"
|
||||
$version = "3.1.70"
|
||||
$zipVersion = $version -replace '\.', "_"
|
||||
$temp = "$env:tmp"
|
||||
$cacheUrl = "https://ci-files01-hki.ci.qt.io/input/emsdk/emsdk_windows_${zipVersion}.zip"
|
||||
$sha = "ab376d218f1a66302c36770977948f74f0576a42"
|
||||
$sha = "4d05e378575cb3d74e2740b121730ba1f5822f27"
|
||||
|
||||
# Python used for '.\emsdk install'
|
||||
$pythonPath = [System.Environment]::GetEnvironmentVariable("PYTHON3_PATH", "Machine")
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
# This script will install FFmpeg
|
||||
$msys = "C:\Utils\msys64\usr\bin\bash"
|
||||
|
||||
$version="n7.1"
|
||||
$version="n7.1.1"
|
||||
$url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
|
||||
$sha1="f008a93710a7577e3f85a90f4b632cc615164712"
|
||||
$sha1="479291e8555fe036ca760f95cea829a21e9b8365"
|
||||
$url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/$version.tar.gz"
|
||||
$ffmpeg_name="FFmpeg-$version"
|
||||
|
||||
@@ -144,7 +144,7 @@ function InstallAndroidArmv7 {
|
||||
$target_cpu="armv7-a"
|
||||
$api_version="24"
|
||||
|
||||
$ndkVersionLatest = "r26b"
|
||||
$ndkVersionLatest = "r27c"
|
||||
$ndkFolderLatest = "/c/Utils/Android/android-ndk-$ndkVersionLatest"
|
||||
|
||||
$toolchain="${ndkFolderLatest}/toolchains/llvm/prebuilt/windows-x86_64"
|
||||
|
||||
@@ -5,24 +5,24 @@
|
||||
|
||||
# This script installs 7-Zip
|
||||
|
||||
$version = "23.01"
|
||||
$nonDottedVersion = "2301"
|
||||
$version = "24.09"
|
||||
$nonDottedVersion = "2409"
|
||||
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$arch = "-arm64"
|
||||
$sha1 = "be65c2ea6119c04945c66b13413892f2bb03d9a7"
|
||||
$sha1 = "2f5aaa22a4a591b01a1b06c17565233f0cd70429"
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
$arch = "-x64"
|
||||
$sha1 = "7DF28D340D7084647921CC25A8C2068BB192BDBB"
|
||||
$sha1 = "28b53835fe92c3fa6e0c422fc3b17c6bc1cb27e0"
|
||||
Break
|
||||
}
|
||||
x86 {
|
||||
$arch = ""
|
||||
$sha1 = "D5D00E6EA8B8E68CE7A704FD478DC950E543C25C"
|
||||
$sha1 = "2135a90a9f6c3202c32a87b1c5cf805ce294a497"
|
||||
Break
|
||||
}
|
||||
default {
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
param(
|
||||
[string]$archVer="32",
|
||||
[string]$toolchain="vs2019",
|
||||
[string]$toolchain="vs2022",
|
||||
[bool]$setDefault=$true
|
||||
)
|
||||
. "$PSScriptRoot\helpers.ps1"
|
||||
|
||||
$libclang_version="18.1.7"
|
||||
$libclang_version="20.1.0"
|
||||
Write-Output "libClang = $libclang_version" >> ~/versions.txt
|
||||
|
||||
# PySide versions following 5.6 use a C++ parser based on Clang (http://clang.org/).
|
||||
@@ -24,8 +24,8 @@ function install() {
|
||||
|
||||
$zip = "c:\users\qt\downloads\libclang.7z"
|
||||
|
||||
$script:OfficialUrl = "https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_$libclang_version-based-windows-$toolchain`_$archVer.7z"
|
||||
$script:CachedUrl = "http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-release_$libclang_version-based-windows-$toolchain`_$archVer.7z"
|
||||
$script:OfficialUrl = "https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-llvmorg-$libclang_version-windows-$toolchain`_$archVer.7z"
|
||||
$script:CachedUrl = "http://ci-files01-hki.ci.qt.io/input/libclang/qt/libclang-llvmorg-$libclang_version-windows-$toolchain`_$archVer.7z"
|
||||
|
||||
Download $OfficialUrl $CachedUrl $zip
|
||||
Verify-Checksum $zip $sha1
|
||||
@@ -38,20 +38,10 @@ $toolchainSuffix = ""
|
||||
|
||||
if ( $toolchain -eq "vs2022" ) {
|
||||
if ( $archVer -eq "64" ) {
|
||||
$sha1 = "7e51f0eabdfe8eea17aaf1dce7b2ffe1ea064f66"
|
||||
$sha1 = "60c840e627b5bb03663f00db17bf249b37936428"
|
||||
}
|
||||
elseif ( $archVer -eq "arm64" ) {
|
||||
$sha1 = "986d4d0f253de505ef499345238c101dac1ca3a6"
|
||||
}
|
||||
else {
|
||||
$sha1 = ""
|
||||
}
|
||||
$toolchainSuffix = "msvc"
|
||||
}
|
||||
|
||||
if ( $toolchain -eq "vs2019" ) {
|
||||
if ( $archVer -eq "64" ) {
|
||||
$sha1 = "8e0862386caef7e4537599ef980eeb6ebee8767f"
|
||||
$sha1 = "68ead0e3135dfccae21b226f187fc305803ede3d"
|
||||
}
|
||||
else {
|
||||
$sha1 = ""
|
||||
@@ -61,7 +51,7 @@ if ( $toolchain -eq "vs2019" ) {
|
||||
|
||||
if ( $toolchain -eq "mingw" ) {
|
||||
if ( $archVer -eq "64" ) {
|
||||
$sha1 = "a23cbb0822cf2eb8d1cecf26e8614ef37a7611e3"
|
||||
$sha1 = "2180859572dd6ad2029ecffffcc785cba334e037"
|
||||
}
|
||||
else {
|
||||
$sha1 = ""
|
||||
@@ -72,7 +62,7 @@ if ( $toolchain -eq "mingw" ) {
|
||||
|
||||
if ( $toolchain -eq "llvm-mingw" ) {
|
||||
if ( $archVer -eq "64" ) {
|
||||
$sha1 = "9c34f99eb575b42c2befe27829c08e6d3f01ae58"
|
||||
$sha1 = "3e917d002f363c225e5ee2b7d8999a3cabd8b467"
|
||||
}
|
||||
else {
|
||||
$sha1 = ""
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
set -ex
|
||||
|
||||
BASEDIR=$(dirname "$0")
|
||||
# shellcheck source=../common/unix/check_and_set_proxy.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
|
||||
|
||||
@@ -13,12 +14,9 @@ NTS_IP=10.212.2.216
|
||||
|
||||
echo "Set timezone to UTC."
|
||||
sudo timedatectl set-timezone Etc/UTC
|
||||
echo "Timeout for blanking the screen (0 = never)"
|
||||
gsettings set org.gnome.desktop.session idle-delay 0
|
||||
echo "Prevents screen lock when screesaver goes active."
|
||||
gsettings set org.gnome.desktop.screensaver lock-enabled false
|
||||
echo "Disable window animations."
|
||||
gsettings set org.gnome.desktop.interface enable-animations false
|
||||
|
||||
"$BASEDIR/../common/linux/configure-gnome-shell.sh"
|
||||
|
||||
echo "Set grub timeout to 0"
|
||||
sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub
|
||||
sudo update-grub
|
||||
|
||||
@@ -9,8 +9,6 @@ BASEDIR=$(dirname "$0")
|
||||
# shellcheck source=../common/shared/network_test_server_ip.txt
|
||||
source "$BASEDIR/../common/shared/network_test_server_ip.txt"
|
||||
|
||||
echo "Disable window animations."
|
||||
gsettings set org.gnome.desktop.interface enable-animations false
|
||||
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
|
||||
echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
|
||||
echo "Set DISPLAY"
|
||||
@@ -20,10 +18,8 @@ export DISPLAY=:0
|
||||
|
||||
# Set timezone to UTC.
|
||||
sudo timedatectl set-timezone Etc/UTC
|
||||
# disable Automatic screen lock
|
||||
gsettings set org.gnome.desktop.screensaver lock-enabled false
|
||||
# disable blank screen power saving
|
||||
gsettings set org.gnome.desktop.session idle-delay 0
|
||||
|
||||
"$BASEDIR/../common/linux/configure-gnome-shell.sh"
|
||||
|
||||
# Set Wayland enable as false.
|
||||
echo "Setting Wayland enable as false"
|
||||
|
||||
@@ -12,6 +12,8 @@ sudo yum -y remove PackageKit gnome-software
|
||||
sudo yum -y update
|
||||
|
||||
installPackages=()
|
||||
# Make sure needed ca-certificates are available
|
||||
installPackages+=(ca-certificates)
|
||||
installPackages+=(git)
|
||||
installPackages+=(zlib-devel)
|
||||
installPackages+=(glib2-devel)
|
||||
@@ -153,6 +155,8 @@ installPackages+=(zip)
|
||||
installPackages+=(perl-IPC-Cmd)
|
||||
# password management support for Qt Creator
|
||||
installPackages+=(libsecret-devel)
|
||||
# For tst_license.pl with all the machines generating SBOM
|
||||
installPackages+=(perl-JSON)
|
||||
|
||||
sudo yum -y install "${installPackages[@]}"
|
||||
|
||||
@@ -174,6 +178,9 @@ sudo python3.11 -m pip install -r "${BASH_SOURCE%/*}/../common/shared/sbom_requi
|
||||
sudo /usr/bin/pip3 install wheel
|
||||
sudo /usr/bin/pip3 install dataclasses
|
||||
|
||||
gccVersion="$(gcc --version |grep -Eo '[0-9]+\.[0-9]+(\.[0-9]+)?' |head -n 1)"
|
||||
echo "GCC = $gccVersion" >> versions.txt
|
||||
|
||||
OpenSSLVersion="$(openssl3 version |cut -b 9-14)"
|
||||
echo "System's OpenSSL = $OpenSSLVersion" >> ~/versions.txt
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user