## START: Set by rpmautospec
## (rpmautospec version 0.7.3)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 1;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec

%global forgeurl https://github.com/tildearrow/furnace
Version:        0.6.7
%forgemeta

Name:           furnace
Release:        %autorelease
Summary:        a multi-system chiptune tracker compatible with DefleMask modules

# The applications is mainly under GPL-2.0-or-later license, except the bundled libraries:
# SAASound - BSD-3-Clause
# vgsound_emu-modified - ZLib
# adpcm - Unlicense
# opn - LGPL-2.1-or-later
# Nuked-PSG - GPL-2.0-only
# opm - LGPL-2.1-or-later
# Nuked-OPLL - GPL-2.0-or-later
# opl - LGPL-2.1-or-later
# YM3812-LLE - GPL-2.0-or-later
# ESFMu - LGPL-2.1-or-later
# pwrnoise - MIT
# adpcm-xq - BSD-3-Clause
License:        GPL-2.0-or-later AND BSD-3-Clause AND Zlib AND Unlicense AND LGPL-2.1-or-later AND GPL-2.0-only AND MIT
URL:            %{forgeurl}
Source0:        %{forgesource}
# download adpcm bundled library from the specfic commit
Source1:        https://github.com/superctr/adpcm/archive/ef7a217154badc3b99978ac481b268c8aab67bd8.tar.gz

BuildRequires:  gcc-c++
BuildRequires:  cmake
BuildRequires:  pkgconfig(fftw3)
BuildRequires:  pkgconfig(fmt)
BuildRequires:  pkgconfig(freetype2)
BuildRequires:  pkgconfig(sndfile)
BuildRequires:  pkgconfig(portaudio-2.0)
BuildRequires:  pkgconfig(rtmidi)
BuildRequires:  pkgconfig(zlib)
BuildRequires:  pkgconfig(sdl2)
BuildRequires:  pkgconfig(jack)
BuildRequires:  desktop-file-utils

Requires:       hicolor-icon-theme

%description
%{summary}.

%package        doc
Summary:        Documentation for %{name}
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    doc
This package contains documentation for %{name}.

%prep
%autosetup -p1

tar xf %{SOURCE1} -C extern/adpcm --strip-components=1

%build
%cmake \
    -DCMAKE_BUILD_TYPE=RelWithDebInfo \
    -DUSE_FREETYPE=ON \
    -DSYSTEM_FFTW=ON \
    -DSYSTEM_FMT=ON \
    -DSYSTEM_FREETYPE=ON \
    -DSYSTEM_LIBSNDFILE=ON \
    -DSYSTEM_PORTAUDIO=ON \
    -DSYSTEM_RTMIDI=ON \
    -DSYSTEM_ZLIB=ON \
    -DSYSTEM_SDL2=ON

%cmake_build

%install
%cmake_install
%find_lang furnace

rm -r %{buildroot}%{_datadir}/icons/hicolor/1024x1024

%check
desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop

%files -f furnace.lang
%license LICENSE
%{_bindir}/furnace
%{_datadir}/applications/furnace.desktop
%{_datadir}/icons/hicolor/*/apps/furnace.png
%dir %{_datadir}/furnace
%{_datadir}/furnace/demos/
%{_datadir}/furnace/instruments/
%{_datadir}/furnace/wavetables/
%{_datadir}/mime/packages/furnace.xml

%files doc
%license LICENSE
%{_datadir}/doc/furnace/

%changelog
## START: Generated by rpmautospec
* Mon Sep 02 2024 Packit <hello@packit.dev> - 0.6.7-1
- Update to 0.6.7 upstream release
- Resolves: rhbz#2309052

* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.6.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild

* Tue Jun 25 2024 Packit <hello@packit.dev> - 0.6.5-1
- Update to 0.6.5 upstream release
- Resolves: rhbz#2276327

* Sat Jun 22 2024 topazus <topazus@outlook.com> - 0.6.4-1
- 0.6.4

* Fri May 03 2024 topazus <topazus@outlook.com> - 0.6.3-1
- 0.6.3

* Sun Mar 24 2024 topazus <topazus@outlook.com> - 0.6.1-2
- move source file to repo cache

* Mon Feb 05 2024 topazus <topazus@outlook.com> - 0.6.1-1
- initial import; rhbz#2262593
## END: Generated by rpmautospec