<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f4f7b853818f7b8e80e83898ef4966833423cb1a">https://github.com/macports/macports-ports/commit/f4f7b853818f7b8e80e83898ef4966833423cb1a</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new f4f7b853818 gjs: Fix build on 32-bit systems
</span>f4f7b853818 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit f4f7b853818f7b8e80e83898ef4966833423cb1a
</span>Author: Evan Miller <emmiller@gmail.com>
AuthorDate: Sun Sep 19 17:52:23 2021 -0400

<span style='display:block; white-space:pre;color:#404040;'>    gjs: Fix build on 32-bit systems
</span>---
 gnome/gjs/Portfile                   |  3 ++
 gnome/gjs/files/patch-gjs-gsize.diff | 99 ++++++++++++++++++++++++++++++++++++
 2 files changed, 102 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gjs/Portfile b/gnome/gjs/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 7dc5de5619c..cd85a32a07b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gnome/gjs/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gjs/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -38,6 +38,9 @@ autoreconf.args     -fvi
</span> 
 compiler.cxx_standard 2014
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# Fix gsize/size_t mismatch on 32-bit systems
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          patch-gjs-gsize.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # profiler currently only supported on Linux
 configure.args      --disable-profiler \
                     --disable-silent-rules
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gjs/files/patch-gjs-gsize.diff b/gnome/gjs/files/patch-gjs-gsize.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e07dc574ee5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gjs/files/patch-gjs-gsize.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,99 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+On 32-bit systems, gsize is an int but size_t is a (32-bit) long. This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+discrepancy results in compilation errors when attempting to interchange their
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pointers. The patch below changes gsize to size_t, and vice versa, depending
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+on the surrounding context.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+For a complete discussion, see:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://gitlab.gnome.org/GNOME/gjs/-/merge_requests/680
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gi/arg.cpp.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gi/arg.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1267,7 +1267,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                      GITransfer       transfer,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                      bool             may_be_null,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                      gpointer        *contents,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                     gsize           *length_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                     size_t          *length_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     bool ret = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     GITypeInfo *param_info;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1960,7 +1960,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case GI_TYPE_TAG_ARRAY: {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         gpointer data;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        gsize length;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        size_t length;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         GIArrayType array_type = g_type_info_get_array_type(type_info);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         /* First, let's handle the case where we're passed an instance
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gi/function.cpp.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gi/function.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -840,12 +840,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         GjsAutoChar name = format_function_name(function, is_method);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         JS_ReportWarningUTF8(context, "Too many arguments to %s: expected %d, "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                              "got %" G_GSIZE_FORMAT, name.get(),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                             function->expected_js_argc, args.length());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                             function->expected_js_argc, (gsize)args.length());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else if (args.length() < function->expected_js_argc) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         GjsAutoChar name = format_function_name(function, is_method);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         gjs_throw(context, "Too few arguments to %s: "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   "expected %d, got %" G_GSIZE_FORMAT,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  name.get(), function->expected_js_argc, args.length());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  name.get(), function->expected_js_argc, (gsize)args.length());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -996,7 +996,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 GIArgInfo array_length_arg;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 gint array_length_pos = g_type_info_get_array_length(&ainfo);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                gsize length;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                size_t length;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 if (!gjs_value_to_explicit_array(context, args[js_arg_pos],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                  &arg_info, in_value, &length)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gjs/byteArray.cpp.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gjs/byteArray.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -269,7 +269,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     gbytes = (GBytes*) gjs_c_struct_from_boxed(context, bytes_obj);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    size_t len;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gsize len;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     const void* data = g_bytes_get_data(gbytes, &len);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     JS::RootedObject array_buffer(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         context,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gjs/context.cpp.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gjs/context.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -994,7 +994,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       GError       **error)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     char *script;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    size_t script_len;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gsize script_len;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     GjsAutoUnref<GFile> file = g_file_new_for_commandline_arg(filename);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (!g_file_load_contents(file, nullptr, &script, &script_len, nullptr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gjs/global.cpp.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gjs/global.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -55,7 +55,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            .setSourceIsLazy(true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     JS::RootedScript compiled_script(cx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    size_t script_len;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gsize script_len;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     auto script = static_cast<const char *>(g_bytes_get_data(script_bytes.get(),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                             &script_len));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (!JS::Compile(cx, options, script, script_len, &compiled_script))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gjs/module.cpp.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gjs/module.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -123,7 +123,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         size_t script_len = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         int start_line_number = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        if (!(g_file_load_contents(file, nullptr, &unowned_script, &script_len,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if (!(g_file_load_contents(file, nullptr, &unowned_script, nullptr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                    nullptr, &error))) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             gjs_throw_g_error(cx, error);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return false;
</span></pre><pre style='margin:0'>

</pre>