gnucash-on-windows master: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Mon Mar 13 14:38:27 EDT 2017


Updated	 via  https://github.com/Gnucash/gnucash-on-windows/commit/b40e5f32 (commit)
	 via  https://github.com/Gnucash/gnucash-on-windows/commit/9c495dc4 (commit)
	 via  https://github.com/Gnucash/gnucash-on-windows/commit/25e36b02 (commit)
	 via  https://github.com/Gnucash/gnucash-on-windows/commit/a52eb571 (commit)
	from  https://github.com/Gnucash/gnucash-on-windows/commit/b80f5aa9 (commit)



commit b40e5f32ca7c273529c79e9c84379df471cc26c8
Author: John Ralls <jralls at ceridwen.us>
Date:   Mon Mar 13 11:35:29 2017 -0700

    Clean up after testing html help workshop.

diff --git a/install-impl.sh b/install-impl.sh
index 5830738..3134218 100644
--- a/install-impl.sh
+++ b/install-impl.sh
@@ -1205,6 +1205,7 @@ int main(int argc, char **argv) {
 }
 EOF
         gcc -shared -o ofile.dll ofile.c "$HH_CPPFLAGS" "$HH_LDFLAGS" -lhtmlhelp || return 1
+        rm ofile*
     qpopd
 }
 

commit 9c495dc476cc2da439e6d9ac94b104916baf9a3c
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Mar 12 10:55:01 2017 -0700

    Add ICU and boost::locale to build.
    
    Required by csv_imp_cpp branch.

diff --git a/defaults.sh b/defaults.sh
index 10afcf1..eaa454f 100644
--- a/defaults.sh
+++ b/defaults.sh
@@ -330,9 +330,9 @@ set_default LIBSOUP_SRC_URL "$GNOME_MIRROR/sources/libsoup/2.48/libsoup-${LIBSOU
 set_default LIBSOUP_BAD_SYMBOL_PATCH `pwd`/libsoup-2.48.0-bad-symbol.patch
 set_default LIBSOUP_RESERVED_WORD_PATCH `pwd`/libsoup-2.48.0-soup-server-reserved-word.patch
 set_default ICU4C_URL "http://download.icu-project.org/files/icu4c/4.4.1/icu4c-4_4_1-Win32-msvc9.zip"
-set_default ICU4C_SRC_URL "http://download.icu-project.org/files/icu4c/4.4.1/icu4c-4_4_1-src.tgz"
+set_default ICU4C_SRC_URL "http://download.icu-project.org/files/icu4c/57.1/icu4c-57_1-src.tgz"
 set_default ICU4C_DIR $GLOBAL_DIR\\icu-mingw32
-set_default ICU4C_PATCH `pwd`/icu-crossmingw.patch
+set_default ICU4C_PATCH ""
 
 set_default GIT_URL "https://github.com/msysgit/msysgit/releases/download/Git-1.9.4-preview20140611/Git-1.9.4-preview20140611.exe"
 set_default GIT_DIR $GLOBAL_DIR\\git-1.9.4
@@ -400,6 +400,10 @@ set_default ISOCODES_DIR $GLOBAL_DIR\\isocodes
 
 set_default BOOST_URL "$SF_MIRROR/boost/boost/boost_1_55_0.tar.bz2"
 set_default BOOST_DIR $GLOBAL_DIR\\boost
+# Limit the built libraries to what we think we'll need. Note
+# that the python and context libraries depend on Python and
+# Visual Studio respectively to build, so don't add them.
+set_default BOOST_LIBS "atomic,chrono,date_time,filesystem,locale,log,program_options,regex,signals,system,test"
 
 set_default GTEST_REPO "https://github.com/google/googletest"
 set_default GTEST_VERSION "master"
diff --git a/install-impl.sh b/install-impl.sh
index 0f10e09..5830738 100644
--- a/install-impl.sh
+++ b/install-impl.sh
@@ -1260,6 +1260,48 @@ function inst_hh() {
     fi
 }
 
+
+function inst_icu4c() {
+    setup icu4c
+    get_major_minor "$GNUCASH_SCM_REV"
+    if [ "$GNUCASH_SCM_REV" != "master" ] &&
+        (( $major_minor <= 206 )); then
+        echo "Skipping. ICU is only needed for the master branch or future 2.7.x and up versions of gnucash."
+        return
+    fi
+    _ICU4C_UDIR=`unix_path $ICU4C_DIR`
+    if [ -f "$_ICU4C_UDIR/lib/libicuuc.dll.a" ]
+    then
+        echo "icu4c already installed.  Skipping."
+    else
+        wget_unpacked $ICU4C_SRC_URL $DOWNLOAD_DIR $TMP_DIR
+#        qpushd $TMP_UDIR/icu
+#            patch -p1 < $ICU4C_PATCH
+        #        qpopd
+        mkdir $TMP_UDIR/icu/build
+        qpushd $TMP_UDIR/icu/build
+        ../source/configure --prefix ${_ICU4C_UDIR} \
+                   --disable-strict \
+                   --disable-extras \
+                   --disable-layout \
+                   --disable-layoutex \
+                   --disable-tests \
+                   --disable-samples \
+                   CPPFLAGS="${CPPFLAGS} -DU_CHARSET_IS_UTF8=1 -DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1 -DU_USING_ICU_NAMESPACE=0" \
+                   CXXFLAGS="${CXXFLAGS} -std=gnu++11"
+
+            make V=0
+            make install V=0
+            ln ${_ICU4C_UDIR}/lib/libicudt.dll.a ${_ICU4C_UDIR}/lib/libicudata.dll.a
+            ln ${_ICU4C_UDIR}/lib/libicuin.dll.a ${_ICU4C_UDIR}/lib/libicui18n.dll.a
+        qpopd
+       # cleanup
+        rm -rf $TMP_UDIR/icu*
+    fi
+    add_to_env ${_ICU4C_UDIR}/lib PATH
+    add_to_env ${_ICU4C_UDIR}/lib/pkgconfig PKG_CONFIG_PATH
+}
+
 function inst_boost() {
     setup Boost
     get_major_minor "$GNUCASH_SCM_REV"
@@ -1268,8 +1310,8 @@ function inst_boost() {
         echo "Skipping. Boost is only needed for the master branch or future 2.7.x and up versions of gnucash."
         return
     fi
-
     _BOOST_UDIR=`unix_path ${BOOST_DIR}`
+    _ICU4C_WDIR=`win_fs_path ${ICU4C_DIR}`
     # The boost m4 macro included with gnucash looks for boost in either
     # $BOOST_ROOT/staging (useless here) or $ac_boost_path, while the cmake build
     # looks in $BOOST_ROOT. So we set both to support both build systems.
@@ -1284,17 +1326,15 @@ function inst_boost() {
         wget_unpacked $BOOST_URL $DOWNLOAD_DIR $TMP_DIR
         assert_one_dir $TMP_UDIR/boost_*
         qpushd $TMP_UDIR/boost_*
-        if test ! -f ${_BOOST_UDIR}/bin/b2
-        then
-            qpushd tools/build/v2
-                ./bootstrap.sh --with-toolset=mingw
-                ./b2 install toolset=gcc --prefix=${_BOOST_UDIR}
-             qpopd
-         fi
-        # Limit the built libraries to what we think we'll need. Note
-        # that the python and context libraries depend on Python and
-        # Visual Studio respectively to build, so don't add them.
-         ${_BOOST_UDIR}/bin/b2 install-proper --prefix=${_BOOST_UDIR} --with-atomic --with-chrono --with-date_time --with-filesystem --with-log --with-program_options --with-regex --with-signals --with-system --with-test link=shared variant=release toolset=gcc --layout=tagged
+        ./bootstrap.sh --with-toolset=mingw \
+                       --prefix=${_BOOST_UDIR} \
+                       --with-icu=${_ICU4C_WDIR} \
+                       --with-libraries=${BOOST_LIBS}
+        sed -i"" "s/mingw /gcc /" project-config.jam
+        ./b2 --prefix=${_BOOST_UDIR} --layout=system \
+             link=shared variant=release \
+             -sICU_PATH=${_ICU4C_WDIR} \
+             install
         qpopd
         test -f ${_BOOST_UDIR}/lib/libboost_date_time.dll || die "Boost not installed correctly"
         rm -rf $TMP_UDIR/boost_*
diff --git a/install.sh b/install.sh
index 77bfab3..c1a1e57 100644
--- a/install.sh
+++ b/install.sh
@@ -99,7 +99,8 @@ add_step inst_libdbi
 add_step inst_libsoup
 add_step inst_enchant
 add_step inst_webkit
-#boost and gtest now needed for C++ on master only
+#icu, boost, and gtest now needed for C++ on master only
+add_step inst_icu4c
 add_step inst_boost
 add_step inst_gtest
 

commit 25e36b02224f039c19941dbab36828ab9d0b6edf
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Mar 12 10:54:18 2017 -0700

    Upgrade MinGW Runtime and Win32 API to latest stable.
    
    Needed to fix bug in math.h.

diff --git a/defaults.sh b/defaults.sh
index 67db24f..10afcf1 100644
--- a/defaults.sh
+++ b/defaults.sh
@@ -116,9 +116,9 @@ set_default MINGW_MPC_VERSION         "1.0.1-2"
 set_default MINGW_MPFR_VERSION        "3.1.2-2"
 set_default MINGW_PEXPORTS_VERSION    "0.46"
 set_default MINGW_PTHREAD_W32_VERSION "2.10-pre-20160821"
-set_default MINGW_RT_VERSION          "3.21"
+set_default MINGW_RT_VERSION          "3.22.4"
 set_default MINGW_ZLIB_VERSION        "1.2.8-1"
-set_default MINGW_W32API_VERSION      "3.17-2"
+set_default MINGW_W32API_VERSION      "3.18.2"
 set_default MINGW_MAKE_VERSION        "3.82-5"
 
 if [ "$CROSS_COMPILE" != yes ]; then

commit a52eb57177f5809990107e23f5fd92ce844bcc2e
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Mar 12 10:50:05 2017 -0700

    Remove swift patch from AQB.
    
    Already in new version.

diff --git a/defaults.sh b/defaults.sh
index 0bcd79b..67db24f 100644
--- a/defaults.sh
+++ b/defaults.sh
@@ -363,7 +363,7 @@ AQBANKING_VERSION="5.6.12"
 ## the release number, not the file name at the end!
 set_default AQBANKING_URL "https://www.aquamaniac.de/sites/download/download.php?package=03&release=208&file=01&dummy=aqbanking-5.6.12.tar.gz"
 set_default AQBANKING_DIR $GLOBAL_DIR\\aqbanking
-set_default AQB_PATCH `pwd`/swift940-strndup.patch
+set_default AQB_PATCH ""
 
 set_default SQLITE3_URL "http://sqlite.org/sqlite-amalgamation-3.6.1.tar.gz"
 set_default SQLITE3_DIR $GLOBAL_DIR\\sqlite3



Summary of changes:
 defaults.sh     | 14 ++++++++-----
 install-impl.sh | 65 ++++++++++++++++++++++++++++++++++++++++++++++-----------
 install.sh      |  3 ++-
 3 files changed, 64 insertions(+), 18 deletions(-)



More information about the gnucash-changes mailing list