mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-16 18:25:11 -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:
parent
4f7aca77fd
commit
94033d39ec
58
README
58
README
@ -1,4 +1,4 @@
|
||||
============================================================
|
||||
############################################################
|
||||
Gnucash 1.5.x README file.
|
||||
|
||||
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.
|
||||
------------------------------------------------------------
|
||||
|
||||
==================
|
||||
##################
|
||||
Table of Contents:
|
||||
------------------
|
||||
|
||||
@ -19,13 +19,13 @@ Table of Contents:
|
||||
- Dependencies
|
||||
- Invocation/running
|
||||
- Internationalization
|
||||
- Building and Installing
|
||||
- Supported OSes
|
||||
- Building & Installing
|
||||
- Supported Platforms
|
||||
- Additional Download Sites
|
||||
- Getting the Source via CVS
|
||||
- Developing GnuCash
|
||||
|
||||
========
|
||||
########
|
||||
Overview
|
||||
--------
|
||||
|
||||
@ -110,7 +110,7 @@ http://www.gnucash.org/pub/gnucash/
|
||||
Development versions:
|
||||
http://www.gnucash.org/source_code.php3
|
||||
|
||||
====================
|
||||
####################
|
||||
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!
|
||||
|
||||
|
||||
============
|
||||
############
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
@ -183,7 +183,7 @@ you will need to install:
|
||||
http://www.gnuplot.vt.edu/
|
||||
|
||||
|
||||
=======
|
||||
#######
|
||||
Running
|
||||
-------
|
||||
|
||||
@ -243,7 +243,7 @@ to run gnucash from a local directory:
|
||||
"$@"
|
||||
|
||||
|
||||
====================
|
||||
####################
|
||||
Internationalization
|
||||
--------------------
|
||||
Message catalogues exist for French and German. These are enabled with
|
||||
@ -267,7 +267,7 @@ fr_CH
|
||||
de_CH
|
||||
|
||||
|
||||
=====================
|
||||
#####################
|
||||
Building & Installing
|
||||
---------------------
|
||||
|
||||
@ -286,9 +286,31 @@ following packages:
|
||||
SWIG: Used to autogenerate perl wrappers - available at www.swig.org
|
||||
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
|
||||
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
|
||||
should run ./configure --help for the most up to date summary of the
|
||||
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
|
||||
packages.
|
||||
|
||||
==============
|
||||
Supported OS's
|
||||
--------------
|
||||
###################
|
||||
Supported Platforms
|
||||
-------------------
|
||||
|
||||
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,
|
||||
provided the libraries and toolchain are available.
|
||||
|
||||
=========================
|
||||
#########################
|
||||
Additional Download Sites
|
||||
-------------------------
|
||||
|
||||
@ -412,7 +434,7 @@ SGI Irix
|
||||
http://linas.org/linux/xacc/xacc-1.0b7-sgi-irix.inst.tar
|
||||
|
||||
|
||||
=======================
|
||||
#######################
|
||||
Getting Source with CVS
|
||||
-----------------------
|
||||
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
|
||||
|
||||
|
||||
==================
|
||||
##################
|
||||
Developing GnuCash
|
||||
------------------
|
||||
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
|
||||
|
||||
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...
|
||||
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,
|
||||
[ --enable-debug compile with debugging flags set],
|
||||
CFLAGS="${CFLAGS} -g"
|
||||
@ -102,7 +108,6 @@ AC_ARG_ENABLE( profile,
|
||||
CFLAGS="${CFLAGS} -pg"
|
||||
LDFLAGS="${LDFLAGS} -pg")
|
||||
|
||||
|
||||
### --------------------------------------------------------------------------
|
||||
### i18n
|
||||
AC_ARG_WITH( locale-dir,
|
||||
@ -112,7 +117,6 @@ AC_ARG_WITH( locale-dir,
|
||||
|
||||
AC_SUBST(LOCALE_DIR)
|
||||
|
||||
|
||||
### --------------------------------------------------------------------------
|
||||
### Check for gettext
|
||||
AM_GNU_GETTEXT
|
||||
|
@ -7,7 +7,7 @@
|
||||
gnucash \- personal finance manager
|
||||
.SH SYNOPSIS
|
||||
.B gnucash [--debug] [
|
||||
.I xacc-data.xac
|
||||
.I accounts.gnc
|
||||
.B ]
|
||||
.SH DESCRIPTION
|
||||
.B gnucash
|
||||
|
@ -1,3 +1,3 @@
|
||||
|
||||
EXTRA_DIST = \
|
||||
.cvsignore \
|
||||
.cvsignore
|
||||
|
@ -115,7 +115,8 @@ USE_NLS = @USE_NLS@
|
||||
VERSION = @VERSION@
|
||||
l = @l@
|
||||
|
||||
EXTRA_DIST = .cvsignore
|
||||
EXTRA_DIST = .cvsignore
|
||||
|
||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||
CONFIG_HEADER = ../../config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
|
@ -91,9 +91,18 @@
|
||||
(begin
|
||||
(gnc:error "non-list given for --doc-path: " val)
|
||||
(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-system-config" (cons 'boolean gnc:load-system-config-if-needed))))
|
||||
(cons "load-user-config"
|
||||
(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)
|
||||
;; --arg means #t
|
||||
|
@ -23,6 +23,25 @@
|
||||
|
||||
(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
|
||||
(define (gnc:group-get-account-list grp)
|
||||
"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
|
||||
;; 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)
|
||||
(gnc:debug "starting up.")
|
||||
(if (not (gnc:handle-command-line-args))
|
||||
@ -88,20 +92,35 @@
|
||||
|
||||
;; Now the fun begins.
|
||||
(gnc:startup)
|
||||
|
||||
|
||||
(if (not (= (gnc:lowlev-app-init) 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
|
||||
(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)
|
||||
(gnc:hook-remove-dangler gnc:*ui-shutdown-hook* gnc:ui-finish)
|
||||
|
||||
(if (null? gnc:*batch-mode-forms-to-evaluate*)
|
||||
;; 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))
|
||||
|
@ -111,17 +111,6 @@
|
||||
(thunk (gnc:account-get-split account x)))
|
||||
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)
|
||||
(gnc:group-map-accounts (lambda (a) a) group))
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user