git: 4b211242030e - main - devel/glib20: unbreak some C++ consumers after 27fe5eff9577

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Sat, 26 Nov 2022 14:18:22 UTC
The branch main has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4b211242030e4160d54bd302770c253c5392d2ee

commit 4b211242030e4160d54bd302770c253c5392d2ee
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2022-11-26 14:01:23 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2022-11-26 14:17:10 +0000

    devel/glib20: unbreak some C++ consumers after 27fe5eff9577
    
    $ make -C lang/gjs
    [...]
    ../util/log.cpp:106:25: error: no matching function for call to 'strcmp'
        if (debug_output && g_str_equal(debug_output, "stderr")) {
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/include/glib-2.0/glib/ghash.h:165:30: note: expanded from macro 'g_str_equal'
     #define g_str_equal(v1, v2) (strcmp ((gconstpointer) (v1), (gconstpointer) (v2)) == 0)
                                  ^~~~~~
    /usr/include/string.h:82:6: note: candidate function not viable: cannot convert argument of incomplete type 'gconstpointer' (aka 'const void *') to 'const char *' for 1st argument
    int      strcmp(const char *, const char *) __pure;
             ^
    
    Reported by:    fluffy, cmt
    Regressed by:   https://gitlab.gnome.org/GNOME/glib/-/commit/b46ed37c972f
---
 devel/glib20/Makefile                 |  1 +
 devel/glib20/files/patch-glib_ghash.h | 13 +++++++++++++
 2 files changed, 14 insertions(+)

diff --git a/devel/glib20/Makefile b/devel/glib20/Makefile
index 7b19ba79cc27..d1f16fd6905d 100644
--- a/devel/glib20/Makefile
+++ b/devel/glib20/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	glib
 DISTVERSION=	2.74.2
+PORTREVISION=	1
 PORTEPOCH=	2
 CATEGORIES=	devel
 MASTER_SITES=	GNOME
diff --git a/devel/glib20/files/patch-glib_ghash.h b/devel/glib20/files/patch-glib_ghash.h
new file mode 100644
index 000000000000..df795aae653e
--- /dev/null
+++ b/devel/glib20/files/patch-glib_ghash.h
@@ -0,0 +1,13 @@
+https://gitlab.gnome.org/GNOME/glib/-/issues/2820
+
+--- glib/ghash.h.orig	2022-11-24 12:29:05 UTC
++++ glib/ghash.h
+@@ -162,7 +162,7 @@ gboolean g_str_equal    (gconstpointer  v1,
+                          gconstpointer  v2);
+ 
+ /* Macro for optimization in the case it is not used as callback function */
+-#define g_str_equal(v1, v2) (strcmp ((gconstpointer) (v1), (gconstpointer) (v2)) == 0)
++#define g_str_equal(v1, v2) (strcmp ((const char *) (v1), (const char *) (v2)) == 0)
+ 
+ GLIB_AVAILABLE_IN_ALL
+ guint    g_str_hash     (gconstpointer  v);