diff options
author | Alexander Kanavin <alex.kanavin@gmail.com> | 2022-11-14 20:00:50 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-11-15 09:38:34 +0000 |
commit | cf529411493bc86c4d8d0bb29cbb7b98c23456ad (patch) | |
tree | 456e0c6648bf801936171bfbb2699fc30721e52f /meta/recipes-core/glib-2.0 | |
parent | 250a265893661c1ca12c31e5b78b527b96cbcfc6 (diff) | |
download | openembedded-core-cf529411493bc86c4d8d0bb29cbb7b98c23456ad.tar.gz |
glib-2.0: update 2.72.3 -> 2.74.1
Patches:
0001-Do-not-ignore-return-value-of-write.patch
merged upstream
Enable-more-tests-while-cross-compiling.patch
replaced with a request to upstream to solve
this correctly with meson's exe_wrapper:
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3067
https://github.com/mesonbuild/meson/issues/11029
License-update: formatting
Make needed adjustments to ptests.
Backport a couple of patches to address musl failures.
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Diffstat (limited to 'meta/recipes-core/glib-2.0')
12 files changed, 208 insertions, 225 deletions
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-ignore-return-value-of-write.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-ignore-return-value-of-write.patch deleted file mode 100644 index f3a0069633..0000000000 --- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-ignore-return-value-of-write.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 658c034d92027dc8af5f784cae852123fac79b19 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Sat, 16 Apr 2016 13:28:59 -0700 -Subject: [PATCH] Do not ignore return value of write() - -gcc warns about ignoring return value when compiling -with fortify turned on. - -assert when write() fails - -Upstream-Status: Submitted -Signed-off-by: Khem Raj <raj.khem@gmail.com> - ---- - glib/tests/unix.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/glib/tests/unix.c b/glib/tests/unix.c -index 7639d06..f941141 100644 ---- a/glib/tests/unix.c -+++ b/glib/tests/unix.c -@@ -33,14 +33,15 @@ test_pipe (void) - GError *error = NULL; - int pipefd[2]; - char buf[1024]; -- gssize bytes_read; -+ gssize bytes_read, bytes_written; - gboolean res; - - res = g_unix_open_pipe (pipefd, FD_CLOEXEC, &error); - g_assert (res); - g_assert_no_error (error); - -- write (pipefd[1], "hello", sizeof ("hello")); -+ bytes_written = write (pipefd[1], "hello", sizeof ("hello")); -+ g_assert (bytes_written != -1 && "write() failed"); - memset (buf, 0, sizeof (buf)); - bytes_read = read (pipefd[0], buf, sizeof(buf) - 1); - g_assert_cmpint (bytes_read, >, 0); diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch index 5fe3aa898e..9bdd99d8a2 100644 --- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch +++ b/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch @@ -1,4 +1,4 @@ -From 0797a40627a4cb5439a24b872edc65356dceaaf0 Mon Sep 17 00:00:00 2001 +From 4a41bf7b050168726cc4fad4c1c72fc7c18ab779 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Fri, 15 Feb 2019 11:17:27 +0100 Subject: [PATCH] Do not write $bindir into pkg-config files @@ -16,16 +16,16 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/gio/meson.build b/gio/meson.build -index 532b086..98468a3 100644 +index 36b5bad..137e75a 100644 --- a/gio/meson.build +++ b/gio/meson.build -@@ -820,14 +820,14 @@ pkg.generate(libgio, +@@ -862,14 +862,14 @@ pkg.generate(libgio, 'schemasdir=' + join_paths('${datadir}', schemas_subdir), 'bindir=' + join_paths('${prefix}', get_option('bindir')), 'giomoduledir=' + pkgconfig_giomodulesdir, - 'gio=' + join_paths('${bindir}', 'gio'), -- 'gio_querymodules=' + join_paths('${bindir}', 'gio-querymodules'), -- 'glib_compile_schemas=' + join_paths('${bindir}', 'glib-compile-schemas'), +- 'gio_querymodules=@0@'.format(pkgconfig_multiarch_bindir / 'gio-querymodules'), +- 'glib_compile_schemas=@0@'.format(pkgconfig_multiarch_bindir / 'glib-compile-schemas'), - 'glib_compile_resources=' + join_paths('${bindir}', 'glib-compile-resources'), - 'gdbus=' + join_paths('${bindir}', 'gdbus'), - 'gdbus_codegen=' + join_paths('${bindir}', 'gdbus-codegen'), @@ -43,10 +43,10 @@ index 532b086..98468a3 100644 install_dir : glib_pkgconfigreldir, filebase : 'gio-2.0', diff --git a/glib/meson.build b/glib/meson.build -index aaf5f00..1e0992b 100644 +index c365901..c3d6601 100644 --- a/glib/meson.build +++ b/glib/meson.build -@@ -375,9 +375,9 @@ pkg.generate(libglib, +@@ -397,9 +397,9 @@ pkg.generate(libglib, subdirs : ['glib-2.0'], extra_cflags : ['-I${libdir}/glib-2.0/include'] + win32_cflags, variables : ['bindir=' + join_paths('${prefix}', get_option('bindir')), diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch index 59de3fa969..2e1e2313e8 100644 --- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch +++ b/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch @@ -1,31 +1,31 @@ -From 4f327be49fd6ac5a77da6e48459b37f37a601977 Mon Sep 17 00:00:00 2001 +From ba1728bc27c88597164957d000b70ec4be6edf28 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Wed, 13 Feb 2019 15:32:05 +0100 Subject: [PATCH] Set host_machine correctly when building with mingw32 Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + --- gio/tests/meson.build | 8 ++++---- glib/tests/meson.build | 2 +- meson.build | 3 +++ - tests/meson.build | 2 +- - 4 files changed, 9 insertions(+), 6 deletions(-) + 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/gio/tests/meson.build b/gio/tests/meson.build -index abe676767c60..34b347815308 100644 +index f644aa2..64a8684 100644 --- a/gio/tests/meson.build +++ b/gio/tests/meson.build -@@ -27,7 +27,7 @@ if build_machine.system() == 'linux' - endif # libutil.length() > 0 - endif # build_machine.system() == 'linux' +@@ -29,7 +29,7 @@ endif + + test_cpp_args = test_c_args -if host_machine.system() == 'windows' +if host_system == 'windows' common_gio_tests_deps += [iphlpapi_dep, winsock2, cc.find_library ('secur32')] endif -@@ -176,7 +176,7 @@ else +@@ -210,7 +210,7 @@ if have_dbus_daemon endif # Test programs buildable on UNIX only @@ -33,8 +33,8 @@ index abe676767c60..34b347815308 100644 +if host_system != 'windows' gio_tests += { 'file' : {}, - 'gdbus-peer' : { -@@ -434,7 +434,7 @@ if host_machine.system() != 'windows' + 'gdbus-peer-object-manager' : {}, +@@ -462,7 +462,7 @@ if host_machine.system() != 'windows' endif # unix # Test programs buildable on Windows only @@ -43,7 +43,7 @@ index abe676767c60..34b347815308 100644 gio_tests += {'win32-streams' : {}} endif -@@ -504,7 +504,7 @@ if cc.get_id() != 'msvc' and cc.get_id() != 'clang-cl' +@@ -532,7 +532,7 @@ if cc.get_id() != 'msvc' and cc.get_id() != 'clang-cl' } endif @@ -53,10 +53,10 @@ index abe676767c60..34b347815308 100644 'gdbus-example-unix-fd-client' : { 'install' : false, diff --git a/glib/tests/meson.build b/glib/tests/meson.build -index a0c64afe6ae9..48407f99569c 100644 +index db01b54..6950817 100644 --- a/glib/tests/meson.build +++ b/glib/tests/meson.build -@@ -151,7 +151,7 @@ if glib_conf.has('HAVE_EVENTFD') +@@ -188,7 +188,7 @@ if glib_conf.has('HAVE_EVENTFD') } endif @@ -66,10 +66,10 @@ index a0c64afe6ae9..48407f99569c 100644 glib_tests += { 'gpoll' : { diff --git a/meson.build b/meson.build -index e0b14319fb58..f6756a3c7dfb 100644 +index 43bb468..5f9b59c 100644 --- a/meson.build +++ b/meson.build -@@ -54,6 +54,9 @@ else +@@ -43,6 +43,9 @@ else endif host_system = host_machine.system() @@ -79,19 +79,3 @@ index e0b14319fb58..f6756a3c7dfb 100644 if host_system == 'darwin' ios_test_code = '''#include <TargetConditionals.h> -diff --git a/tests/meson.build b/tests/meson.build -index 5ff99a4a8258..8a4dad0ccae7 100644 ---- a/tests/meson.build -+++ b/tests/meson.build -@@ -53,7 +53,7 @@ test_extra_programs = { - 'assert-msg-test' : {}, - } - --if host_machine.system() != 'windows' -+if host_system != 'windows' - tests += { - 'timeloop' : {}, - } --- -2.34.1 - diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-g-file-info-don-t-assume-million-in-one-ev.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-g-file-info-don-t-assume-million-in-one-ev.patch index c33fa88a76..57ada66907 100644 --- a/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-g-file-info-don-t-assume-million-in-one-ev.patch +++ b/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-g-file-info-don-t-assume-million-in-one-ev.patch @@ -1,10 +1,11 @@ -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2990] -Signed-off-by: Ross Burton <ross.burton@arm.com> - -From 14838522a706ebdcc3cdab661d4c368099fe3a4e Mon Sep 17 00:00:00 2001 +From 3c56ff21b9a5fe18f9cec9b97ae1788fdf5d563e Mon Sep 17 00:00:00 2001 From: Ross Burton <ross.burton@arm.com> Date: Tue, 6 Jul 2021 19:26:03 +0100 Subject: [PATCH] gio/tests/g-file-info: don't assume million-in-one events + +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2990] +Signed-off-by: Ross Burton <ross.burton@arm.com> + don't happen The access and creation time tests create a file, gets the time in @@ -20,15 +21,16 @@ Change the test to simply assert that the difference not negative to handle this case. This is the same fix as 289f8b, but that was just modification time. + --- gio/tests/g-file-info.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gio/tests/g-file-info.c b/gio/tests/g-file-info.c -index 59411c3a8..a213e4b92 100644 +index d9ad045..c9b12b0 100644 --- a/gio/tests/g-file-info.c +++ b/gio/tests/g-file-info.c -@@ -239,7 +239,7 @@ test_g_file_info_access_time (void) +@@ -307,7 +307,7 @@ test_g_file_info_access_time (void) g_assert_nonnull (dt_usecs); ts = g_date_time_difference (dt_usecs, dt); @@ -36,8 +38,8 @@ index 59411c3a8..a213e4b92 100644 + g_assert_cmpint (ts, >=, 0); g_assert_cmpint (ts, <, G_USEC_PER_SEC); - /* Try round-tripping the access time. */ -@@ -316,7 +316,7 @@ test_g_file_info_creation_time (void) + /* Try again with nanosecond precision. */ +@@ -442,7 +442,7 @@ test_g_file_info_creation_time (void) g_assert_nonnull (dt_usecs); ts = g_date_time_difference (dt_usecs, dt); @@ -45,7 +47,4 @@ index 59411c3a8..a213e4b92 100644 + g_assert_cmpint (ts, >=, 0); g_assert_cmpint (ts, <, G_USEC_PER_SEC); - /* Try round-tripping the creation time. */ --- -2.34.1 - + /* Try again with nanosecond precision. */ diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-meson.build-do-not-use-can_run_host_binari.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-meson.build-do-not-use-can_run_host_binari.patch new file mode 100644 index 0000000000..db08b5af55 --- /dev/null +++ b/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-meson.build-do-not-use-can_run_host_binari.patch @@ -0,0 +1,48 @@ +From fdbffaea2fa85c203cc6aacb5734acac65aeaa19 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex@linutronix.de> +Date: Fri, 11 Nov 2022 13:12:42 +0100 +Subject: [PATCH] tests/meson.build: do not use can_run_host_binaries() + +can_run_host_binaries() returns true even when cross compiling, +if there is an executable wrapper defined that can run +cross-binaries under some kind of emulation. + +Unfortunately, custom_target() will not use the wrapper +and will attempt to execute the command directly. Until +this is addressed in meson upstream, we have to disable +these targets in cross scenarios. + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3067] +Signed-off-by: Alexander Kanavin <alex@linutronix.de> + +--- + gio/tests/meson.build | 2 +- + glib/tests/meson.build | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/gio/tests/meson.build b/gio/tests/meson.build +index 49cfa25ce..ea59656f9 100644 +--- a/gio/tests/meson.build ++++ b/gio/tests/meson.build +@@ -652,7 +652,7 @@ if installed_tests_enabled + endforeach + endif + +-if meson.can_run_host_binaries() ++if not meson.is_cross_build() + + compiler_type = '--compiler=@0@'.format(cc.get_id()) + +diff --git a/glib/tests/meson.build b/glib/tests/meson.build +index 69508178e..e4f75f302 100644 +--- a/glib/tests/meson.build ++++ b/glib/tests/meson.build +@@ -411,7 +411,7 @@ executable('testing-helper', 'testing-helper.c', + ) + + # some testing of gtester functionality +-if meson.can_run_host_binaries() and host_system != 'windows' ++if not meson.is_cross_build() and host_system != 'windows' + xmllint = find_program('xmllint', required: false) + if xmllint.found() + tmpsample_xml = custom_target('tmpsample.xml', diff --git a/meta/recipes-core/glib-2.0/glib-2.0/Enable-more-tests-while-cross-compiling.patch b/meta/recipes-core/glib-2.0/glib-2.0/Enable-more-tests-while-cross-compiling.patch deleted file mode 100644 index f5c161fe04..0000000000 --- a/meta/recipes-core/glib-2.0/glib-2.0/Enable-more-tests-while-cross-compiling.patch +++ /dev/null @@ -1,123 +0,0 @@ -From 1f3c05529c0c9032ae0a289fb1f088b7541fc9b0 Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen <jussi.kukkonen@intel.com> -Date: Mon, 9 Nov 2015 11:07:27 +0200 -Subject: [PATCH] Enable more tests while cross-compiling - -Upstream disables a few tests while cross-compiling because their build requires -running other built binaries. This usually makes sense but in the cross-compile -case we can depend on glib-2.0-native. - -Upstream-Status: Inappropriate [OE specific] -Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> - ---- - gio/tests/meson.build | 24 ++++++++++++------------ - 1 file changed, 12 insertions(+), 12 deletions(-) - -diff --git a/gio/tests/meson.build b/gio/tests/meson.build -index 3ed23a5..5df932a 100644 ---- a/gio/tests/meson.build -+++ b/gio/tests/meson.build -@@ -253,7 +253,7 @@ if host_machine.system() != 'windows' - } - endif - -- if have_dbus_daemon -+ if true - annotate_args = [ - '--annotate', 'org.project.Bar', 'Key1', 'Value1', - '--annotate', 'org.project.Bar', 'org.gtk.GDBus.Internal', 'Value2', -@@ -603,14 +603,14 @@ if installed_tests_enabled - endforeach - endif - --if not meson.is_cross_build() or meson.has_exe_wrapper() -+if meson.is_cross_build() - - compiler_type = '--compiler=@0@'.format(cc.get_id()) - - plugin_resources_c = custom_target('plugin-resources.c', - input : 'test4.gresource.xml', - output : 'plugin-resources.c', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), -@@ -636,7 +636,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - test_gresource = custom_target('test.gresource', - input : 'test.gresource.xml', - output : 'test.gresource', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), -@@ -649,7 +649,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - test_resources2_c = custom_target('test_resources2.c', - input : 'test3.gresource.xml', - output : 'test_resources2.c', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), -@@ -662,7 +662,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - test_resources2_h = custom_target('test_resources2.h', - input : 'test3.gresource.xml', - output : 'test_resources2.h', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), -@@ -676,7 +676,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - input : 'test2.gresource.xml', - depends : big_test_resource, - output : 'test_resources.c', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), -@@ -689,7 +689,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - digit_test_resources_c = custom_target('digit_test_resources.c', - input : '111_digit_test.gresource.xml', - output : 'digit_test_resources.c', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), -@@ -702,7 +702,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - digit_test_resources_h = custom_target('digit_test_resources.h', - input : '111_digit_test.gresource.xml', - output : 'digit_test_resources.h', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), -@@ -744,11 +744,11 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - - ld = find_program('ld', required : false) - -- if build_machine.system() == 'linux' and objcopy.found() and objcopy_supports_add_symbol and ld.found() -+ if not meson.is_cross_build() - test_gresource_binary = custom_target('test5.gresource', - input : 'test5.gresource.xml', - output : 'test5.gresource', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), -@@ -762,7 +762,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - test_resources_binary_c = custom_target('test_resources_binary.c', - input : 'test5.gresource.xml', - output : 'test_resources_binary.c', -- command : [glib_compile_resources, -+ command : ['glib-compile-resources', - compiler_type, - '--target=@OUTPUT@', - '--sourcedir=' + meson.current_source_dir(), diff --git a/meta/recipes-core/glib-2.0/glib-2.0/cpp-null.patch b/meta/recipes-core/glib-2.0/glib-2.0/cpp-null.patch new file mode 100644 index 0000000000..63cbf90ab2 --- /dev/null +++ b/meta/recipes-core/glib-2.0/glib-2.0/cpp-null.patch @@ -0,0 +1,77 @@ +From 0ca5254c5d92aec675b76b4bfa72a6885cde6066 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net> +Date: Sat, 29 Oct 2022 04:30:52 +0200 +Subject: [PATCH] glib/gmacros: Always define NULL as nullptr in C++11 and + newer + +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/0ca5254c5d92aec675b76b4bfa72a6885cde6066] +Signed-off-by: Alexander Kanavin <alex@linutronix.de> +--- + glib/gmacros.h | 9 ++++++++- + glib/tests/cxx.cpp | 13 ------------- + 2 files changed, 8 insertions(+), 14 deletions(-) + +diff --git a/glib/gmacros.h b/glib/gmacros.h +index 5302841105..9fe8270822 100644 +--- a/glib/gmacros.h ++++ b/glib/gmacros.h +@@ -870,10 +870,17 @@ + */ + #ifndef NULL + # ifdef __cplusplus +-# define NULL (0L) ++# if __cplusplus >= 201103L ++# define NULL (nullptr) ++# else ++# define NULL (0L) ++# endif /* __cplusplus >= 201103L */ + # else /* !__cplusplus */ + # define NULL ((void*) 0) + # endif /* !__cplusplus */ ++#elif defined (__cplusplus) && __cplusplus >= 201103L ++# undef NULL ++# define NULL (nullptr) + #endif + + #ifndef FALSE +diff --git a/glib/tests/cxx.cpp b/glib/tests/cxx.cpp +index 6ac60791c8..045457c6e2 100644 +--- a/glib/tests/cxx.cpp ++++ b/glib/tests/cxx.cpp +@@ -34,21 +34,12 @@ test_typeof (void) + MyObject *obj3 = g_atomic_pointer_get (&obj2); + g_assert_true (obj3 == obj); + +-#if __cplusplus >= 201103L +- MyObject *obj4 = nullptr; +-#else + MyObject *obj4 = NULL; +-#endif + g_atomic_pointer_set (&obj4, obj3); + g_assert_true (obj4 == obj); + +-#if __cplusplus >= 201103L +- MyObject *obj5 = nullptr; +- g_atomic_pointer_compare_and_exchange (&obj5, nullptr, obj4); +-#else + MyObject *obj5 = NULL; + g_atomic_pointer_compare_and_exchange (&obj5, NULL, obj4); +-#endif + g_assert_true (obj5 == obj); + + MyObject *obj6 = g_steal_pointer (&obj5); +@@ -195,11 +186,7 @@ test_steal_pointer (void) + int + main (int argc, char *argv[]) + { +-#if __cplusplus >= 201103L +- g_test_init (&argc, &argv, nullptr); +-#else + g_test_init (&argc, &argv, NULL); +-#endif + + g_test_add_func ("/C++/typeof", test_typeof); + g_test_add_func ("/C++/atomic-pointer-compare-and-exchange", test_atomic_pointer_compare_and_exchange); +-- +GitLab + diff --git a/meta/recipes-core/glib-2.0/glib-2.0/cpp-null2.patch b/meta/recipes-core/glib-2.0/glib-2.0/cpp-null2.patch new file mode 100644 index 0000000000..763d5ce539 --- /dev/null +++ b/meta/recipes-core/glib-2.0/glib-2.0/cpp-null2.patch @@ -0,0 +1,31 @@ +From 7dc19632f3115e3f517c6bc80436fe72c1dcdeb4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net> +Date: Sat, 29 Oct 2022 04:16:00 +0200 +Subject: [PATCH] glib/tests/cxx: Ensure NULL is always casted to a pointer + type + +Otherwise it may not be recognized as valid sentinel +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/7dc19632f3115e3f517c6bc80436fe72c1dcdeb4] +Signed-off-by: Alexander Kanavin <alex@linutronix.de> +--- + glib/tests/cxx.cpp | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/glib/tests/cxx.cpp b/glib/tests/cxx.cpp +index 045457c6e2..aa5e0cb576 100644 +--- a/glib/tests/cxx.cpp ++++ b/glib/tests/cxx.cpp +@@ -186,7 +186,11 @@ test_steal_pointer (void) + int + main (int argc, char *argv[]) + { ++#if __cplusplus >= 201103L + g_test_init (&argc, &argv, NULL); ++#else ++ g_test_init (&argc, &argv, static_cast<void *>(NULL)); ++#endif + + g_test_add_func ("/C++/typeof", test_typeof); + g_test_add_func ("/C++/atomic-pointer-compare-and-exchange", test_atomic_pointer_compare_and_exchange); +-- +GitLab diff --git a/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch b/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch index c0114397d8..7723ac6672 100644 --- a/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch +++ b/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch @@ -1,4 +1,4 @@ -From 9a66887179d28d696562dcac43ad05d67580cfdb Mon Sep 17 00:00:00 2001 +From 0da0b608fdbb144c39225233cbdd89995b76904b Mon Sep 17 00:00:00 2001 From: Ross Burton <ross.burton@intel.com> Date: Fri, 11 Mar 2016 15:35:55 +0000 Subject: [PATCH] glib-2.0: relocate the GIO module directory for native builds @@ -19,10 +19,10 @@ Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gio/giomodule.c b/gio/giomodule.c -index 2a043cc..e2d2310 100644 +index f5dbb4555..c926e77a8 100644 --- a/gio/giomodule.c +++ b/gio/giomodule.c -@@ -56,6 +56,8 @@ +@@ -58,6 +58,8 @@ #ifdef G_OS_WIN32 #include "gregistrysettingsbackend.h" #include "giowin32-priv.h" @@ -31,7 +31,7 @@ index 2a043cc..e2d2310 100644 #endif #include <glib/gstdio.h> -@@ -1267,7 +1269,15 @@ get_gio_module_dir (void) +@@ -1261,7 +1263,15 @@ get_gio_module_dir (void) NULL); g_free (install_dir); #else diff --git a/meta/recipes-core/glib-2.0/glib-2.0/run-ptest b/meta/recipes-core/glib-2.0/glib-2.0/run-ptest index 7a231b514b..c476d67310 100644 --- a/meta/recipes-core/glib-2.0/glib-2.0/run-ptest +++ b/meta/recipes-core/glib-2.0/glib-2.0/run-ptest @@ -5,5 +5,6 @@ if id -u glib2-test; then userdel glib2-test fi useradd glib2-test +cd /tmp su glib2-test -c 'gnome-desktop-testing-runner glib' userdel glib2-test diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.72.3.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.74.1.bb index b5ab6502a3..8fd785a7fd 100644 --- a/meta/recipes-core/glib-2.0/glib-2.0_2.72.3.bb +++ b/meta/recipes-core/glib-2.0/glib-2.0_2.74.1.bb @@ -7,20 +7,21 @@ SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}" SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ file://run-ptest \ file://0001-Fix-DATADIRNAME-on-uclibc-Linux.patch \ - file://Enable-more-tests-while-cross-compiling.patch \ file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \ file://0001-Install-gio-querymodules-as-libexec_PROGRAM.patch \ - file://0001-Do-not-ignore-return-value-of-write.patch \ file://0010-Do-not-hardcode-python-path-into-various-tools.patch \ file://0001-Set-host_machine-correctly-when-building-with-mingw3.patch \ file://0001-Do-not-write-bindir-into-pkg-config-files.patch \ file://0001-meson-Run-atomics-test-on-clang-as-well.patch \ file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \ file://0001-gio-tests-g-file-info-don-t-assume-million-in-one-ev.patch \ + file://0001-gio-tests-meson.build-do-not-use-can_run_host_binari.patch \ + file://cpp-null.patch \ + file://cpp-null2.patch \ " SRC_URI:append:class-native = " file://relocate-modules.patch" -SRC_URI[sha256sum] = "4a39a2f624b8512d500d5840173eda7fa85f51c109052eae806acece85d345f0" +SRC_URI[sha256sum] = "0ab981618d1db47845e56417b0d7c123f81a3427b2b9c93f5a46ff5bbb964964" # Find any meson cross files in FILESPATH that are relevant for the current # build (using siteinfo) and add them to EXTRA_OEMESON. diff --git a/meta/recipes-core/glib-2.0/glib.inc b/meta/recipes-core/glib-2.0/glib.inc index ffddefe22e..843b6bd29b 100644 --- a/meta/recipes-core/glib-2.0/glib.inc +++ b/meta/recipes-core/glib-2.0/glib.inc @@ -5,10 +5,10 @@ HOMEPAGE = "https://developer.gnome.org/glib/" # pcre is under BSD; # docs/reference/COPYING is with a 'public domain'-like license! LICENSE = "LGPL-2.1-or-later & BSD-3-Clause & PD" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ - file://glib/glib.h;beginline=4;endline=17;md5=b88abb7f3ad09607e71cb9d530155906 \ - file://gmodule/COPYING;md5=4fbd65380cdd255951079008b364516c \ - file://gmodule/gmodule.h;beginline=4;endline=17;md5=b88abb7f3ad09607e71cb9d530155906 \ +LIC_FILES_CHKSUM = "file://COPYING;md5=41890f71f740302b785c27661123bff5 \ + file://glib/glib.h;beginline=4;endline=17;md5=72f7cc2847407f65d8981ef112e4e630 \ + file://LICENSES/LGPL-2.1-or-later.txt;md5=41890f71f740302b785c27661123bff5 \ + file://gmodule/gmodule.h;beginline=4;endline=17;md5=72f7cc2847407f65d8981ef112e4e630 \ file://docs/reference/COPYING;md5=f51a5100c17af6bae00735cd791e1fcc" BUGTRACKER = "http://bugzilla.gnome.org" SECTION = "libs" @@ -21,7 +21,7 @@ DEPENDS = "glib-2.0-native \ virtual/libintl \ virtual/libiconv \ libffi \ - libpcre \ + libpcre2 \ zlib" PACKAGES += "${PN}-codegen ${PN}-utils" @@ -45,7 +45,7 @@ PACKAGECONFIG[libelf] = ",,elfutils" PACKAGECONFIG[tests] = "-Dinstalled_tests=true,-Dinstalled_tests=false," PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux" -EXTRA_OEMESON = "-Ddtrace=false -Dfam=false -Dsystemtap=false" +EXTRA_OEMESON = "-Ddtrace=false -Dsystemtap=false" do_configure:prepend() { sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in @@ -54,6 +54,7 @@ do_configure:prepend() { FILES:${PN} = "${libdir}/lib*${SOLIBS} \ ${libdir}/gio \ ${libexecdir}/*gio-querymodules \ + ${libexecdir}/*gio-launch-desktop \ ${datadir}/glib-2.0/schemas" FILES:${PN}-utils += "${bindir}/glib-genmarshal \ @@ -130,6 +131,8 @@ do_install:append:class-target () { mv ${D}${datadir}/installed-tests/glib/static-link.test ${D}${datadir}/installed-tests/glib/${MLPREFIX}static-link.test fi fi + # https://gitlab.gnome.org/GNOME/glib/-/issues/2810 + rm -f ${D}${datadir}/installed-tests/glib/thread-pool-slow.test } # As we do not build python3 for windows, makes no sense to ship the script that's using it @@ -148,6 +151,7 @@ RDEPENDS:${PN}-ptest += "\ coreutils \ libgcc \ dbus \ + desktop-file-utils \ gnome-desktop-testing \ tzdata \ tzdata-americas \ |