gnucash-on-windows master: Update gwen, aqb, and libchipcard to the latest betas.

John Ralls jralls at code.gnucash.org
Sun Sep 22 16:11:21 EDT 2019


Updated	 via  https://github.com/Gnucash/gnucash-on-windows/commit/0596987c (commit)
	from  https://github.com/Gnucash/gnucash-on-windows/commit/f7749d30 (commit)



commit 0596987c56b1144f1b4ff4590f0626549cbca568
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Sep 22 11:26:13 2019 -0700

    Update gwen, aqb, and libchipcard to the latest betas.
    
    And patch them so that they actually build on MinGW-w64.

diff --git a/gnucash.modules b/gnucash.modules
index 61b8221..f4dcde7 100644
--- a/gnucash.modules
+++ b/gnucash.modules
@@ -137,6 +137,7 @@
   <autotools id="libchipcard" autogen-sh="configure" autogenargs="--enable-local-install">
     <branch module="138/libchipcard-5.1.3beta.tar.gz" version="5.1.3beta"
             repo="aqbanking">
+      <patch file="libchipcard-5.1.3.decl.patch" strip="1"/>
     </branch>
     <dependencies>
       <dep package="gcrypt"/>
@@ -146,8 +147,11 @@
 
   <autotools id="gwenhywfar" autogen-sh="configure"
 	     autogenargs="--with-guis='gtk3' --enable-local-install --disable-binreloc --disable-ssl">
-    <branch module="136/gwenhywfar-4.99.15beta.tar.gz" version="4.99.15beta"
-            repo="aqbanking" />
+    <branch module="140/gwenhywfar-4.99.16beta.tar.gz" version="4.99.16beta"
+            repo="aqbanking" >
+      <patch file="gwenhywfar-4.99.16-clean.patch" strip="1"/>
+      <patch file="gwenhywfar-4.99.16-decl.patch" strip="1"/>
+    </branch>
     <dependencies>
       <dep package="gcrypt"/>
       <dep package="gnutls"/>
@@ -174,7 +178,8 @@
 
   <autotools id="aqbanking" autogen-sh="autoreconf" makeargs="-j1"
 	     autogenargs="--enable-local-install">
-    <branch module="134/aqbanking-5.99.30beta.tar.gz" repo="aqbanking" version="5.99.30beta" >
+    <branch module="145/aqbanking-5.99.33beta.tar.gz" repo="aqbanking" version="5.99.33beta" >
+      <patch file="aqbanking-5.99-strndup.patch" strip="1"/>
     </branch>
     <dependencies>
       <dep package="gwenhywfar"/>
diff --git a/patches/aqbanking-5.99-strndup.patch b/patches/aqbanking-5.99-strndup.patch
new file mode 100644
index 0000000..2fc5c37
--- /dev/null
+++ b/patches/aqbanking-5.99-strndup.patch
@@ -0,0 +1,91 @@
+--- a/src/libs/plugins/backends/aqfints/transportlayer/transport.c	2019-09-21 08:53:32.000000000 -0700
++++ b/src/libs/plugins/backends/aqfints/transportlayer/transport.c	2019-09-22 10:34:04.486430000 -0700
+@@ -17,6 +17,24 @@
+ /* code headers */
+ 
+ /* macro functions */
++static char *my_strndup(const char *src, size_t n)
++{
++  int len;
++
++  len=strlen(src);
++  if (len<n)
++    return strdup(src);
++  else {
++    char *cpy;
++
++    cpy=(char *) malloc(n+1);
++    assert(cpy);
++    memmove(cpy, src, n);
++    cpy[n]=0;
++    return cpy;
++  }
++}
++
+ GWEN_INHERIT_FUNCTIONS(AQFINTS_TRANSPORT)
+ 
+ 
+@@ -200,7 +218,8 @@
+   if (p2==NULL) {
+     DBG_ERROR(AQFINTS_LOGDOMAIN, "Bad data (missing second '+')");
+     return GWEN_ERROR_BAD_DATA;
+-  } /* read message size */ copiedString=strndup(p1, (p2-p1));
++  } /* read message size */
++  copiedString=my_strndup(p1, (p2-p1));
+   assert(copiedString);
+   if (1!=sscanf(p1, "%d", &msgSize)) {
+     DBG_ERROR(AQFINTS_LOGDOMAIN, "Bad size field [%s]", copiedString);
+--- a/src/libs/plugins/imexporters/xml/xml.c	2019-09-21 08:53:32.000000000 -0700
++++ b/src/libs/plugins/imexporters/xml/xml.c	2019-09-22 10:38:02.321923600 -0700
+@@ -31,9 +31,23 @@
+ 
+ static AB_TRANSACTION *dbToTransaction(AB_IMEXPORTER *ie, GWEN_DB_NODE *db);
+ static void handleTransactionDetails(AB_TRANSACTION *t, const char *sDetails);
++static char *my_strndup(const char *src, size_t n)
++{
++  int len;
+ 
++  len=strlen(src);
++  if (len<n)
++    return strdup(src);
++  else {
++    char *cpy;
+ 
+-
++    cpy=(char *) malloc(n+1);
++    assert(cpy);
++    memmove(cpy, src, n);
++    cpy[n]=0;
++    return cpy;
++  }
++}
+ 
+ AB_IMEXPORTER *AB_ImExporterXML_new(AB_BANKING *ab)
+ {
+@@ -592,7 +606,7 @@
+   if (s>sStart) {
+     char *sCopy;
+ 
+-    sCopy=strndup(sStart, s-sStart);
++    sCopy=my_strndup(sStart, s-sStart);
+     assert(sCopy);
+     AB_Transaction_SetTransactionKey(t, sCopy);
+     free(sCopy);
+@@ -609,7 +623,7 @@
+     char *sCopy;
+     int num=0;
+ 
+-    sCopy=strndup(sStart, s-sStart);
++    sCopy=my_strndup(sStart, s-sStart);
+     assert(sCopy);
+     if (1!=sscanf(sCopy, "%d", &num)) {
+       DBG_WARN(AQBANKING_LOGDOMAIN, "Transaction details with invalid code (2nd element) in \"%s\", ignoring", sDetails);
+@@ -629,7 +643,7 @@
+   if (s>sStart) {
+     char *sCopy;
+ 
+-    sCopy=strndup(sStart, s-sStart);
++    sCopy=my_strndup(sStart, s-sStart);
+     assert(sCopy);
+     AB_Transaction_SetPrimanota(t, sCopy);
+     free(sCopy);
diff --git a/patches/gwenhywfar-4.99.16-clean.patch b/patches/gwenhywfar-4.99.16-clean.patch
new file mode 100644
index 0000000..6dc7a1b
--- /dev/null
+++ b/patches/gwenhywfar-4.99.16-clean.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.in	2019-09-20 11:59:23.000000000 -0700
++++ b/Makefile.in	2019-09-22 12:31:05.662210400 -0700
+@@ -1212,7 +1212,7 @@
+ clean-local: clean-local-check
+ .PHONY: clean-local
+ clean-local-check:
+-	rm -rf apidoc gwenhywfar5
++	rm -rf apidoc
+ 
+ listdoc.h: $(top_builddir)/admin/mklistdoc
+ 	admin/mklistdoc -v -I $(top_srcdir)/src/base `find "$(top_builddir)/gwenhywfar5/gwenhywfar" -name "*.h" | LC_ALL=C sort` >listdoc.h
diff --git a/patches/gwenhywfar-4.99.16-decl.patch b/patches/gwenhywfar-4.99.16-decl.patch
new file mode 100644
index 0000000..6ba60d3
--- /dev/null
+++ b/patches/gwenhywfar-4.99.16-decl.patch
@@ -0,0 +1,13 @@
+--- a/src/sio/syncio_tls.c	2019-09-20 11:59:23.000000000 -0700
++++ b/src/sio/syncio_tls.c	2019-09-21 18:12:03.751296700 -0700
+@@ -123,7 +123,9 @@
+ 
+ 
+ 
+-int GWEN_SyncIo_Tls_Internal_CheckCert(GWEN_SYNCIO *sio, const GWEN_SSLCERTDESCR *cert)
++GWENHYWFAR_CB int
++GWEN_SyncIo_Tls_Internal_CheckCert(GWEN_SYNCIO *sio,
++				       const GWEN_SSLCERTDESCR *cert)
+ {
+   GWEN_SYNCIO_TLS *xio;
+ 
diff --git a/patches/libchipcard-5.1.3.decl.patch b/patches/libchipcard-5.1.3.decl.patch
new file mode 100644
index 0000000..aa2b572
--- /dev/null
+++ b/patches/libchipcard-5.1.3.decl.patch
@@ -0,0 +1,13 @@
+--- a/src/lib/client/cards/zkacard/zkacard.c	2019-02-05 12:29:41.000000000 -0800
++++ b/src/lib/client/cards/zkacard/zkacard.c	2019-09-22 08:59:23.775111300 -0700
+@@ -769,8 +769,8 @@
+ 
+   return LC_Client_ResultOk;
+ }
+-
+-LC_CLIENT_RESULT CHIPCARD_CB LC_ZkaCard__SeccosSearchRecord(LC_CARD *card,
++CHIPCARD_API
++LC_CLIENT_RESULT LC_ZkaCard__SeccosSearchRecord(LC_CARD *card,
+                                                             uint32_t flags,
+                                                             int recNum,
+                                                             const char *searchPattern,



Summary of changes:
 gnucash.modules                                    | 11 ++-
 patches/aqbanking-5.99-strndup.patch               | 91 ++++++++++++++++++++++
 ...argets.patch => gwenhywfar-4.99.16-clean.patch} |  8 +-
 patches/gwenhywfar-4.99.16-decl.patch              | 13 ++++
 patches/libchipcard-5.1.3.decl.patch               | 13 ++++
 5 files changed, 129 insertions(+), 7 deletions(-)
 create mode 100644 patches/aqbanking-5.99-strndup.patch
 copy patches/{gwenhywfar-4.20.1-clean-targets.patch => gwenhywfar-4.99.16-clean.patch} (53%)
 create mode 100644 patches/gwenhywfar-4.99.16-decl.patch
 create mode 100644 patches/libchipcard-5.1.3.decl.patch



More information about the gnucash-changes mailing list