glib: update to 2.76.1.
This commit is contained in:
parent
29a8c5e3ae
commit
a20aa0a152
|
@ -91,11 +91,11 @@ libmagic.so.1 libmagic-5.12_1
|
|||
libbluetooth.so.3 libbluetooth-4.58_1
|
||||
libwmf-0.2.so.7 libwmf-0.2.8.4_1
|
||||
libwmflite-0.2.so.7 libwmf-0.2.8.4_1
|
||||
libgthread-2.0.so.0 glib-2.74.0_1
|
||||
libglib-2.0.so.0 glib-2.74.0_1
|
||||
libgmodule-2.0.so.0 glib-2.74.0_1
|
||||
libgio-2.0.so.0 glib-2.74.0_1
|
||||
libgobject-2.0.so.0 glib-2.74.0_1
|
||||
libgthread-2.0.so.0 glib-2.76.0_1
|
||||
libglib-2.0.so.0 glib-2.76.0_1
|
||||
libgmodule-2.0.so.0 glib-2.76.0_1
|
||||
libgio-2.0.so.0 glib-2.76.0_1
|
||||
libgobject-2.0.so.0 glib-2.76.0_1
|
||||
libatk-1.0.so.0 atk-1.26.0_1
|
||||
libpangocairo-1.0.so.0 pango-1.24.0_1
|
||||
libpangoft2-1.0.so.0 pango-1.24.0_1
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
--- a/gio/tests/meson.build
|
||||
+++ b/gio/tests/meson.build
|
||||
@@ -56,7 +56,6 @@ gio_tests = {
|
||||
@@ -63,7 +63,6 @@ gio_tests = {
|
||||
# FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392 / https://gitlab.gnome.org/GNOME/glib/-/issues/1251
|
||||
'should_fail' : host_system == 'darwin',
|
||||
'can_fail' : host_system == 'darwin',
|
||||
},
|
||||
- 'converter-stream' : {},
|
||||
'credentials' : {},
|
||||
'data-input-stream' : {},
|
||||
'data-output-stream' : {},
|
||||
@@ -198,7 +197,6 @@ endif
|
||||
@@ -227,7 +226,6 @@ endif
|
||||
# Test programs buildable on UNIX only
|
||||
if host_machine.system() != 'windows'
|
||||
gio_tests += {
|
||||
|
@ -16,7 +16,7 @@
|
|||
'gdbus-peer-object-manager' : {},
|
||||
'gdbus-sasl' : {},
|
||||
'live-g-file' : {},
|
||||
@@ -814,14 +812,6 @@ if meson.can_run_host_binaries()
|
||||
@@ -951,13 +949,6 @@ if not meson.is_cross_build()
|
||||
test_resources_binary2,
|
||||
]
|
||||
endif
|
||||
|
@ -24,18 +24,17 @@
|
|||
- gio_tests += {
|
||||
- 'resources' : {
|
||||
- 'extra_sources' : resources_extra_sources,
|
||||
- # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
|
||||
- 'should_fail' : host_system == 'darwin',
|
||||
- 'depends' : resource_plugin,
|
||||
- },
|
||||
- }
|
||||
endif
|
||||
|
||||
foreach test_name, extra_args : gio_tests
|
||||
test_extra_programs_targets = {}
|
||||
diff --git a/glib/tests/meson.build b/glib/tests/meson.build
|
||||
index d74617823..1de81a825 100644
|
||||
--- a/glib/tests/meson.build
|
||||
+++ b/glib/tests/meson.build
|
||||
@@ -11,22 +11,14 @@ glib_tests = {
|
||||
@@ -12,22 +12,14 @@ glib_tests = {
|
||||
'cache' : {},
|
||||
'charset' : {},
|
||||
'checksum' : {},
|
||||
|
@ -46,19 +45,19 @@ index d74617823..1de81a825 100644
|
|||
'dataset' : {},
|
||||
- 'date' : {
|
||||
- # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
|
||||
- 'should_fail' : host_system == 'darwin',
|
||||
- 'can_fail' : host_system == 'darwin',
|
||||
- },
|
||||
'dir' : {},
|
||||
'environment' : {
|
||||
# FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
|
||||
'should_fail' : host_system == 'darwin',
|
||||
'can_fail' : host_system == 'darwin',
|
||||
},
|
||||
- 'error' : {},
|
||||
- 'fileutils' : {},
|
||||
'gdatetime' : {
|
||||
'suite' : ['slow'],
|
||||
},
|
||||
@@ -65,7 +57,6 @@ glib_tests = {
|
||||
'can_fail' : host_system == 'windows',
|
||||
@@ -70,7 +62,6 @@ glib_tests = {
|
||||
'node' : {},
|
||||
'once' : {},
|
||||
'onceinit' : {},
|
||||
|
|
|
@ -1,35 +0,0 @@
|
|||
This fixes segfault when editing color of text in gimp.
|
||||
|
||||
From ea3f17d598d550345e94e4571130e429443e91cb Mon Sep 17 00:00:00 2001
|
||||
From: Emmanuele Bassi <ebassi@gnome.org>
|
||||
Date: Sun, 25 Sep 2022 14:20:24 +0100
|
||||
Subject: [PATCH] Empty values are not valid GParamSpec
|
||||
|
||||
The validate() vfunc for GParamSpecParam returns FALSE for empty GValue,
|
||||
which means the is_valid() vfunc should do the same.
|
||||
|
||||
This avoids a segfault when calling g_param_value_is_valid() on a
|
||||
GParamSpecParam.
|
||||
|
||||
Fixes: #2770
|
||||
---
|
||||
gobject/gparamspecs.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/gobject/gparamspecs.c b/gobject/gparamspecs.c
|
||||
index f17b3488b9..17b8606572 100644
|
||||
--- a/gobject/gparamspecs.c
|
||||
+++ b/gobject/gparamspecs.c
|
||||
@@ -894,6 +894,9 @@ param_param_is_valid (GParamSpec *pspec,
|
||||
{
|
||||
GParamSpec *param = value->data[0].v_pointer;
|
||||
|
||||
+ if (param == NULL)
|
||||
+ return FALSE;
|
||||
+
|
||||
return g_value_type_compatible (G_PARAM_SPEC_TYPE (param), G_PARAM_SPEC_VALUE_TYPE (pspec));
|
||||
}
|
||||
|
||||
--
|
||||
GitLab
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
Fails to build on musl.
|
||||
../glib/tests/cxx.cpp:509:15: error: missing sentinel in function call [-Werror=format=]
|
||||
g_test_init (&argc, &argv, NULL);
|
||||
|
||||
--- a/glib/tests/cxx.cpp
|
||||
+++ a/glib/tests/cxx.cpp
|
||||
@@ -505,7 +505,7 @@ test_string_free (void)
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
#if G_CXX_STD_CHECK_VERSION (11)
|
||||
- g_test_init (&argc, &argv, NULL);
|
||||
+ g_test_init (&argc, &argv, nullptr);
|
||||
#else
|
||||
g_test_init (&argc, &argv, static_cast<void *>(NULL));
|
||||
--- a/gio/tests/cxx.cpp
|
||||
+++ a/gio/tests/cxx.cpp
|
||||
@@ -59,7 +59,7 @@ int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
#if G_CXX_STD_CHECK_VERSION (11)
|
||||
- g_test_init (&argc, &argv, NULL);
|
||||
+ g_test_init (&argc, &argv, nullptr);
|
||||
#else
|
||||
g_test_init (&argc, &argv, static_cast<void *>(NULL));
|
||||
#endif
|
|
@ -1,62 +0,0 @@
|
|||
Currently glib hardcodes a list of terminals and that list will not be expanding.
|
||||
The hope being that it will eventually be replaced with some kind of api.
|
||||
Until then, we might as well add gnome-console/kgx to the list
|
||||
|
||||
See: https://gitlab.gnome.org/GNOME/gnome-build-meta/-/merge_requests/1404#note_1331262
|
||||
Source: https://github.com/NixOS/nixpkgs/commit/c987121acf5c87436a0b05ca75cd70bf38c452ca
|
||||
|
||||
diff --git a/gio/gdesktopappinfo.c b/gio/gdesktopappinfo.c
|
||||
index 60d6debb2..a441bfec9 100644
|
||||
--- a/gio/gdesktopappinfo.c
|
||||
+++ b/gio/gdesktopappinfo.c
|
||||
@@ -2627,6 +2627,7 @@ prepend_terminal_to_vector (int *argc,
|
||||
int i, j;
|
||||
char **term_argv = NULL;
|
||||
int term_argc = 0;
|
||||
+ gboolean pass_cmd_as_single_arg = FALSE;
|
||||
char *check;
|
||||
char **the_argv;
|
||||
|
||||
@@ -2672,6 +2673,11 @@ prepend_terminal_to_vector (int *argc,
|
||||
}
|
||||
else
|
||||
{
|
||||
+ if (check == NULL) {
|
||||
+ check = g_find_program_in_path ("kgx");
|
||||
+ if (check != NULL)
|
||||
+ pass_cmd_as_single_arg = TRUE;
|
||||
+ }
|
||||
if (check == NULL)
|
||||
check = g_find_program_in_path ("tilix");
|
||||
if (check == NULL)
|
||||
@@ -2697,14 +2703,27 @@ prepend_terminal_to_vector (int *argc,
|
||||
}
|
||||
}
|
||||
|
||||
- real_argc = term_argc + *argc;
|
||||
+ real_argc = term_argc + (pass_cmd_as_single_arg ? 1 : *argc);
|
||||
real_argv = g_new (char *, real_argc + 1);
|
||||
|
||||
for (i = 0; i < term_argc; i++)
|
||||
real_argv[i] = term_argv[i];
|
||||
|
||||
- for (j = 0; j < *argc; j++, i++)
|
||||
- real_argv[i] = (char *)the_argv[j];
|
||||
+ if (pass_cmd_as_single_arg) {
|
||||
+ char **quoted_argv = g_new (char *, *argc + 1);
|
||||
+
|
||||
+ for (j = 0; j < *argc; j++) {
|
||||
+ quoted_argv[j] = g_shell_quote (the_argv[j]);
|
||||
+ g_free (the_argv[j]);
|
||||
+ }
|
||||
+ quoted_argv[j] = NULL;
|
||||
+
|
||||
+ real_argv[i++] = g_strjoinv (" ", quoted_argv);
|
||||
+ g_strfreev (quoted_argv);
|
||||
+ } else {
|
||||
+ for (j = 0; j < *argc; j++, i++)
|
||||
+ real_argv[i] = (char *)the_argv[j];
|
||||
+ }
|
||||
|
||||
real_argv[i] = NULL;
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
From 902ba0bc0db50ede3473af576bddd2b6a2f9e326 Mon Sep 17 00:00:00 2001
|
||||
From: Michal Vasilek <michal@vasilek.cz>
|
||||
Date: Sun, 18 Sep 2022 17:30:41 +0200
|
||||
Subject: [PATCH] tests: Only run g_error_new_valist() programmer error test on
|
||||
glibc
|
||||
|
||||
The musl implementation of vasprintf segfaults with NULL
|
||||
---
|
||||
glib/tests/error.c | 18 +++++++++---------
|
||||
1 file changed, 9 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/glib/tests/error.c b/glib/tests/error.c
|
||||
index 7ea04ea3ce..fa3a25969d 100644
|
||||
--- a/glib/tests/error.c
|
||||
+++ b/glib/tests/error.c
|
||||
@@ -123,12 +123,12 @@ static void
|
||||
test_new_valist_invalid_va (gpointer dummy,
|
||||
...)
|
||||
{
|
||||
-#ifdef __linux__
|
||||
- /* Only worth testing this on Linux; if other platforms regress on this legacy
|
||||
- * behaviour, we don’t care. In particular, calling g_error_new_valist() with
|
||||
- * a %NULL format will crash on FreeBSD as its implementation of vasprintf()
|
||||
- * is less forgiving than Linux’s. That’s fine: it’s a programmer error in
|
||||
- * either case. */
|
||||
+#if defined(__linux__) && defined(__GLIBC__)
|
||||
+ /* Only worth testing this on Linux with glibc; if other platforms regress on
|
||||
+ * this legacy behaviour, we don’t care. In particular, calling
|
||||
+ * g_error_new_valist() with a %NULL format will crash on FreeBSD as its
|
||||
+ * implementation of vasprintf() is less forgiving than Linux’s. That’s
|
||||
+ * fine: it’s a programmer error in either case. */
|
||||
const struct
|
||||
{
|
||||
GQuark domain;
|
||||
@@ -182,9 +182,9 @@ test_new_valist_invalid_va (gpointer dummy,
|
||||
|
||||
va_end (ap);
|
||||
}
|
||||
-#else /* if !__linux__ */
|
||||
- g_test_skip ("g_error_new_valist() programmer error handling is only relevant on Linux");
|
||||
-#endif /* !__linux__ */
|
||||
+#else /* if !__linux__ || !__GLIBC__ */
|
||||
+ g_test_skip ("g_error_new_valist() programmer error handling is only relevant on Linux with glibc");
|
||||
+#endif /* !__linux__ || ! __GLIBC__ */
|
||||
}
|
||||
|
||||
static void
|
||||
--
|
||||
GitLab
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'glib'
|
||||
pkgname=glib
|
||||
version=2.74.0
|
||||
revision=3
|
||||
version=2.76.1
|
||||
revision=1
|
||||
build_style=meson
|
||||
# static version is necessary for qemu-user-static;
|
||||
# also disable LTO, otherwise there are multiple failures when linking qemu
|
||||
|
@ -14,10 +14,10 @@ short_desc="GNU library of C routines"
|
|||
maintainer="Michal Vasilek <michal@vasilek.cz>"
|
||||
license="LGPL-2.1-or-later"
|
||||
homepage="https://wiki.gnome.org/Projects/GLib"
|
||||
#changelog="https://gitlab.gnome.org/GNOME/glib/raw/glib-2-74/NEWS"
|
||||
#changelog="https://gitlab.gnome.org/GNOME/glib/raw/glib-2-76/NEWS"
|
||||
changelog="https://gitlab.gnome.org/GNOME/glib/raw/main/NEWS"
|
||||
distfiles="${GNOME_SITE}/glib/${version%.*}/glib-${version}.tar.xz"
|
||||
checksum=3652c7f072d7b031a6b5edd623f77ebc5dcd2ae698598abcc89ff39ca75add30
|
||||
checksum=43dc0f6a126958f5b454136c4398eab420249c16171a769784486e25f2fda19f
|
||||
make_check_pre="dbus-run-session"
|
||||
|
||||
build_options="gtk_doc"
|
||||
|
@ -27,6 +27,13 @@ if [ -z "$CROSS_BUILD" ]; then
|
|||
build_options_default+=" gtk_doc"
|
||||
fi
|
||||
|
||||
post_patch() {
|
||||
# Timer test is flaky on 32 bit (does float comparisons)
|
||||
if [ "${XBPS_TARGET_WORDSIZE}" = "32" ]; then
|
||||
vsed -e "s/'timer' : {},//" -i glib/tests/meson.build
|
||||
fi
|
||||
}
|
||||
|
||||
pre_check() {
|
||||
# machine-id is a random, non-zero value
|
||||
echo 'dcb30309cd6c8b7cc20383d85a5c7012' > /etc/machine-id
|
||||
|
|
Loading…
Reference in New Issue