[vlc-commits] [Git][videolan/vlc][master] 13 commits: configure: detect Qt native tools in the contrib native path
Steve Lhomme (@robUx4)
gitlab at videolan.org
Wed Apr 3 11:21:51 UTC 2024
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
6460ab7f by Steve Lhomme at 2024-04-03T10:17:47+00:00
configure: detect Qt native tools in the contrib native path
In addition to the regular PATH.
- - - - -
b60f7b70 by Steve Lhomme at 2024-04-03T10:17:47+00:00
configure: detect QtQml.WorkerScript is present
It is not always present with QtQml.
- - - - -
04ec2787 by Steve Lhomme at 2024-04-03T10:17:47+00:00
contrib: qt: build Qt tools separately as tools for cross-compilation
So they are built for the native platform even when using prebuilt packages.
- - - - -
d4691167 by Steve Lhomme at 2024-04-03T10:17:47+00:00
contrib: spirv-tools: only build when qt is selected
- - - - -
94d9c5c2 by Steve Lhomme at 2024-04-03T10:17:47+00:00
contrib: fxc2: only build when qt is selected for windows
- - - - -
71e69d3f by Steve Lhomme at 2024-04-03T10:17:47+00:00
contrib: qt: remove unneeded copies
Either they are in the path or the configure script will look for them in contribs.
- - - - -
52b62044 by Steve Lhomme at 2024-04-03T10:17:47+00:00
contrib: qtdeclarative: factorize the enable/disabled features
- - - - -
0fec1bc3 by Steve Lhomme at 2024-04-03T10:17:47+00:00
contrib: qt: use precompiled headers
Except for the files we patch with WINVER.
- - - - -
eed7b138 by Steve Lhomme at 2024-04-03T10:17:47+00:00
qt: mark generated sources with BUILT_SOURCES
- - - - -
89997717 by Steve Lhomme at 2024-04-03T10:17:47+00:00
CI: use latest vlc-debian-unstable with qml6-module-qtqml-workerscript
- - - - -
220f64aa by Steve Lhomme at 2024-04-03T10:17:47+00:00
CI: fix gcovr with qt6-vlc_qrc.cpp
- - - - -
e830c2de by Steve Lhomme at 2024-04-03T10:17:47+00:00
contrib: qtvlcdep: only build when qt is selected
- - - - -
41bbcde5 by Steve Lhomme at 2024-04-03T10:17:47+00:00
win32: build.sh: show the list of packages after the prebuilt is done
So we know the tools that need to be built from there.
- - - - -
11 changed files:
- configure.ac
- contrib/src/fxc2/rules.mak
- + contrib/src/qt/0001-disable-precompiled-headers-when-forcing-WINVER-inte.patch
- contrib/src/qt/rules.mak
- contrib/src/qtdeclarative/rules.mak
- contrib/src/qtshadertools/rules.mak
- contrib/src/qtvlcdeps/rules.mak
- contrib/src/spirv-tools/rules.mak
- extras/ci/gitlab-ci.yml
- extras/package/win32/build.sh
- modules/gui/qt/Makefile.am
Changes:
=====================================
configure.ac
=====================================
@@ -4000,7 +4000,11 @@ have_qt_core_private="no"
AS_IF([test "${enable_qt}" != "no"], [
dnl Note that Qt < 6.2.5 does not provide pc files!
QT_MINIMUM_VERSION=6.2
- PKG_CHECK_MODULES([QT], m4_foreach([pkg], [Qt6Core Qt6Widgets Qt6Gui Qt6Qml Qt6QmlModels Qt6Quick Qt6QuickControls2 Qt6QuickLayouts Qt6QuickTemplates2 Qt6ShaderTools Qt6Svg Qt6Network], [pkg >= ${QT_MINIMUM_VERSION}]), [
+ PKG_CHECK_MODULES([QT], m4_foreach([pkg], [
+ Qt6Core Qt6Widgets Qt6Gui Qt6Qml Qt6QmlModels Qt6QmlWorkerScript
+ Qt6Quick Qt6QuickControls2 Qt6QuickLayouts Qt6QuickTemplates2 Qt6ShaderTools
+ Qt6Svg Qt6Network
+ ], [pkg >= ${QT_MINIMUM_VERSION}]), [
QT_PREFIX_PATH="$(eval $PKG_CONFIG --variable=prefix Qt6Core)"
QT_PLUGINS_PATH="${QT_PREFIX_PATH}/plugins"
@@ -4021,13 +4025,56 @@ AS_IF([test "${enable_qt}" != "no"], [
QT_QML_LIBEXEC_DIRECTORY="$(eval $PKG_CONFIG --variable=libexecdir Qt6Qml)"
QT_SHADERTOOLS_BIN_DIRECTORY="$(eval $PKG_CONFIG --variable=bindir Qt6ShaderTools)"
+ dnl check native in contribs and keep the full path if found there
+ AC_MSG_CHECKING([if contribs provide qmake])
+ AS_IF([test -x "${CONTRIB_DIR}/qmake${BUILDEXEEXT}"], [
+ QMAKE="${CONTRIB_DIR}/qmake${BUILDEXEEXT}"
+ AC_MSG_RESULT([yes])
+ ],[
+ AC_MSG_RESULT([no])
+ ])
AC_PATH_PROGS(QMAKE, [qmake], qmake, ["${QT_BIN_DIRECTORY}"])
+ AC_MSG_CHECKING([if contribs provide moc])
+ AS_IF([test -x "${CONTRIB_DIR}/../libexec/moc${BUILDEXEEXT}"], [
+ MOC="${CONTRIB_DIR}/../libexec/moc${BUILDEXEEXT}"
+ AC_MSG_RESULT([yes])
+ ],[
+ AC_MSG_RESULT([no])
+ ])
AC_PATH_PROGS(MOC, [moc], moc, ["${QT_LIBEXEC_DIRECTORY}"])
+ AC_MSG_CHECKING([if contribs provide rcc])
+ AS_IF([test -x "${CONTRIB_DIR}/../libexec/rcc${BUILDEXEEXT}"], [
+ RCC="${CONTRIB_DIR}/../libexec/rcc${BUILDEXEEXT}"
+ AC_MSG_RESULT([yes])
+ ],[
+ AC_MSG_RESULT([no])
+ ])
AC_PATH_PROGS(RCC, [rcc], rcc, ["${QT_LIBEXEC_DIRECTORY}"])
+ AC_MSG_CHECKING([if contribs provide uic])
+ AS_IF([test -x "${CONTRIB_DIR}/../libexec/uic${BUILDEXEEXT}"], [
+ UIC="${CONTRIB_DIR}/../libexec/uic${BUILDEXEEXT}"
+ AC_MSG_RESULT([yes])
+ ],[
+ AC_MSG_RESULT([no])
+ ])
AC_PATH_PROGS(UIC, [uic], uic, ["${QT_LIBEXEC_DIRECTORY}"])
+ AC_MSG_CHECKING([if contribs provide qsb])
+ AS_IF([test -x "${CONTRIB_DIR}/../bin/qsb${BUILDEXEEXT}"], [
+ QSB="${CONTRIB_DIR}/../bin/qsb${BUILDEXEEXT}"
+ AC_MSG_RESULT([yes])
+ ],[
+ AC_MSG_RESULT([no])
+ ])
AC_PATH_PROGS(QSB, [qsb], qsb, ["${QT_SHADERTOOLS_BIN_DIRECTORY}"])
- AC_PATH_PROGS(QMLCACHEGEN, [qmlcachegen], no, ["${QT_QML_LIBEXEC_DIRECTORY}"])
+ AC_MSG_CHECKING([if contribs provide qmlcachegen])
+ AS_IF([test -x "${CONTRIB_DIR}/../libexec/qmlcachegen${BUILDEXEEXT}"], [
+ QMLCACHEGEN="${CONTRIB_DIR}/../libexec/qmlcachegen${BUILDEXEEXT}"
+ AC_MSG_RESULT([yes])
+ ],[
+ AC_MSG_RESULT([no])
+ ])
+ AC_PATH_PROGS(QMLCACHEGEN, [qmlcachegen], qmlcachegen, ["${QT_QML_LIBEXEC_DIRECTORY}"])
AS_IF([test "${QMLCACHEGEN}" = "no"], [
AC_MSG_WARN([qmlcachegen not found])
])
@@ -4037,6 +4084,7 @@ AS_IF([test "${enable_qt}" != "no"], [
--qmake "${QMAKE}" \
--modules \
QtQml.Models="" \
+ QtQml.WorkerScript="" \
QtQuick.Layouts="" \
QtQuick.Window="" \
QtQuick.Controls="" \
@@ -4045,7 +4093,7 @@ AS_IF([test "${enable_qt}" != "no"], [
AC_MSG_WARN([qt runtime dependencies are missing, disabling qt interface])
enable_qt="no"
])
-
+
PKG_CHECK_MODULES([QT_QUICK_TEST], [Qt6QuickTest >= ${QT_MINIMUM_VERSION}], [
AS_IF([test "$PYTHON3" != "no" && ${PYTHON3} ${srcdir}/buildsystem/check_qml_module.py --qmake "${QMAKE}" --modules QtTest=""], [
have_qt_quick_test="yes"
=====================================
contrib/src/fxc2/rules.mak
=====================================
@@ -2,6 +2,13 @@ FXC2_HASH := 654c29d62a02714ea0bacfb118c3e05127f846e0
FXC2_VERSION := git-$(FXC2_HASH)
FXC2_GITURL := $(GITHUB)/mozilla/fxc2.git
+ifeq ($(findstring qt,$(PKGS)),)
+# match with Qt targets
+ifdef HAVE_WIN32
+PKGS_TOOLS += fxc2
+endif
+endif
+
ifeq ($(call need_pkg,"fxc2"),)
PKGS_FOUND += fxc2
endif
=====================================
contrib/src/qt/0001-disable-precompiled-headers-when-forcing-WINVER-inte.patch
=====================================
@@ -0,0 +1,40 @@
+From d4f3ba3b1e5fdcbdca7ffe7f3903e5f47e312855 Mon Sep 17 00:00:00 2001
+From: Steve Lhomme <robux4_qt at ycbcr.xyz>
+Date: Tue, 2 Apr 2024 13:16:23 +0200
+Subject: [PATCH] disable precompiled headers when forcing WINVER internally
+
+Change-Id: I663194224b5b69540183d92ffe45425575b0752c
+---
+ src/plugins/platforms/direct2d/CMakeLists.txt | 2 ++
+ src/plugins/platforms/windows/CMakeLists.txt | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/src/plugins/platforms/direct2d/CMakeLists.txt b/src/plugins/platforms/direct2d/CMakeLists.txt
+index e21b230cd7..fc764e9c74 100644
+--- a/src/plugins/platforms/direct2d/CMakeLists.txt
++++ b/src/plugins/platforms/direct2d/CMakeLists.txt
+@@ -136,6 +136,8 @@ qt_internal_extend_target(QWindowsDirect2DIntegrationPlugin CONDITION QT_FEATURE
+ qt_internal_extend_target(QWindowsDirect2DIntegrationPlugin CONDITION QT_FEATURE_clipboard AND QT_FEATURE_draganddrop
+ SOURCES
+ ../windows/qwindowsdrag.cpp ../windows/qwindowsdrag.h
++ NO_PCH_SOURCES
++ ../windows/qwindowsdrag.cpp
+ )
+
+ qt_internal_extend_target(QWindowsDirect2DIntegrationPlugin CONDITION QT_FEATURE_tabletevent
+diff --git a/src/plugins/platforms/windows/CMakeLists.txt b/src/plugins/platforms/windows/CMakeLists.txt
+index ca1bbcb758..213fdcbff5 100644
+--- a/src/plugins/platforms/windows/CMakeLists.txt
++++ b/src/plugins/platforms/windows/CMakeLists.txt
+@@ -125,6 +125,8 @@ qt_internal_extend_target(QWindowsIntegrationPlugin CONDITION QT_FEATURE_clipboa
+ qt_internal_extend_target(QWindowsIntegrationPlugin CONDITION QT_FEATURE_clipboard AND QT_FEATURE_draganddrop
+ SOURCES
+ qwindowsdrag.cpp qwindowsdrag.h
++ NO_PCH_SOURCES
++ qwindowsdrag.cpp
+ )
+
+ qt_internal_extend_target(QWindowsIntegrationPlugin CONDITION QT_FEATURE_tabletevent
+--
+2.37.3.windows.1
+
=====================================
contrib/src/qt/rules.mak
=====================================
@@ -12,8 +12,12 @@ endif
ifdef HAVE_WIN32
PKGS += qt
endif
+ifneq ($(findstring qt,$(PKGS)),)
+PKGS_TOOLS += qt-tools
+endif
+PKGS_ALL += qt-tools
-DEPS_qt += freetype2 $(DEPS_freetype2) harfbuzz $(DEPS_harfbuzz) jpeg $(DEPS_jpeg) png $(DEPS_png) zlib $(DEPS_zlib) vulkan-headers $(DEPS_vulkan-headers)
+DEPS_qt = qt-tools freetype2 $(DEPS_freetype2) harfbuzz $(DEPS_harfbuzz) jpeg $(DEPS_jpeg) png $(DEPS_png) zlib $(DEPS_zlib) vulkan-headers $(DEPS_vulkan-headers)
ifdef HAVE_WIN32
DEPS_qt += d3d12 $(DEPS_d3d12) dcomp $(DEPS_dcomp)
endif
@@ -21,12 +25,21 @@ endif
ifeq ($(call need_pkg,"Qt6Core >= 6.6 Qt6Gui >= 6.6 Qt6Widgets >= 6.6 Qt6Network >= 6.6"),)
PKGS_FOUND += qt
endif
+ifndef HAVE_CROSS_COMPILE
+PKGS_FOUND += qt-tools
+endif
+ifeq ($(shell qt-cmake --version 2>/dev/null | head -1 | sed s/'.* '// | cut -d '.' -f -2),3.22)
+PKGS_FOUND += qt-tools
+endif
$(TARBALLS)/qtbase-everywhere-src-$(QTBASE_VERSION_FULL).tar.xz:
$(call download_pkg,$(QTBASE_URL), qt)
.sum-qt: qtbase-everywhere-src-$(QTBASE_VERSION_FULL).tar.xz
+.sum-qt-tools: .sum-qt
+ touch $@
+
qt: qtbase-everywhere-src-$(QTBASE_VERSION_FULL).tar.xz .sum-qt
$(UNPACK)
$(APPLY) $(SRC)/qt/0001-CMake-Place-resources-into-static-libraries-not-obje.patch
@@ -37,6 +50,7 @@ qt: qtbase-everywhere-src-$(QTBASE_VERSION_FULL).tar.xz .sum-qt
$(APPLY) $(SRC)/qt/0006-Do-not-include-D3D12MemAlloc.h-in-header-file.patch
$(APPLY) $(SRC)/qt/0007-Try-DCompositionCreateDevice3-first-if-available.patch
$(APPLY) $(SRC)/qt/0008-Try-to-satisfy-Windows-7-compatibility.patch
+ $(APPLY) $(SRC)/qt/0001-disable-precompiled-headers-when-forcing-WINVER-inte.patch
$(MOVE)
QTBASE_CONFIG := -release
@@ -71,25 +85,15 @@ QTBASE_NATIVE_CONFIG := -DQT_BUILD_EXAMPLES=FALSE -DQT_BUILD_TESTS=FALSE -DFEATU
-DFEATURE_texthtmlparser=OFF -DFEATURE_cssparser=OFF -DFEATURE_textodfwriter=OFF -DFEATURE_textmarkdownreader=OFF \
-DFEATURE_textmarkdownwriter=OFF -DINPUT_libb2=no -DFEATURE_harfbuzz=OFF -DFEATURE_freetype=OFF
-.qt: qt toolchain.cmake
-ifdef HAVE_CROSS_COMPILE
- # Native
+.qt-tools: BUILD_DIR=$</vlc_native
+.qt-tools: qt
$(CMAKECLEAN)
$(BUILDVARS) $(CMAKE_NATIVE) $(QTBASE_NATIVE_CONFIG)
+$(CMAKEBUILD)
$(CMAKEINSTALL)
+ touch $@
- # Note that libexec is treated as bin on Windows by Qt
-
- # MOC
- ln -sf $(BUILDPREFIX)/libexec/moc $(PREFIX)/bin/moc
-
- # RCC
- ln -sf $(BUILDPREFIX)/libexec/rcc $(PREFIX)/bin/rcc
-
- # UIC
- ln -sf $(BUILDPREFIX)/libexec/uic $(PREFIX)/bin/uic
-endif
+.qt: qt toolchain.cmake
$(CMAKECLEAN)
mkdir -p $(BUILD_DIR)
=====================================
contrib/src/qtdeclarative/rules.mak
=====================================
@@ -4,21 +4,39 @@ QTDECLARATIVE_VERSION_MAJOR := 6.6
QTDECLARATIVE_VERSION := $(QTDECLARATIVE_VERSION_MAJOR).2
QTDECLARATIVE_URL := $(QT)/$(QTDECLARATIVE_VERSION_MAJOR)/$(QTDECLARATIVE_VERSION)/submodules/qtdeclarative-everywhere-src-$(QTDECLARATIVE_VERSION).tar.xz
-DEPS_qtdeclarative += qt $(DEPS_qt) qtshadertools $(DEPS_qtshadertools)
+DEPS_qtdeclarative-tools := qt-tools $(DEPS_qt-tools)
+
+DEPS_qtdeclarative = qt $(DEPS_qt) qtshadertools $(DEPS_qtshadertools)
+ifdef HAVE_CROSS_COMPILE
+DEPS_qtdeclarative += qtdeclarative-tools $(DEPS_qtdeclarative-tools) qtshadertools-tools $(DEPS_qtshadertools-tools) spirv-tools $(DEPS_spirv-tools)
+endif
ifdef HAVE_WIN32
PKGS += qtdeclarative
endif
+ifneq ($(findstring qt,$(PKGS)),)
+PKGS_TOOLS += qtdeclarative-tools
+endif
+PKGS_ALL += qtdeclarative-tools
ifeq ($(call need_pkg,"Qt6Qml >= 6.6 Qt6Quick >= 6.6 Qt6QuickControls2 >= 6.6 Qt6QuickDialogs2 >= 6.6 Qt6QuickLayouts >= 6.6"),)
PKGS_FOUND += qtdeclarative
endif
+ifndef HAVE_CROSS_COMPILE
+PKGS_FOUND += qtdeclarative-tools
+endif
+ifeq ($(shell qml --version 2>/dev/null | head -1 | sed s/'.* '// | cut -d '.' -f -2),$(QTDECLARATIVE_VERSION_MAJOR))
+PKGS_FOUND += qtshadertools-tools
+endif
$(TARBALLS)/qtdeclarative-everywhere-src-$(QTDECLARATIVE_VERSION).tar.xz:
$(call download_pkg,$(QTDECLARATIVE_URL),qt)
.sum-qtdeclarative: qtdeclarative-everywhere-src-$(QTDECLARATIVE_VERSION).tar.xz
+.sum-qtdeclarative-tools: .sum-qtdeclarative
+ touch $@
+
qtdeclarative: qtdeclarative-everywhere-src-$(QTDECLARATIVE_VERSION).tar.xz .sum-qtdeclarative
$(UNPACK)
$(APPLY) $(SRC)/qtdeclarative/0001-Fix-incorrect-library-inclusion.patch
@@ -43,30 +61,24 @@ QT_DECLARATIVE_NATIVE_CONFIG := $(QT_DECLARATIVE_CONFIG) \
--no-feature-quick-particles \
--no-feature-quick-shadereffect \
--no-feature-quick-path \
- --no-feature-qml-network \
- -- -DFEATURE_qml_debug=OFF -DFEATURE_qml_profiler=OFF
+ --no-feature-qml-network
-.qtdeclarative: qtdeclarative toolchain.cmake
- mkdir -p $(PREFIX)/libexec
-ifdef HAVE_CROSS_COMPILE
- # Native
+QT_DECLARATIVE_FEATURES := -DFEATURE_qml_debug=OFF -DFEATURE_qml_profiler=OFF
+
+.qtdeclarative-tools: BUILD_DIR=$</vlc_native
+.qtdeclarative-tools: qtdeclarative
$(CMAKECLEAN)
mkdir -p $(BUILD_DIR)
- cd $(BUILD_DIR) && $(BUILDVARS) $(BUILDPREFIX)/bin/qt-configure-module $(BUILD_SRC) $(QT_DECLARATIVE_NATIVE_CONFIG)
+ cd $(BUILD_DIR) && $(BUILDVARS) $(BUILDPREFIX)/bin/qt-configure-module $(BUILD_SRC) $(QT_DECLARATIVE_NATIVE_CONFIG) -- $(QT_DECLARATIVE_FEATURES)
+$(CMAKEBUILD)
$(CMAKEINSTALL)
+ touch $@
- # Note that libexec is treated as bin on Windows by Qt
-
- # qmlcachegen
- ln -sf $(BUILDPREFIX)/libexec/qmlcachegen $(PREFIX)/bin/qmlcachegen
-
- # qmlimportscanner
- ln -sf $(BUILDPREFIX)/libexec/qmlimportscanner $(PREFIX)/bin/qmlimportscanner
-endif
+.qtdeclarative: qtdeclarative toolchain.cmake
+ mkdir -p $(PREFIX)/libexec
$(CMAKECLEAN)
mkdir -p $(BUILD_DIR)
- +cd $(BUILD_DIR) && $(PREFIX)/bin/qt-configure-module $(BUILD_SRC) $(QT_DECLARATIVE_CONFIG) -- -DFEATURE_qml_debug=OFF -DFEATURE_qml_profiler=OFF
+ +cd $(BUILD_DIR) && $(PREFIX)/bin/qt-configure-module $(BUILD_SRC) $(QT_DECLARATIVE_CONFIG) -- $(QT_DECLARATIVE_FEATURES)
+$(CMAKEBUILD)
$(CMAKEINSTALL)
=====================================
contrib/src/qtshadertools/rules.mak
=====================================
@@ -5,7 +5,12 @@ QTSHADERTOOLS_VERSION_MAJOR := 6.6
QTSHADERTOOLS_VERSION := $(QTSHADERTOOLS_VERSION_MAJOR).2
QTSHADERTOOLS_URL := $(QT)/$(QTSHADERTOOLS_VERSION_MAJOR)/$(QTSHADERTOOLS_VERSION)/submodules/qtshadertools-everywhere-src-$(QTSHADERTOOLS_VERSION).tar.xz
-DEPS_qtshadertools += qt $(DEPS_qt) spirv-tools $(DEPS_spirv-tools)
+DEPS_qtshadertools-tools := qt-tools $(DEPS_qt-tools)
+
+DEPS_qtshadertools += qt $(DEPS_qt) spirv-tools
+ifdef HAVE_CROSS_COMPILE
+DEPS_qtshadertools += qtshadertools-tools $(DEPS_qtshadertools-tools)
+endif
ifdef HAVE_WIN32
DEPS_qtshadertools += fxc2 $(DEPS_fxc2)
endif
@@ -13,33 +18,44 @@ endif
ifdef HAVE_WIN32
PKGS += qtshadertools
endif
+ifneq ($(findstring qt,$(PKGS)),)
+PKGS_TOOLS += qtshadertools-tools
+endif
+PKGS_ALL += qtshadertools-tools
ifeq ($(call need_pkg,"Qt6ShaderTools >= 6.6"),)
PKGS_FOUND += qtshadertools
endif
+ifndef HAVE_CROSS_COMPILE
+PKGS_FOUND += qtshadertools-tools
+endif
+ifeq ($(shell qsb --version 2>/dev/null | head -1 | sed s/'.* '// | cut -d '.' -f -2),$(QTSHADERTOOLS_VERSION_MAJOR))
+PKGS_FOUND += qtshadertools-tools
+endif
$(TARBALLS)/qtshadertools-everywhere-src-$(QTSHADERTOOLS_VERSION).tar.xz:
$(call download,$(QTSHADERTOOLS_URL))
.sum-qtshadertools: qtshadertools-everywhere-src-$(QTSHADERTOOLS_VERSION).tar.xz
+.sum-qtshadertools-tools: .sum-qtshadertools
+ touch $@
+
qtshadertools: qtshadertools-everywhere-src-$(QTSHADERTOOLS_VERSION).tar.xz .sum-qtshadertools
$(UNPACK)
$(APPLY) $(SRC)/qtshadertools/0001-Use-fxc2-through-wine-instead-of-fxc.patch
$(MOVE)
-.qtshadertools: qtshadertools toolchain.cmake
-ifdef HAVE_CROSS_COMPILE
- # Native
+.qtshadertools-tools: BUILD_DIR=$</vlc_native
+.qtshadertools-tools: qtshadertools
$(CMAKECLEAN)
mkdir -p $(BUILD_DIR)
cd $(BUILD_DIR) && $(BUILDVARS) $(BUILDPREFIX)/bin/qt-configure-module $(BUILD_SRC)
+$(CMAKEBUILD)
$(CMAKEINSTALL)
+ touch $@
- # qsb
- ln -sf $(BUILDPREFIX)/bin/qsb $(PREFIX)/bin/qsb
-endif
+.qtshadertools: qtshadertools toolchain.cmake
$(CMAKECLEAN)
mkdir -p $(BUILD_DIR)
+cd $(BUILD_DIR) && $(PREFIX)/bin/qt-configure-module $(BUILD_SRC)
=====================================
contrib/src/qtvlcdeps/rules.mak
=====================================
@@ -6,7 +6,7 @@ ifdef HAVE_LINUX
DEPS_qtvlcdeps += qtwayland $(DEPS_qtwayland)
endif
-ifdef HAVE_WIN32
+ifneq ($(findstring qt,$(PKGS)),)
PKGS += qtvlcdeps
endif
=====================================
contrib/src/spirv-tools/rules.mak
=====================================
@@ -6,7 +6,7 @@ SPIRVTOOLS_URL := $(GITHUB)/KhronosGroup/SPIRV-Tools/archive/refs/tags/v$(SPIRVT
SPIRVHEADERS_VERSION := 1.3.246.1
SPIRVHEADERS_URL := $(GITHUB)/KhronosGroup/SPIRV-Headers/archive/refs/tags/sdk-$(SPIRVHEADERS_VERSION).tar.gz
-ifdef HAVE_WIN32
+ifneq ($(findstring qt,$(PKGS)),)
# match with Qt targets
PKGS_TOOLS += spirv-tools
endif
=====================================
extras/ci/gitlab-ci.yml
=====================================
@@ -23,7 +23,7 @@ variables:
VLC_WIN64_IMAGE: registry.videolan.org/vlc-debian-win64-posix:20240212151604
VLC_WIN_LLVM_MSVCRT_IMAGE: registry.videolan.org/vlc-debian-llvm-msvcrt:20240212151604
VLC_WIN_LLVM_UCRT_IMAGE: registry.videolan.org/vlc-debian-llvm-ucrt:20240212151604
- VLC_DEBIAN_IMAGE: registry.videolan.org/vlc-debian-unstable:20240212151604
+ VLC_DEBIAN_IMAGE: registry.videolan.org/vlc-debian-unstable:20240402131352
VLC_ANDROID_IMAGE: registry.videolan.org/vlc-debian-android:20231013040434
VLC_SNAP_IMAGE: registry.videolan.org/vlc-ubuntu-focal:20231013031754
VLC_RASPBIAN_IMAGE: registry.videolan.org/vlc-ubuntu-raspberry:20231013032350
@@ -363,10 +363,10 @@ debian-meson:
- |
# We split in two different commands to handle the case where
# the coverage will be generated on different jobs later.
- # Note: qt5-vlc_qrc.cpp needs to be remove from the report since its
+ # Note: qt6-vlc_qrc.cpp needs to be remove from the report since its
# coverage should not be checked. It leads to gcovr having trouble
# parsing the coverage otherwise.
- gcovr -r "${CI_PROJECT_DIR}/" --json "${CI_PROJECT_DIR}/${CI_JOB_NAME}.cov.json" -j$NCPU --gcov-ignore-parse-errors=negative_hits.warn_once_per_file --exclude build-meson/modules/gui/qt/qt5-vlc_qrc.cpp
+ gcovr -r "${CI_PROJECT_DIR}/" --json "${CI_PROJECT_DIR}/${CI_JOB_NAME}.cov.json" -j$NCPU --gcov-ignore-parse-errors=negative_hits.warn_once_per_file --exclude build-meson/modules/gui/qt/qt6-vlc_qrc.cpp
- mkdir html-coverage
- >
=====================================
extras/package/win32/build.sh
=====================================
@@ -360,7 +360,6 @@ export CXXFLAGS
${VLC_ROOT_PATH}/contrib/bootstrap --host=$TRIPLET --prefix=../$CONTRIB_PREFIX $CONTRIBFLAGS
# Rebuild the contribs or use the prebuilt ones
-make list
if [ "$PREBUILT" = "yes" ]; then
if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL" || PREBUILT_FAILED=yes
@@ -370,6 +369,7 @@ if [ "$PREBUILT" = "yes" ]; then
else
PREBUILT_FAILED=yes
fi
+make list
if [ -n "$PREBUILT_FAILED" ]; then
make -j$JOBS fetch
make -j$JOBS -k || make -j1
=====================================
modules/gui/qt/Makefile.am
=====================================
@@ -1116,6 +1116,11 @@ libqt_plugin_la_SHADER := shaders/FadingEdge.frag \
shaders/RectFilter.frag \
shaders/SubTexture.vert \
shaders/PlayerBlurredBackground.frag
+if ENABLE_QT
+BUILT_SOURCES += \
+ $(libqt_plugin_la_SHADER:.frag=.frag.qsb) \
+ $(libqt_plugin_la_SHADER:.vert=.vert.qsb)
+endif
QSB_PARAMS = --glsl="100 es,120,150" --batchable -O
if HAVE_WIN32
@@ -1136,6 +1141,7 @@ shaders/shaders.cpp: $(srcdir)/shaders/shaders.qrc $(libqt_plugin_la_SHADER:.fra
$(AM_V_GEN) $(RCC) --name shaders -o $@ $(builddir)/shaders/$(notdir $(filter %.qrc, $^))
libqt_plugin_la_SOURCES += shaders/shaders.qrc $(libqt_plugin_la_SHADER)
+BUILT_SOURCES += shaders/shaders.qrc
lib_qt_plugin_la_QRC = vlc.qrc
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/e138206a0bea793405d18861b3f93d3c20a52a94...41bbcde5ec71881f99d85c78df6839a3a7438b6b
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/e138206a0bea793405d18861b3f93d3c20a52a94...41bbcde5ec71881f99d85c78df6839a3a7438b6b
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
More information about the vlc-commits
mailing list