moneymanagerex/moneymanagerex.spec
Your Name bd21f75060
Some checks failed
Run CI/CD... / main (push) Failing after 29m48s
1.9.0
2025-02-07 19:38:51 +00:00

115 lines
No EOL
4.7 KiB
RPMSpec

%global oname mmex
%define database_commit 1aa59e11d2f57339247be85c793507faf239e08a
%define gr_commit a84b292b301b79cb7e5145bf8b1bed285235c620
%define themes_commit 9704a6a597bafebe0048d2f8aa8b08aaaf42c62f
%define chatnew_commit b9e576fffa368873caed5c5dcdeb1de99637da5f
%define luaglue_commit ccffa36799596cc2e9a179fe18d2bf6ce07ff09a
%define apexcharts_commit 2e3dcd08948d6d92517b7b9fec3aa2100ada3a57
%define cgitemplate_commit e43bec4c0e648a5311aaae4211834cdc085178a4
%define fmt_commit b6f4ceaed0a0a24ccf575fab6c56dd50ccf6f1a9
%define lua_commit d71a548685eb3ac5ea598d6a9e7481389c558808
%define rapidjson_commit 8f4c021fa2f1e001d2376095928fc0532adf2ae6
%define wxsqlite3_commit 7bbd8a15f9fc0fdb81e3421a0fab90a63a6f0461
%global optflags %(echo %{optflags} | sed -e 's/-ffat-lto-objects//g' -e 's/-fvar-tracking-assignments//g' -e 's/-Wa,--compress-debug-sections//g')
Summary: Easy-to-use personal finance software
Name: moneymanagerex
Version: 1.9.0
Release: 1
License: GPLv2+
Group: Office
URL: https://www.moneymanagerex.org
# git clone --recursive -b v{version} --single-branch https://github.com/moneymanagerex/moneymanagerex
# repack and make tar.gz
Source0: https://github.com/moneymanagerex/moneymanagerex/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: https://github.com/moneymanagerex/database/archive/%{database_commit}/database-%{database_commit}.tar.gz
Source2: https://github.com/moneymanagerex/general-reports/archive/%{gr_commit}/general-reports-%{gr_commit}.tar.gz
Source3: https://github.com/moneymanagerex/themes/archive/%{themes_commit}/themes-%{themes_commit}.tar.gz
Source4: https://github.com/FVANCOP/ChartNew.js/archive/%{chatnew_commit}/chatnew-%{chatnew_commit}.tar.gz
Source5: https://github.com/moneymanagerex/LuaGlue/archive/%{luaglue_commit}/luaglue-%{luaglue_commit}.tar.gz
Source6: https://github.com/apexcharts/apexcharts.js/archive/%{apexcharts_commit}/apexcharts-%{apexcharts_commit}.tar.gz
Source7: https://github.com/moneymanagerex/html-template/archive/%{cgitemplate_commit}/cgitemplate-%{cgitemplate_commit}.tar.gz
Source8: https://github.com/fmtlib/fmt/archive/%{fmt_commit}/fmt-%{fmt_commit}.tar.gz
Source9: https://github.com/lua/lua/archive/%{lua_commit}/lua-%{lua_commit}.tar.gz
Source10: https://github.com/Tencent/rapidjson/archive/%{rapidjson_commit}/rapidjson-%{rapidjson_commit}.tar.gz
Source11: https://github.com/utelle/wxsqlite3/archive/%{wxsqlite3_commit}/wxsqlite3-%{wxsqlite3_commit}.tar.gz
ExclusiveArch: x86_64
BuildRequires: git-core
BuildRequires: cmake
BuildRequires: llvm17
BuildRequires: ccache
BuildRequires: wxgtku3.1-devel >= 3.1.6
BuildRequires: lua-devel
BuildRequires: lsb-release
BuildRequires: pkgconfig(libcurl)
BuildRequires: %{_lib}fmt8-devel
BuildRequires: %{_lib}fmt8
BuildRequires: curl
BuildRequires: appstream-devel
BuildRequires: appstream
BuildRequires: pkgconfig(openssl3.3)
%description
Money Manager Ex is a free, open-source, cross-platform, easy-to-use personal
finance software. It primarily helps organize one's finances and keeps track
of where, when and how the money goes. It is also a great tool to get a bird's
eye view of your financial worth.
Money Manager includes all the basic features that 90% of users would want to
see in a personal finance application. The design goals are to concentrate on
simplicity and user-friendliness - something one can use everyday.
%files
#-f %{oname}.lang
%doc README.md LICENSE
%{_bindir}/%{oname}
%{_datadir}/applications/%{oname}.desktop
%dir %{_datadir}/%{oname}
%{_datadir}/%{oname}/*
%{_iconsdir}/hicolor/*/apps/%{oname}.*
%{_docdir}/%{oname}
#----------------------------------------------------------------------------
%prep
%setup -q
mkdir -p tmp
pushd tmp
tar -xf %{SOURCE1}
tar -xf %{SOURCE2}
tar -xf %{SOURCE3}
tar -xf %{SOURCE4}
tar -xf %{SOURCE5}
tar -xf %{SOURCE6}
tar -xf %{SOURCE7}
tar -xf %{SOURCE8}
tar -xf %{SOURCE9}
tar -xf %{SOURCE10}
tar -xf %{SOURCE11}
mv database-%{database_commit}/* ../database
mv general-reports-%{gr_commit}/* ../general-reports
mv themes-%{themes_commit}/* ../themes
mv ChartNew.js-%{chatnew_commit}/* ../3rd/ChartNew.js
mv LuaGlue-%{luaglue_commit}/* ../3rd/LuaGlue
mv apexcharts.js-%{apexcharts_commit}/* ../3rd/apexcharts.js
mv html-template-%{cgitemplate_commit}/* ../3rd/cgitemplate
mv fmt-%{fmt_commit}/* ../3rd/fmt
mv lua-%{lua_commit}/* ../3rd/lua
mv rapidjson-%{rapidjson_commit}/* ../3rd/rapidjson
mv wxsqlite3-%{wxsqlite3_commit}/* ../3rd//wxsqlite3
popd
%build
%cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_COMPILER=/opt/llvm17/bin/clang++ \
-DCMAKE_C_COMPILER=/opt/llvm17/bin/clang
%make
%install
%makeinstall_std -C build
#find_lang %{oname}