guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#73610] [PATCH gnome-team v4 7/7] gnu: gjs: Fix build.


From: Liliana Marie Prikler
Subject: [bug#73610] [PATCH gnome-team v4 7/7] gnu: gjs: Fix build.
Date: Sun, 20 Oct 2024 13:38:17 +0200

* gnu/packages/patches/gjs-fix-closure-annotations.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it here.
* gnu/packages/gnome.scm (gjs)[patches]: Use it here.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/gnome.scm                        |  2 +
 .../patches/gjs-fix-closure-annotations.patch | 99 +++++++++++++++++++
 3 files changed, 102 insertions(+)
 create mode 100644 gnu/packages/patches/gjs-fix-closure-annotations.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 8cc0e0e3ab..e55c7b938b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1396,6 +1396,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/ghostscript-no-header-uuid.patch                \
   %D%/packages/patches/ghostscript-no-header-creationdate.patch \
   %D%/packages/patches/git-filter-repo-generate-doc.patch      \
+  %D%/packages/patches/gjs-fix-closure-annotations.patch       \
   %D%/packages/patches/gklib-suitesparse.patch                 \
   %D%/packages/patches/glib-appinfo-watch.patch                        \
   %D%/packages/patches/glib-skip-failing-test.patch            \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 844d348801..a247f024eb 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -7832,6 +7832,8 @@ (define-public gjs
               (sha256
                (base32
                 "0knkbczic9874r2mnhc8yh9w63bmj574b7528ql0x3lf40nzcjx5"))
+              ;; TODO: Remove when updating to 1.82.0.
+              (patches (search-patches "gjs-fix-closure-annotations.patch"))
               (modules '((guix build utils)))
               (snippet
                '(begin
diff --git a/gnu/packages/patches/gjs-fix-closure-annotations.patch 
b/gnu/packages/patches/gjs-fix-closure-annotations.patch
new file mode 100644
index 0000000000..1b440ef9da
--- /dev/null
+++ b/gnu/packages/patches/gjs-fix-closure-annotations.patch
@@ -0,0 +1,99 @@
+From 1df5d72d8df383199dcd88cd1d16209617bf32ca Mon Sep 17 00:00:00 2001
+From: Philip Chimento <philip.chimento@gmail.com>
+Date: Sat, 27 Jul 2024 20:17:39 -0700
+Subject: [PATCH] GjsPrivate: Fix closure annotations
+
+Apparently the closure annotation can be omitted if the parameter is named
+"user_data". If it is needed because the parameter is not named
+"user_data" then the annotation should be on the callback argument and
+refer to the user data argument.
+---
+ libgjs-private/gjs-util.c | 10 +++++-----
+ libgjs-private/gjs-util.h | 16 ++++++++--------
+ 2 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/libgjs-private/gjs-util.c b/libgjs-private/gjs-util.c
+index b264aec1e..ae65287f5 100644
+--- a/libgjs-private/gjs-util.c
++++ b/libgjs-private/gjs-util.c
+@@ -235,7 +235,7 @@ void gjs_gtk_container_child_set_property(GObject* 
container, GObject* child,
+  * @store: a #GListStore
+  * @item: the new item
+  * @compare_func: (scope call): pairwise comparison function for sorting
+- * @user_data: (closure): user data for @compare_func
++ * @user_data: user data for @compare_func
+  *
+  * Inserts @item into @store at a position to be determined by the
+  * @compare_func.
+@@ -258,7 +258,7 @@ unsigned int gjs_list_store_insert_sorted(GListStore 
*store, GObject *item,
+  * gjs_list_store_sort:
+  * @store: a #GListStore
+  * @compare_func: (scope call): pairwise comparison function for sorting
+- * @user_data: (closure): user data for @compare_func
++ * @user_data: user data for @compare_func
+  *
+  * Sort the items in @store according to @compare_func.
+  */
+@@ -270,7 +270,7 @@ void gjs_list_store_sort(GListStore *store, 
GjsCompareDataFunc compare_func,
+ /**
+  * gjs_gtk_custom_sorter_new:
+  * @sort_func: (nullable) (scope call): function to sort items
+- * @user_data: (closure): user data for @compare_func
++ * @user_data: user data for @sort_func
+  * @destroy: destroy notify for @user_data
+  *
+  * Creates a new `GtkSorter` that works by calling @sort_func to compare 
items.
+@@ -305,7 +305,7 @@ GObject* gjs_gtk_custom_sorter_new(GjsCompareDataFunc 
sort_func,
+  * gjs_gtk_custom_sorter_set_sort_func:
+  * @sorter: a `GtkCustomSorter`
+  * @sort_func: (nullable) (scope call): function to sort items
+- * @user_data: (closure): user data to pass to @sort_func
++ * @user_data: user data to pass to @sort_func
+  * @destroy: destroy notify for @user_data
+  *
+  * Sets (or unsets) the function used for sorting items.
+@@ -423,7 +423,7 @@ void gjs_log_set_writer_default() {
+ /**
+  * gjs_log_set_writer_func:
+  * @func: (scope notified): callback with log data
+- * @user_data: (closure): user data for @func
++ * @user_data: user data for @func
+  * @user_data_free: (destroy user_data_free): destroy for @user_data
+  *
+  * Sets a given function as the writer function for structured logging,
+diff --git a/libgjs-private/gjs-util.h b/libgjs-private/gjs-util.h
+index 7ee83e0d8..11b7c7cbc 100644
+--- a/libgjs-private/gjs-util.h
++++ b/libgjs-private/gjs-util.h
+@@ -124,11 +124,11 @@ typedef gboolean (*GjsBindingTransformFunc)(GBinding* 
binding,
+  * @target:
+  * @target_property:
+  * @flags:
+- * @to_callback: (scope notified) (nullable):
+- * @to_data: (closure to_callback):
++ * @to_callback: (scope notified) (nullable) (closure to_data):
++ * @to_data:
+  * @to_notify: (destroy to_data):
+- * @from_callback: (scope notified) (nullable):
+- * @from_data: (closure from_callback):
++ * @from_callback: (scope notified) (nullable) (closure from_data):
++ * @from_data:
+  * @from_notify: (destroy from_data):
+  *
+  * Returns: (transfer none):
+@@ -149,11 +149,11 @@ GBinding* gjs_g_object_bind_property_full(
+  * @target:
+  * @target_property:
+  * @flags:
+- * @to_callback: (scope notified) (nullable):
+- * @to_data: (closure to_callback):
++ * @to_callback: (scope notified) (nullable) (closure to_data):
++ * @to_data:
+  * @to_notify: (destroy to_data):
+- * @from_callback: (scope notified) (nullable):
+- * @from_data: (closure from_callback):
++ * @from_callback: (scope notified) (nullable) (closure from_data):
++ * @from_data:
+  * @from_notify: (destroy from_data):
+  */
+ GJS_EXPORT
\ No newline at end of file
-- 
2.46.0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]