gnucash-on-osx master: Update AqBanking and Gwenhywfar to the latest releases.

John Ralls jralls at code.gnucash.org
Sun Dec 7 17:36:33 EST 2025


Updated	 via  https://github.com/Gnucash/gnucash-on-osx/commit/36875c82 (commit)
	from  https://github.com/Gnucash/gnucash-on-osx/commit/83ce996b (commit)



commit 36875c82826e73f28b35a20f92b5f7ebbda6dd28
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Dec 7 14:36:15 2025 -0800

    Update AqBanking and Gwenhywfar to the latest releases.

diff --git a/modulesets/gnucash.modules b/modulesets/gnucash.modules
index 271557b..c36b5d8 100644
--- a/modulesets/gnucash.modules
+++ b/modulesets/gnucash.modules
@@ -33,8 +33,8 @@
               href="https://gitlab.freedesktop.org/xdg/shared-mime-info/-/archive/"
               type="tarball" />
 
-  <include href="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/modulesets-stable/gtk-osx.modules"/>
- <!--include href="/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules"/-->
+  <!--include href="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/modulesets-stable/gtk-osx.modules"/-->
+ <include href="/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules"/>
 
   <meson id="shared-mime-info-2.2">
     <branch module="2.2/shared-mime-info-2.2.tar.bz2"
@@ -59,9 +59,10 @@
 
   <autotools id="gwenhywfar" autogen-sh="autoreconf"
 	     autogenargs="--with-guis='gtk3' --enable-local-install">
-    <branch module="550/gwenhywfar-5.13.0.tar.gz" version="5.13.0"
-            hash="sha256:26513d4b032eb8108ff2b6bf234b7d60c710fd16059fb80077acd79c250824b9"
+    <branch module="626/gwenhywfar-5.14.0.tar.gz" version="5.14.0"
+            hash="sha256:85b1e711dcab1911f70ba9e6f8696b4b0b7134cbec66c57c5bf1122ec1284bfb"
             repo="aqbanking" >
+      <patch file="gwenhywfar-5.14.0-w_hsplitter.patch" strip="1"/>
       <patch file="gwen-include-file.patch" strip="1"/>
       <patch file="gwen-macos-bundle-path.patch" strip="1"/>
     </branch>
@@ -98,9 +99,10 @@
 
   <autotools id="aqbanking" autogen-sh="autoreconf" makeargs="-j1"
 	     autogenargs="--enable-local-install">
-    <branch module="548/aqbanking-6.6.4.tar.gz" version="6.6.4"
-            hash="sha256:a25c209538fa163f3749676a084493c9a43d9045a945aeee2db25dfd9a502b7f"
+    <branch module="627/aqbanking-6.8.0.tar.gz" version="6.8.0"
+            hash="sha256:4428857b00514d8781b09be2c23442ad657e213fbd09f49040e47c6d568a01f7"
             repo="aqbanking">
+      <patch file="aqbanking-6.8.0-cli-makefile.patch" strip="1" />
     </branch>
     <dependencies>
       <dep package="gwenhywfar"/>
@@ -226,10 +228,10 @@
    </autotools>
 
   <autotools id="guile30" autogen-sh="configure">
-    <branch repo="ftp.gnu.org" module="guile/guile-3.0.10.tar.gz"
-	    version="3.0.10">
-     <patch file="guile-3.0.10-build-with-C23.patch" strip="1"/>
-     <patch file="guile-3.0.10-pthread-jit-write-protect.patch" strip="1"/>
+    <branch repo="ftp.gnu.org" module="guile/guile-3.0.11.tar.gz"
+	    version="3.0.11">
+      <!--patch file="guile-3.0.10-build-with-C23.patch" strip="1"/>
+     <patch file="guile-3.0.10-pthread-jit-write-protect.patch" strip="1"/-->
     </branch>
     <dependencies>
       <dep package="libunistring"/>
diff --git a/patches/aqbanking-6.8.0-cli-makefile.patch b/patches/aqbanking-6.8.0-cli-makefile.patch
new file mode 100644
index 0000000..cba9631
--- /dev/null
+++ b/patches/aqbanking-6.8.0-cli-makefile.patch
@@ -0,0 +1,11 @@
+diff -u /Users/john/Development/Gnucash-git-11.0-arm64/src/aqbanking-6.8.0/src/libs/cli/Makefile.am\~ /Users/john/Development/Gnucash-git-11.0-arm64/src/aqbanking-6.8.0/src/libs/cli/Makefile.am
+--- a/src/libs/cli/Makefile.am	2025-12-02 13:19:20
++++ b/src/libs/cli/Makefile.am	2025-12-07 12:55:44
+@@ -1,4 +1,4 @@
+-AM_CPPFLAGS = $(gwenhywfar_includes) -I..
++AM_CPPFLAGS = $(gwenhywfar_includes) -I.. -I$(top_srcdir)/src/libs -I$(top_builddir)/src/libs
+ 
+ noinst_LTLIBRARIES=libaqcli.la
+ 
+
+Diff finished.  Sun Dec  7 12:56:03 2025
diff --git a/patches/gwenhywfar-5.14.0-w_hsplitter.patch b/patches/gwenhywfar-5.14.0-w_hsplitter.patch
new file mode 100644
index 0000000..d73bf96
--- /dev/null
+++ b/patches/gwenhywfar-5.14.0-w_hsplitter.patch
@@ -0,0 +1,258 @@
+diff -uN gwenhywfar-5.14.0/gui/gtk3/Makefile.in gwenhywfar/gui/gtk3/Makefile.in
+diff -uN gwenhywfar-5.14.0/gui/gtk3/w_hsplitter.c gwenhywfar/gui/gtk3/w_hsplitter.c
+--- a/gui/gtk3/w_hsplitter.c	1969-12-31 16:00:00
++++ b/gtk3/w_hsplitter.c	2025-12-07 12:18:51
+@@ -0,0 +1,128 @@
++/***************************************************************************
++    begin       : Thu Dec 04 2025
++    copyright   : (C) 2025 by Martin Preuss
++    email       : martin at libchipcard.de
++
++ ***************************************************************************
++ *          Please see toplevel file COPYING for license details           *
++ ***************************************************************************/
++
++
++
++
++
++static GWENHYWFAR_CB
++int Gtk3Gui_WHSplitter_SetIntProperty(GWEN_WIDGET *w,
++                                    GWEN_DIALOG_PROPERTY prop,
++                                    GWEN_UNUSED int index,
++                                    int value,
++                                    GWEN_UNUSED int doSignal)
++{
++  GtkWidget *g;
++
++  g=GTK_WIDGET(GWEN_Widget_GetImplData(w, GTK3_DIALOG_WIDGET_REAL));
++  assert(g);
++
++  switch (prop) {
++  case GWEN_DialogProperty_Enabled:
++    gtk_widget_set_sensitive(GTK_WIDGET(g), (value==0)?FALSE:TRUE);
++    return 0;
++
++  case GWEN_DialogProperty_Focus:
++    gtk_widget_grab_focus(GTK_WIDGET(g));
++    return 0;
++
++  case GWEN_DialogProperty_Value:
++    gtk_paned_set_position(GTK_PANED(g), value);
++    return 0;
++
++  default:
++    break;
++  }
++
++  DBG_WARN(GWEN_LOGDOMAIN,
++           "Function is not appropriate for this type of widget (%s)",
++           GWEN_Widget_Type_toString(GWEN_Widget_GetType(w)));
++  return GWEN_ERROR_INVALID;
++}
++
++
++
++
++static GWENHYWFAR_CB
++int Gtk3Gui_WHSplitter_GetIntProperty(GWEN_WIDGET *w,
++                                    GWEN_DIALOG_PROPERTY prop,
++                                    GWEN_UNUSED int index,
++                                    int defaultValue)
++{
++  GtkWidget *g;
++
++  g=GTK_WIDGET(GWEN_Widget_GetImplData(w, GTK3_DIALOG_WIDGET_REAL));
++  assert(g);
++
++  switch (prop) {
++  case GWEN_DialogProperty_Enabled:
++    return (gtk_widget_get_sensitive(GTK_WIDGET(g))==TRUE)?1:0;
++
++  case GWEN_DialogProperty_Focus:
++    return (gtk_widget_has_focus(GTK_WIDGET(g))==TRUE)?1:0;
++
++  case GWEN_DialogProperty_Value:
++    return gtk_paned_get_position(GTK_PANED(g));
++
++  default:
++    break;
++  }
++
++  DBG_WARN(GWEN_LOGDOMAIN,
++           "Function is not appropriate for this type of widget (%s)",
++           GWEN_Widget_Type_toString(GWEN_Widget_GetType(w)));
++  return defaultValue;
++}
++
++
++
++static GWENHYWFAR_CB
++int Gtk3Gui_WHSplitter_AddChildGuiWidget(GWEN_WIDGET *w, GWEN_WIDGET *wChild)
++{
++  GtkWidget *g;
++  GtkWidget *gChild;
++
++  g=GTK_WIDGET(GWEN_Widget_GetImplData(w, GTK3_DIALOG_WIDGET_REAL));
++  assert(g);
++
++  gChild=GTK_WIDGET(GWEN_Widget_GetImplData(wChild, GTK3_DIALOG_WIDGET_REAL));
++  assert(gChild);
++
++  if (GWEN_Widget_Tree_GetPrevious(wChild)==NULL)
++    gtk_paned_add1(GTK_PANED(g), gChild);
++  else
++    gtk_paned_add2(GTK_PANED(g), gChild);
++
++  return 0;
++}
++
++
++
++int Gtk3Gui_WHSplitter_Setup(GWEN_WIDGET *w)
++{
++  GtkWidget *g;
++  GWEN_WIDGET *wParent;
++
++  wParent=GWEN_Widget_Tree_GetParent(w);
++
++  g=gtk_paned_new(GTK_ORIENTATION_HORIZONTAL);
++  GWEN_Widget_SetImplData(w, GTK3_DIALOG_WIDGET_REAL, (void *) g);
++  GWEN_Widget_SetImplData(w, GTK3_DIALOG_WIDGET_CONTENT, (void *) g);
++
++  GWEN_Widget_SetSetIntPropertyFn(w, Gtk3Gui_WHSplitter_SetIntProperty);
++  GWEN_Widget_SetGetIntPropertyFn(w, Gtk3Gui_WHSplitter_GetIntProperty);
++  GWEN_Widget_SetAddChildGuiWidgetFn(w, Gtk3Gui_WHSplitter_AddChildGuiWidget);
++
++  if (wParent)
++    GWEN_Widget_AddChildGuiWidget(wParent, w);
++
++  return 0;
++}
++
++
+diff -uN gwenhywfar-5.14.0/gui/gtk3/w_image.c gwenhywfar/gui/gtk3/w_image.c
+--- gwenhywfar-5.14.0/gui/gtk3/w_image.c	1969-12-31 16:00:00
++++ gwenhywfar/gui/gtk3/w_image.c	2025-12-07 12:18:51
+@@ -0,0 +1,121 @@
++/***************************************************************************
++    begin       : Mon Jul 12 2010
++    copyright   : (C) 2010 by Martin Preuss
++    email       : martin at libchipcard.de
++
++ ***************************************************************************
++ *          Please see toplevel file COPYING for license details           *
++ ***************************************************************************/
++
++
++
++
++static GWENHYWFAR_CB
++int Gtk3Gui_WImage_SetIntProperty(GWEN_WIDGET *w,
++                                  GWEN_DIALOG_PROPERTY prop,
++                                  int index,
++                                  int value,
++                                  int doSignal)
++{
++  GtkWidget *g;
++
++  g=GTK_WIDGET(GWEN_Widget_GetImplData(w, GTK3_DIALOG_WIDGET_REAL));
++  assert(g);
++
++  switch (prop) {
++  case GWEN_DialogProperty_Enabled:
++    gtk_widget_set_sensitive(GTK_WIDGET(g), (value==0)?FALSE:TRUE);
++    return 0;
++
++  case GWEN_DialogProperty_Focus:
++    gtk_widget_grab_focus(GTK_WIDGET(g));
++    return 0;
++
++  default:
++    break;
++  }
++
++  DBG_WARN(GWEN_LOGDOMAIN,
++           "Function is not appropriate for this type of widget (%s)",
++           GWEN_Widget_Type_toString(GWEN_Widget_GetType(w)));
++  return GWEN_ERROR_INVALID;
++}
++
++
++
++
++static GWENHYWFAR_CB
++int Gtk3Gui_WImage_GetIntProperty(GWEN_WIDGET *w,
++                                  GWEN_DIALOG_PROPERTY prop,
++                                  int index,
++                                  int defaultValue)
++{
++  GtkWidget *g;
++
++  g=GTK_WIDGET(GWEN_Widget_GetImplData(w, GTK3_DIALOG_WIDGET_REAL));
++  assert(g);
++
++  switch (prop) {
++  case GWEN_DialogProperty_Enabled:
++    return (gtk_widget_get_sensitive(GTK_WIDGET(g))==TRUE)?1:0;
++
++  case GWEN_DialogProperty_Focus:
++    return (gtk_widget_has_focus(GTK_WIDGET(g))==TRUE)?1:0;
++    return 0;
++
++  default:
++    break;
++  }
++
++  DBG_WARN(GWEN_LOGDOMAIN,
++           "Function is not appropriate for this type of widget (%s)",
++           GWEN_Widget_Type_toString(GWEN_Widget_GetType(w)));
++  return defaultValue;
++}
++
++
++
++int Gtk3Gui_WImage_Setup(GWEN_WIDGET *w)
++{
++  GtkWidget *g;
++  uint32_t flags;
++  GWEN_WIDGET *wParent;
++  const char *s;
++  GWEN_BUFFER *tbuf;
++
++  flags=GWEN_Widget_GetFlags(w);
++  wParent=GWEN_Widget_Tree_GetParent(w);
++
++  tbuf=GWEN_Buffer_new(0, 256, 0, 1);
++  s=GWEN_Widget_GetImageFileName(w);
++  if (s && *s) {
++    GWEN_STRINGLIST *sl;
++
++    sl=GWEN_Dialog_GetMediaPaths(GWEN_Widget_GetDialog(w));
++    if (sl) {
++      int rv;
++
++      rv=GWEN_Directory_FindFileInPaths(sl, s, tbuf);
++      if (rv<0) {
++        DBG_ERROR(GWEN_LOGDOMAIN, "Image file [%s] not found (%d)", s, rv);
++        /* ignore result here, instead create GtkImage with "broken mage" later */
++      }
++    }
++  }
++
++  g=gtk_image_new_from_file(GWEN_Buffer_GetStart(tbuf));
++  GWEN_Buffer_free(tbuf);
++
++  GWEN_Widget_SetImplData(w, GTK3_DIALOG_WIDGET_REAL, (void *) g);
++  GWEN_Widget_SetImplData(w, GTK3_DIALOG_WIDGET_CONTENT, (void *) g);
++
++  GWEN_Widget_SetSetIntPropertyFn(w, Gtk3Gui_WImage_SetIntProperty);
++  GWEN_Widget_SetGetIntPropertyFn(w, Gtk3Gui_WImage_GetIntProperty);
++
++  if (wParent)
++    GWEN_Widget_AddChildGuiWidget(wParent, w);
++
++  return 0;
++}
++
++



Summary of changes:
 modulesets/gnucash.modules                  |  22 +--
 patches/aqbanking-6.8.0-cli-makefile.patch  |  11 ++
 patches/gwenhywfar-5.14.0-w_hsplitter.patch | 258 ++++++++++++++++++++++++++++
 3 files changed, 281 insertions(+), 10 deletions(-)
 create mode 100644 patches/aqbanking-6.8.0-cli-makefile.patch
 create mode 100644 patches/gwenhywfar-5.14.0-w_hsplitter.patch



More information about the gnucash-changes mailing list