File mythplugins.spec of Package mythplugins

#
# spec file for package mythplugins
#

%define gcc_version 13
%define python_version 311
%define python_dot_version 3.11
%define use_webkit 1
%if 0%{?suse_version} == 1600 && 0%{is_opensuse}
%define gcc_version 15
%define python_version 313
%define python_dot_version 3.13
%define use_webkit 0
%elif 0%{?suse_version} > 1600
%define gcc_version 14
%define use_webkit 0
%endif
# We don't want to be forced to package every generated file
%define _unpackaged_files_terminate_build 0

Name:           mythplugins
Version:        35
Release:        0
Summary:        Plugins for MythTV Open Source DVR
License:        GPL-2.0
Group:          Productivity/Multimedia/Video/Players
URL:            https://www.mythtv.org/
Source0:        mythtv-fixes-35-2025-10-10-transcode-fix.tar.gz
BuildRequires:  git
BuildRequires:  gcc%{gcc_version}
BuildRequires:  gcc%{gcc_version}-c++
BuildRequires:  make
BuildRequires:  gdb
BuildRequires:  automake
BuildRequires:  autoconf
BuildRequires:  libtool
BuildRequires:  pkg-config
BuildRequires:  nasm
BuildRequires:  ccache
BuildRequires:  libuuid-devel
BuildRequires:  libxml2-devel
BuildRequires:  alsa-devel
BuildRequires:  avahi-compat-mDNSResponder-devel
BuildRequires:  libexiv2-devel
BuildRequires:  libbluray-devel
BuildRequires:  lzo-devel
BuildRequires:  libhdhomerun-devel
BuildRequires:  libsamplerate-devel
BuildRequires:  libXinerama-devel
BuildRequires:  libXrandr-devel
BuildRequires:  libXv-devel
BuildRequires:  libXxf86vm-devel
BuildRequires:  libva-devel
BuildRequires:  libdrm-devel
BuildRequires:  libva-gl-devel
BuildRequires:  libvdpau-devel
BuildRequires:  libcec-devel
BuildRequires:  libass-devel
#BuildRequires:  libcrystalhd-devel
BuildRequires:  libzip-devel
BuildRequires:  soundtouch-devel
BuildRequires:  systemd-devel
BuildRequires:  libvpx-devel
BuildRequires:  libbluray-bdj
BuildRequires:  libmp3lame-devel
BuildRequires:  python%{python_version}-devel
BuildRequires:  python%{python_version}-lxml
BuildRequires:  python%{python_version}-requests
BuildRequires:  python%{python_version}-simplejson
%if 0%{?suse_version} < 1600
BuildRequires:  python%{python_version}-future
%endif
BuildRequires:  python%{python_version}-mysqlclient
BuildRequires:  perl-ExtUtils-MakeMaker
BuildRequires:  perl-DBI
BuildRequires:  perl-DBD-mysql
BuildRequires:  perl-HTTP-Message
BuildRequires:  perl-libwww-perl
BuildRequires:  perl-IO-Socket-INET6
BuildRequires:  perl-Date-Manip
BuildRequires:  perl-XML-Simple
BuildRequires:  perl-XML-XPath
BuildRequires:  perl-DateTime-Format-ISO8601
BuildRequires:  perl-SOAP-Lite
BuildRequires:  perl-JSON
BuildRequires:  perl-Image-Size
BuildRequires:  perl-Net-UPnP
BuildRequires:  libvorbis-devel
BuildRequires:  flac-devel
BuildRequires:  libtag-devel
BuildRequires:  libcdio-devel
BuildRequires:  libcdio-paranoia-devel
BuildRequires:  libmysqlclient-devel
BuildRequires:  fftw3-threads-devel
BuildRequires:  libexif-devel
BuildRequires:  dcraw
BuildRequires:  minizip-devel
BuildRequires:  libqt5-qtbase-devel
%if %{use_webkit}
BuildRequires:  libQt5WebKit5-devel
BuildRequires:  libQt5WebKitWidgets-devel
%endif
BuildRequires:  libqt5-qtscript-devel
BuildRequires:  libQt5Sql5-mysql
BuildRequires:  mythtv-common
BuildRequires:  mythtv-devel
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
MythTV is a Free Open Source software digital video recorder (DVR) project
distributed under the terms of the GNU GPL. It has been under heavy
development since 2002, and now contains most features one would expect
from a good DVR (and many new ones that you soon won't be able to live without).

These plugins add support for various extended use such as playing tracks from
a music library.

%package mythmusic
Summary:         Music plugin for MythTV open source DVR
Group:           Productivity/Multimedia/Video/Players
Requires:        mythtv-frontend = %{version}
%description mythmusic
MythTV open source DVR

This package contains the music plugin
%prep
%setup -q -n mythtv-fixes-35-2025-10-10-transcode-fix

%build
pushd mythplugins

CFLAGS="%{optflags}";export CFLAGS;
CXXFLAGS="%{optflags}";export CXXFLAGS;

./configure \
    --cc=gcc-%{gcc_version}     \
    --cxx=g++-%{gcc_version}    \
    --prefix=%{_prefix}         \
    --libdir=%{_libdir}         \
    --libdir-name=%{_lib}       \
    --mandir=%{_mandir}         \
    --python=python%{python_dot_version} \
    --perl-config-opts="INSTALLDIRS=vendor"

make %{?_smp_mflags}
popd


%install
pushd mythplugins
%qmake5_install
popd

%files mythmusic
%{_libdir}/mythtv/plugins/libmythmusic.so
%{_datadir}/mythtv/musicmenu.xml
%{_datadir}/mythtv/music_settings.xml
%{_datadir}/mythtv/i18n/mythmusic_*.qm

%changelog
* Fri Oct 10 2025 Paul Gardiner <pizza@glidos.net>
- Bring up to date with current state of fixes 35 branch
- Add fix for transcode fifodir mode
* Wed May 28 2025 Paul Gardiner <pizza@glidos.net> - 35.1
- Fixes 35
openSUSE Build Service is sponsored by