gnucash-on-windows master: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Sun Aug 27 17:03:34 EDT 2017


Updated	 via  https://github.com/Gnucash/gnucash-on-windows/commit/106b66a0 (commit)
	 via  https://github.com/Gnucash/gnucash-on-windows/commit/4c6403ea (commit)
	 via  https://github.com/Gnucash/gnucash-on-windows/commit/2332da63 (commit)
	 via  https://github.com/Gnucash/gnucash-on-windows/commit/a0d50a2e (commit)
	from  https://github.com/Gnucash/gnucash-on-windows/commit/13536fb1 (commit)



commit 106b66a0049c8eb79fe5a5426259f8a17d47bfda
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Aug 27 14:00:07 2017 -0700

    Some setup-mingw64.ps1 fixes and changes required by Mingw64 updates.

diff --git a/setup-mingw64.ps1 b/setup-mingw64.ps1
index ba3cec3..f2ab88b 100644
--- a/setup-mingw64.ps1
+++ b/setup-mingw64.ps1
@@ -73,6 +73,10 @@ if (!(test-path -path $target_dir)) {
     new-item "$target_dir" -type directory
 }
 
+if (!(test-path -path $download_dir)) {
+    new-item "$download_dir" -type directory
+}
+
 function make-pkgnames ([string]$prefix, [string]$items) {
     $items.split(" ") | foreach-object {"$prefix$_"}
 }
@@ -193,14 +197,13 @@ bash-command -command "pacman -Syuu --noconfirm"
 
 # Set up aliases for the parts of msys-devtools and mingw-w64-toolchain that
 # we need:
-$devel = "asciidoc autoconf autoconf2.13 autogen automake-wrapper automake1.10 automake1.11 automake1.12 automake1.13 automake1.14 automake1.15 automake1.6 automake1.7 automake1.8 automake1.9 bison cmake diffstat diffutils dos2unix file flex gawk gettext gettext-devel gperf grep groff intltool m4 make man-db pacman pactoys-git patch patchutils perl pkg-config sed swig texinfo texinfo-tex wget xmlto git jhbuild-git texinfo"
+$devel = "asciidoc autoconf autoconf2.13 autogen automake-wrapper automake1.10 automake1.11 automake1.12 automake1.13 automake1.14 automake1.15 automake1.6 automake1.7 automake1.8 automake1.9 bison diffstat diffutils dos2unix file flex gawk gettext gettext-devel gperf grep groff intltool libtool m4 make man-db pacman pactoys-git patch patchutils perl pkg-config sed swig texinfo texinfo-tex wget xmlto git jhbuild-git texinfo"
 
-$toolchain = "binutils crt-git gcc gcc-libs gdb headers-git libmangle-git libtool libwinpthread-git make pkg-config tools-git winpthreads-git"
+$toolchain = "binutils cmake crt-git gcc gcc-libs gdb headers-git libmangle-git libtool libwinpthread-git make pkg-config tools-git winpthreads-git"
 
 
-# Note that webkitgtk3 will pull in gtk3 automatically; we need gtk2 as well to
-# support AQBanking.
-$deps = "webkitgtk3 gtk2 boost iso-codes shared-mime-info libmariadbclient postgresql libgnomecanvas ninja ncurses"
+# Note that webkitgtk3 will pull in gtk3 automatically.
+$deps = "webkitgtk3 boost iso-codes shared-mime-info libmariadbclient postgresql libgnomecanvas ninja ncurses"
 
 Write-Host @"
 
@@ -238,7 +241,7 @@ if (!(test-path -path "$target_dir\\src")) {
   New-Item $target_dir\\src -type directory
 }
 if (!(test-path -path "$target_dir\\src\\gnucash-on-windows.git")) {
-  bash-command -command "git clone -b mingw64 https://github.com/gnucash/gnucash-on-windows.git $target_dir/src/gnucash-on-windows.git"
+  bash-command -command "git clone https://github.com/gnucash/gnucash-on-windows.git $target_dir/src/gnucash-on-windows.git"
 }
 if (!(test-path -path "$target_dir\\src\\gnucash-on-windows.git")) {
    write-host "Failed to clone the gnucash-on-windows repo, exiting."
@@ -253,6 +256,8 @@ $jhbuildrc = get-content "$target_dir\\src\\gnucash-on-windows.git\\jhbuildrc.in
  [IO.File]::WriteAllLines("$target_dir\\src\\gnucash-on-windows.git\\jhbuildrc", $jhbuildrc)
 
 Write-Host @"
-Your build environment is now ready to use. Open an MSys2 shell from the start menu, cd to your target directory, and run
-jhbuild -f gnucash-on-windows.git/jhbuildrc build
+Your build environment is now ready to use. Open an MSys2/Mingw32 shell from the start menu, cd to your target directory, and run
+jhbuild -f src/gnucash-on-windows.git/jhbuildrc build
+
+Note that the build will not work with the plain MSys2 shell!
 "@

commit 4c6403eac410b589d8b5b83ab0c229c3732c8285
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Aug 27 13:57:30 2017 -0700

    Remove generator. JHbuild uses Ninja by default and that now works on Mingw64 with CMake-3.9.1.

diff --git a/gnucash.modules b/gnucash.modules
index c8cf010..ee15e88 100644
--- a/gnucash.modules
+++ b/gnucash.modules
@@ -275,7 +275,7 @@
 	      autogen-template="%(srcdir)s/%(autogen-sh)s && %(srcdir)s/configure -\-prefix %(prefix)s %(autogenargs)s"
 	      autogenargs="-\-enable-ofx -\-enable-aqbanking -\-enable-binreloc -\-enable-dbi -\-with-dbi-dbd-dir=$PREFIX/lib/dbd"-->
  <cmake id="gnucash"
-        cmakeargs="-G 'MSYS Makefiles' -DCMAKE_PREFIX_PATH=c:/gcdev64/msys2 -DPERL_EXECUTABLE=/usr/bin/perl -DGNC_DBD_DIR=$PREFIX/lib/dbd -DHTMLHELP_DIR=$PREFIX/hh -DGTEST_ROOT=$SRCROOT/googletest/googletest -DGMOCK_ROOT=$SRCROOT/googletest/googlemock">
+        cmakeargs="-DCMAKE_PREFIX_PATH=c:/gcdev64/msys2 -DPERL_EXECUTABLE=/usr/bin/perl -DGNC_DBD_DIR=$PREFIX/lib/dbd -DHTMLHELP_DIR=$PREFIX/hh -DGTEST_ROOT=$SRCROOT/googletest/googletest -DGMOCK_ROOT=$SRCROOT/googletest/googlemock">
    <branch repo="github" module="Gnucash/gnucash.git" revision="master"
 	   checkoutdir="gnucash-git"/>
     <dependencies>

commit 2332da639116c626b2ae0e566914591e6c171e14
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Aug 27 13:56:08 2017 -0700

    Fix path to libdbi-drivers-linkage.patch

diff --git a/gnucash.modules b/gnucash.modules
index 34fc2d5..c8cf010 100644
--- a/gnucash.modules
+++ b/gnucash.modules
@@ -260,7 +260,7 @@
     <branch repo="sourceforge" version="0.8.3"
 	    module="libdbi-drivers/libdbi-drivers-0.8.3-1.tar.gz">
       <patch file="https://raw.githubusercontent.com/Gnucash/gnucash-on-windows/master/libdbi-drivers-errno.patch" strip="1"/>
-      <patch file="https://raw.githubusercontent.com/Gnucash/gnucash-on-windows/master/libdbi-drivers-linkage.patch" strip="1"/>
+      <patch file="https://raw.githubusercontent.com/Gnucash/gnucash-on-windows/master/patches/libdbi-drivers-linkage.patch" strip="1"/>
     </branch>
     <dependencies>
       <dep package="libdbi"/>

commit a0d50a2e98a1d4dacdf4d970ab2d8606c205723e
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Aug 27 13:50:15 2017 -0700

    Update Guile patches.
    
    Originals were for guile master, plus fix spelling error in moduleset.

diff --git a/gnucash.modules b/gnucash.modules
index 368210f..34fc2d5 100644
--- a/gnucash.modules
+++ b/gnucash.modules
@@ -118,7 +118,8 @@
   <autotools id="guile2" autogen-sh="autoreconf" autogenargs="--without-threads">
     <branch repo="ftp.gnu.org" module="guile/guile-2.0.14.tar.gz"
 	    version="2.0.14">
-      <patch file="https://raw.githubusercontent.com/Gnucash/gnucash-on-windows/master/patches/guile-2.0.14-mingw64-fixup.patch" strip="1"/>
+      <patch file="https://raw.githubusercontent.com/Gnucash/gnucash-on-windows/master/patches/guile-2.0.14-mingw64-fixups.patch" strip="1"/>
+      <patch file="https://raw.githubusercontent.com/Gnucash/gnucash-on-windows/master/patches/guile-2.0.14-Fix-mktime-test.patch" strip="1"/>
     </branch>
     <dependencies>
       <dep package="libunistring"/>
diff --git a/patches/guile-2.0.14-Fix-mktime-test.patch b/patches/guile-2.0.14-Fix-mktime-test.patch
new file mode 100644
index 0000000..a2c71dc
--- /dev/null
+++ b/patches/guile-2.0.14-Fix-mktime-test.patch
@@ -0,0 +1,33 @@
+From ba984ee511178fdf1f547931fff213db76ab3eee Mon Sep 17 00:00:00 2001
+From: John Ralls <jralls at ceridwen.us>
+Date: Sun, 23 Jul 2017 14:08:28 -0700
+Subject: [PATCH 3/3] Test for HAVE_MKTIME and NEED_REPLACE_MKTIME before
+ HAVE_MKTIME_INTERNAL
+
+So that if the latter is true and the former aren't they don't overwrite REPLACE_MKTIME.
+---
+ m4/gnulib-comp.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/m4/gnulib-comp.m4 b/m4/gnulib-comp.m4
+index 9380120e7..824afaf2c 100644
+--- a/m4/gnulib-comp.m4
++++ b/m4/gnulib-comp.m4
+@@ -998,13 +998,13 @@ AC_SUBST([LTALLOCA])
+   func_gl_gnulib_m4code_5264294aa0a5557541b53c8c741f7f31 ()
+   {
+     if ! $gl_gnulib_enabled_5264294aa0a5557541b53c8c741f7f31; then
++      func_gl_gnulib_m4code_mktime
+       gl_FUNC_MKTIME_INTERNAL
+       if test $REPLACE_MKTIME = 1; then
+         AC_LIBOBJ([mktime])
+         gl_PREREQ_MKTIME
+       fi
+       gl_gnulib_enabled_5264294aa0a5557541b53c8c741f7f31=true
+-      func_gl_gnulib_m4code_mktime
+     fi
+   }
+   func_gl_gnulib_m4code_f691f076f650964c9f5598c3ee487616 ()
+-- 
+2.12.1
+
diff --git a/patches/guile-2.0.14-mingw64-fixups.patch b/patches/guile-2.0.14-mingw64-fixups.patch
index a0fb3a4..baad5e5 100644
--- a/patches/guile-2.0.14-mingw64-fixups.patch
+++ b/patches/guile-2.0.14-mingw64-fixups.patch
@@ -162,6 +162,36 @@ index 7a139747f..7e4b7dfe3 100644
  /* You see, FreeBSD defines _POSIX_CPUTIME but not
     CLOCK_PROCESS_CPUTIME_ID.  */
  #define HAVE_POSIX_CPUTIME 1
--- 
-2.12.1
-
+@@ -830,12 +830,7 @@ scm_init_stime()
+ 
+ #ifdef HAVE_POSIX_CPUTIME
+   {
+-    clockid_t dummy;
+-    
+-    /* Only use the _POSIX_CPUTIME clock if it's going to work across
+-       CPUs. */
+-    if (clock_getcpuclockid (0, &dummy) == 0 &&
+-        clock_gettime (CLOCK_PROCESS_CPUTIME_ID, &posix_run_time_base) == 0)
++    if (clock_gettime (CLOCK_PROCESS_CPUTIME_ID, &posix_run_time_base) == 0)
+       get_internal_run_time = get_internal_run_time_posix_timer;
+     else
+       errno = 0;
+diff --git a/lib/intprops.h~ b/lib/intprops.h
+index feb02c3..84de8ee 100644
+--- a/lib/intprops.h~
++++ b/lib/intprops.h
+@@ -230,11 +230,11 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+    (e.g., A and B) have the same type as MIN and MAX.  Instead, they assume
+    that the result (e.g., A + B) has that type.  */
+ #if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
+-# define _GL_ADD_OVERFLOW(a, b, min, max)
++# define _GL_ADD_OVERFLOW(a, b, min, max) \
+    __builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0)
+-# define _GL_SUBTRACT_OVERFLOW(a, b, min, max)
++# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \
+    __builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0)
+-# define _GL_MULTIPLY_OVERFLOW(a, b, min, max)
++# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \
+    __builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0)
+ #else
+ # define _GL_ADD_OVERFLOW(a, b, min, max)                                \



Summary of changes:
 gnucash.modules                            |  7 +++---
 patches/guile-2.0.14-Fix-mktime-test.patch | 33 +++++++++++++++++++++++++++
 patches/guile-2.0.14-mingw64-fixups.patch  | 36 +++++++++++++++++++++++++++---
 setup-mingw64.ps1                          | 21 ++++++++++-------
 4 files changed, 83 insertions(+), 14 deletions(-)
 create mode 100644 patches/guile-2.0.14-Fix-mktime-test.patch



More information about the gnucash-changes mailing list