1 |
%define lib_major 0 |
2 |
%define libname %mklibname %{name} %{lib_major} |
3 |
%define libnamedev %mklibname -d %{name} |
4 |
|
5 |
%define doc_version 2.4.1 |
6 |
%define build_hbci 1 |
7 |
Name: gnucash |
8 |
Summary: Application to keep track of your finances |
9 |
Version: 2.4.8 |
10 |
Release: %mkrel 1 |
11 |
License: GPLv2+ |
12 |
Group: Office |
13 |
Source0: http://downloads.sourceforge.net/gnucash/%{name}-%{version}.tar.bz2 |
14 |
Source4: http://downloads.sourceforge.net/gnucash/%{name}-docs-%{doc_version}.tar.gz |
15 |
# (fc) 2.2.1-3mdv disable unneeded warning at startup (Fedora) |
16 |
Patch0: gnucash-quiet.patch |
17 |
URL: http://www.gnucash.org/ |
18 |
|
19 |
Requires: guile >= 1.6 |
20 |
Requires: slib |
21 |
Requires: %{libname} >= %{version}-%{release} |
22 |
Requires: yelp |
23 |
Suggests: perl-Finance-Quote |
24 |
# remove for mageia 3 |
25 |
Provides: gnucash-sql |
26 |
Obsoletes: gnucash-sql <= 2.2.9 |
27 |
BuildRequires: guile-devel |
28 |
BuildRequires: goffice-devel >= 0.7 |
29 |
BuildRequires: readline-devel |
30 |
BuildRequires: libtermcap-devel |
31 |
BuildRequires: popt-devel |
32 |
BuildRequires: python-devel |
33 |
BuildRequires: scrollkeeper >= 0.3.4 |
34 |
BuildRequires: libxslt-proc |
35 |
BuildRequires: dbi-devel |
36 |
BuildRequires: libofx-devel >= 0.7.0 |
37 |
BuildRequires: libktoblzcheck-devel |
38 |
BuildRequires: gettext-devel |
39 |
BuildRequires: libffi-devel |
40 |
BuildRequires: libgnomeui2-devel |
41 |
BuildRequires: libglade2.0-devel |
42 |
BuildRequires: intltool |
43 |
BuildRequires: automake |
44 |
BuildRequires: desktop-file-utils |
45 |
BuildRequires: slib |
46 |
BuildRequires: pkgconfig(webkit-1.0) |
47 |
#disable requires in private shared libraries |
48 |
%define _requires_exceptions devel.libgncmod-[^[:space:]].\\|libgnc-app |
49 |
|
50 |
%description |
51 |
GnuCash is a personal finance manager. A check-book like |
52 |
register GUI allows you to enter and track bank accounts, |
53 |
stocks, income and even currency trades. The interface is |
54 |
designed to be simple and easy to use, but is backed with |
55 |
double-entry accounting principles to ensure balanced books. |
56 |
|
57 |
%package ofx |
58 |
Summary: Enables OFX importing in GnuCash |
59 |
Group: Office |
60 |
Requires: gnucash = %{version}-%{release} |
61 |
|
62 |
%description ofx |
63 |
This package adds OFX file import support to the base |
64 |
GnuCash package. Install this package if you want to |
65 |
import OFX files. |
66 |
|
67 |
%if %build_hbci |
68 |
%package hbci |
69 |
Summary: Enables HBCI importing in GnuCash |
70 |
Group: Office |
71 |
Requires: gnucash = %{version}-%{release} |
72 |
BuildRequires: libaqbanking-devel >= 3 |
73 |
# only require the wizard, it will pull aqhbci package too |
74 |
#gw it really required qt3-wizard which wasn't included in aqbanking for a while |
75 |
Requires: aqhbci |
76 |
|
77 |
|
78 |
%description hbci |
79 |
This package adds HBCI file import support to the base |
80 |
GnuCash package. Install this package if you want to |
81 |
import HBCI files. |
82 |
%endif |
83 |
|
84 |
%package -n %{libnamedev} |
85 |
Group: Development/C |
86 |
Summary: Libraries needed to develop for gnucash |
87 |
Requires: %{libname} = %{version}-%{release} |
88 |
Provides: %{name}-devel = %{version}-%{release} |
89 |
Provides: lib%{name}-devel = %{version}-%{release} |
90 |
Obsoletes: %{name}-devel %mklibname -d %name 0 |
91 |
|
92 |
|
93 |
%description -n %{libnamedev} |
94 |
Libraries needed to develop for gnucash. |
95 |
|
96 |
%package -n %{libname} |
97 |
Summary: Libraries for gnucash |
98 |
Group: System/Libraries |
99 |
|
100 |
%description -n %{libname} |
101 |
This package provides libraries to use gnucash. |
102 |
|
103 |
%package -n python-gnucash |
104 |
Summary: Python module for gnucash |
105 |
Group: System/Libraries |
106 |
|
107 |
%description -n python-gnucash |
108 |
This package provides python bindings to interact with gnucash. |
109 |
|
110 |
%prep |
111 |
%setup -q -a 4 |
112 |
%patch0 -p1 -b .quiet |
113 |
|
114 |
%build |
115 |
%define _disable_ld_no_undefined 1 |
116 |
%configure2_5x --enable-gui --enable-ofx \ |
117 |
--disable-error-on-warning --disable-schemas-install \ |
118 |
--disable-static \ |
119 |
--enable-locale-specific-tax \ |
120 |
--enable-python-bindings \ |
121 |
--enable-dbi \ |
122 |
--with-html-engine=webkit \ |
123 |
%if %build_hbci |
124 |
--enable-aqbanking |
125 |
%endif |
126 |
|
127 |
|
128 |
cd gnucash-docs-%{doc_version} |
129 |
%configure2_5x --localstatedir=/var/lib |
130 |
cd .. |
131 |
|
132 |
make |
133 |
|
134 |
cd gnucash-docs-%{doc_version} |
135 |
%make |
136 |
cd .. |
137 |
|
138 |
%install |
139 |
rm -rf $RPM_BUILD_ROOT %name.lang |
140 |
|
141 |
%makeinstall_std |
142 |
|
143 |
cd gnucash-docs-%{doc_version} |
144 |
%makeinstall_std |
145 |
cd .. |
146 |
|
147 |
|
148 |
rm -f $RPM_BUILD_ROOT%{_infodir}/dir |
149 |
find %buildroot -name '*.la'|xargs rm |
150 |
|
151 |
#don't ship this file |
152 |
%{find_lang} %{name} --with-gnome --all-name |
153 |
for omf in $(ls %buildroot%_datadir/omf/%name-docs/*.omf|fgrep -v -- -C.omf);do |
154 |
echo "%lang($(basename $omf|sed -e s/.*-// -e s/.omf//)) $(echo $omf|sed -e s!%buildroot!!)" >> %name.lang |
155 |
done |
156 |
|
157 |
|
158 |
|
159 |
# Menu entry |
160 |
desktop-file-install --vendor="" \ |
161 |
--remove-category="Application" \ |
162 |
--add-category="GTK" \ |
163 |
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/* |
164 |
|
165 |
# don't ship /usr/bin/gnc-test-env as it's only used for build and testing, this mitigates CVE-2010-3999 |
166 |
rm -f %{buildroot}%{_bindir}/gnc-test-env |
167 |
|
168 |
%clean |
169 |
[ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT |
170 |
|
171 |
%define schemas apps_gnucash_dialog_business_common apps_gnucash_dialog_commodities apps_gnucash_dialog_common apps_gnucash_dialog_prices apps_gnucash_dialog_print_checks apps_gnucash_dialog_reconcile apps_gnucash_dialog_totd apps_gnucash_general apps_gnucash_history apps_gnucash_import_generic_matcher apps_gnucash_import_qif apps_gnucash_warnings apps_gnucash_window_pages_account_tree apps_gnucash_window_pages_register apps_gnucash_dialog_scheduled_transctions |
172 |
|
173 |
%preun |
174 |
%preun_uninstall_gconf_schemas %schemas |
175 |
|
176 |
%if %build_hbci |
177 |
%preun hbci |
178 |
%preun_uninstall_gconf_schemas apps_gnucash_dialog_hbci |
179 |
%endif |
180 |
|
181 |
|
182 |
%post -n %{libnamedev} |
183 |
%_install_info %{name}-design.info.info |
184 |
|
185 |
%postun -n %{libnamedev} |
186 |
%_remove_install_info %{name}-design.info.info |
187 |
|
188 |
%files -n %{libnamedev} |
189 |
%defattr(-,root,root) |
190 |
%{_infodir}/* |
191 |
%{_bindir}/gnucash-make-guids |
192 |
%{_bindir}/gnucash-valgrind |
193 |
%_libdir/lib*.so |
194 |
%{_includedir}/gnucash |
195 |
|
196 |
%files -n %{libname} |
197 |
%defattr(-, root, root) |
198 |
%_libdir/libgnc-backend-sql.so.0* |
199 |
%_libdir/libgnc-backend-xml-utils.so.0* |
200 |
%_libdir/libgnc-business-ledger.so.0* |
201 |
%_libdir/libgnc-core-utils.so.0* |
202 |
%_libdir/libgnc-gnome.so.0* |
203 |
%_libdir/libgnc-module.so.0* |
204 |
%_libdir/libgnc-qof.so.1* |
205 |
|
206 |
|
207 |
%files -f %{name}.lang |
208 |
%defattr(-,root,root) |
209 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_business_common.schemas |
210 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_commodities.schemas |
211 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_common.schemas |
212 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_prices.schemas |
213 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_print_checks.schemas |
214 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_reconcile.schemas |
215 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_scheduled_transctions.schemas |
216 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_totd.schemas |
217 |
%_sysconfdir/gconf/schemas/apps_gnucash_general.schemas |
218 |
%_sysconfdir/gconf/schemas/apps_gnucash_history.schemas |
219 |
%_sysconfdir/gconf/schemas/apps_gnucash_import_generic_matcher.schemas |
220 |
%_sysconfdir/gconf/schemas/apps_gnucash_import_qif.schemas |
221 |
%_sysconfdir/gconf/schemas/apps_gnucash_warnings.schemas |
222 |
%_sysconfdir/gconf/schemas/apps_gnucash_window_pages_account_tree.schemas |
223 |
%_sysconfdir/gconf/schemas/apps_gnucash_window_pages_register.schemas |
224 |
%config(noreplace) %{_sysconfdir}/%{name} |
225 |
%{_bindir}/gnucash |
226 |
%{_bindir}/gnucash-env |
227 |
%{_bindir}/gnc-fq-check |
228 |
%{_bindir}/gnc-fq-dump |
229 |
%{_bindir}/gnc-fq-helper |
230 |
%{_bindir}/gnc-fq-update |
231 |
%{_bindir}/update-gnucash-gconf |
232 |
%_datadir/applications/%name.desktop |
233 |
%dir %{_libdir}/gnucash |
234 |
%{_libdir}/gnucash/*.so* |
235 |
%{_libdir}/gnucash/overrides |
236 |
%dir %{_datadir}/%{name} |
237 |
%{_datadir}/%{name}/accounts |
238 |
%{_datadir}/%{name}/checks |
239 |
%{_datadir}/%{name}/guile-modules |
240 |
%{_datadir}/%{name}/glade |
241 |
%{_datadir}/%{name}/pixmaps |
242 |
%{_datadir}/%{name}/ui |
243 |
%{_datadir}/%{name}/gnome |
244 |
%{_datadir}/%{name}/tip_of_the_day.list |
245 |
%_datadir/icons/hicolor/*/apps/gnucash* |
246 |
%doc %{_datadir}/%{name}/doc |
247 |
%{_datadir}/%{name}/scm |
248 |
%{_mandir}/*/* |
249 |
%doc AUTHORS COPYING HACKING NEWS README* |
250 |
%doc doc/README.german doc/README.francais doc/guile-hackers.txt |
251 |
%dir %{_datadir}/omf/%name-docs/ |
252 |
%{_datadir}/omf/%name-docs/gnucash-guide-C.omf |
253 |
%{_datadir}/omf/%name-docs/gnucash-help-C.omf |
254 |
%exclude %{_libdir}/gnucash/libgncmod-ofx* |
255 |
%if %build_hbci |
256 |
%exclude %{_libdir}/gnucash/libgncmod-aqbanking* |
257 |
%exclude %{_datadir}/gnucash/glade/aqbanking* |
258 |
%exclude %{_datadir}/gnucash/ui/gnc-plugin-aqbanking-ui.xml |
259 |
%endif |
260 |
%exclude %{_datadir}/gnucash/ui/gnc-plugin-ofx-ui.xml |
261 |
|
262 |
%files ofx |
263 |
%defattr(-,root,root) |
264 |
%doc doc/README.OFX |
265 |
%{_libdir}/gnucash/libgncmod-ofx* |
266 |
%{_datadir}/gnucash/ui/gnc-plugin-ofx-ui.xml |
267 |
|
268 |
%if %build_hbci |
269 |
%files hbci |
270 |
%defattr(-,root,root) |
271 |
%doc doc/README.HBCI |
272 |
%_sysconfdir/gconf/schemas/apps_gnucash_dialog_hbci.schemas |
273 |
%{_libdir}/gnucash/libgncmod-aqbanking* |
274 |
%{_datadir}/gnucash/glade/aqbanking* |
275 |
%{_datadir}/gnucash/ui/gnc-plugin-aqbanking-ui.xml |
276 |
%endif |
277 |
|
278 |
%files -n python-gnucash |
279 |
%python_sitelib/%name/ |
280 |
%python_sitearch/%name/ |