%global qt_module qtmultimedia %global openal 1 %global gst 0.10 %if 0%{?fedora} || 0%{?rhel} > 7 %global gst 1.0 %endif %global build_tests 1 Summary: Qt5 - Multimedia support Name: qt5-%{qt_module} Version: 5.15.3 Release: 1%{?dist} # See LGPL_EXCEPTIONS.txt, LICENSE.GPL3, respectively, for exception details License: LGPLv2 with exceptions or GPLv3 with exceptions Url: http://www.qt.io %global majmin %(echo %{version} | cut -d. -f1-2) Source0: https://download.qt.io/official_releases/qt/%{majmin}/%{version}/submodules/%{qt_module}-everywhere-opensource-src-%{version}.tar.xz Patch0: qtmultimedia-python-shebang.patch Patch1: %{name}-gcc11.patch # filter plugin/qml provides %global __provides_exclude_from ^(%{_qt5_archdatadir}/qml/.*\\.so|%{_qt5_plugindir}/.*\\.so)$ # workaround missing dep # /usr/include/gstreamer-1.0/gst/gl/wayland/gstgldisplay_wayland.h:26:10: fatal error: wayland-client.h: No such file or directory BuildRequires: wayland-devel BuildRequires: qt5-qtbase-devel >= %{version} BuildRequires: qt5-qtbase-private-devel #libQt5Core.so.5(Qt_5_PRIVATE_API)(64bit) #libQt5Gui.so.5(Qt_5_PRIVATE_API)(64bit) %{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}} BuildRequires: qt5-qtdeclarative-devel >= %{version} BuildRequires: pkgconfig(alsa) %if "%{?gst}" == "0.10" BuildRequires: pkgconfig(gstreamer-interfaces-0.10) %endif BuildRequires: pkgconfig(gstreamer-%{gst}) BuildRequires: pkgconfig(gstreamer-app-%{gst}) BuildRequires: pkgconfig(gstreamer-audio-%{gst}) BuildRequires: pkgconfig(gstreamer-base-%{gst}) BuildRequires: pkgconfig(gstreamer-pbutils-%{gst}) BuildRequires: pkgconfig(gstreamer-plugins-bad-%{gst}) BuildRequires: pkgconfig(gstreamer-video-%{gst}) BuildRequires: pkgconfig(libpulse) pkgconfig(libpulse-mainloop-glib) %if 0%{?openal} BuildRequires: pkgconfig(openal) %endif BuildRequires: pkgconfig(xv) %description The Qt Multimedia module provides a rich feature set that enables you to easily take advantage of a platforms multimedia capabilites and hardware. This ranges from the playback and recording of audio and video content to the use of available devices like cameras and radios. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: qt5-qtbase-devel%{?_isa} Requires: qt5-qtdeclarative-devel%{?_isa} # Qt5Multimedia.pc containts: # Libs.private: ... -lpulse-mainloop-glib -lpulse -lglib-2.0 Requires: pkgconfig(libpulse-mainloop-glib) %description devel %{summary}. %package examples Summary: Programming examples for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description examples %{summary}. %if 0%{?build_tests} %package tests Summary: Unit tests for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description tests %{summary}. %endif %prep %setup -q -n %{qt_module}-everywhere-src-%{version} %patch0 -p1 %patch1 -p1 %build %{qmake_qt5} \ CONFIG+=git_build \ GST_VERSION=%{gst} %make_build %if 0%{?build_tests} make sub-tests %{?_smp_mflags} -k ||: %endif %install make install INSTALL_ROOT=%{buildroot} %if 0%{?build_tests} # Install tests for gating mkdir -p %{buildroot}%{_qt5_libdir}/qt5 find ./tests -not -path '*/\.*' -type d | while read LINE do mkdir -p "%{buildroot}%{_qt5_libdir}/qt5/$LINE" done find ./tests -not -path '*/\.*' -not -name '*.h' -not -name '*.cpp' -not -name '*.pro' -not -name 'uic_wrapper.sh' -not -name 'Makefile' -not -name 'target_wrapper.sh' -type f | while read LINE do cp -r --parents "$LINE" %{buildroot}%{_qt5_libdir}/qt5/ done %endif ## .prl/.la file love # nuke .prl reference(s) to %%buildroot, excessive (.la-like) libs pushd %{buildroot}%{_qt5_libdir} for prl_file in *.prl ; do sed -i -e "/^QMAKE_PRL_BUILD_DIR/d" ${prl_file} if [ -f "$(basename ${prl_file} .prl).so" ]; then rm -fv "$(basename ${prl_file} .prl).la" sed -i -e "/^QMAKE_PRL_LIBS/d" ${prl_file} fi done popd %ldconfig_scriptlets %files %license LICENSE.* %{_qt5_libdir}/libQt5Multimedia.so.5* %{_qt5_libdir}/libQt5MultimediaQuick.so.5* %{_qt5_libdir}/libQt5MultimediaWidgets.so.5* %{_qt5_libdir}/libQt5MultimediaGstTools.so.5* %if 0%{?openal} %{_qt5_archdatadir}/qml/QtAudioEngine/ %endif %{_qt5_archdatadir}/qml/QtMultimedia/ %{_qt5_plugindir}/audio/ %{_qt5_plugindir}/mediaservice/ %{_qt5_plugindir}/playlistformats/ %dir %{_qt5_libdir}/cmake/Qt5Multimedia/ %{_qt5_libdir}/cmake/Qt5Multimedia/Qt5Multimedia_*Plugin.cmake %dir %{_qt5_libdir}/cmake/Qt5MultimediaWidgets/ %files devel %{_qt5_headerdir}/QtMultimedia/ %{_qt5_headerdir}/QtMultimediaQuick/ %{_qt5_headerdir}/QtMultimediaWidgets/ %{_qt5_headerdir}/QtMultimediaGstTools/ %{_qt5_libdir}/libQt5Multimedia.so %{_qt5_libdir}/libQt5Multimedia.prl %{_qt5_libdir}/libQt5MultimediaQuick.so %{_qt5_libdir}/libQt5MultimediaQuick.prl %{_qt5_libdir}/libQt5MultimediaWidgets.so %{_qt5_libdir}/libQt5MultimediaWidgets.prl %{_qt5_libdir}/libQt5MultimediaGstTools.so %{_qt5_libdir}/libQt5MultimediaGstTools.prl %{_qt5_libdir}/cmake/Qt5Multimedia/Qt5MultimediaConfig*.cmake %{_qt5_libdir}/cmake/Qt5MultimediaWidgets/Qt5MultimediaWidgetsConfig*.cmake %{_qt5_libdir}/cmake/Qt5MultimediaGstTools/Qt5MultimediaGstToolsConfig*.cmake %{_qt5_libdir}/cmake/Qt5MultimediaQuick/Qt5MultimediaQuickConfig*.cmake %{_qt5_libdir}/pkgconfig/Qt5Multimedia.pc %{_qt5_libdir}/pkgconfig/Qt5MultimediaWidgets.pc %{_qt5_archdatadir}/mkspecs/modules/*.pri %if 0%{?_qt5_examplesdir:1} %files examples %license LICENSE.FDL %{_qt5_examplesdir}/ %endif %if 0%{?build_tests} %files tests %{_qt5_libdir}/qt5/tests %endif %changelog * Mon Mar 28 2022 Jan Grulich - 5.15.3-1 - 5.15.3 Resolves: bz#2061396 * Wed Apr 28 2021 Jan Grulich - 5.15.2-2 - Rebuild (binutils) Resolves: bz#1930048 * Sun Apr 04 2021 Jan Grulich - 5.15.2-1 - 5.15.2 Resolves: bz#1930048 * Mon Nov 18 2019 Jan Grulich - 5.12.5-1 - 5.12.5 Resolves: bz#1733144 * Mon Dec 10 2018 Jan Grulich - 5.11.1-2 - Rebuild to fix CET notes Resolves: bz#1657249 * Tue Jul 03 2018 Jan Grulich - 5.11.1-1 - 5.11.1 * Wed Feb 14 2018 Jan Grulich - 5.10.1-1 - 5.10.1 * Fri Feb 09 2018 Fedora Release Engineering - 5.10.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Tue Dec 19 2017 Jan Grulich - 5.10.0-1 - 5.10.0 * Thu Nov 23 2017 Jan Grulich - 5.9.3-1 - 5.9.3 * Wed Nov 22 2017 Troy Dawson - 5.9.2-3 - Fix spec file conditionals * Tue Oct 17 2017 Rex Dieter - 5.9.2-2 - BR: qt5-qtbase-private-devel * Mon Oct 09 2017 Jan Grulich - 5.9.2-1 - 5.9.2 * Thu Aug 03 2017 Fedora Release Engineering - 5.9.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Thu Jul 27 2017 Fedora Release Engineering - 5.9.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Wed Jul 19 2017 Rex Dieter - 5.9.1-1 - 5.9.1 * Fri Jun 16 2017 Rex Dieter - 5.9.0-2 - drop shadow/out-of-tree builds (#1456211,QTBUG-37417) * Wed May 31 2017 Helio Chissini de Castro - 5.9.0-1 - Upstream official release * Fri May 26 2017 Helio Chissini de Castro - 5.9.0-0.1.rc - Upstream Release Candidate retagged * Tue May 09 2017 Helio Chissini de Castro - 5.9.0-0.beta.3 - Upstream beta 3 * Fri Mar 31 2017 Rex Dieter - 5.8.0-2 - -devel: pkgconfig(libpulse-mainloop-glib) (#1438077) * Mon Jan 30 2017 Helio Chissini de Castro - 5.8.0-1 - New upstream version * Mon Jan 02 2017 Rex Dieter - 5.7.1-4 - filter plugin provides too * Mon Jan 02 2017 Rex Dieter - 5.7.1-3 - filter qml provides * Sat Dec 10 2016 Rex Dieter - 5.7.1-2 - 5.7.1 dec5 snapshot, drop cmake/pkgconfig style BR * Wed Nov 09 2016 Helio Chissini de Castro - 5.7.1-1 - New upstream version * Mon Jul 04 2016 Helio Chissini de Castro - 5.7.0-2 - Compiled with gcc * Mon Jun 13 2016 Helio Chissini de Castro - 5.7.0-1 - Qt 5.7.0 release * Thu Jun 09 2016 Jan Grulich - 5.6.1-1 - Update to 5.6.1 * Sun Mar 20 2016 Rex Dieter - 5.6.0-3 - rebuild * Fri Mar 18 2016 Rex Dieter - 5.6.0-2 - rebuild * Mon Mar 14 2016 Helio Chissini de Castro - 5.6.0-1 - 5.6.0 final release * Tue Feb 23 2016 Helio Chissini de Castro - 5.6.0-0.8.rc - Update to final RC * Mon Feb 15 2016 Helio Chissini de Castro - 5.6.0-0.7 - Update RC release * Thu Feb 04 2016 Fedora Release Engineering - 5.6.0-0.6.beta - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Mon Dec 28 2015 Rex Dieter 5.6.0-0.5.beta - update source URL, use %%license, BR: cmake * Mon Dec 21 2015 Helio Chissini de Castro - 5.6.0-0.4 - Update to final beta release * Fri Dec 11 2015 Rex Dieter - 5.6.0-0.3 - include BR: qt5-qdoc only in -doc subpkg - restore bootstrap macro support - make openal support unconditional (#1069231) * Thu Dec 10 2015 Helio Chissini de Castro - 5.6.0-0.2 - Official beta release * Tue Nov 03 2015 Helio Chissini de Castro - 5.6.0-0.1 - Start to implement 5.6.0 beta * Mon Oct 26 2015 Rex Dieter 5.5.1-4 - pull in upstream fixes, QTBUG-48939 in particular * Thu Oct 22 2015 Rex Dieter 5.5.1-3 - drop gst support on el6 (QTBUG-48939) * Thu Oct 15 2015 Helio Chissini de Castro - 5.5.1-2 - Update to final release 5.5.1 * Tue Sep 29 2015 Helio Chissini de Castro - 5.5.1-1 - Update to Qt 5.5.1 RC1 * Wed Jul 29 2015 Rex Dieter 5.5.0-3 - -docs: BuildRequires: qt5-qhelpgenerator, standardize bootstrapping * Thu Jul 16 2015 Rex Dieter 5.5.0-2 - tighten qtbase dep (#1233829) * Wed Jul 1 2015 Helio Chissini de Castro 5.5.0-1 - New final upstream release Qt 5.5.0 * Wed Jun 24 2015 Helio Chissini de Castro - 5.5.0-0.2.rc - Update for official RC1 released packages * Wed Jun 17 2015 Daniel Vrátil - 5.5.0-0.1.rc - Qt 5.5.0 RC1 * Wed Jun 03 2015 Jan Grulich - 5.4.2-1 - 5.4.2 * Sat May 02 2015 Kalev Lember - 5.4.1-3 - Rebuilt for GCC 5 C++11 ABI change * Fri Feb 27 2015 Rex Dieter - 5.4.1-2 - rebuild (gcc5) * Tue Feb 24 2015 Jan Grulich 5.4.1-1 - 5.4.1 * Thu Dec 11 2014 Rex Dieter 5.4.0-1 - 5.4.0 (final) + backported gst1 support from dev/ branch * Tue Nov 18 2014 Rex Dieter 5.4.0-0.3.20141118.gst1 - wip/gstreamer1 snapshot (#1149885) * Mon Nov 03 2014 Rex Dieter 5.4.0-0.2.beta - out-of-tree build, use %%qmake_qt5 * Sun Oct 19 2014 Rex Dieter 5.4.0-0.1.beta - 5.4.0-beta * Wed Sep 17 2014 Rex Dieter - 5.3.2-1 - 5.3.2 * Sun Aug 17 2014 Fedora Release Engineering - 5.3.1-2.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Thu Jul 17 2014 Rex Dieter 5.3.1-1.1 - rebuild (for pulseaudio, bug #1117683) * Tue Jun 17 2014 Jan Grulich - 5.3.1-1 - 5.3.1 * Sun Jun 08 2014 Fedora Release Engineering - 5.3.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Wed May 21 2014 Jan Grulich 5.3.0-1 - 5.3.0 * Mon May 05 2014 Rex Dieter 5.2.1-2 - use standard (same as qtbase) .prl sanitation * Wed Feb 05 2014 Rex Dieter 5.2.1-1 - 5.2.1 * Mon Jan 27 2014 Rex Dieter 5.2.0-3 - build -examples only if supported * Sun Jan 26 2014 Rex Dieter 5.2.0-2 - -examples subpkg * Thu Dec 12 2013 Rex Dieter 5.2.0-1 - 5.2.0 * Mon Dec 02 2013 Rex Dieter 5.2.0-0.10.rc1 - 5.2.0-rc1 * Sun Nov 10 2013 Rex Dieter 5.2.0-0.4.beta1 - rebuild (arm/qreal) * Thu Oct 24 2013 Rex Dieter 5.2.0-0.3.beta1 - 5.2.0-beta1 * Wed Oct 16 2013 Rex Dieter 5.2.0-0.2.alpha - bootstrap ppc * Wed Oct 02 2013 Rex Dieter 5.2.0-0.1.alpha - 5.2.0-alpha - -doc subpkg * Sat Sep 07 2013 Rex Dieter 5.1.1-2 - ExclusiveArch: %%{ix86} x86_64 %%{arm} (to match qt5-qtdeclarative) * Thu Aug 29 2013 Rex Dieter 5.1.1-1 - 5.1.1 * Wed Aug 28 2013 Rex Dieter 5.0.2-3 - update Source URL (and refetch tarball) - improved summary/description * Thu May 09 2013 Rex Dieter 5.0.2-2 - BR: qt5-qtdeclarative-devel * Thu Apr 11 2013 Rex Dieter 5.0.2-1 - 5.0.2 * Sat Feb 23 2013 Rex Dieter 5.0.1-1 - first try