File deepin-music-player.spec of Package deepin-music-player
#
# spec file for package deepin-music-player
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2013-2022 Hillwood Yang <hillwood@opensuse.org>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%if 0%{?is_opensuse}
%define distribution openSUSE-Edition
%else
%define distribution SUSE-Edition
%endif
%define sover 1_0
Name: deepin-music-player
Version: 7.0.37
Release: 0
Summary: Deepin Music Player
License: GPL-3.0-or-later
Group: Productivity/Multimedia/Sound/Players
URL: https://github.com/linuxdeepin/deepin-music
Source0: https://github.com/linuxdeepin/deepin-music/archive/%{version}/deepin-music-%{version}.tar.gz
# PATCH-FIX-UPSTREAM add-ffmpeg-include-dir.patch hillwood@opensuse.org - Make sure compiler can find ffmpeg headers
Patch1: add-ffmpeg-include-dir.patch
# PATCH-FIX-UPSTREAM recompile-with-fPIC.patch hillwood@opensuse.org - Fix build on 64bit arch
Patch2: fix-fPIC-error.patch
# PATCH-FIX-UPSTRAM update-taglib-interface.patch hillwood@opensuse.org - fix build on new taglib
Patch3: update-taglib-interface.patch
# PATCH-FIX-UPSTRAM ffmpeg_7.patch hillwood@opensuse.org - Support ffmpeg 7
Patch4: ffmpeg_7.patch
%ifarch ppc ppc64 ppc64le s390 s390x
BuildRequires: deepin-desktop-base
%else
BuildRequires: deepin-manual
%endif
BuildRequires: chrpath
BuildRequires: fdupes
BuildRequires: hicolor-icon-theme
BuildRequires: qt6-tools-linguist
BuildRequires: qt6-base-devel
BuildRequires: update-desktop-files
BuildRequires: cmake(Qt6Qml)
BuildRequires: cmake(Qt6Core5Compat)
BuildRequires: cmake(KF6Codecs)
BuildRequires: cmake(Qt6LinguistTools)
BuildRequires: pkgconfig(Qt6Network)
BuildRequires: pkgconfig(Qt6Multimedia)
BuildRequires: pkgconfig(Qt6Svg)
BuildRequires: pkgconfig(dbusextended-qt5)
BuildRequires: pkgconfig(dframeworkdbus)
BuildRequires: pkgconfig(dtk6core)
BuildRequires: pkgconfig(dtk6gui)
BuildRequires: pkgconfig(dtk6widget)
BuildRequires: pkgconfig(dtk6declarative)
BuildRequires: pkgconfig(gsettings-qt)
BuildRequires: pkgconfig(icu-i18n)
BuildRequires: pkgconfig(icu-uc)
BuildRequires: pkgconfig(libavcodec)
BuildRequires: pkgconfig(libavformat)
BuildRequires: pkgconfig(libavutil)
BuildRequires: pkgconfig(libcue)
BuildRequires: pkgconfig(libvlc)
BuildRequires: pkgconfig(mpris-qt6)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(taglib)
BuildRequires: pkgconfig(udisks2-qt5)
BuildRequires: pkgconfig(xext)
Requires: qt5integration
Requires: vlc
Requires: dtkdeclarative
Requires: libmpv2
Provides: deepin-music
Recommends: %{name}-lang
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Deepin Music Player is a music player backed by gstreamer, with
customizable UI, and featuring music search by Pinyin and Quanpin. It
supports colorful lyrics, online audio support and a "mini mode".
%package -n libdmusic%{sover}
Summary: The library of Deepin Music
Group: System/Libraries
%description -n libdmusic%{sover}
This package contains the libraries for Deepin Music
%lang_package
%prep
%autosetup -p1 -n deepin-music-%{version}
sed -i 's/Exec=deepin-music/Exec=env QT_QPA_PLATFORMTHEME=deepin deepin-music/g' \
src/music-player/data/deepin-music.desktop
#sed -i '/CMAKE_INSTALL_VOICE_LIBDIR/s|/usr/lib|${CMAKE_INSTALL_LIBDIR}|' \
#src/libmusic-plugin/CMakeLists.txt
%build
%cmake -DVERSION=%{version}-%{distribution} \
-DAPP_VERSION=%{version}-%{distribution}
%cmake_build
%install
%cmake_install
find %{buildroot} -type f -name "*.a" -delete -print
# openSUSE does not provide deepin-aiassistant, the deepin-aiassistant plugin is invaild
rm -rf %{buildroot}%{_libdir}/deepin-aiassistant
rm -rf %{buildroot}%{_libdir}/libdmusic.so
chrpath --delete %{buildroot}%{_bindir}/deepin-music
%fdupes %{buildroot}%{_datadir}
%post -n libdmusic%{sover} -p /sbin/ldconfig
%postun -n libdmusic%{sover} -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc CHANGELOG.md README.md
%license LICENSE
%{_bindir}/deepin-music
%{_datadir}/applications/deepin-music.desktop
%{_datadir}/icons/hicolor/scalable/apps/deepin-music.svg
%{_datadir}/deepin-manual/manual-assets/application/deepin-music
%dir %{_datadir}/dsg
%dir %{_datadir}/dsg/configs
%{_datadir}/dsg/configs/deepin-music
# %dir %{_libdir}/deepin-aiassistant
# %dir %{_libdir}/deepin-aiassistant/serivce-plugins
# %{_libdir}/deepin-aiassistant/serivce-plugins/libmusic-plugin.soosc
%files -n libdmusic%{sover}
%defattr(-,root,root,-)
%{_libdir}/libdmusic.so*
%files lang
%defattr(-,root,root,-)
%{_datadir}/deepin-music
%changelog