mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Rob Browning's misc patch for guile-1.4.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2645 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
58
README
58
README
@@ -1,4 +1,4 @@
|
|||||||
============================================================
|
############################################################
|
||||||
Gnucash 1.5.x README file.
|
Gnucash 1.5.x README file.
|
||||||
|
|
||||||
NOTE: THIS IS A DEVELOPMENT RELEASE!!! THIS VERSION HAS NOT
|
NOTE: THIS IS A DEVELOPMENT RELEASE!!! THIS VERSION HAS NOT
|
||||||
@@ -10,7 +10,7 @@ If you want something a bit more tested, please use the
|
|||||||
1.4 stable series.
|
1.4 stable series.
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
==================
|
##################
|
||||||
Table of Contents:
|
Table of Contents:
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
@@ -19,13 +19,13 @@ Table of Contents:
|
|||||||
- Dependencies
|
- Dependencies
|
||||||
- Invocation/running
|
- Invocation/running
|
||||||
- Internationalization
|
- Internationalization
|
||||||
- Building and Installing
|
- Building & Installing
|
||||||
- Supported OSes
|
- Supported Platforms
|
||||||
- Additional Download Sites
|
- Additional Download Sites
|
||||||
- Getting the Source via CVS
|
- Getting the Source via CVS
|
||||||
- Developing GnuCash
|
- Developing GnuCash
|
||||||
|
|
||||||
========
|
########
|
||||||
Overview
|
Overview
|
||||||
--------
|
--------
|
||||||
|
|
||||||
@@ -110,7 +110,7 @@ http://www.gnucash.org/pub/gnucash/
|
|||||||
Development versions:
|
Development versions:
|
||||||
http://www.gnucash.org/source_code.php3
|
http://www.gnucash.org/source_code.php3
|
||||||
|
|
||||||
====================
|
####################
|
||||||
Upgrading from 1.2.x
|
Upgrading from 1.2.x
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
@@ -124,7 +124,7 @@ section of this file for more detail. The file format hasn't changed
|
|||||||
We hope you enjoy all the new features!
|
We hope you enjoy all the new features!
|
||||||
|
|
||||||
|
|
||||||
============
|
############
|
||||||
Dependencies
|
Dependencies
|
||||||
------------
|
------------
|
||||||
|
|
||||||
@@ -183,7 +183,7 @@ you will need to install:
|
|||||||
http://www.gnuplot.vt.edu/
|
http://www.gnuplot.vt.edu/
|
||||||
|
|
||||||
|
|
||||||
=======
|
#######
|
||||||
Running
|
Running
|
||||||
-------
|
-------
|
||||||
|
|
||||||
@@ -243,7 +243,7 @@ to run gnucash from a local directory:
|
|||||||
"$@"
|
"$@"
|
||||||
|
|
||||||
|
|
||||||
====================
|
####################
|
||||||
Internationalization
|
Internationalization
|
||||||
--------------------
|
--------------------
|
||||||
Message catalogues exist for French and German. These are enabled with
|
Message catalogues exist for French and German. These are enabled with
|
||||||
@@ -267,7 +267,7 @@ fr_CH
|
|||||||
de_CH
|
de_CH
|
||||||
|
|
||||||
|
|
||||||
=====================
|
#####################
|
||||||
Building & Installing
|
Building & Installing
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
@@ -286,9 +286,31 @@ following packages:
|
|||||||
SWIG: Used to autogenerate perl wrappers - available at www.swig.org
|
SWIG: Used to autogenerate perl wrappers - available at www.swig.org
|
||||||
need 1.1p5 or later ...
|
need 1.1p5 or later ...
|
||||||
|
|
||||||
|
gnome development system: headers, libraries, etc.
|
||||||
|
|
||||||
|
libxml: available from ftp.gnome.org
|
||||||
|
|
||||||
g-wrap: RPM's, debs, and source available at
|
g-wrap: RPM's, debs, and source available at
|
||||||
ftp://ftp.gnucash.org/pub/g-wrap.
|
ftp://ftp.gnucash.org/pub/g-wrap.
|
||||||
|
|
||||||
|
What you'll need to get and install in order to make sure you have all
|
||||||
|
of these pieces properly installed for your particular operating
|
||||||
|
system flavor will vary, but here's at least a partial list of what
|
||||||
|
you'll need for the systems we know about:
|
||||||
|
|
||||||
|
Debian/GNU/Linux:
|
||||||
|
current:
|
||||||
|
libgnome-dev
|
||||||
|
libxml-dev
|
||||||
|
libgtkxmhtml-dev
|
||||||
|
guile1.3
|
||||||
|
libguile6-dev
|
||||||
|
libguile6-slib
|
||||||
|
|
||||||
|
RedHat:
|
||||||
|
???
|
||||||
|
|
||||||
|
|
||||||
GnuCash understands a few non-standard ./configure options. You
|
GnuCash understands a few non-standard ./configure options. You
|
||||||
should run ./configure --help for the most up to date summary of the
|
should run ./configure --help for the most up to date summary of the
|
||||||
supported options, but here are some more detailed descriptions of
|
supported options, but here are some more detailed descriptions of
|
||||||
@@ -346,9 +368,9 @@ to be installed, the above command would install
|
|||||||
DESTDIR can be helpful when trying to build install images and
|
DESTDIR can be helpful when trying to build install images and
|
||||||
packages.
|
packages.
|
||||||
|
|
||||||
==============
|
###################
|
||||||
Supported OS's
|
Supported Platforms
|
||||||
--------------
|
-------------------
|
||||||
|
|
||||||
GnuCash 1.5.x is known to work with the following operating systems:
|
GnuCash 1.5.x is known to work with the following operating systems:
|
||||||
|
|
||||||
@@ -372,7 +394,7 @@ for precompiled (but *very old*) binaries for these platforms
|
|||||||
Gnucash can probably be made to work with most POSIX-ish platforms,
|
Gnucash can probably be made to work with most POSIX-ish platforms,
|
||||||
provided the libraries and toolchain are available.
|
provided the libraries and toolchain are available.
|
||||||
|
|
||||||
=========================
|
#########################
|
||||||
Additional Download Sites
|
Additional Download Sites
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
@@ -412,7 +434,7 @@ SGI Irix
|
|||||||
http://linas.org/linux/xacc/xacc-1.0b7-sgi-irix.inst.tar
|
http://linas.org/linux/xacc/xacc-1.0b7-sgi-irix.inst.tar
|
||||||
|
|
||||||
|
|
||||||
=======================
|
#######################
|
||||||
Getting Source with CVS
|
Getting Source with CVS
|
||||||
-----------------------
|
-----------------------
|
||||||
A read-only version of the cvs tree is available on the net.
|
A read-only version of the cvs tree is available on the net.
|
||||||
@@ -431,7 +453,7 @@ To get a copy of the source in the gnucash-1.2 stable production tree do a
|
|||||||
cvs -z3 -Pd :pserver:cvs@cvs.gnucash.org:/home/cvs/cvsroot checkout -rxacc-12-patch gnucash
|
cvs -z3 -Pd :pserver:cvs@cvs.gnucash.org:/home/cvs/cvsroot checkout -rxacc-12-patch gnucash
|
||||||
|
|
||||||
|
|
||||||
==================
|
##################
|
||||||
Developing GnuCash
|
Developing GnuCash
|
||||||
------------------
|
------------------
|
||||||
Before you start developing GnuCash, you should do the following:
|
Before you start developing GnuCash, you should do the following:
|
||||||
@@ -514,3 +536,7 @@ Submitting a Patch:
|
|||||||
Send gnucash.diff.gz.uue to gnucash-patches@gnucash.org
|
Send gnucash.diff.gz.uue to gnucash-patches@gnucash.org
|
||||||
|
|
||||||
Thanks in advance for your contribution!
|
Thanks in advance for your contribution!
|
||||||
|
|
||||||
|
Local Variables:
|
||||||
|
mode: text
|
||||||
|
End:
|
||||||
|
|||||||
@@ -90,6 +90,12 @@ AC_SUBST(GNC_DOC_INSTALL_DIR)
|
|||||||
# We should always see these errors...
|
# We should always see these errors...
|
||||||
CFLAGS="${CFLAGS} -Wall"
|
CFLAGS="${CFLAGS} -Wall"
|
||||||
|
|
||||||
|
# This has to come after AC_PROG_CC
|
||||||
|
if test ${GCC}x = yesx
|
||||||
|
then
|
||||||
|
CFLAGS="${CFLAGS} -Werror-implicit-function-declaration"
|
||||||
|
fi
|
||||||
|
|
||||||
AC_ARG_ENABLE( debug,
|
AC_ARG_ENABLE( debug,
|
||||||
[ --enable-debug compile with debugging flags set],
|
[ --enable-debug compile with debugging flags set],
|
||||||
CFLAGS="${CFLAGS} -g"
|
CFLAGS="${CFLAGS} -g"
|
||||||
@@ -102,7 +108,6 @@ AC_ARG_ENABLE( profile,
|
|||||||
CFLAGS="${CFLAGS} -pg"
|
CFLAGS="${CFLAGS} -pg"
|
||||||
LDFLAGS="${LDFLAGS} -pg")
|
LDFLAGS="${LDFLAGS} -pg")
|
||||||
|
|
||||||
|
|
||||||
### --------------------------------------------------------------------------
|
### --------------------------------------------------------------------------
|
||||||
### i18n
|
### i18n
|
||||||
AC_ARG_WITH( locale-dir,
|
AC_ARG_WITH( locale-dir,
|
||||||
@@ -112,7 +117,6 @@ AC_ARG_WITH( locale-dir,
|
|||||||
|
|
||||||
AC_SUBST(LOCALE_DIR)
|
AC_SUBST(LOCALE_DIR)
|
||||||
|
|
||||||
|
|
||||||
### --------------------------------------------------------------------------
|
### --------------------------------------------------------------------------
|
||||||
### Check for gettext
|
### Check for gettext
|
||||||
AM_GNU_GETTEXT
|
AM_GNU_GETTEXT
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
gnucash \- personal finance manager
|
gnucash \- personal finance manager
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.B gnucash [--debug] [
|
.B gnucash [--debug] [
|
||||||
.I xacc-data.xac
|
.I accounts.gnc
|
||||||
.B ]
|
.B ]
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.B gnucash
|
.B gnucash
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
.cvsignore \
|
.cvsignore
|
||||||
|
|||||||
@@ -115,7 +115,8 @@ USE_NLS = @USE_NLS@
|
|||||||
VERSION = @VERSION@
|
VERSION = @VERSION@
|
||||||
l = @l@
|
l = @l@
|
||||||
|
|
||||||
EXTRA_DIST = .cvsignore
|
EXTRA_DIST = .cvsignore
|
||||||
|
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
CONFIG_HEADER = ../../config.h
|
CONFIG_HEADER = ../../config.h
|
||||||
CONFIG_CLEAN_FILES =
|
CONFIG_CLEAN_FILES =
|
||||||
|
|||||||
@@ -91,9 +91,18 @@
|
|||||||
(begin
|
(begin
|
||||||
(gnc:error "non-list given for --doc-path: " val)
|
(gnc:error "non-list given for --doc-path: " val)
|
||||||
(gnc:shutdown 1)))))))
|
(gnc:shutdown 1)))))))
|
||||||
|
|
||||||
|
(cons "evaluate"
|
||||||
|
(cons 'string
|
||||||
|
(lambda (val)
|
||||||
|
(set! gnc:*batch-mode-forms-to-evaluate*
|
||||||
|
(cons val gnc:*batch-mode-forms-to-evaluate*)))))
|
||||||
|
|
||||||
(cons "load-user-config" (cons 'boolean gnc:load-user-config-if-needed))
|
(cons "load-user-config"
|
||||||
(cons "load-system-config" (cons 'boolean gnc:load-system-config-if-needed))))
|
(cons 'boolean gnc:load-user-config-if-needed))
|
||||||
|
|
||||||
|
(cons "load-system-config"
|
||||||
|
(cons 'boolean gnc:load-system-config-if-needed))))
|
||||||
|
|
||||||
(define (gnc:cmd-line-get-boolean-arg args)
|
(define (gnc:cmd-line-get-boolean-arg args)
|
||||||
;; --arg means #t
|
;; --arg means #t
|
||||||
|
|||||||
@@ -23,6 +23,25 @@
|
|||||||
|
|
||||||
(gnc:support "engine-utilities.scm")
|
(gnc:support "engine-utilities.scm")
|
||||||
|
|
||||||
|
(define (gnc:transaction-map-splits thunk transaction)
|
||||||
|
(let loop ((num-splits (gnc:transaction-get-split-count transaction))
|
||||||
|
(i 0))
|
||||||
|
(if (< i num-splits)
|
||||||
|
(cons
|
||||||
|
(thunk (gnc:transaction-get-split transaction i))
|
||||||
|
(loop num-splits (+ i 1)))
|
||||||
|
'())))
|
||||||
|
|
||||||
|
(define (gnc:group-map-accounts thunk group)
|
||||||
|
"Call thunk for each account in group, returning the results as a
|
||||||
|
list. Return '() for a null group."
|
||||||
|
(let loop ((i 0)
|
||||||
|
(num-accounts (gnc:group-get-num-accounts group)))
|
||||||
|
(if (< i num-accounts)
|
||||||
|
(cons (thunk (gnc:group-get-account group i))
|
||||||
|
(loop (+ i 1) num-accounts))
|
||||||
|
'())))
|
||||||
|
|
||||||
;; Pull a scheme list of accounts (including subaccounts) from group grp
|
;; Pull a scheme list of accounts (including subaccounts) from group grp
|
||||||
(define (gnc:group-get-account-list grp)
|
(define (gnc:group-get-account-list grp)
|
||||||
"Return a flat list of all the accounts in grp, or #f if there's a problem."
|
"Return a flat list of all the accounts in grp, or #f if there's a problem."
|
||||||
|
|||||||
@@ -15,6 +15,10 @@
|
|||||||
;; 59 Temple Place - Suite 330 Fax: +1-617-542-2652
|
;; 59 Temple Place - Suite 330 Fax: +1-617-542-2652
|
||||||
;; Boston, MA 02111-1307, USA gnu@gnu.org
|
;; Boston, MA 02111-1307, USA gnu@gnu.org
|
||||||
|
|
||||||
|
;; A list of strings provided by the --evaluate option that should be
|
||||||
|
;; executed in reverse order.
|
||||||
|
(define gnc:*batch-mode-forms-to-evaluate* '())
|
||||||
|
|
||||||
(define (gnc:startup)
|
(define (gnc:startup)
|
||||||
(gnc:debug "starting up.")
|
(gnc:debug "starting up.")
|
||||||
(if (not (gnc:handle-command-line-args))
|
(if (not (gnc:handle-command-line-args))
|
||||||
@@ -88,20 +92,35 @@
|
|||||||
|
|
||||||
;; Now the fun begins.
|
;; Now the fun begins.
|
||||||
(gnc:startup)
|
(gnc:startup)
|
||||||
|
|
||||||
(if (not (= (gnc:lowlev-app-init) 0))
|
(if (not (= (gnc:lowlev-app-init) 0))
|
||||||
(gnc:shutdown 0))
|
(gnc:shutdown 0))
|
||||||
|
|
||||||
(let ((ok (not (gnc:config-var-value-get gnc:*arg-no-file*)))
|
|
||||||
(file (if (pair? gnc:*command-line-files*)
|
|
||||||
(car gnc:*command-line-files*)
|
|
||||||
(gnc:history-get-last))))
|
|
||||||
(if (and ok (string? file))
|
|
||||||
(gnc:ui-open-file file)))
|
|
||||||
|
|
||||||
;; add a hook to save the user configs on shutdown
|
;; add a hook to save the user configs on shutdown
|
||||||
(gnc:hook-add-dangler gnc:*shutdown-hook* gnc:save-global-options)
|
(gnc:hook-add-dangler gnc:*shutdown-hook* gnc:save-global-options)
|
||||||
(gnc:hook-add-dangler gnc:*ui-shutdown-hook* gnc:ui-finish)
|
|
||||||
(gnc:ui-main)
|
(if (null? gnc:*batch-mode-forms-to-evaluate*)
|
||||||
(gnc:hook-remove-dangler gnc:*ui-shutdown-hook* gnc:ui-finish)
|
;; We're not in batch mode; we can go ahead and do the normal thing.
|
||||||
|
(let ((ok (not (gnc:config-var-value-get gnc:*arg-no-file*)))
|
||||||
|
(file (if (pair? gnc:*command-line-files*)
|
||||||
|
(car gnc:*command-line-files*)
|
||||||
|
(gnc:history-get-last))))
|
||||||
|
(if (and ok (string? file))
|
||||||
|
(gnc:ui-open-file file))
|
||||||
|
(gnc:hook-add-dangler gnc:*ui-shutdown-hook* gnc:ui-finish)
|
||||||
|
(gnc:ui-main)
|
||||||
|
(gnc:hook-remove-dangler gnc:*ui-shutdown-hook* gnc:ui-finish))
|
||||||
|
|
||||||
|
;; else: we're in batch mode. Just do what the user said on the
|
||||||
|
;; command line
|
||||||
|
(map (lambda (cmd-line-string-to-eval)
|
||||||
|
(call-with-input-string
|
||||||
|
cmd-line-string-to-eval
|
||||||
|
(lambda (port)
|
||||||
|
(let loop ((form (read port)))
|
||||||
|
(if (not (eof-object? form))
|
||||||
|
(begin (eval form)
|
||||||
|
(loop (read port))))))))
|
||||||
|
(reverse gnc:*batch-mode-forms-to-evaluate*)))
|
||||||
|
|
||||||
(gnc:shutdown 0))
|
(gnc:shutdown 0))
|
||||||
|
|||||||
@@ -111,17 +111,6 @@
|
|||||||
(thunk (gnc:account-get-split account x)))
|
(thunk (gnc:account-get-split account x)))
|
||||||
0 (gnc:account-get-split-count account) 1))
|
0 (gnc:account-get-split-count account) 1))
|
||||||
|
|
||||||
|
|
||||||
(define (gnc:group-map-accounts thunk group)
|
|
||||||
(let ((num-accounts (gnc:group-get-num-accounts group)))
|
|
||||||
(let loop
|
|
||||||
((i 0)
|
|
||||||
(collected '()))
|
|
||||||
(if (>= i num-accounts)
|
|
||||||
(reverse collected)
|
|
||||||
(loop (+ i 1)
|
|
||||||
(cons (thunk (gnc:group-get-account group i)) collected))))))
|
|
||||||
|
|
||||||
(define (gnc:group-get-accounts group)
|
(define (gnc:group-get-accounts group)
|
||||||
(gnc:group-map-accounts (lambda (a) a) group))
|
(gnc:group-map-accounts (lambda (a) a) group))
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user