mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-26 22:06:35 +01:00
business/gnucash: Updated for version 2.4.5.
Signed-off-by: Niels Horn <niels.horn@slackbuilds.org>
This commit is contained in:
parent
ba76866f34
commit
f0df599877
5 changed files with 71 additions and 202 deletions
|
@ -1,9 +1,17 @@
|
|||
GNUCash is opensource accounting software.
|
||||
|
||||
This requires slib, libofx, ORBit2, GConf, libtasn1, gnome-keyring,
|
||||
gnome-mime-data, libbonobo, gnome-vfs, libgnomecanvas, libgnome, libbonoboui,
|
||||
libgnomeui, libgnomecups, libgnomeprint, libgnomeprintui, gtkhtml, and goffice.
|
||||
This requires the following additional software, and it is suggested
|
||||
that you build them in this order:
|
||||
|
||||
aqbanking is optional, but it's not available at SlackBuilds.org.
|
||||
slib libofx ORBit2 GConf libtasn1 gnome-keyring gnome-mime-data libbonobo
|
||||
gnome-vfs libgnomecanvas libgnome libbonoboui libgnomeui libgnomecups
|
||||
libgnomeprint libgnomeprintui gtkhtml goffice
|
||||
|
||||
Building the deps in the order listed above should give the desired results.
|
||||
|
||||
if you want the new webkit report rendering integration, you must
|
||||
first have webkit installed, and then pass the WEBKIT=true flag.
|
||||
|
||||
if you want the new SQL database integration, you must first have libdbi
|
||||
and libdbi-drivers installed, and then pass the DBI=true flag.
|
||||
|
||||
|
|
9
business/gnucash/doinst.sh
Normal file
9
business/gnucash/doinst.sh
Normal file
|
@ -0,0 +1,9 @@
|
|||
if [ -x /usr/bin/update-desktop-database ]; then
|
||||
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
|
||||
if [ -x /usr/bin/gtk-update-icon-cache ]; then
|
||||
/usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
|
||||
fi
|
||||
fi
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
# Slackware build script for gnucash
|
||||
|
||||
# Copyright 2008 Vincent Batts, vbatts@hashbangbash.com, http://hashbangbash.com/
|
||||
# Copyright 2008,2009,2010,2011 Vincent Batts, vbatts@hashbangbash.com, http://hashbangbash.com/
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use of this script, with or without modification, is
|
||||
|
@ -23,8 +23,8 @@
|
|||
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
PRGNAM=gnucash
|
||||
VERSION=2.2.9
|
||||
BUILD=${BUILD:-2}
|
||||
VERSION=2.4.5
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
if [ -z "$ARCH" ]; then
|
||||
|
@ -40,6 +40,10 @@ TMP=${TMP:-/tmp/SBo}
|
|||
PKG=$TMP/package-$PRGNAM
|
||||
OUTPUT=${OUTPUT:-/tmp}
|
||||
|
||||
DBI=${DBI:-false}
|
||||
WEBKIT=${WEBKIT:-false}
|
||||
OPT_ARGS=""
|
||||
|
||||
if [ "$ARCH" = "i486" ]; then
|
||||
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
|
@ -49,11 +53,30 @@ elif [ "$ARCH" = "i686" ]; then
|
|||
elif [ "$ARCH" = "x86_64" ]; then
|
||||
SLKCFLAGS="-O2 -fPIC"
|
||||
LIBDIRSUFFIX="64"
|
||||
elif [ "$ARCH" = "s390" ]; then
|
||||
SLKCFLAGS="-O2"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "arm" ]; then
|
||||
SLKCFLAGS="-O2 -march=armv4t"
|
||||
LIBDIRSUFFIX=""
|
||||
else
|
||||
SLKCFLAGS="-O2"
|
||||
LIBDIRSUFFIX=""
|
||||
fi
|
||||
|
||||
if [ ! "$DBI" = "false" ] ; then
|
||||
OPT_ARGS="--enable-dbi --with-dbi-dbd-dir=/usr/lib${LIBDIRSUFFIX}/dbd/"
|
||||
echo $0 : building with dbi enabled
|
||||
sleep 0.5
|
||||
else
|
||||
OPT_ARGS="--disable-dbi"
|
||||
fi
|
||||
if [ ! "$WEBKIT" = "false" ] ; then
|
||||
OPT_ARGS="$OPT_ARGS --enable-webkit --with-html-engine=webkit"
|
||||
echo $0 : building with webkit enabled
|
||||
sleep 0.5
|
||||
fi
|
||||
|
||||
set -e
|
||||
|
||||
rm -rf $PKG
|
||||
|
@ -69,9 +92,6 @@ find . \
|
|||
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
|
||||
-exec chmod 644 {} \;
|
||||
|
||||
# Patch for new goffice API
|
||||
patch -p1 < $CWD/gnucash_goffice.patch
|
||||
|
||||
CFLAGS="$SLKCFLAGS" \
|
||||
CXXFLAGS="$SLKCFLAGS" \
|
||||
./configure \
|
||||
|
@ -82,10 +102,10 @@ CXXFLAGS="$SLKCFLAGS" \
|
|||
--infodir=/usr/info \
|
||||
--mandir=/usr/man \
|
||||
--docdir=/usr/doc/$PRGNAM-$VERSION \
|
||||
--enable-python-bindings \
|
||||
--enable-ofx \
|
||||
--disable-aqbanking \
|
||||
--disable-sql \
|
||||
--disable-static \
|
||||
$OPT_ARGS \
|
||||
--build=$ARCH-slackware-linux
|
||||
|
||||
make
|
||||
|
@ -112,26 +132,30 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
|||
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
cat $CWD/doinst.sh > $PKG/install/doinst.sh
|
||||
|
||||
# Handle the schemas and such (hopefully) properly
|
||||
GCONF_CONFIG_SOURCE="xml::etc/gconf/gconf.xml.defaults"
|
||||
for RAWNAME in $(find $PKG/etc/gconf/schemas -name "*.schemas") ; do
|
||||
SCHEMA=$(basename $RAWNAME)
|
||||
cat << EOF >> $PKG/install/doinst.sh
|
||||
GCONF_CONFIG_SOURCE="xml::etc/gconf/gconf.xml.defaults" \
|
||||
chroot . gconftool-2 --makefile-install-rule /etc/gconf/schemas/$SCHEMA 1>/dev/null
|
||||
EOF
|
||||
# handle the schemas and such (hopefully) properly
|
||||
export GCONF_CONFIG_SOURCE="xml::etc/gconf/gconf.xml.defaults"
|
||||
for rawname in $(find $PKG/etc/gconf/schemas -name "*.schemas") ; do
|
||||
schema=$(basename $rawname)
|
||||
cat << eof >> $PKG/install/doinst.sh
|
||||
GCONF_CONFIG_SOURCE="${GCONF_CONFIG_SOURCE}" \
|
||||
chroot . gconftool-2 \
|
||||
--config-source=$GCONF_CONFIG_SOURCE \
|
||||
--makefile-install-rule /etc/gconf/schemas/$schema 1>/dev/null
|
||||
eof
|
||||
done
|
||||
for RAWNAME in $(find $PKG/etc/gconf/schemas -name "*.entries") ; do
|
||||
ENTRY=$(basename $RAWNAME)
|
||||
cat << EOF >> $PKG/install/doinst.sh
|
||||
GCONF_CONFIG_SOURCE="xml::etc/gconf/gconf.xml.defaults" \
|
||||
for rawname in $(find $PKG/etc/gconf/schemas -name "*.entries") ; do
|
||||
entry=$(basename $rawname)
|
||||
cat << eof >> $PKG/install/doinst.sh
|
||||
GCONF_CONFIG_SOURCE="${GCONF_CONFIG_SOURCE}" \
|
||||
chroot . gconftool-2 --direct \
|
||||
--config-source=$GCONF_CONFIG_SOURCE \
|
||||
--load /etc/gconf/schemas/$ENTRY 1>/dev/null
|
||||
EOF
|
||||
--load /etc/gconf/schemas/$entry 1>/dev/null
|
||||
eof
|
||||
done
|
||||
unset GCONF_CONFIG_SOURCE
|
||||
|
||||
cd $PKG
|
||||
/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
PRGNAM="gnucash"
|
||||
VERSION="2.2.9"
|
||||
VERSION="2.4.5"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
DOWNLOAD="http://downloads.sourceforge.net/gnucash/gnucash-2.2.9.tar.bz2"
|
||||
DOWNLOAD="http://downloads.sourceforge.net/sourceforge/gnucash/gnucash-2.4.5.tar.bz2"
|
||||
MD5SUM="94168fe959743fc342812ac3a01814a1"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM="1d814de8673b4760045bf51b72924d04"
|
||||
MD5SUM_x86_64=""
|
||||
MAINTAINER="Vincent Batts"
|
||||
EMAIL="vbatts@hashbangbash.com"
|
||||
APPROVED="rworkman"
|
||||
APPROVED="Niels Horn"
|
||||
|
|
|
@ -1,172 +0,0 @@
|
|||
diff -Naur gnucash-2.2.9.orig//src/gnome-utils/gnc-html-graph-gog.c gnucash-2.2.9//src/gnome-utils/gnc-html-graph-gog.c
|
||||
--- gnucash-2.2.9.orig//src/gnome-utils/gnc-html-graph-gog.c 2008-01-07 20:06:26.000000000 -0500
|
||||
+++ gnucash-2.2.9//src/gnome-utils/gnc-html-graph-gog.c 2010-06-30 08:42:43.009625615 -0400
|
||||
@@ -46,13 +46,31 @@
|
||||
#ifndef GTKHTML_USES_GTKPRINT
|
||||
# include <goffice/graph/gog-renderer-gnome-print.h>
|
||||
#endif
|
||||
-#include <goffice/graph/gog-style.h>
|
||||
+/* everything inside the following #ifndef can be safely removed when gnucash
|
||||
+requires libgoffice >= 0.7.5, the contents of the #else block must stay. */
|
||||
+#ifndef GOG_TYPE_GRAPH
|
||||
+# define GOG_TYPE_GRAPH GOG_GRAPH_TYPE
|
||||
+# define GO_TYPE_PLUGIN_LOADER_MODULE GO_PLUGIN_LOADER_MODULE_TYPE
|
||||
+# define GOG_TYPE_RENDERER GOG_RENDERER_TYPE
|
||||
+# include <goffice/graph/gog-style.h>
|
||||
+# define GOStyle GogStyle
|
||||
+# define go_styled_object_get_style gog_styled_object_get_style
|
||||
+# define GO_STYLED_OBJECT GOG_STYLED_OBJECT
|
||||
+# define GO_STYLE_FILL_PATTERN GOG_FILL_STYLE_PATTERN
|
||||
+# define go_style_set_text_angle gog_style_set_text_angle
|
||||
+#else
|
||||
+# include <goffice/utils/go-style.h>
|
||||
+# include <goffice/utils/go-styled-object.h>
|
||||
+#endif
|
||||
+
|
||||
#include <goffice/graph/gog-styled-object.h>
|
||||
#include <goffice/graph/gog-plot.h>
|
||||
#include <goffice/graph/gog-series.h>
|
||||
+#include <goffice/graph/gog-data-set.h>
|
||||
+#include <goffice/utils/go-style.h>
|
||||
+#include <goffice/utils/goffice-utils.h>
|
||||
#include <goffice/utils/go-color.h>
|
||||
#include <goffice/utils/go-marker.h>
|
||||
-#include <goffice/graph/gog-data-set.h>
|
||||
#include <goffice/data/go-data-simple.h>
|
||||
#include <goffice/app/go-plugin.h>
|
||||
#include <goffice/app/go-plugin-loader-module.h>
|
||||
@@ -98,7 +116,7 @@
|
||||
libgoffice_init();
|
||||
|
||||
/* Initialize plugins manager */
|
||||
- go_plugins_init (NULL, NULL, NULL, NULL, TRUE, GO_PLUGIN_LOADER_MODULE_TYPE);
|
||||
+ go_plugins_init (NULL, NULL, NULL, NULL, TRUE, GO_TYPE_PLUGIN_LOADER_MODULE);
|
||||
|
||||
gnc_html_register_object_handler( "gnc-guppi-pie", handle_piechart );
|
||||
gnc_html_register_object_handler( "gnc-guppi-bar", handle_barchart );
|
||||
@@ -189,7 +207,7 @@
|
||||
gog_object_update (GOG_OBJECT (graph));
|
||||
|
||||
#if defined(HAVE_GOFFICE_0_5)
|
||||
- renderer = GOG_RENDERER (g_object_new (GOG_RENDERER_TYPE,
|
||||
+ renderer = GOG_RENDERER (g_object_new (GOG_TYPE_RENDERER,
|
||||
"model", graph,
|
||||
NULL));
|
||||
update_status = gog_renderer_update (renderer, eb->width, eb->height);
|
||||
@@ -229,7 +247,7 @@
|
||||
GogObject **out_chart,
|
||||
GogPlot **out_plot)
|
||||
{
|
||||
- *out_graph = g_object_new(GOG_GRAPH_TYPE, NULL);
|
||||
+ *out_graph = g_object_new(GOG_TYPE_GRAPH, NULL);
|
||||
*out_chart = gog_object_add_by_name(*out_graph, "Chart", NULL);
|
||||
*out_plot = gog_plot_new_by_name(plot_type_name);
|
||||
if (!*out_plot)
|
||||
@@ -363,8 +381,13 @@
|
||||
}
|
||||
gog_object_add_by_name(chart, "Legend", NULL);
|
||||
|
||||
+#ifdef GO_COLOR_BLACK
|
||||
+ GOG_STYLED_OBJECT(graph)->style->line.width = 5;
|
||||
+ GOG_STYLED_OBJECT(graph)->style->line.color = GO_COLOR_BLACK;
|
||||
+#else
|
||||
GOG_STYLED_OBJECT(graph)->style->outline.width = 5;
|
||||
GOG_STYLED_OBJECT(graph)->style->outline.color = RGBA_BLACK;
|
||||
+#endif
|
||||
|
||||
series = gog_plot_new_series(plot);
|
||||
labelData = go_data_vector_str_new((char const * const *)labels, datasize, NULL);
|
||||
@@ -401,7 +424,7 @@
|
||||
GogObject *graph, *chart;
|
||||
GogPlot *plot;
|
||||
GogSeries *series;
|
||||
- GogStyle *style;
|
||||
+ GOStyle *style;
|
||||
GOData *label_data, *slice_data;
|
||||
int data_rows, data_cols;
|
||||
double *data = NULL;
|
||||
@@ -489,11 +512,11 @@
|
||||
gog_series_set_dim (series, 1, slice_data, NULL);
|
||||
go_data_emit_changed (GO_DATA (slice_data));
|
||||
|
||||
- style = gog_styled_object_get_style (GOG_STYLED_OBJECT (series));
|
||||
- style->fill.type = GOG_FILL_STYLE_PATTERN;
|
||||
+ style = go_styled_object_get_style (GO_STYLED_OBJECT (series));
|
||||
+ style->fill.type = GO_STYLE_FILL_PATTERN;
|
||||
if (gdk_color_parse (col_colors[i], &color)) {
|
||||
style->fill.auto_back = FALSE;
|
||||
- go_pattern_set_solid (&style->fill.pattern, GDK_TO_UINT (color));
|
||||
+ go_pattern_set_solid (&style->fill.pattern, GO_COLOR_FROM_GDK (color));
|
||||
} else {
|
||||
g_warning("cannot parse color [%s]", col_colors[i]);
|
||||
}
|
||||
@@ -503,8 +526,8 @@
|
||||
if (rotate_row_labels) {
|
||||
GogObject *object = gog_object_get_child_by_role (
|
||||
chart, gog_object_find_role_by_name (chart, "X-Axis"));
|
||||
- style = gog_styled_object_get_style (GOG_STYLED_OBJECT (object));
|
||||
- gog_style_set_text_angle (style, 90.0);
|
||||
+ style = go_styled_object_get_style (GO_STYLED_OBJECT (object));
|
||||
+ go_style_set_text_angle (style, 90.0);
|
||||
}
|
||||
|
||||
set_chart_titles_from_hash (chart, eb);
|
||||
@@ -526,7 +549,7 @@
|
||||
GogPlot *plot;
|
||||
GogSeries *series;
|
||||
GOData *sliceData;
|
||||
- GogStyle *style;
|
||||
+ GOStyle *style;
|
||||
int datasize;
|
||||
double *xData, *yData;
|
||||
gchar *marker_str, *color_str;
|
||||
@@ -556,7 +579,7 @@
|
||||
}
|
||||
|
||||
series = gog_plot_new_series( plot );
|
||||
- style = gog_styled_object_get_style(GOG_STYLED_OBJECT(series));
|
||||
+ style = go_styled_object_get_style(GO_STYLED_OBJECT(series));
|
||||
|
||||
sliceData = go_data_vector_val_new( xData, datasize, NULL );
|
||||
gog_series_set_dim( series, 0, sliceData, NULL );
|
||||
@@ -588,9 +611,9 @@
|
||||
GdkColor color;
|
||||
if (gdk_color_parse(color_str, &color)) {
|
||||
style->marker.auto_outline_color = FALSE;
|
||||
- go_marker_set_outline_color(style->marker.mark, GDK_TO_UINT(color));
|
||||
+ go_marker_set_outline_color(style->marker.mark, GO_COLOR_FROM_GDK(color));
|
||||
style->line.auto_color = FALSE;
|
||||
- style->line.color = GDK_TO_UINT(color);
|
||||
+ style->line.color = GO_COLOR_FROM_GDK(color);
|
||||
} else {
|
||||
g_warning("cannot parse color [%s]", color_str);
|
||||
}
|
||||
@@ -602,15 +625,15 @@
|
||||
go_marker_set_fill_color(style->marker.mark,
|
||||
go_marker_get_outline_color(style->marker.mark));
|
||||
} else {
|
||||
- GogStyle *chart_style =
|
||||
- gog_styled_object_get_style(GOG_STYLED_OBJECT(chart));
|
||||
+ GOStyle *chart_style =
|
||||
+ go_styled_object_get_style(GO_STYLED_OBJECT(chart));
|
||||
|
||||
- if (chart_style->fill.type == GOG_FILL_STYLE_PATTERN
|
||||
+ if (chart_style->fill.type == GO_STYLE_FILL_PATTERN
|
||||
&& chart_style->fill.pattern.pattern == GO_PATTERN_SOLID) {
|
||||
style->marker.auto_fill_color = FALSE;
|
||||
go_marker_set_fill_color(style->marker.mark,
|
||||
chart_style->fill.pattern.back);
|
||||
- } else if (chart_style->fill.type == GOG_FILL_STYLE_PATTERN
|
||||
+ } else if (chart_style->fill.type == GO_STYLE_FILL_PATTERN
|
||||
&& chart_style->fill.pattern.pattern
|
||||
== GO_PATTERN_FOREGROUND_SOLID) {
|
||||
style->marker.auto_fill_color = FALSE;
|
||||
@@ -639,7 +662,7 @@
|
||||
{
|
||||
GogGraph *graph = GOG_GRAPH(g_object_get_data(G_OBJECT(eb), "graph"));
|
||||
# ifdef HAVE_GOFFICE_0_5
|
||||
- GogRenderer *rend = g_object_new(GOG_RENDERER_TYPE, "model", graph, NULL);
|
||||
+ GogRenderer *rend = g_object_new(GOG_TYPE_RENDERER, "model", graph, NULL);
|
||||
# else
|
||||
GogRendererCairo *rend = g_object_new(GOG_RENDERER_CAIRO_TYPE, "model", graph,
|
||||
"cairo", cr, "is-vector", TRUE, NULL);
|
Loading…
Reference in a new issue