summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2018-04-12 20:37:54 +0200
committerRicardo Wurmus <rekado@elephly.net>2018-04-13 09:41:13 +0200
commit53e66fbceb275262184ad44f60a5a8d4e7061fcb (patch)
tree19450e284ff70b974e755cbedeee487b8b4a152f /gnu
parent2f5ccf27b239ba3415c4329978ffa09aa36b5fe8 (diff)
downloadguix-53e66fbceb275262184ad44f60a5a8d4e7061fcb.tar.gz
gnu: gnucash: Update to 3.0.
* gnu/packages/gnucash.scm (gnucash): Update to 3.0.
[build-system]: Use cmake-build-system.
[inputs]: Replace "guile-2.0" with "guile-2.2", replace "gtk+-2" with "gtk+",
replace "webkitgtk/gtk+-2" with "webkitgtk"; add "boost"; remove
"goffice-0.8".
[native-inputs]: Add googlemock and googletest.
[arguments]: Enable tests; adjust test target; add build phase "unpack-gmock".
(gnucash-docs): Update hash.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/gnucash.scm42
1 files changed, 29 insertions, 13 deletions
diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm
index 93ee4e3e49..fc8a9b6bfc 100644
--- a/gnu/packages/gnucash.scm
+++ b/gnu/packages/gnucash.scm
@@ -25,9 +25,12 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
-  #:use-module (guix build-system glib-or-gtk)
+  #:use-module (guix build-system cmake)
   #:use-module (gnu packages)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages boost)
+  #:use-module (gnu packages check)
+  #:use-module (gnu packages cmake)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages gnome)
@@ -47,7 +50,7 @@
 (define-public gnucash
   (package
     (name "gnucash")
-    (version "2.6.19")
+    (version "3.0")
     (source
      (origin
       (method url-fetch)
@@ -55,34 +58,47 @@
                           version "/gnucash-" version ".tar.bz2"))
       (sha256
        (base32
-        "1lbz7ygqlxbndxir5ay59bmmrqv9qvc6pgb5jwgdbhkf4ikr7f2h"))
-      (patches (search-patches "gnucash-price-quotes-perl.patch"))))
-    (build-system glib-or-gtk-build-system)
+        "1ffvf1rryg5yin86fnf1zvy6hnpwzrjarbdfmjmrf2mqlmv48xac"))
+
+      ;; TODO: rebase this patch
+;      (patches (search-patches "gnucash-price-quotes-perl.patch"))
+      ))
+    (build-system cmake-build-system)
     (inputs
-     `(("guile" ,guile-2.0)
+     `(("guile" ,guile-2.2)
+       ("boost" ,boost)
        ("icu4c" ,icu4c)
        ("glib" ,glib)
-       ("gtk" ,gtk+-2)
-       ("goffice" ,goffice-0.8)
+       ("gtk" ,gtk+)
        ("libgnomecanvas" ,libgnomecanvas)
        ("libxml2" ,libxml2)
        ("libxslt" ,libxslt)
-       ("webkitgtk" ,webkitgtk/gtk+-2)
+       ("webkitgtk" ,webkitgtk)
        ("aqbanking" ,aqbanking)
        ("perl-date-manip" ,perl-date-manip)
        ("perl-finance-quote" ,perl-finance-quote)))
     (native-inputs
      `(("glib" ,glib "bin") ; glib-compile-schemas, etc.
        ("intltool" ,intltool)
+       ("googlemock" ,(package-source googletest))
+       ("googletest" ,googletest)
        ("gnucash-docs" ,gnucash-docs)
        ("pkg-config" ,pkg-config)))
     (outputs '("out" "doc"))
     (arguments
-     `(#:tests? #f ;FIXME: failing at /qof/gnc-date/qof print date dmy buff
-       #:configure-flags '("--disable-dbi"
-                           "--enable-aqbanking")
+     `(#:test-target "check"
+       #:configure-flags
+       (list "-DWITH_OFX=OFF"  ; libofx is not available yet
+             "-DWITH_SQL=OFF") ; without dbi.h
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'unpack-gmock
+           (lambda* (#:key inputs #:allow-other-keys)
+             (mkdir "gmock")
+             (invoke "tar" "xf" (assoc-ref inputs "googlemock")
+                     "-C" "gmock" "--strip-components=1")
+             (setenv "GMOCK_ROOT" (string-append (getcwd) "/gmock/googlemock"))
+             #t))
          ;; There are about 100 megabytes of documentation.
          (add-after
           'install 'install-docs
@@ -142,7 +158,7 @@ financial calculations or scheduled transactions.")
                            version "/gnucash-docs-" version ".tar.gz"))
        (sha256
         (base32
-         "1ix99d5c1ppamn5ajamjfxpx6l25bv81nkg777rp1sl0glaib116"))))
+         "0yq65s3z3dwdwdf2nq1d1w9ckdjdyjwkfpmvhzyib54b66q65xh5"))))
     (build-system gnu-build-system)
     ;; These are native-inputs because they are only required for building the
     ;; documentation.