We need ffmpeg+openssl to enable multimedia networking.
We kept it disabled on linux since we had linking dependency.
The related patch in QtMM resolves openssl symbols dynamicaly
and address the mandatory dependency.
Pick-to: 6.5 6.6
Change-Id: Idad0618a5320ae32d50fe1f3866c4ffd1bf8f542
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
The SHA-1 hash was not properly updated after upgrading Emscripten
from version 3.1.25 to 3.1.37.
Pick-to: 6.6
Change-Id: Iad2a8603ce6163545de432a35940c91ee47ffea8
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
The patch enables nvidia hardware encoders/decoders.
It doesn't add new package dependencies, ffmpeg loads
required functionality in runtime if nvidia drivers have been
installed.
The change is coming together with implementation of hw devices precheck
in qtmultimedia.
Pick-to: 6.5 6.6
Change-Id: Id54a95b2bacf433950c7b50a42ff99136a143d98
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Vulkan:
FFmpeg has a very draft support of vulkan in n5.x and n6.0,
it's promised to be introduced with some working functionality in n6.1.
We'll wait for 6.1, then test it. For now, let's get rid of the extra
dependency.
v4l2m2m:
It's a prospective hw acceleration on linux, especially on embeddded
platforms, but currently, in my experiments, it's not working with
both QtMM and ffmpeg cmd line.
Let's get rid of the not working codec. Hopefully, it'll be fixed
in the future.
Pick-to: 6.6 6.5
Change-Id: I2468f84ae2ec54043d2db83f1a9c08be8e4f509d
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Use the same prebuilt pacakges for all platforms since the prebuilt libs
are going to be used for the target and they are not tied to the host.
Pick-to: 6.6 6.5
Task-number: QTBUG-110025
Change-Id: I2c79722989902b16883b31cbc6e140855239fcc8
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Unmounting fails sometimes which cause provisoning failure.
Let's ignore the result
Task-number: QTQAINFRA-3709
Pick-to: 6.6 6.5 6.2 5.15
Change-Id: Ifc321c8ef9942f9f51ec622370aadbbbb862d262
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Remove handling of QDOC_USE_STATIC_LIBCLANG environment
variable. The variable is not used by the Qt 6 build
system.
Change-Id: I8af68382caea2864543a3d6e6ed2922823a2e71d
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
License files are organized under LICENSES directory.
Pick-to: 6.5 6.6
Task-number: QTBUG-67283
Task-number: QTBUG-108364
Change-Id: If26e4d35c780db4a7982bb84872b251dad24716e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
It's hasn't been .intra.qt.io for quite some time, it
has worked through an alias we have on the DNS server.
Change-Id: I0bc17668dacfea64c276bb553e75e4be16e97659
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Openssl library causes backward compatibility issues. We need to disable
it to make ffmpegmediaplugin work on all supported linux platforms.
Fixes: QTBUG-113324
Pick-to: 6.5 6.5.1
Change-Id: Ib266e2cf67e9336fb206735b8b2418fccd8f7b00
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Added install-ffmpeg-android script for the android cross-compile
Removed android stuff from install-ffmpeg
Changed the yaml variables to include the target arch
Added the arm64 target arch
Task-number: QTQAINFRA-5476
Pick-to: 6.5
Change-Id: Id9609ed0427f2fc42f7f27e7787a81ad145f59be
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Checked the basic functionality on macOS, linux, and windows.
To be tested in detail.
Pick-to: 6.5
Change-Id: I109f52ab33d58088332a3885c83d622815edd22e
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
This patch configures FFmpeg with network support. This enables QtMM
to handle network source such as HTTP, HTTPS, or RTSP.
Details:
- on macOS and windows ffmpeg uses native security backend so we don't
include openssl to the build. Additional patch for linking
with the security backend is in QtMM commit under the same task.
- on linux we add openssl; for all CI linux platforms libssl-dev is
installed.
Task-number: QTBUG-110708
Pick-to: 6.5
Change-Id: I80a7dfda702c4d554df3a7380aac642890a28b94
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Need to build protobuf and gRPC libraries with PIC/PIE to make them
compatible with Qt libraries and executables that are build with
PIC PIE.
Change-Id: Ie830f359e9e0fa15af65b96330edbf7f3f52df9b
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Konrad Kujawa <konrad.kujawa@qt.io>
After ffmpeg was removed on Android targets following QTBUG-110172,
this patch enables it after fixing the failing test.
Task-number: QTBUG-110453
Pick-to: 6.4 6.5
Change-Id: I5598a9b72d06af6664455e933129a08192afac15
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Libclang version is built with Ubuntu 22.04 on it, others still
keep old one which is built with Ubuntu 20.04.
Pick-to: 6.5
Task-number: QTQAINFRA-4926
Change-Id: I47bb49c1efecab6863ae52d3acf7eb47bdc47c35
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
What's done:
- ffmpeg build added to OpenSuse platforms
- installing of yasm moved to packages install file in
order to get rid of OS checkings
Pick-to: 6.5
Change-Id: I256f19a03e7f01d27923b083b63d9a6b6a5f29b4
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Some issues have been fixed in ffmpeg 5.1, e.g, with videotoolbox.
So the update at least fixes our playback
of some video formats on macos, e.g. provided in the related bug.
After the update I tested the basic functionality on windows,
linux, macOS, and run CI tests, which are OK.
Task-number: QTBUG-98102
Pick-to: 6.5 6.4
Change-Id: I72f45780e1c3983d6a1941db2b833b78784b90de
Reviewed-by: Samuel Mira <samuel.mira@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
This will replace RHEL 8
Task-number: QTQAINFRA-5111
Change-Id: Ib65e9b7a2afa85418d5113261bc83ba915b2bce0
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
3rd party dependencies should be built using the same minimum deployment
target as Qt uses for compatibility.
Change-Id: I2edb2c19b90757898f6dcb76ad60602ae2249ebc
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
The `libclang_version` variable is now updated to the current version, 15.0.0,
in both "coin/provisioning/common/unix/libclang.sh" and
"coin/provisioning/common/windows/libclang.ps1".
The naming of the artifacts for the provided library was slightly
changed from previous versions.
Before, the version number would contain two integers separated by a
dot.
The generated artifact would be named after this version number, with
the dot removed.
That is, for example, for version 12.0, a release artifact would be
called "libclang-release_120.*".
The updated two version uses a three segments version number and,
furthermore, the artifacts name do not collapse the separating dots such
that a release artifact would be called "libclang-release_15.0.0.*".
To support the new naming scheme, some processing was removed from both
provisioning scripts.
For Windows, the line removing all dots from the `libclang_version`
variable was removed.
For Unix, the removal of the dots in the `libclang_version`
variable when expanding the variable to generate the target urls to
retrieve the artifact was removed, using the bare value of the variable
itself.
For Unix provisioning, the artifacts for some of the platform, namely
"CentOS" and "Ubuntu 22.04", are not provided anymore.
"CentOS" was replaced by "Rhel8.4" on "gcc10.0", hence the target url
for the redhat platform was modified based on the new name.
The "Ubuntu 22.04" artifacts were not provided, such that the platform
was removed.
The sha1 of the target artifacts on both provisioning script was updated
for all platforms.
Task-number: QTBUG-107199
Pick-to: 6.4
Change-Id: I873680825b0953e897c610fb0b47f3cd90625646
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
I'm not sure where the emscripten-$version came from, maybe that's
how it used to be? In any case, in the current version (3.1.x),
the installation folder is in upstream/emscripten, so add PATH
there to access all emscripten utils.
Pick-to: 6.4
Change-Id: I648feae21bc5caecc3f0bf0a7d16238680a85590
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
OpenSSL 3 is default version when installing OpenSSL with yum. We need
to use OpenSSL 3 also with Android
Change-Id: If283c68d00d9a41131044fe245b5e84b39fd4744
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
We need to verify latest Android NDK version in all
Qt6 branches and we need to retain the NDK version we
had when the specific branch was released at the first time.
Verification of the latest NDK will be done during integrations
in 'dev' branch and with older brances it will be done using
nightly build targets
Task-number: QTQAINFRA-4990
Change-Id: I2a96e419d403820f55f4244230c28ad09dc9095b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Cmake environment variable need to be read from .bash_profile
(or .bashrc) instead of .profile with Ubuntu 22.04
Change-Id: Ic0589666e48946ba05366304407a0e5824b27a2c
Reviewed-by: Liang Qi <liang.qi@qt.io>
Use correct protobuf project name for provisioning scripts.
This also should trigger provisioning for all the involved platforms.
Change-Id: I4cfa74c1d41f497db528ee3ae152db1d51de821a
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Enable protobuf provisioning for all linux platforms, since it's
required to build qtbase with protobuf support.
Delete install_protobuff for macos 10.14 since it's not used and
wouldn't build without special casing.
Change-Id: I9c7dea876c45dbcbfc3110b106ae683bbe9179ec
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Update Squish to 7.0.1, include versions with Qt6.3 and 6.2 support.
Pick-to: 6.4
Pick-to: 6.3
Change-Id: I2bd7cd51a41befdbf2ef242eb72c2c2add84f733
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Targets will be non-blocking and only in nightly run for now
Task-number: QTQAINFRA-4926
Change-Id: I7b229c1ccc34da4f1843dac3c25e19f7df819489
Reviewed-by: Toni Saario <toni.saario@qt.io>
The sccache tends to fail every now and then. Adding a wrapper
which calls build tools directly if first call with sccacche fails.
Task-number: COIN-740
Pick-to: 6.2 6.3 6.4
Change-Id: Ic03cf991da585d1569387118183763497ea73b72
Reviewed-by: Toni Saario <toni.saario@qt.io>
This patch modifies linux/ffmpeg-install.sh to work also for macOS.
The FFmpeg libraries are installed under /usr/local both for Linux
and macOS.
Since macOS x64 does not have the lzma lib for arm64 architecture
installed by default, I disable this libraries for FFmpeg. This
only affects the TIFF image decoder that we do not use.
Added the execute permission to the ubuntu scripts.
Change-Id: Ib8623c6a9bcdd24c89045ede0494839fb9cd2ecc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This also fixes Android OpenSSL installation
NDK update will be added only to dev and 6.3 branches
Task-number: QTQAINFRA-4837
Change-Id: I1233217e71f345d30f3dec83d7477d3c6e3b6c2d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>