File muse.spec of Package muse

#
# spec file for package muse
#
# Copyright (c) 2023 SUSE LLC
#
# 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/
#

Name:           muse
Version:        4.2.1
Release:        0
Summary:        MIDI Music Editor
License:        GPL-2.0-or-later
Group:          Productivity/Multimedia/Sound/Midi
URL:            https://muse-sequencer.github.io/
Source:         https://github.com/muse-sequencer/muse/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
Patch0:         Fix-1287.patch
BuildRequires:  alsa-devel >= 0.9.0
BuildRequires:  ccaudio2-devel
BuildRequires:  cmake
BuildRequires:  cpp
BuildRequires:  doxygen
BuildRequires:  dssi-devel >= 0.9.0
BuildRequires:  extra-cmake-modules
BuildRequires:  fdupes
BuildRequires:  fluidsynth-devel
BuildRequires:  gtk2-devel
BuildRequires:  gtk2-tools
BuildRequires:  gtkmm2-devel
BuildRequires:  hicolor-icon-theme
BuildRequires:  lash-devel >= 0.2
BuildRequires:  libinstpatch-devel >= 1.0
BuildRequires:  libjack-devel >= 0.103
BuildRequires:  liblilv-0-devel >= 0.16.0
BuildRequires:  liblo-devel >= 0.23
BuildRequires:  liblrdf-devel
BuildRequires:  librubberband-devel
BuildRequires:  libsamplerate-devel
BuildRequires:  libsamplerate0
BuildRequires:  libsndfile-devel >= 1.0.1
BuildRequires:  libtool
BuildRequires:  libuuid-devel >= 0.0.1
BuildRequires:  lv2-devel >= 1.10.0
BuildRequires:  pkgconfig
BuildRequires:  python3-devel
BuildRequires:  python3-qt5-devel
BuildRequires:  python3-tools
BuildRequires:  rtaudio-devel
BuildRequires:  update-desktop-files
BuildRequires:  pkgconfig(Qt5Core) >= 5.1.0
BuildRequires:  pkgconfig(Qt5UiTools) >= 5.1.0
BuildRequires:  pkgconfig(Qt5Widgets) >= 5.1.0
BuildRequires:  pkgconfig(harfbuzz)
Recommends:     %{name}-lang
Recommends:     qjackctl

%description
MusE is a MIDI/Audio sequencer with recording and editing capabilities written originally by Werner Schweer
now developed and maintained by the MusE development team. MusE aims to be a complete multitrack virtual
studio for Linux, it is published under the GNU General Public License.

MusE features include:

Midi sequencing

    Realtime record/playback
    Midi file import/export
    Midi part, as used in the arranger, import/export
    Input filter
    Midi editing with:
      Piano roll
      Drum editor
      List view
      Score editor
    Internal synth plugins including:
      Fluidsynth soundfont (sf2) capable softsynth
      Deicsonze FM synth emulating DX11
    Standardized synth plugin formats: DSSI, VST
    External synth support both hardware and software
    Scriptable editing interface
    Experimental python automation interface

Audio sequencing
  Realtime Record/Playback several mono/stereo inputs/outputs.
    Graphical editing of automation
    Several types of audio tracks
      Audio inputs
      Audio outputs
      Wave tracks
      Group tracks
      Aux outputs
    Standardized plugin formats: LADSPA, DSSI, VST, LV2
    Drag and drop import and arranging of:
      Plugins and plugin presets
      Parts
      Midi files
      Audio files
      Aux outputs

%lang_package

%prep
%autosetup -p1
cd src
sed -i -e 's/python/python3/' utils/*
sed -i -e 's/env\ python3/python3/' share/scripts/*

sed -i -e 's/-Wno-error/-Wno-error `pkgconf --cflags atkmm-1.6`/' muse/lv2Gtk2Support/CMakeLists.txt

%build
%cmake -S ../src/ -DMusE_DOC_DIR=%{_defaultdocdir}/%{name}-%{version} \
       -DMODULES_BUILD_STATIC=ON \
       -DENABLE_PYTHON=ON
%make_build

%install
%cmake_install
cd ..
%fdupes %{buildroot}%{_datadir}

rm %{buildroot}%{_libdir}/muse-4.2/modules/libmuse_awl.a
rm %{buildroot}%{_libdir}/muse-4.2/modules/libmuse_time_stretch_module.a
rm %{buildroot}%{_libdir}/muse-4.2/modules/libmuse_wave_module.a

%files
%{_libdir}/muse-4.2
%exclude %{_datadir}/muse-4.2/locale/
%{_datadir}/muse-4.2
%{_bindir}/*
%{_datadir}/applications/*.desktop
%{_datadir}/icons/hicolor/64x64/apps/muse.png
%{_datadir}/icons/hicolor/128x128/apps/muse.png
%{_docdir}/%{name}-%{version}
%{_mandir}/man1/grepmidi.1%{?ext_man}
%{_mandir}/man1/muse4.1%{?ext_man}
%{_datadir}/mime/packages/muse.xml
%{_datadir}/metainfo/io.github.muse_sequencer.Muse.appdata.xml

%files lang
%{_datadir}/muse-4.2/locale/

%changelog
openSUSE Build Service is sponsored by