[vlc-devel] [PATCH 4/9] contrib: qt: update qt version to 15.0
Alexandre Janniaux
ajanni at videolabs.io
Fri Aug 28 17:25:08 CEST 2020
Hi,
Maybe this commit can add more information. I guess the
contribs will use 5.15 because it's more efficient but
that older Qt version would still work for linux in
particular?
Regards,
--
Alexandre Janniaux
Videolabs
On Fri, Aug 28, 2020 at 04:25:51PM +0200, Pierre Lamot wrote:
> ---
> ...er-lower-value-when-rounding-fractio.patch | 26 ----------
> ...cross-compilation-of-angle-with-wine.patch | 4 +-
> contrib/src/qt/AddStaticLink.sh | 2 +-
> contrib/src/qt/SHA512SUMS | 2 +-
> ...pkgconfig-file-and-dependency-naming.patch | 51 -------------------
> contrib/src/qt/rules.mak | 6 +--
> contrib/src/qtdeclarative/SHA512SUMS | 2 +-
> contrib/src/qtdeclarative/rules.mak | 19 +++++--
> contrib/src/qtgraphicaleffects/SHA512SUMS | 2 +-
> contrib/src/qtgraphicaleffects/rules.mak | 4 +-
> contrib/src/qtquickcontrols2/SHA512SUMS | 2 +-
> contrib/src/qtquickcontrols2/rules.mak | 4 +-
> contrib/src/qtsvg/SHA512SUMS | 2 +-
> contrib/src/qtsvg/rules.mak | 4 +-
> modules/gui/qt/qt.cpp | 7 +++
> 15 files changed, 37 insertions(+), 100 deletions(-)
> delete mode 100644 contrib/src/qt/0001-Windows-QPA-prefer-lower-value-when-rounding-fractio.patch
> delete mode 100644 contrib/src/qt/fix-mingw-pkgconfig-file-and-dependency-naming.patch
>
> diff --git a/contrib/src/qt/0001-Windows-QPA-prefer-lower-value-when-rounding-fractio.patch b/contrib/src/qt/0001-Windows-QPA-prefer-lower-value-when-rounding-fractio.patch
> deleted file mode 100644
> index 100e8033f0..0000000000
> --- a/contrib/src/qt/0001-Windows-QPA-prefer-lower-value-when-rounding-fractio.patch
> +++ /dev/null
> @@ -1,26 +0,0 @@
> -From cf632f7a1a3a36b91d16ac9019620434ebda9e24 Mon Sep 17 00:00:00 2001
> -From: VideoLAN Buildbot <buildbot at videolan.org>
> -Date: Tue, 13 Feb 2018 09:31:44 +0000
> -Subject: [PATCH 1/2] Windows QPA: prefer lower value when rounding fractional
> - scaling
> -
> ----
> - src/plugins/platforms/windows/qwindowsscreen.cpp | 2 +-
> - 1 file changed, 1 insertion(+), 1 deletion(-)
> -
> -diff --git a/src/plugins/platforms/windows/qwindowsscreen.cpp b/src/plugins/platforms/windows/qwindowsscreen.cpp
> -index d56dc870ea..51c321f867 100644
> ---- a/src/plugins/platforms/windows/qwindowsscreen.cpp
> -+++ b/src/plugins/platforms/windows/qwindowsscreen.cpp
> -@@ -260,7 +260,7 @@ qreal QWindowsScreen::pixelDensity() const
> - // the pixel density since it is reflects the Windows UI scaling.
> - // High DPI auto scaling should be disabled when the user chooses
> - // small fonts on a High DPI monitor, resulting in lower logical DPI.
> -- return qMax(1, qRound(logicalDpi().first / 96));
> -+ return qMax(1., ceil(logicalDpi().first / 96. - 0.5));
> - }
> -
> - /*!
> ---
> -2.15.2 (Apple Git-101.1)
> -
> diff --git a/contrib/src/qt/0003-allow-cross-compilation-of-angle-with-wine.patch b/contrib/src/qt/0003-allow-cross-compilation-of-angle-with-wine.patch
> index 137dd6e654..f33104b478 100644
> --- a/contrib/src/qt/0003-allow-cross-compilation-of-angle-with-wine.patch
> +++ b/contrib/src/qt/0003-allow-cross-compilation-of-angle-with-wine.patch
> @@ -30,8 +30,8 @@ index 44140bc..53f4984 100644
> "angle": {
> "label": "ANGLE",
> "autoDetect": "features.opengles2 || features.opengl-dynamic",
> -- "condition": "features.dxguid && tests.fxc && (features.direct3d9 || (config.winrt && features.direct3d11 && libs.d3dcompiler))",
> -+ "condition": "features.dxguid && tests.fxc && (features.direct3d9 || (features.direct3d11 && libs.d3dcompiler))",
> +- "condition": "!features.opengl-desktop && features.dxguid && tests.fxc && (features.direct3d9 || (config.winrt && features.direct3d11 && libs.d3dcompiler))",
> ++ "condition": "!features.opengl-desktop && features.dxguid && tests.fxc && (features.direct3d9 || (features.direct3d11 && libs.d3dcompiler))",
> "output": [
> "publicFeature",
> { "type": "define", "name": "QT_OPENGL_ES_2_ANGLE" },
> diff --git a/contrib/src/qt/AddStaticLink.sh b/contrib/src/qt/AddStaticLink.sh
> index e733701a02..37749477d5 100755
> --- a/contrib/src/qt/AddStaticLink.sh
> +++ b/contrib/src/qt/AddStaticLink.sh
> @@ -33,7 +33,7 @@ fi
>
> # Get the links flags necessary to use the plugin from the installed PRL file of the plugin
> # replace hardcoded pathes by {libdir}
> -LIBS=$(sed -e "/QMAKE_PRL_LIBS/ { \
> +LIBS=$(sed -e "/QMAKE_PRL_LIBS =/ { \
> s/QMAKE_PRL_LIBS =//; \
> s@$PREFIX/lib@\${libdir}@g; \
> s@\$\$\[QT_INSTALL_LIBS\]@\${libdir}@g;" -e "p" \
> diff --git a/contrib/src/qt/SHA512SUMS b/contrib/src/qt/SHA512SUMS
> index 72ee6cc797..8e0ce2bcaf 100644
> --- a/contrib/src/qt/SHA512SUMS
> +++ b/contrib/src/qt/SHA512SUMS
> @@ -1 +1 @@
> -c8b90e50ec1824236541273b81024f1332c604748a038a48bc377b4c8e0886bfc27132990758abfd8ab9ea2aa5f1e42181ff369a0df4bc879dad0ef95868fde3 qtbase-everywhere-src-5.12.7.tar.xz
> \ No newline at end of file
> +c584d69e49f4959d9b8541f820f5ff1e6d1599697ad16976b47cbaaa902fc83e1ca4ae57d56d13574e42e5f602d4420245ad7fcfc13e224e10d4bbad6a537d1a qtbase-everywhere-src-5.15.0.tar.xz
> \ No newline at end of file
> diff --git a/contrib/src/qt/fix-mingw-pkgconfig-file-and-dependency-naming.patch b/contrib/src/qt/fix-mingw-pkgconfig-file-and-dependency-naming.patch
> deleted file mode 100644
> index 4660f3ca76..0000000000
> --- a/contrib/src/qt/fix-mingw-pkgconfig-file-and-dependency-naming.patch
> +++ /dev/null
> @@ -1,51 +0,0 @@
> -From a0d8fb4ac3cb7bafdb39f340055eacee4f957513 Mon Sep 17 00:00:00 2001
> -From: Kai Pastor <dg0yt at darc.de>
> -Date: Wed, 30 Jan 2019 07:36:51 +0100
> -Subject: [PATCH] Fix mingw pkgconfig file and dependency naming
> -
> -This change adds the correct suffix to debug mode .pc filenames for
> -MinGW and also to the Qt libraries listed in the `Requires` field.
> -The filename adjustment fixes the accidental overwriting of release
> -mode .pc files with the debug mode variant which required the wrong
> -variant of the libraries when `debug_and_release` is active.
> -
> -Note that macOS also supports the `debug_and_release' configuration
> -but may use the regular library names together with DYLD_IMAGE_SUFFIX.
> -Creation of *_debug.pc files is turned off as they're identical to their
> -non-debug counterparts.
> -
> -[ChangeLog][Platform Specific Changes][MinGW] Added a suffix to debug
> -mode pkgconfig files.
> -
> -Task-number: QTBUG-4155
> -Change-Id: I221c2dae51d7bd011836cb03945631a43180d7b5
> -Reviewed-by: Kai Koehne <kai.koehne at qt.io>
> ----
> - mkspecs/features/qt_module.prf | 6 +++---
> - 1 file changed, 3 insertions(+), 3 deletions(-)
> -
> -diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
> -index a52a4486bc5..213556904d2 100644
> ---- a/mkspecs/features/qt_module.prf
> -+++ b/mkspecs/features/qt_module.prf
> -@@ -264,7 +264,7 @@ load(qt_installs)
> - load(qt_targets)
> -
> - # this builds on top of qt_common
> --!internal_module:if(unix|mingw) {
> -+!internal_module:if(unix|mingw):!if(darwin:debug_and_release:CONFIG(debug, debug|release)) {
> - CONFIG += create_pc
> - QMAKE_PKGCONFIG_DESTDIR = pkgconfig
> - host_build: \
> -@@ -281,9 +281,9 @@ load(qt_targets)
> - QMAKE_PKGCONFIG_CFLAGS += -I${includedir}/$$section(inc, /, 1, 1)
> - }
> - QMAKE_PKGCONFIG_NAME = $$replace(TARGET, ^Qt, "Qt$$QT_MAJOR_VERSION ")
> -- QMAKE_PKGCONFIG_FILE = $$replace(TARGET, ^Qt, Qt$$QT_MAJOR_VERSION)
> -+ QMAKE_PKGCONFIG_FILE = $$replace(TARGET, ^Qt, Qt$$QT_MAJOR_VERSION)$$qtPlatformTargetSuffix()
> - for(i, MODULE_DEPENDS): \
> -- QMAKE_PKGCONFIG_REQUIRES += $$replace(QT.$${i}.name, ^Qt, Qt$$section(QT.$${i}.VERSION, ., 0, 0))
> -+ QMAKE_PKGCONFIG_REQUIRES += $$replace(QT.$${i}.name, ^Qt, Qt$$section(QT.$${i}.VERSION, ., 0, 0))$$qtPlatformTargetSuffix()
> - isEmpty(QMAKE_PKGCONFIG_DESCRIPTION): \
> - QMAKE_PKGCONFIG_DESCRIPTION = $$replace(TARGET, ^Qt, "Qt ") module
> - pclib_replace.match = $$lib_replace.match
> diff --git a/contrib/src/qt/rules.mak b/contrib/src/qt/rules.mak
> index 0a3089c59d..dc5fe2fe48 100644
> --- a/contrib/src/qt/rules.mak
> +++ b/contrib/src/qt/rules.mak
> @@ -1,7 +1,7 @@
> # Qt
>
> -QT_VERSION_MAJOR := 5.12
> -QT_VERSION := $(QT_VERSION_MAJOR).7
> +QT_VERSION_MAJOR := 5.15
> +QT_VERSION := $(QT_VERSION_MAJOR).0
> # Insert potential -betaX suffix here:
> QT_VERSION_FULL := $(QT_VERSION)
> QT_URL := https://download.qt.io/official_releases/qt/$(QT_VERSION_MAJOR)/$(QT_VERSION_FULL)/submodules/qtbase-everywhere-src-$(QT_VERSION_FULL).tar.xz
> @@ -30,7 +30,6 @@ qt: qtbase-everywhere-src-$(QT_VERSION_FULL).tar.xz .sum-qt
> $(UNPACK)
> $(APPLY) $(SRC)/qt/0001-allow-to-pass-user-defined-compilation-flags-to-qt.patch
> ifdef HAVE_WIN32
> - $(APPLY) $(SRC)/qt/0001-Windows-QPA-prefer-lower-value-when-rounding-fractio.patch
> $(APPLY) $(SRC)/qt/0002-Windows-QPA-Disable-systray-notification-sounds.patch
> ifndef HAVE_WIN64
> $(APPLY) $(SRC)/qt/0001-disable-qt_random_cpu.patch
> @@ -39,7 +38,6 @@ endif
> $(APPLY) $(SRC)/qt/0007-ANGLE-remove-static-assert-that-can-t-be-evaluated-b.patch
> $(APPLY) $(SRC)/qt/0008-ANGLE-disable-ANGLE_STD_ASYNC_WORKERS-when-compiling.patch
> $(APPLY) $(SRC)/qt/0009-Add-KHRONOS_STATIC-to-allow-static-linking-on-Windows.patch
> - $(APPLY) $(SRC)/qt/fix-mingw-pkgconfig-file-and-dependency-naming.patch
>
> ifdef HAVE_CROSS_COMPILE
> $(APPLY) $(SRC)/qt/0003-allow-cross-compilation-of-angle-with-wine.patch
> diff --git a/contrib/src/qtdeclarative/SHA512SUMS b/contrib/src/qtdeclarative/SHA512SUMS
> index 23789ee5bd..6b9fd12bcb 100644
> --- a/contrib/src/qtdeclarative/SHA512SUMS
> +++ b/contrib/src/qtdeclarative/SHA512SUMS
> @@ -1 +1 @@
> -119155aed8ad6e74f7be2d0e44bf630fc493227c6ad0fdbd9a85bba8770939a0dd6c21a8583851e5adf243d51bdeb64bf79e1c4898176898e05a3897052315b6 qtdeclarative-everywhere-src-5.12.7.tar.xz
> \ No newline at end of file
> +0ec3403286efea6d6ac975ea6bd4464ea656c031f5f27b852235fd69d316a627ac3ff2ea2c3cca0a5375ca278f592df3ecade4e98aa15ec92816a16927f56e5e qtdeclarative-everywhere-src-5.15.0.tar.xz
> \ No newline at end of file
> diff --git a/contrib/src/qtdeclarative/rules.mak b/contrib/src/qtdeclarative/rules.mak
> index a0520733d5..aade187644 100644
> --- a/contrib/src/qtdeclarative/rules.mak
> +++ b/contrib/src/qtdeclarative/rules.mak
> @@ -1,7 +1,7 @@
> # QtDeclarative
>
> -QTDECLARATIVE_VERSION_MAJOR := 5.12
> -QTDECLARATIVE_VERSION := $(QTDECLARATIVE_VERSION_MAJOR).7
> +QTDECLARATIVE_VERSION_MAJOR := 5.15
> +QTDECLARATIVE_VERSION := $(QTDECLARATIVE_VERSION_MAJOR).0
> QTDECLARATIVE_URL := http://download.qt.io/official_releases/qt/$(QTDECLARATIVE_VERSION_MAJOR)/$(QTDECLARATIVE_VERSION)/submodules/qtdeclarative-everywhere-src-$(QTDECLARATIVE_VERSION).tar.xz
>
> DEPS_qtdeclarative += qt $(DEPS_qt)
> @@ -33,16 +33,25 @@ QT_DECLARATIVE_CONFIG := \
> cd $</src && $(PREFIX)/lib/qt5/bin/qmake -o Makefile src.pro
> # Build & install only what we require
> # Invoke the build rules one at a time as some rule dependencies seem to be broken
> - cd $< && $(MAKE) -C src sub-quick-make_first-ordered sub-qmldevtools-make_first-ordered
> + cd $< && $(MAKE) -C src sub-quick-make_first-ordered \
> + sub-qmlmodels-make_first-ordered \
> + sub-qmldevtools-make_first-ordered \
> + sub-qmlworkerscript-make_first-ordered
> # We don't use particles, but the import target (which generates the qtquick2plugin.a) require
> # the particle module to be built
> cd $< && $(MAKE) -C src sub-particles-make_first-ordered
> - cd $< && $(MAKE) -C src sub-quick-install_subtargets sub-qml-install_subtargets sub-quickwidgets-install_subtargets sub-imports-install_subtargets
> - cd $</tools && $(PREFIX)/host/bin/qmake -o Makefile tools.pro
> + cd $< && $(MAKE) -C src sub-quick-install_subtargets \
> + sub-qml-install_subtargets \
> + sub-quickwidgets-install_subtargets \
> + sub-imports-install_subtargets \
> + sub-qmlmodels-install_subtargets \
> + sub-qmlworkerscript-install_subtargets
> + cd $</tools && $(PREFIX)/lib/qt5/bin/qmake -o Makefile tools.pro
> cd $< && $(MAKE) -C tools sub-qmlcachegen-install_subtargets
> $(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Quick qml/QtQuick.2 qtquick2plugin
> $(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Quick qml/QtQuick/Layouts qquicklayoutsplugin
> $(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Quick qml/QtQuick/Window.2 windowplugin
> + $(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Qml qml/QtQml qmlplugin
> $(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Qml qml/QtQml/Models.2 modelsplugin
>
> touch $@
> diff --git a/contrib/src/qtgraphicaleffects/SHA512SUMS b/contrib/src/qtgraphicaleffects/SHA512SUMS
> index 7fdf0f3920..558ca97cf7 100644
> --- a/contrib/src/qtgraphicaleffects/SHA512SUMS
> +++ b/contrib/src/qtgraphicaleffects/SHA512SUMS
> @@ -1 +1 @@
> -fd6b59198e834a9e36e58445055610ac6dcfcb96d405d2dc294e0397460d6fdd119cfd4b0f29f43009154d623071dcb335223e33872fbfb5b6004abe9b6f5a55 qtgraphicaleffects-everywhere-src-5.12.7.tar.xz
> \ No newline at end of file
> +62b18a9032bc30468ad4dc95648b1234a71240467fe8ff34a76bc36ed4613eea279dfc6fe0bf8e7734143e8b6ec6442f5e2f92338c2233f4e396bd333e67bc0c qtgraphicaleffects-everywhere-src-5.15.0.tar.xz
> \ No newline at end of file
> diff --git a/contrib/src/qtgraphicaleffects/rules.mak b/contrib/src/qtgraphicaleffects/rules.mak
> index 43e9294e03..0ef762d819 100644
> --- a/contrib/src/qtgraphicaleffects/rules.mak
> +++ b/contrib/src/qtgraphicaleffects/rules.mak
> @@ -1,7 +1,7 @@
> # QtGraphicalEffects
>
> -QTGE_VERSION_MAJOR := 5.12
> -QTGE_VERSION := $(QTGE_VERSION_MAJOR).7
> +QTGE_VERSION_MAJOR := 5.15
> +QTGE_VERSION := $(QTGE_VERSION_MAJOR).0
> QTGE_URL := http://download.qt.io/official_releases/qt/$(QTGE_VERSION_MAJOR)/$(QTGE_VERSION)/submodules/qtgraphicaleffects-everywhere-src-$(QTGE_VERSION).tar.xz
>
> DEPS_qtgraphicaleffects += qtdeclarative $(DEPS_qtdeclarative)
> diff --git a/contrib/src/qtquickcontrols2/SHA512SUMS b/contrib/src/qtquickcontrols2/SHA512SUMS
> index b61611d884..867b12f8b0 100644
> --- a/contrib/src/qtquickcontrols2/SHA512SUMS
> +++ b/contrib/src/qtquickcontrols2/SHA512SUMS
> @@ -1 +1 @@
> -bd469316594e09da064fc6792c08ee87f345ab8c27bd33ae3fc38d184bebabf1ed824147eb960ac2700c67a683097c7615aebb0f717dc1a5ff1b330f27554ae9 qtquickcontrols2-everywhere-src-5.12.7.tar.xz
> \ No newline at end of file
> +560014b882ef9d274cb1532025cae79987eec3569541e111e91f047261fcd7f26fcb40689d8dd6921ae26fbf9cdee60a87d3a1c7212e547529ff4adf9c5cf136 qtquickcontrols2-everywhere-src-5.15.0.tar.xz
> \ No newline at end of file
> diff --git a/contrib/src/qtquickcontrols2/rules.mak b/contrib/src/qtquickcontrols2/rules.mak
> index d158909cda..2e75980509 100644
> --- a/contrib/src/qtquickcontrols2/rules.mak
> +++ b/contrib/src/qtquickcontrols2/rules.mak
> @@ -1,7 +1,7 @@
> # QtQuickControls 2
>
> -QTQC2_VERSION_MAJOR := 5.12
> -QTQC2_VERSION := $(QTQC2_VERSION_MAJOR).7
> +QTQC2_VERSION_MAJOR := 5.15
> +QTQC2_VERSION := $(QTQC2_VERSION_MAJOR).0
> QTQC2_URL := http://download.qt.io/official_releases/qt/$(QTQC2_VERSION_MAJOR)/$(QTQC2_VERSION)/submodules/qtquickcontrols2-everywhere-src-$(QTQC2_VERSION).tar.xz
>
> ifdef HAVE_WIN32
> diff --git a/contrib/src/qtsvg/SHA512SUMS b/contrib/src/qtsvg/SHA512SUMS
> index 40a1300d02..e813045e49 100644
> --- a/contrib/src/qtsvg/SHA512SUMS
> +++ b/contrib/src/qtsvg/SHA512SUMS
> @@ -1 +1 @@
> -13e6053c99cc0f5b31bc48df0a8b93cfa26e49f3aa2732850747c7a8b3e78ff0a1c620e2a8729d291b5a6cf935d9a481f361ec9f6a78ae090ca997b344786f47 qtsvg-everywhere-src-5.12.7.tar.xz
> \ No newline at end of file
> +24e5b3000ee6657e6c579026d979322aafaa42b3081e07bae17cf6f276a45a9d830db6b23fb7d30d6ff4f32f63c88e258dc55e193c45de8e4069aad14cfda71b qtsvg-everywhere-src-5.15.0.tar.xz
> \ No newline at end of file
> diff --git a/contrib/src/qtsvg/rules.mak b/contrib/src/qtsvg/rules.mak
> index 6924865dea..813764cd09 100644
> --- a/contrib/src/qtsvg/rules.mak
> +++ b/contrib/src/qtsvg/rules.mak
> @@ -1,7 +1,7 @@
> # Qt
>
> -QTSVG_VERSION_MAJOR := 5.12
> -QTSVG_VERSION := $(QTSVG_VERSION_MAJOR).7
> +QTSVG_VERSION_MAJOR := 5.15
> +QTSVG_VERSION := $(QTSVG_VERSION_MAJOR).0
> QTSVG_URL := https://download.qt.io/official_releases/qt/$(QTSVG_VERSION_MAJOR)/$(QTSVG_VERSION)/submodules/qtsvg-everywhere-src-$(QTSVG_VERSION).tar.xz
>
> DEPS_qtsvg += qt $(DEPS_qt)
> diff --git a/modules/gui/qt/qt.cpp b/modules/gui/qt/qt.cpp
> index f0d361c9ee..bc8fa0fb80 100644
> --- a/modules/gui/qt/qt.cpp
> +++ b/modules/gui/qt/qt.cpp
> @@ -85,6 +85,10 @@ extern "C" char **environ;
> Q_IMPORT_PLUGIN(QtGraphicalEffectsPlugin)
> Q_IMPORT_PLUGIN(QtGraphicalEffectsPrivatePlugin)
>
> + #if QT_VERSION >= QT_VERSION_CHECK(5,15,0)
> + Q_IMPORT_PLUGIN(QtQmlPlugin)
> + #endif
> +
> #if !HAS_QT56
> Q_IMPORT_PLUGIN(AccessibleFactory)
> #endif
> @@ -574,6 +578,9 @@ static void *Thread( void *obj )
> QApplication::setAttribute( Qt::AA_UseHighDpiPixmaps );
> #endif
>
> +#if QT_VERSION >= QT_VERSION_CHECK(5,14,0)
> + QApplication::setHighDpiScaleFactorRoundingPolicy( Qt::HighDpiScaleFactorRoundingPolicy::RoundPreferFloor );
> +#endif
> // at the moment, the vout is created in another thread than the rendering thread
> QApplication::setAttribute( Qt::AA_DontCheckOpenGLContextThreadAffinity );
> QQuickWindow::setDefaultAlphaBuffer(true);
> --
> 2.25.1
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
More information about the vlc-devel
mailing list