Enable Qt6 plugin, disable Qt5 plugin for RHEL 10

This commit is contained in:
Yaakov Selkowitz 2023-06-18 01:12:07 -04:00
parent 03b6abb635
commit 02f7fd87e1

View File

@ -9,7 +9,18 @@
%bcond_with nasm %bcond_with nasm
%endif %endif
%bcond_without qt # RHEL 10 will provide Qt 6 and drop Qt 5
%if 0%{?rhel} >= 10
%bcond_with qt5
%else
%bcond_without qt5
%endif
%if 0%{?rhel} && 0%{?rhel} < 10
%bcond_with qt6
%else
%bcond_without qt6
%endif
#global gitrel 140 #global gitrel 140
#global gitcommit 9865730cfa5b3a8b2560d082e7e56b350042d3d2 #global gitcommit 9865730cfa5b3a8b2560d082e7e56b350042d3d2
@ -17,7 +28,7 @@
Name: gstreamer1-plugins-good Name: gstreamer1-plugins-good
Version: 1.22.3 Version: 1.22.3
Release: 1%{?gitcommit:.git%{shortcommit}}%{?dist} Release: 2%{?gitcommit:.git%{shortcommit}}%{?dist}
Summary: GStreamer plugins with good code and licensing Summary: GStreamer plugins with good code and licensing
License: LGPLv2+ License: LGPLv2+
@ -119,7 +130,7 @@ good quality and under the LGPL license.
This package (%{name}-gtk) contains the gtksink output plugin. This package (%{name}-gtk) contains the gtksink output plugin.
%if %{with qt} %if %{with qt5}
%package qt %package qt
Summary: GStreamer "good" plugins qt qml plugin Summary: GStreamer "good" plugins qt qml plugin
Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}%{?_isa} = %{version}-%{release}
@ -142,6 +153,29 @@ good quality and under the LGPL license.
This package (%{name}-qt) contains the qtsink output plugin. This package (%{name}-qt) contains the qtsink output plugin.
%endif %endif
%if %{with qt6}
%package qt6
Summary: GStreamer "good" plugins qt6 qml plugin
Requires: %{name}%{?_isa} = %{version}-%{release}
BuildRequires: pkgconfig(Qt6Gui)
BuildRequires: pkgconfig(Qt6Qml)
BuildRequires: pkgconfig(Qt6Quick)
BuildRequires: pkgconfig(Qt6WaylandClient)
BuildRequires: pkgconfig(Qt6Linguist)
Supplements: (gstreamer1-plugins-good and qt6-qtdeclarative)
%description qt6
GStreamer is a streaming media framework, based on graphs of elements which
operate on media data.
GStreamer Good Plugins is a collection of well-supported plugins of
good quality and under the LGPL license.
This package (%{name}-qt6) contains the qml6sink output plugin.
%endif
%if %{with extras} %if %{with extras}
%package extras %package extras
Summary: Extra GStreamer plugins with good code and licensing Summary: Extra GStreamer plugins with good code and licensing
@ -186,7 +220,8 @@ to be installed.
%if 0%{?_module_build} && "%{_module_name}" == "flatpak-runtime" %if 0%{?_module_build} && "%{_module_name}" == "flatpak-runtime"
-D v4l2-gudev=disabled \ -D v4l2-gudev=disabled \
%endif %endif
-D qt6=disabled -D qt5=%{?with_qt5:enabled}%{!?with_qt5:disabled} \
-D qt6=%{?with_qt6:enabled}%{!?with_qt6:disabled}
%meson_build %meson_build
@ -289,8 +324,15 @@ find $RPM_BUILD_ROOT -name '*.la' -exec rm -fv {} ';'
# Plugins with external dependencies # Plugins with external dependencies
%{_libdir}/gstreamer-%{majorminor}/libgstgtk.so %{_libdir}/gstreamer-%{majorminor}/libgstgtk.so
%if %{with qt5}
%files qt %files qt
%{_libdir}/gstreamer-%{majorminor}/libgstqmlgl.so %{_libdir}/gstreamer-%{majorminor}/libgstqmlgl.so
%endif
%if %{with qt6}
%files qt6
%{_libdir}/gstreamer-%{majorminor}/libgstqml6.so
%endif
%if %{with extras} %if %{with extras}
%files extras %files extras
@ -304,6 +346,9 @@ find $RPM_BUILD_ROOT -name '*.la' -exec rm -fv {} ';'
%changelog %changelog
* Sun Jun 18 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 1.22.3-2
- Enable Qt6 plugin, disable Qt5 plugin for RHEL 10
* Thu May 25 2023 Wim Taymans <wtaymans@redhat.com> - 1.22.3-1 * Thu May 25 2023 Wim Taymans <wtaymans@redhat.com> - 1.22.3-1
- Update to 1.22.3 - Update to 1.22.3