diff options
Diffstat (limited to 'meta/recipes-gnome')
55 files changed, 1190 insertions, 1052 deletions
diff --git a/meta/recipes-gnome/epiphany/epiphany_3.36.2.bb b/meta/recipes-gnome/epiphany/epiphany_3.36.2.bb deleted file mode 100644 index 8ac318b0d7..0000000000 --- a/meta/recipes-gnome/epiphany/epiphany_3.36.2.bb +++ /dev/null @@ -1,20 +0,0 @@ -SUMMARY = "WebKit based web browser for GNOME" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/epiphany" -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -DEPENDS = "libsoup-2.4 webkitgtk gtk+3 iso-codes avahi libnotify gcr \ - gsettings-desktop-schemas libxml2-native \ - glib-2.0 glib-2.0-native json-glib libdazzle libhandy" - -GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase gsettings features_check upstream-version-is-even gettext mime-xdg -REQUIRED_DISTRO_FEATURES = "x11 opengl" - -SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \ - file://0002-help-meson.build-disable-the-use-of-yelp.patch \ - " -SRC_URI[archive.sha256sum] = "c2e676aa0fe211809a5e7e8a7e461d182890f253c53f4610f2610094b6fbfb5e" - -FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo" -RDEPENDS_${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas" diff --git a/meta/recipes-gnome/epiphany/epiphany_41.3.bb b/meta/recipes-gnome/epiphany/epiphany_41.3.bb new file mode 100644 index 0000000000..6dca6a7305 --- /dev/null +++ b/meta/recipes-gnome/epiphany/epiphany_41.3.bb @@ -0,0 +1,43 @@ +SUMMARY = "WebKit based web browser for GNOME" +DESCRIPTION = "Epiphany is an open source web browser for the Linux desktop environment. \ +It provides a simple and easy-to-use internet browsing experience." +HOMEPAGE = "https://wiki.gnome.org/Apps/Web" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/epiphany" +LICENSE = "GPL-3.0-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +DEPENDS = " \ + webkitgtk \ + gcr \ + gsettings-desktop-schemas \ + nettle \ + json-glib \ + libarchive \ + libdazzle \ + libhandy \ + glib-2.0-native \ + " + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase gsettings features_check gettext mime-xdg +REQUIRED_DISTRO_FEATURES = "x11 opengl" + +SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@oe.utils.trim_version("${PV}", 1)}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \ + file://0002-help-meson.build-disable-the-use-of-yelp.patch \ + file://bfbb5f7bab38301d8a4a444173acdae8d9692146.patch \ + file://migrator.patch \ + file://distributor.patch \ + " +SRC_URI[archive.sha256sum] = "ba01268ee54f318dfdac2e01eba38a3fc96940c1cbf640ed2613ae29f8bcb9ad" + +PACKAGECONFIG_SOUP ?= "soup2" +PACKAGECONFIG ??= "${PACKAGECONFIG_SOUP}" + +# Developer mode enables debugging +PACKAGECONFIG[developer-mode] = "-Ddeveloper_mode=true,-Ddeveloper_mode=false" +PACKAGECONFIG[soup2] = "-Dsoup2=enabled,-Dsoup2=disabled,libsoup-2.4,,,soup3" +PACKAGECONFIG[soup3] = ",,libsoup,,,soup2" +PACKAGECONFIG[libportal] = "-Dlibportal=enabled,-Dlibportal=disabled,libportal" + +FILES:${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo" +RDEPENDS:${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas" diff --git a/meta/recipes-gnome/epiphany/files/0002-help-meson.build-disable-the-use-of-yelp.patch b/meta/recipes-gnome/epiphany/files/0002-help-meson.build-disable-the-use-of-yelp.patch index d4f3cc1d35..a6c4f92c86 100644 --- a/meta/recipes-gnome/epiphany/files/0002-help-meson.build-disable-the-use-of-yelp.patch +++ b/meta/recipes-gnome/epiphany/files/0002-help-meson.build-disable-the-use-of-yelp.patch @@ -1,4 +1,4 @@ -From 0048ae2d225d25cc58f378718ca6f9ddb1a228f9 Mon Sep 17 00:00:00 2001 +From 77c9f87dc2b3ad0854a678e234e22dfb31902b82 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Wed, 31 Jan 2018 15:50:38 +0200 Subject: [PATCH] help/meson.build: disable the use of yelp @@ -13,11 +13,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/help/meson.build b/help/meson.build -index fddcf4c..f7d76c6 100644 +index ff324dd..f5e421d 100644 --- a/help/meson.build +++ b/help/meson.build -@@ -32,7 +32,7 @@ help_media = [ - 'media/web-browser.png' +@@ -31,7 +31,7 @@ help_media = [ + 'media/org.gnome.Epiphany.svg' ] -gnome.yelp(meson.project_name(), diff --git a/meta/recipes-gnome/epiphany/files/bfbb5f7bab38301d8a4a444173acdae8d9692146.patch b/meta/recipes-gnome/epiphany/files/bfbb5f7bab38301d8a4a444173acdae8d9692146.patch new file mode 100644 index 0000000000..f20975c3bd --- /dev/null +++ b/meta/recipes-gnome/epiphany/files/bfbb5f7bab38301d8a4a444173acdae8d9692146.patch @@ -0,0 +1,35 @@ +From bfbb5f7bab38301d8a4a444173acdae8d9692146 Mon Sep 17 00:00:00 2001 +From: rvalue <i@rvalue.moe> +Date: Wed, 24 Nov 2021 04:52:42 +0000 +Subject: [PATCH] Remove incorrect args for i18n.merge_file + +Part-of: <https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1031> +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + data/meson.build | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/data/meson.build b/data/meson.build +index 46df3fd80..eac6b8224 100644 +--- a/data/meson.build ++++ b/data/meson.build +@@ -16,7 +16,6 @@ install_data( + desktop_conf = configuration_data() + desktop_conf.set('icon', application_id) + desktop = i18n.merge_file( +- 'desktop', + input: configure_file( + input: files('org.gnome.Epiphany.desktop.in.in'), + output: 'org.gnome.Epiphany.desktop.in', +@@ -32,7 +31,6 @@ desktop = i18n.merge_file( + appdata_conf = configuration_data() + appdata_conf.set('appid', application_id) + appdata = i18n.merge_file( +- 'appdata', + input: configure_file( + input: files('org.gnome.Epiphany.appdata.xml.in.in'), + output: 'org.gnome.Epiphany.appdata.xml.in', +-- +GitLab + diff --git a/meta/recipes-gnome/epiphany/files/distributor.patch b/meta/recipes-gnome/epiphany/files/distributor.patch new file mode 100644 index 0000000000..b09c9b38d2 --- /dev/null +++ b/meta/recipes-gnome/epiphany/files/distributor.patch @@ -0,0 +1,17 @@ +Don't encode the distro from /etc/os-release into the binaries. + +Upstream-Status: Pending +RP 2021/2/26 + +Index: epiphany-3.38.2/meson.build +=================================================================== +--- epiphany-3.38.2.orig/meson.build ++++ epiphany-3.38.2/meson.build +@@ -15,6 +15,7 @@ if r.returncode() == 0 + else + distributor_name = 'GNOME Web' + endif ++distributor_name = 'OpenEmbedded' + + prefix = get_option('prefix') + datadir = join_paths(prefix, get_option('datadir')) diff --git a/meta/recipes-gnome/epiphany/files/migrator.patch b/meta/recipes-gnome/epiphany/files/migrator.patch new file mode 100644 index 0000000000..a9a650a64a --- /dev/null +++ b/meta/recipes-gnome/epiphany/files/migrator.patch @@ -0,0 +1,24 @@ +We don't want to encide BUILD_ROOT into target packages. This is used +for build time tests but in our case those would be on target anyway +do use the target paths. + +Upstream-Status: Pending +RP 2021/2/25 + +Index: epiphany-3.38.2/lib/ephy-profile-utils.c +=================================================================== +--- epiphany-3.38.2.orig/lib/ephy-profile-utils.c ++++ epiphany-3.38.2/lib/ephy-profile-utils.c +@@ -130,10 +130,10 @@ ephy_profile_utils_do_migration (const c + argv[i++] = NULL; + + #if DEVELOPER_MODE +- argv[0] = BUILD_ROOT "/src/" EPHY_PROFILE_MIGRATOR; ++ argv[0] = PKGLIBEXECDIR "/" EPHY_PROFILE_MIGRATOR; + #else + if (debug) +- argv[0] = BUILD_ROOT "/src/" EPHY_PROFILE_MIGRATOR; ++ argv[0] = PKGLIBEXECDIR "/" EPHY_PROFILE_MIGRATOR; + #endif + + g_spawn_sync (NULL, (char **)argv, envp, G_SPAWN_SEARCH_PATH, diff --git a/meta/recipes-gnome/gcr/gcr/0001-gcr-meson.build-fix-one-parallel-build-failure.patch b/meta/recipes-gnome/gcr/gcr/0001-gcr-meson.build-fix-one-parallel-build-failure.patch new file mode 100644 index 0000000000..81c4bdbbcc --- /dev/null +++ b/meta/recipes-gnome/gcr/gcr/0001-gcr-meson.build-fix-one-parallel-build-failure.patch @@ -0,0 +1,37 @@ +From cb3708bad88e713e4ccf705cb8c14c5996cd9d06 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Fri, 23 Apr 2021 16:32:38 +0800 +Subject: [PATCH] gcr/meson.build: fix one parallel build failure + +ui/gcr-live-search.c includes gcr/gcr-marshal.h. Because missing +dependency, following error occurred intermittently during doing parallel +build: + + -o ui/libgcr-ui-3.so.1.0.0.p/gcr-live-search.c.o -c ../gcr-3.38.1/ui/gcr-live-search.c +../gcr-3.38.1/ui/gcr-live-search.c:32:10: fatal error: gcr/gcr-marshal.h: No such file or directory + 32 | #include "gcr/gcr-marshal.h" + | ^~~~~~~~~~~~~~~~~~~ +compilation terminated. + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/68/diffs] + +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + gcr/meson.build | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gcr/meson.build b/gcr/meson.build +index 06c3a63..d9d4b8f 100644 +--- a/gcr/meson.build ++++ b/gcr/meson.build +@@ -181,6 +181,7 @@ gcr_base_dep = declare_dependency( + sources: [ + gcr_enums_gen[1], + gcr_oids[1], ++ gcr_marshal_gen[1], + ], + ) + +-- +2.17.1 + diff --git a/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-set-internal-vapi-dependencies.patch b/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-set-internal-vapi-dependencies.patch deleted file mode 100644 index b484a1b222..0000000000 --- a/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-set-internal-vapi-dependencies.patch +++ /dev/null @@ -1,45 +0,0 @@ -From ebb77dad4563b882b449cbc5e882f36ac8c2de71 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Mon, 11 May 2020 22:19:16 +0000 -Subject: [PATCH] meson.build: correctly set internal vapi dependencies - -If they are set as strings, meson will supply the right -arguments to vapigen, but will not set the ninja dependencies -to ensure they get built first, and so races will occur: -https://autobuilder.yoctoproject.org/typhoon/#/builders/64/builds/1881/steps/8/logs/step1b - -Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/55] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - gcr/meson.build | 2 +- - ui/meson.build | 4 ++-- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/gcr/meson.build b/gcr/meson.build -index 254a933..199452f 100644 ---- a/gcr/meson.build -+++ b/gcr/meson.build -@@ -203,7 +203,7 @@ if get_option('introspection') - - gcr_vapi = gnome.generate_vapi('gcr-@0@'.format(gcr_major_version), - sources: gcr_gir[0], -- packages: [ 'glib-2.0', 'gio-2.0', 'gck-@0@'.format(gck_major_version) ], -+ packages: [ 'glib-2.0', 'gio-2.0', gck_vapi ], - metadata_dirs: meson.current_source_dir(), - vapi_dirs: [ - build_root / 'gck', -diff --git a/ui/meson.build b/ui/meson.build -index 5ca3753..477412d 100644 ---- a/ui/meson.build -+++ b/ui/meson.build -@@ -174,8 +174,8 @@ if get_option('introspection') - packages: [ - 'glib-2.0', - 'gio-2.0', -- 'gck-@0@'.format(gck_major_version), -- 'gcr-@0@'.format(gcr_major_version), -+ gck_vapi, -+ gcr_vapi, - 'gtk+-3.0' - ], - metadata_dirs: meson.current_source_dir(), diff --git a/meta/recipes-gnome/gcr/gcr/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch b/meta/recipes-gnome/gcr/gcr/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch new file mode 100644 index 0000000000..ae4e2ac1eb --- /dev/null +++ b/meta/recipes-gnome/gcr/gcr/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch @@ -0,0 +1,61 @@ +From b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8 Mon Sep 17 00:00:00 2001 +From: Jakub Jirutka <jakub@jirutka.cz> +Date: Wed, 12 Jan 2022 00:24:20 +0100 +Subject: [PATCH] meson: Fix unknown kw argument in gnome.generate_gir + +This argument has been removed in Meson 0.61.0: + + gck/meson.build:130:2: ERROR: gnome.generate_gir got unknown keyword arguments "packages" + +https://github.com/mesonbuild/meson/commit/f8fc5cb860465718fe7c79a1bf1fe00659f138de: + +> The packages argument to gnome.generate_gir was allowed, but never did anything, so stop passing it. + +Fixes #89 +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + gck/meson.build | 1 - + gcr/meson.build | 1 - + ui/meson.build | 1 - + 3 files changed, 3 deletions(-) + +diff --git a/gck/meson.build b/gck/meson.build +index 756b486..a21a1e9 100644 +--- a/gck/meson.build ++++ b/gck/meson.build +@@ -131,7 +131,6 @@ if get_option('introspection') + sources: gck_gir_sources, + namespace: 'Gck', + nsversion: '@0@'.format(gck_major_version), +- packages: gck_deps, + export_packages: 'gck-@0@'.format(gck_major_version), + includes: [ 'GObject-2.0', 'Gio-2.0' ], + header: 'gck/gck.h', +diff --git a/gcr/meson.build b/gcr/meson.build +index 2233a44..c83641b 100644 +--- a/gcr/meson.build ++++ b/gcr/meson.build +@@ -190,7 +190,6 @@ if get_option('introspection') + sources: [ gcr_base_public_sources, gcr_base_headers ], + namespace: 'Gcr', + nsversion: '@0@'.format(gcr_major_version), +- packages: gcr_base_deps, + export_packages: 'gcr-base-@0@'.format(gcr_major_version), + includes: [ + 'GObject-2.0', +diff --git a/ui/meson.build b/ui/meson.build +index e656ea2..32ee057 100644 +--- a/ui/meson.build ++++ b/ui/meson.build +@@ -152,7 +152,6 @@ if get_option('introspection') + export_packages: 'gcr-ui-@0@'.format(gcr_major_version), + identifier_prefix: 'Gcr', + symbol_prefix: 'gcr', +- packages: gcr_ui_deps, + includes: [ + 'GObject-2.0', + 'Gio-2.0', +-- +GitLab + diff --git a/meta/recipes-gnome/gcr/gcr_3.36.0.bb b/meta/recipes-gnome/gcr/gcr_3.36.0.bb deleted file mode 100644 index d5a88dfb35..0000000000 --- a/meta/recipes-gnome/gcr/gcr_3.36.0.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "A library for bits of crypto UI and parsing etc" -DESCRIPTION = "GCR is a library for displaying certificates, and crypto UI, \ -accessing key stores. It also provides the viewer for crypto files on the \ -GNOME desktop." -HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcr" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues" - -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" - -DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt gnupg-native \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}" - -GNOMEBASEBUILDCLASS = "meson" -GTKDOC_MESON_OPTION = "gtk_doc" -inherit gnomebase gtk-icon-cache gtk-doc features_check upstream-version-is-even vala gobject-introspection gettext mime mime-xdg -# depends on gtk+3, but also x11 through gtk+-x11 -REQUIRED_DISTRO_FEATURES = "x11" - -SRC_URI += " file://0001-meson.build-correctly-set-internal-vapi-dependencies.patch" -SRC_URI[archive.md5sum] = "adc65563b6b458507b9a578a8b68fb61" -SRC_URI[archive.sha256sum] = "aaf9bed017a2263c6145c89a1a84178f9f40f238426463e4ae486694ef5f6601" - -FILES_${PN} += " \ - ${datadir}/dbus-1 \ - ${datadir}/gcr-3 \ -" - -# http://errors.yoctoproject.org/Errors/Details/20229/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" diff --git a/meta/recipes-gnome/gcr/gcr_3.40.0.bb b/meta/recipes-gnome/gcr/gcr_3.40.0.bb new file mode 100644 index 0000000000..717c31c325 --- /dev/null +++ b/meta/recipes-gnome/gcr/gcr_3.40.0.bb @@ -0,0 +1,44 @@ +SUMMARY = "A library for bits of crypto UI and parsing etc" +DESCRIPTION = "GCR is a library for displaying certificates, and crypto UI, \ +accessing key stores. It also provides the viewer for crypto files on the \ +GNOME desktop." +HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcr" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues" + +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" + +DEPENDS = "p11-kit glib-2.0 libgcrypt gnupg-native \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}" + +CACHED_CONFIGUREVARS += "ac_cv_path_GPG='gpg2'" + +GNOMEBASEBUILDCLASS = "meson" +GTKDOC_MESON_OPTION = "gtk_doc" +inherit gnomebase gtk-icon-cache gtk-doc features_check upstream-version-is-even vala gobject-introspection gettext mime mime-xdg + +SRC_URI += "file://0001-gcr-meson.build-fix-one-parallel-build-failure.patch \ + file://b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch" + +SRC_URI[archive.sha256sum] = "b9d3645a5fd953a54285cc64d4fc046736463dbd4dcc25caf5c7b59bed3027f5" + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)}" +PACKAGECONFIG[gtk] = "-Dgtk=true,-Dgtk=false,gtk+3" + +FILES:${PN} += " \ + ${datadir}/dbus-1 \ + ${datadir}/gcr-3 \ +" + +# http://errors.yoctoproject.org/Errors/Details/20229/ +ARM_INSTRUCTION_SET:armv4 = "arm" +ARM_INSTRUCTION_SET:armv5 = "arm" +ARM_INSTRUCTION_SET:armv6 = "arm" + +EXTRA_OEMESON += "--cross-file ${WORKDIR}/meson-${PN}.cross" +do_write_config:append() { + cat >${WORKDIR}/meson-${PN}.cross <<EOF +[binaries] +gpg2 = '${bindir}/gpg2' +EOF +} diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch new file mode 100644 index 0000000000..a8206a4507 --- /dev/null +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch @@ -0,0 +1,171 @@ +From ba73bb0f3d2023839bc3b681c49b7ec1192cceb4 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Sat, 8 May 2021 21:58:54 +0200 +Subject: [PATCH] Add use_prebuilt_tools option + +This allows using the gdk-pixbuf tools from the host to +build and install tests in a cross-compile scenarion. + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/merge_requests/119] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + gdk-pixbuf/meson.build | 11 +++++++++-- + meson.build | 6 +++--- + meson_options.txt | 4 ++++ + tests/meson.build | 16 ++++++++-------- + thumbnailer/meson.build | 24 ++++++++++++++++++------ + 5 files changed, 42 insertions(+), 19 deletions(-) + +diff --git a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build +index 8b0590b..7331491 100644 +--- a/gdk-pixbuf/meson.build ++++ b/gdk-pixbuf/meson.build +@@ -342,13 +342,20 @@ foreach bin: gdkpixbuf_bin + include_directories: [ root_inc, gdk_pixbuf_inc ], + c_args: common_cflags + gdk_pixbuf_cflags, + install: true) +- meson.override_find_program(bin_name, bin) ++ if not get_option('use_prebuilt_tools') ++ meson.override_find_program(bin_name, bin) ++ endif + + # Used in tests + set_variable(bin_name.underscorify(), bin) + endforeach + +-if not meson.is_cross_build() ++if get_option('use_prebuilt_tools') ++ gdk_pixbuf_query_loaders = find_program('gdk-pixbuf-query-loaders', required: true) ++ gdk_pixbuf_pixdata = find_program('gdk-pixbuf-pixdata', required: true) ++endif ++ ++if not meson.is_cross_build() or get_option('use_prebuilt_tools') + # The 'loaders.cache' used for testing, so we don't accidentally + # load the installed cache; we always build it by default + loaders_cache = custom_target('loaders.cache', +diff --git a/meson.build b/meson.build +index 7a1409b..0bc73eb 100644 +--- a/meson.build ++++ b/meson.build +@@ -403,16 +403,16 @@ subdir('gdk-pixbuf') + # i18n + subdir('po') + +-if not meson.is_cross_build() ++if not meson.is_cross_build() or get_option('use_prebuilt_tools') + subdir('tests') +- subdir('thumbnailer') + endif ++subdir('thumbnailer') + + # Documentation + build_docs = get_option('gtk_doc') or get_option('docs') + subdir('docs') + +-if not meson.is_cross_build() ++if not meson.is_cross_build() or get_option('use_prebuilt_tools') + meson.add_install_script('build-aux/post-install.py', + gdk_pixbuf_bindir, + gdk_pixbuf_libdir, +diff --git a/meson_options.txt b/meson_options.txt +index 0ee6718..cc29855 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -49,4 +49,8 @@ option('gio_sniffing', + description: 'Perform file type detection using GIO (Unused on MacOS and Windows)', + type: 'boolean', + value: true) ++option('use_prebuilt_tools', ++ description: 'Use prebuilt gdk-pixbuf tools from the host for cross-compilation', ++ type: 'boolean', ++ value: false) + +diff --git a/tests/meson.build b/tests/meson.build +index 7c6cb11..1029e6a 100644 +--- a/tests/meson.build ++++ b/tests/meson.build +@@ -5,6 +5,12 @@ + # $PATH. Ideally we should use gnome.compile_resources() and let Meson deal with + # this problem: See https://github.com/mesonbuild/meson/issues/8266. + if enabled_loaders.contains('png') and host_system != 'windows' ++ ++ resources_deps = [loaders_cache,] ++ if not get_option('use_prebuilt_tools') ++ resources_deps += [gdk_pixbuf_pixdata,] ++ endif ++ + # Resources; we cannot use gnome.compile_resources() here, because we need to + # override the environment in order to use the utilities we just built instead + # of the system ones +@@ -21,10 +27,7 @@ if enabled_loaders.contains('png') and host_system != 'windows' + '@INPUT@', + '@OUTPUT@', + ], +- depends: [ +- gdk_pixbuf_pixdata, +- loaders_cache, +- ], ++ depends: resources_deps, + ) + + resources_h = custom_target('resources.h', +@@ -40,10 +43,7 @@ if enabled_loaders.contains('png') and host_system != 'windows' + '@INPUT@', + '@OUTPUT@', + ], +- depends: [ +- gdk_pixbuf_pixdata, +- loaders_cache, +- ], ++ depends: resources_deps, + ) + no_resources = false + else +diff --git a/thumbnailer/meson.build b/thumbnailer/meson.build +index b6a206d..9336c21 100644 +--- a/thumbnailer/meson.build ++++ b/thumbnailer/meson.build +@@ -6,13 +6,29 @@ bin = executable('gdk-pixbuf-thumbnailer', + ], + dependencies: gdk_pixbuf_deps + [ gdkpixbuf_dep ], + install: true) +-meson.override_find_program('gdk-pixbuf-thumbnailer', bin) ++if not get_option('use_prebuilt_tools') ++ meson.override_find_program('gdk-pixbuf-thumbnailer', bin) ++endif + + gdk_pixbuf_print_mime_types = executable('gdk-pixbuf-print-mime-types', + 'gdk-pixbuf-print-mime-types.c', ++ install: true, + c_args: common_cflags, + dependencies: gdk_pixbuf_deps + [ gdkpixbuf_dep ]) + ++if get_option('use_prebuilt_tools') ++ gdk_pixbuf_print_mime_types = find_program('gdk-pixbuf-print-mime-types', required: true) ++endif ++ ++thumbnailer_deps = [loaders_cache,] ++ ++if not get_option('use_prebuilt_tools') ++ thumbnailer_deps += [ ++ gdk_pixbuf_print_mime_types, ++ gdk_pixbuf_pixdata, ++ ] ++endif ++ + custom_target('thumbnailer', + input: 'gdk-pixbuf-thumbnailer.thumbnailer.in', + output: 'gdk-pixbuf-thumbnailer.thumbnailer', +@@ -25,10 +41,6 @@ custom_target('thumbnailer', + '@INPUT@', + '@OUTPUT@', + ], +- depends: [ +- gdk_pixbuf_print_mime_types, +- gdk_pixbuf_pixdata, +- loaders_cache, +- ], ++ depends: thumbnailer_deps, + install: true, + install_dir: join_paths(gdk_pixbuf_datadir, 'thumbnailers')) diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch deleted file mode 100644 index e461404918..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch +++ /dev/null @@ -1,38 +0,0 @@ -From be8a47e0c21e5577d4f5669d339dfec6299b25be Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Thu, 14 Feb 2019 18:06:25 +0100 -Subject: [PATCH] Generate loaders.cache using a native tool when - cross-compiling - -Otherwise meson would attempt to run a target binary. - -Upstream-Status: Pending -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - ---- - gdk-pixbuf/meson.build | 12 ++++++++++-- - 1 file changed, 10 insertions(+), 2 deletions(-) - -diff --git a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build -index 5cddbec..78c8bd3 100644 ---- a/gdk-pixbuf/meson.build -+++ b/gdk-pixbuf/meson.build -@@ -324,8 +324,16 @@ if not meson.is_cross_build() - build_by_default: true) - loaders_dep = declare_dependency(sources: [ loaders_cache ]) - else -- loaders_cache = [] -- loaders_dep = declare_dependency() -+ loaders_cache = custom_target('loaders.cache', -+ output: 'loaders.cache', -+ capture: true, -+ command: [ -+ 'gdk-pixbuf-query-loaders', -+ dynamic_loaders, -+ ], -+ depends: dynamic_loaders_dep, -+ build_by_default: true) -+ loaders_dep = declare_dependency(sources: [ loaders_cache ]) - endif - - pkgconfig = import('pkgconfig') diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch deleted file mode 100644 index 110b32a490..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 8c7ced988def52654946458a3779e383b27f14f7 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Thu, 14 Feb 2019 17:56:10 +0100 -Subject: [PATCH] Work-around thumbnailer cross-compile failure - -Install gdk-pixbuf-print-mime-types that's needed for thumbnail -metadata generation. - -The upstream issue is https://bugzilla.gnome.org/show_bug.cgi?id=779057 - -Upstream-Status: Inappropriate [workaround] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - thumbnailer/meson.build | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/thumbnailer/meson.build b/thumbnailer/meson.build -index e801144..aaafec8 100644 ---- a/thumbnailer/meson.build -+++ b/thumbnailer/meson.build -@@ -10,6 +10,7 @@ executable('gdk-pixbuf-thumbnailer', - gdk_pixbuf_print_mime_types = executable('gdk-pixbuf-print-mime-types', - 'gdk-pixbuf-print-mime-types.c', - c_args: common_cflags, -+ install: true, - dependencies: gdk_pixbuf_deps + [ gdkpixbuf_dep ]) - - custom_target('thumbnailer', diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0003-target-only-Work-around-thumbnailer-cross-compile-fa.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0003-target-only-Work-around-thumbnailer-cross-compile-fa.patch deleted file mode 100644 index a9c7600eb3..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0003-target-only-Work-around-thumbnailer-cross-compile-fa.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 2d1b65bd1272ad63b7fbd4babd9a8e8c296d15b5 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Fri, 22 Feb 2019 13:22:06 +0100 -Subject: [PATCH] (target only) Work-around thumbnailer and pixdata - cross-compile failure - -Use native gdk-pixbuf-print-mime-types and gdk-pixbuf-pixdata -when generating the thumbnail metadata and resources. - -This works but the mime types will come from native -loader.cache (which will only contain in-tree loaders), not from the -target loader.cache. - -The upstream issue is https://bugzilla.gnome.org/show_bug.cgi?id=779057 - -Upstream-Status: Inappropriate [workaround] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - ---- - build-aux/gen-thumbnailer.py | 2 -- - tests/meson.build | 11 +++++++++-- - thumbnailer/meson.build | 5 +---- - 3 files changed, 10 insertions(+), 8 deletions(-) - -diff --git a/build-aux/gen-thumbnailer.py b/build-aux/gen-thumbnailer.py -index 05ac821..c5b99ab 100644 ---- a/build-aux/gen-thumbnailer.py -+++ b/build-aux/gen-thumbnailer.py -@@ -20,8 +20,6 @@ argparser.add_argument('output', help='Output file') - args = argparser.parse_args() - - newenv = os.environ.copy() --newenv['GDK_PIXBUF_PIXDATA'] = args.pixdata --newenv['GDK_PIXBUF_MODULE_FILE'] = args.loaders - # 'nt': NT-based Windows, see https://docs.python.org/3/library/os.html - if os.name == 'nt': - gdk_pixbuf_dll_buildpath = os.path.dirname(args.pixdata) -diff --git a/tests/meson.build b/tests/meson.build -index 8ed7cc1..e011b77 100644 ---- a/tests/meson.build -+++ b/tests/meson.build -@@ -1,12 +1,19 @@ - # Resources; we cannot use gnome.compile_resources() here, because we need to - # override the environment in order to use the utilities we just built instead - # of the system ones -+ -+if not meson.is_cross_build() -+pixdata_binary = gdk_pixbuf_pixdata.full_path() -+else -+pixdata_binary = 'gdk-pixbuf-pixdata' -+endif -+ - resources_c = custom_target('resources.c', - input: 'resources.gresource.xml', - output: 'resources.c', - command: [ - gen_resources, -- '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()), -+ '--pixdata=@0@'.format(pixdata_binary), - '--loaders=@0@'.format(loaders_cache.full_path()), - '--sourcedir=@0@'.format(meson.current_source_dir()), - '--source', -@@ -24,7 +31,7 @@ resources_h = custom_target('resources.h', - output: 'resources.h', - command: [ - gen_resources, -- '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()), -+ '--pixdata=@0@'.format(pixdata_binary), - '--loaders=@0@'.format(loaders_cache.full_path()), - '--sourcedir=@0@'.format(meson.current_source_dir()), - '--header', -diff --git a/thumbnailer/meson.build b/thumbnailer/meson.build -index aaafec8..71bd61b 100644 ---- a/thumbnailer/meson.build -+++ b/thumbnailer/meson.build -@@ -18,9 +18,7 @@ custom_target('thumbnailer', - output: 'gdk-pixbuf-thumbnailer.thumbnailer', - command: [ - gen_thumbnailer, -- '--printer=@0@'.format(gdk_pixbuf_print_mime_types.full_path()), -- '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()), -- '--loaders=@0@'.format(loaders_cache.full_path()), -+ '--printer=gdk-pixbuf-print-mime-types', - '--bindir=@0@'.format(gdk_pixbuf_bindir), - '@INPUT@', - '@OUTPUT@', -@@ -28,7 +26,6 @@ custom_target('thumbnailer', - depends: [ - gdk_pixbuf_print_mime_types, - gdk_pixbuf_pixdata, -- loaders_cache, - ], - install: true, - install_dir: join_paths(gdk_pixbuf_datadir, 'thumbnailers')) diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0004-Do-not-run-tests-when-building.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0004-Do-not-run-tests-when-building.patch deleted file mode 100644 index 96c546f271..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0004-Do-not-run-tests-when-building.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 3c4a6c147ae8a0962ba9194373d8a41d14eed44f Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Fri, 22 Feb 2019 13:23:55 +0100 -Subject: [PATCH] Do not run tests when building - -Upstream-Status: Inappropriate [cross-compile specific] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - tests/meson.build | 17 ----------------- - 1 file changed, 17 deletions(-) - -diff --git a/tests/meson.build b/tests/meson.build -index 4fa3fbc..6ef7884 100644 ---- a/tests/meson.build -+++ b/tests/meson.build -@@ -138,23 +138,6 @@ foreach t: installed_tests - install_dir: installed_test_bindir, - ) - -- # Two particularly slow tests -- if test_suites.contains('slow') -- timeout = 300 -- else -- timeout = 30 -- endif -- -- test(test_name, test_bin, -- suite: test_suites, -- args: [ '-k', '--tap' ], -- env: [ -- 'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir()), -- 'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()), -- 'GDK_PIXBUF_MODULE_FILE=@0@'.format(loaders_cache.full_path()), -- ], -- timeout: timeout, -- ) - endforeach - - executable('pixbuf-read', diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0006-Build-thumbnailer-and-tests-also-in-cross-builds.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0006-Build-thumbnailer-and-tests-also-in-cross-builds.patch deleted file mode 100644 index 0fe13a387a..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0006-Build-thumbnailer-and-tests-also-in-cross-builds.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 1a532e090c558a830de9503f56e23414e880bb95 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Wed, 5 Jun 2019 14:17:55 +0200 -Subject: [PATCH] Build thumbnailer and tests also in cross builds. - -Upstream-Status: Inappropriate [relies on oe-core specific hacks] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - meson.build | 6 ++---- - 1 file changed, 2 insertions(+), 4 deletions(-) - -diff --git a/meson.build b/meson.build -index d104cea..7acb88a 100644 ---- a/meson.build -+++ b/meson.build -@@ -397,10 +397,8 @@ endif - # i18n - subdir('po') - --if not meson.is_cross_build() -- subdir('tests') -- subdir('thumbnailer') --endif -+subdir('tests') -+subdir('thumbnailer') - - # Documentation - subdir('docs') diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/missing-test-data.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/missing-test-data.patch deleted file mode 100644 index 6c758fd61c..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/missing-test-data.patch +++ /dev/null @@ -1,30 +0,0 @@ -Upstream-Status: Backport -Signed-off-by: Ross Burton <ross.burton@intel.com> - -From d8d231c01ef2e59856da8a5c26ace955e5f29370 Mon Sep 17 00:00:00 2001 -From: Ross Burton <ross.burton@intel.com> -Date: Mon, 25 Nov 2019 17:05:46 +0000 -Subject: [PATCH] tests: install circular-table.gif - -This test data was added for the pixbuf-gif-circular-table test (added October -2018 in 0b9d004) but because the file was never actually installed the installed -test suite never passes. ---- - tests/meson.build | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/tests/meson.build b/tests/meson.build -index 5116fc2b9..80ed3e8b2 100644 ---- a/tests/meson.build -+++ b/tests/meson.build -@@ -97,6 +97,7 @@ test_data = [ - 'bug775693.pixdata', - 'bug775229.pixdata', - 'aero.gif', -+ 'circular-table.gif' - ] - - installed_test_bindir = join_paths(gdk_pixbuf_libexecdir, 'installed-tests', meson.project_name()) --- -2.20.1 - diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.40.0.bb b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.6.bb index d0df5015a5..55c16e4d66 100644 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.40.0.bb +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.6.bb @@ -5,7 +5,7 @@ loading (ie. animated GIFs)" HOMEPAGE = "https://wiki.gnome.org/Projects/GdkPixbuf" BUGTRACKER = "https://gitlab.gnome.org/GNOME/gdk-pixbuf/issues" -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-or-later" LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ file://gdk-pixbuf/gdk-pixbuf.h;endline=26;md5=72b39da7cbdde2e665329fef618e1d6b \ " @@ -13,62 +13,58 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ SECTION = "libs" DEPENDS = "glib-2.0 gdk-pixbuf-native shared-mime-info" +DEPENDS:remove:class-native = "gdk-pixbuf-native" MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ file://run-ptest \ file://fatal-loader.patch \ - file://0001-Work-around-thumbnailer-cross-compile-failure.patch \ - file://0001-Fix-a-couple-of-decisions-around-cross-compilation.patch \ - file://0004-Do-not-run-tests-when-building.patch \ - file://0006-Build-thumbnailer-and-tests-also-in-cross-builds.patch \ - file://missing-test-data.patch \ + file://0001-Add-use_prebuilt_tools-option.patch \ " -SRC_URI_append_class-target = " \ - file://0003-target-only-Work-around-thumbnailer-cross-compile-fa.patch \ - " -SRC_URI_append_class-nativesdk = " \ - file://0003-target-only-Work-around-thumbnailer-cross-compile-fa.patch \ - " - -SRC_URI[md5sum] = "05eb1ebc258ba905f1c8644ef49de064" -SRC_URI[sha256sum] = "1582595099537ca8ff3b99c6804350b4c058bb8ad67411bbaae024ee7cead4e6" - -inherit meson pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc lib_package +SRC_URI[sha256sum] = "c4a6b75b7ed8f58ca48da830b9fa00ed96d668d3ab4b1f723dcf902f78bde77f" -GIR_MESON_OPTION = 'gir' +inherit meson pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gi-docgen lib_package -EXTRA_OEMESON_append = " ${@bb.utils.contains('PTEST_ENABLED', '1', '-Dinstalled_tests=true', '-Dinstalled_tests=false', d)}" +GIR_MESON_OPTION = 'introspection' +GIR_MESON_ENABLE_FLAG = "enabled" +GIR_MESON_DISABLE_FLAG = "disabled" LIBV = "2.10.0" GDK_PIXBUF_LOADERS ?= "png jpeg" -PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${GDK_PIXBUF_LOADERS}" -PACKAGECONFIG_class-native = "${GDK_PIXBUF_LOADERS}" +PACKAGECONFIG = "${GDK_PIXBUF_LOADERS} \ + ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}" +PACKAGECONFIG:class-native = "${GDK_PIXBUF_LOADERS}" PACKAGECONFIG[png] = "-Dpng=true,-Dpng=false,libpng" PACKAGECONFIG[jpeg] = "-Djpeg=true,-Djpeg=false,jpeg" PACKAGECONFIG[tiff] = "-Dtiff=true,-Dtiff=false,tiff" -PACKAGECONFIG[jpeg2000] = "-Djasper=true,-Djasper=false,jasper" +PACKAGECONFIG[tests] = "-Dinstalled_tests=true,-Dinstalled_tests=false" -PACKAGECONFIG[x11] = "-Dx11=true,-Dx11=false,virtual/libx11" +EXTRA_OEMESON:class-target = " \ + -Duse_prebuilt_tools=true \ +" + +EXTRA_OEMESON:class-nativesdk = " \ + -Duse_prebuilt_tools=true \ +" PACKAGES =+ "${PN}-xlib" # For GIO image type sniffing -RDEPENDS_${PN} = "shared-mime-info" +RDEPENDS:${PN} = "shared-mime-info" -FILES_${PN}-xlib = "${libdir}/*pixbuf_xlib*${SOLIBS}" -ALLOW_EMPTY_${PN}-xlib = "1" +FILES:${PN}-xlib = "${libdir}/*pixbuf_xlib*${SOLIBS}" +ALLOW_EMPTY:${PN}-xlib = "1" -FILES_${PN} += "${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" +FILES:${PN} += "${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" -FILES_${PN}-bin += "${datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer" +FILES:${PN}-bin += "${datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer" -FILES_${PN}-dev += " \ +FILES:${PN}-dev += " \ ${bindir}/gdk-pixbuf-csource \ ${bindir}/gdk-pixbuf-pixdata \ ${bindir}/gdk-pixbuf-print-mime-types \ @@ -77,9 +73,9 @@ FILES_${PN}-dev += " \ " PACKAGES_DYNAMIC += "^gdk-pixbuf-loader-.*" -PACKAGES_DYNAMIC_class-native = "" +PACKAGES_DYNAMIC:class-native = "" -python populate_packages_prepend () { +python populate_packages:prepend () { postinst_pixbufloader = d.getVar("postinst_pixbufloader") loaders_root = d.expand('${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders') @@ -89,10 +85,10 @@ python populate_packages_prepend () { # The test suite exercises all the loaders, so ensure they are all # dependencies of the ptest package. - d.appendVar("RDEPENDS_%s-ptest" % d.getVar('PN'), " " + packages) + d.appendVar("RDEPENDS:%s-ptest" % d.getVar('PN'), " " + packages) } -do_install_append() { +do_install:append() { # Copy gdk-pixbuf-query-loaders into libdir so it is always available # in multilib builds. cp ${D}/${bindir}/gdk-pixbuf-query-loaders ${D}/${libdir}/gdk-pixbuf-2.0/ @@ -104,7 +100,7 @@ do_install_ptest() { rm ${D}/${datadir}/installed-tests/gdk-pixbuf/pixbuf-randomly-modified.test } -do_install_append_class-native() { +do_install:append:class-native() { find ${D}${libdir} -name "libpixbufloader-*.la" -exec rm \{\} \; create_wrapper ${D}/${bindir}/gdk-pixbuf-csource \ diff --git a/meta/recipes-gnome/gi-docgen/gi-docgen_git.bb b/meta/recipes-gnome/gi-docgen/gi-docgen_git.bb new file mode 100644 index 0000000000..6a7124c3fe --- /dev/null +++ b/meta/recipes-gnome/gi-docgen/gi-docgen_git.bb @@ -0,0 +1,22 @@ +SUMMARY = "Documentation tool for GObject-based libraries" +DESCRIPTION = "GI-DocGen is a document generator for GObject-based libraries. GObject is \ +the base type system of the GNOME project. GI-Docgen reuses the \ +introspection data generated by GObject-based libraries to generate the API \ +reference of these libraries, as well as other ancillary documentation." +HOMEPAGE = "https://gnome.pages.gitlab.gnome.org/gi-docgen/" + +LICENSE = "GPL-3.0-or-later & Apache-2.0" +LIC_FILES_CHKSUM = "file://gi-docgen.py;beginline=1;endline=5;md5=2dc0f1f01202478cfe813c0e7f80b326" + +SRC_URI = "git://gitlab.gnome.org/GNOME/gi-docgen.git;protocol=https;branch=main" + +PV = "2022.1" +SRCREV = "37b04455ff58cb2ec3f58917d0737c435344f2fb" + +S = "${WORKDIR}/git" + +inherit setuptools3 + +RDEPENDS:${PN} += "python3-asyncio python3-core python3-jinja2 python3-json python3-markdown python3-markupsafe python3-pygments python3-toml python3-typogrify python3-xml" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch index 5da3fbf6d8..5afba3c644 100644 --- a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch +++ b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch @@ -1,4 +1,4 @@ -From 0a867caa8803a78f7cf3a204c4c358bc63daaf28 Mon Sep 17 00:00:00 2001 +From 63d97fefdbc90f5c68f67bdc30844776d9a1b720 Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen <jussi.kukkonen@intel.com> Date: Tue, 30 May 2017 14:55:49 +0300 Subject: [PATCH] Don't use AC_CANONICAL_HOST @@ -14,12 +14,12 @@ Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> 1 file changed, 1 deletion(-) diff --git a/configure.ac b/configure.ac -index e749112..58790e8 100644 +index f2659a5..1e8b016 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,6 @@ AC_PREREQ(2.53) - AC_INIT([adwaita-icon-theme], [3.36.1], + AC_INIT([adwaita-icon-theme], [41.0], [http://bugzilla.gnome.org/enter_bug.cgi?product=adwaita-icon-theme]) -AC_CANONICAL_HOST AC_CONFIG_MACRO_DIR([m4]) diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch index c4d7e2583b..a1d39cf558 100644 --- a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch +++ b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch @@ -1,20 +1,21 @@ -From 8dcd73b45a660dbdc560676835ba46f495334f14 Mon Sep 17 00:00:00 2001 +From 79da031e9811f3eef34b14cce419be93fea34319 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Tue, 13 Jun 2017 18:10:06 +0300 Subject: [PATCH] Run installation commands as shell jobs This greatly speeds up installation time on multi-core systems. -Upstream-Status: Pending +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/adwaita-icon-theme/-/merge_requests/39] Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + --- - src/fullcolor/Makefile.am | 3 ++- - src/spinner/Makefile.am | 5 +++-- - src/symbolic/Makefile.am | 7 ++++--- - 3 files changed, 9 insertions(+), 6 deletions(-) + src/fullcolor/Makefile.am | 5 +++-- + src/spinner/Makefile.am | 7 ++++--- + src/symbolic/Makefile.am | 11 ++++++----- + 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/fullcolor/Makefile.am b/src/fullcolor/Makefile.am -index 1c940a5..3998ee6 100644 +index d73529b..b7d0808 100644 --- a/src/fullcolor/Makefile.am +++ b/src/fullcolor/Makefile.am @@ -9,9 +9,10 @@ install-data-local: @@ -31,7 +32,7 @@ index 1c940a5..3998ee6 100644 ## FIXME we should add a way to remove links generated by icon mapping uninstall-local: diff --git a/src/spinner/Makefile.am b/src/spinner/Makefile.am -index 86f4d7c..3fae8c1 100644 +index c14caf6..322dc0d 100644 --- a/src/spinner/Makefile.am +++ b/src/spinner/Makefile.am @@ -24,13 +24,14 @@ install-data-local: @@ -45,18 +46,18 @@ index 86f4d7c..3fae8c1 100644 context="`dirname $$file`"; \ $(mkdir_p) $(DESTDIR)$(themedir)/scalable-up-to-32/$$context; \ - $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file; \ -+ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file & \ - done ++ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file & \ + done; \ + wait uninstall-local: for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32; find . -name "*.svg"`; do \ diff --git a/src/symbolic/Makefile.am b/src/symbolic/Makefile.am -index 24aac9b..61ba071 100644 +index 957c0ee..e1f8818 100644 --- a/src/symbolic/Makefile.am +++ b/src/symbolic/Makefile.am -@@ -25,18 +25,19 @@ install-data-local: +@@ -34,18 +34,19 @@ install-data-local: for file in `cd $(top_srcdir)/$(SVGOUTDIR)/$$size; find . -name "*.png"`; do \ context="`dirname $$file`"; \ $(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \ @@ -81,6 +82,3 @@ index 24aac9b..61ba071 100644 uninstall-local: for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable; find . -name "*.svg"`; do \ --- -2.11.0 - diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.36.1.bb b/meta/recipes-gnome/gnome/adwaita-icon-theme_41.0.bb index 2d78bea2c8..46f9f4772c 100644 --- a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.36.1.bb +++ b/meta/recipes-gnome/gnome/adwaita-icon-theme_41.0.bb @@ -1,43 +1,43 @@ SUMMARY = "GTK+ icon theme" +DESCRIPTION = "The Adwaita icon theme is the default icon theme of the GNOME desktop \ +This package package contains an icon theme for Gtk+ 3 applications." HOMEPAGE = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme" BUGTRACKER = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme/issues" SECTION = "x11/gnome" -LICENSE = "LGPL-3.0 | CC-BY-SA-3.0" +LICENSE = "LGPL-3.0-only | CC-BY-SA-3.0" LIC_FILES_CHKSUM = "file://COPYING;md5=c84cac88e46fc07647ea07e6c24eeb7c \ file://COPYING_CCBYSA3;md5=96143d33de3a79321b1006c4e8ed07e7 \ file://COPYING_LGPL;md5=e6a600fd5e1d9cbde2d983680233ad02" -inherit allarch autotools pkgconfig gettext gtk-icon-cache upstream-version-is-even +inherit allarch autotools pkgconfig gettext gtk-icon-cache gnomebase -MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" -SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ +SRC_URI += " \ file://0001-Don-t-use-AC_CANONICAL_HOST.patch \ file://0001-Run-installation-commands-as-shell-jobs.patch \ " -SRC_URI[md5sum] = "c61ca9d6b3ce70a9ab66dcff945923ff" -SRC_URI[sha256sum] = "e498518627044dfd7db7d79a5b3d437848caf1991ef4ef036a2d3a2ac2c1f14d" +SRC_URI[archive.sha256sum] = "ef5339d8c35fcad5d10481b70480803f0fa20b3d3cbc339238fcaceeaee01eba" DEPENDS += "librsvg-native" PACKAGES = "${PN}-cursors ${PN}-symbolic-hires ${PN}-symbolic ${PN}-hires ${PN}" -RREPLACES_${PN} = "gnome-icon-theme" -RCONFLICTS_${PN} = "gnome-icon-theme" -RPROVIDES_${PN} = "gnome-icon-theme" +RREPLACES:${PN} = "gnome-icon-theme" +RCONFLICTS:${PN} = "gnome-icon-theme" +RPROVIDES:${PN} = "gnome-icon-theme" -FILES_${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/" -FILES_${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \ +FILES:${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/" +FILES:${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \ ${prefix}/share/icons/Adwaita/64x64/*/*.symbolic.png \ ${prefix}/share/icons/Adwaita/48x48/*/*.symbolic.png \ ${prefix}/share/icons/Adwaita/32x32/*/*.symbolic.png" -FILES_${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \ +FILES:${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \ ${prefix}/share/icons/Adwaita/24x24/*/*.symbolic.png \ ${prefix}/share/icons/Adwaita/scalable/*/*-symbolic*.svg" -FILES_${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \ +FILES:${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \ ${prefix}/share/icons/Adwaita/512x512/" -FILES_${PN} = "${prefix}/share/icons/Adwaita/ \ +FILES:${PN} = "${prefix}/share/icons/Adwaita/ \ ${prefix}/share/pkgconfig/adwaita-icon-theme.pc" BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-gnome/gnome/gconf/python3.patch b/meta/recipes-gnome/gnome/gconf/python3.patch new file mode 100644 index 0000000000..7c022a2e1b --- /dev/null +++ b/meta/recipes-gnome/gnome/gconf/python3.patch @@ -0,0 +1,60 @@ +gconf: use python3 + +Convert gsettings-schema-convert to use python3. + +Upstream-Status: Inappropriate [gconf is deprecated] + +Signed-off-by: Joe Slater <joe.slater@windriver.com> + + +--- a/gsettings/gsettings-schema-convert ++++ b/gsettings/gsettings-schema-convert +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # vim: set ts=4 sw=4 et: coding=UTF-8 + # + # Copyright (c) 2010, Novell, Inc. +@@ -603,7 +603,7 @@ class SimpleSchemaParser: + for line in lines: + current_line_nb += 1 + self.parse_line(line) +- except GSettingsSchemaConvertException, e: ++ except GSettingsSchemaConvertException as e: + raise GSettingsSchemaConvertException('%s:%s: %s' % (os.path.basename(self.file), current_line_nb, e)) + + return self.root +@@ -1095,7 +1095,7 @@ def main(args): + try: + parser = GConfSchemaParser(argfile, options.gettext_domain, options.schema_id, options.keep_underscores) + schema_root = parser.parse() +- except SyntaxError, e: ++ except SyntaxError as e: + raise GSettingsSchemaConvertException('\'%s\' does not look like a valid gconf schema file: %s' % (argfile, e)) + else: + # autodetect if file is XML or not +@@ -1104,7 +1104,7 @@ def main(args): + schema_root = parser.parse() + if not options.simple and not options.xml: + options.simple = True +- except SyntaxError, e: ++ except SyntaxError as e: + parser = SimpleSchemaParser(argfile) + schema_root = parser.parse() + if not options.simple and not options.xml: +@@ -1127,13 +1127,13 @@ def main(args): + fout = open(options.output, 'w') + fout.write(output) + fout.close() +- except GSettingsSchemaConvertException, e: ++ except GSettingsSchemaConvertException as e: + fout.close() + if os.path.exists(options.output): + os.unlink(options.output) + raise e + +- except GSettingsSchemaConvertException, e: ++ except GSettingsSchemaConvertException as e: + print >> sys.stderr, '%s' % e + return 1 + diff --git a/meta/recipes-gnome/gnome/gconf_3.2.6.bb b/meta/recipes-gnome/gnome/gconf_3.2.6.bb index b8466d4833..776f6091aa 100644 --- a/meta/recipes-gnome/gnome/gconf_3.2.6.bb +++ b/meta/recipes-gnome/gnome/gconf_3.2.6.bb @@ -3,8 +3,8 @@ DESCRIPTION = "GConf is a system for storing application preferences. \ It is intended for user preferences; not configuration of something like \ Apache, or arbitrary data storage." SECTION = "x11/gnome" -HOMEPAGE = "https://projects.gnome.org/gconf/" -LICENSE = "LGPLv2+" +HOMEPAGE = "https://gitlab.gnome.org/Archive/gconf" +LICENSE = "LGPL-2.0-or-later" LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" DEPENDS = "glib-2.0 dbus dbus-glib libxml2 intltool-native" @@ -15,6 +15,7 @@ SRC_URI = "${GNOME_MIRROR}/GConf/${@gnome_verdir("${PV}")}/GConf-${PV}.tar.xz;na file://remove_plus_from_invalid_characters_list.patch \ file://unable-connect-dbus.patch \ file://create_config_directory.patch \ + file://python3.patch \ " SRC_URI[archive.md5sum] = "2b16996d0e4b112856ee5c59130e822c" @@ -27,12 +28,12 @@ EXTRA_OECONF = "--enable-shared --disable-static \ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'polkit', d)}" # We really don't want Polkit for native -PACKAGECONFIG_class-native = "" +PACKAGECONFIG:class-native = "" PACKAGECONFIG[polkit] = "--enable-defaults-service,--disable-defaults-service,polkit" PACKAGECONFIG[debug] = "--enable-debug=yes, --enable-debug=minimum" -do_install_append() { +do_install:append() { # this directory need to be created to avoid an Error 256 at gdm launch install -d ${D}${sysconfdir}/gconf/gconf.xml.system @@ -41,17 +42,19 @@ do_install_append() { rm -f ${D}${libdir}/gio/*/*.*a } -do_install_append_class-native() { +do_install:append:class-native() { create_wrapper ${D}/${bindir}/gconftool-2 \ GCONF_BACKEND_DIR=${STAGING_LIBDIR_NATIVE}/GConf/2 } -FILES_${PN} += "${libdir}/GConf/* \ +FILES:${PN} += "${libdir}/GConf/* \ ${libdir}/gio/*/*.so \ ${datadir}/polkit* \ ${datadir}/dbus-1/services/*.service \ ${datadir}/dbus-1/system-services/*.service \ " -FILES_${PN}-dev += "${datadir}/sgml/gconf/gconf-1.0.dtd" +RDEPENDS:${PN} = "python3-xml" + +FILES:${PN}-dev += "${datadir}/sgml/gconf/gconf-1.0.dtd" BBCLASSEXTEND = "native" diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch index 9d6f5dea3c..ba965092e1 100644 --- a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch +++ b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch @@ -1,4 +1,4 @@ -From 8dfb44450ca9fffc15977e95eadcb7054ab60a9a Mon Sep 17 00:00:00 2001 +From 74a0fee892235c722ac60ddea6ee79bc3d7a93f5 Mon Sep 17 00:00:00 2001 From: Sascha Silbe <x-yo17@se-silbe.de> Date: Fri, 8 Jun 2018 13:55:10 +0200 Subject: [PATCH] Relocate the repository directory for native builds @@ -21,7 +21,7 @@ Signed-off-by: Sascha Silbe <x-yo17@se-silbe.de> 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/girepository/girepository.c b/girepository/girepository.c -index b7948d6..39a2586 100644 +index 7d03485..20f4813 100644 --- a/girepository/girepository.c +++ b/girepository/girepository.c @@ -21,6 +21,8 @@ @@ -62,10 +62,10 @@ index b7948d6..39a2586 100644 typelib_search_path = g_slist_prepend (typelib_search_path, typelib_dir); diff --git a/girepository/meson.build b/girepository/meson.build -index 204659f..3e61d31 100644 +index 786749a..15cf2a9 100644 --- a/girepository/meson.build +++ b/girepository/meson.build -@@ -44,7 +44,7 @@ girepo_internals_lib = static_library('girepository-internals', +@@ -45,7 +45,7 @@ girepo_internals_lib = static_library('girepository-internals', ], c_args: gi_hidden_visibility_cflags + custom_c_args, include_directories : configinc, diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-build-Avoid-the-doctemplates-hack.patch b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-build-Avoid-the-doctemplates-hack.patch new file mode 100644 index 0000000000..b7d31ccfb0 --- /dev/null +++ b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-build-Avoid-the-doctemplates-hack.patch @@ -0,0 +1,219 @@ +From effb1e09dee263cdac4ec593e8caf316e6f01fe2 Mon Sep 17 00:00:00 2001 +From: Emmanuele Bassi <ebassi@gnome.org> +Date: Tue, 11 Jan 2022 15:51:10 +0000 +Subject: [PATCH] build: Avoid the doctemplates hack +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The hack that copies the doctemplates directory into the build +directory has stopped working with newer versions of Meson; while it's +possible to copy files, custom_target() cannot depend on a directory. +Additionally, the dependency has always been broken. + +Instead, we enumerate the template files—after all, it's not like they +change a lot—and then we list them as dependencies for the test targets. + +Fixes: #414 +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + giscanner/doctemplates/devdocs/meson.build | 19 +++++++ + giscanner/doctemplates/mallard/meson.build | 63 ++++++++++++++++++++++ + giscanner/meson.build | 14 ++--- + tests/scanner/meson.build | 24 +++++---- + 4 files changed, 98 insertions(+), 22 deletions(-) + create mode 100644 giscanner/doctemplates/devdocs/meson.build + create mode 100644 giscanner/doctemplates/mallard/meson.build + +diff --git a/giscanner/doctemplates/devdocs/meson.build b/giscanner/doctemplates/devdocs/meson.build +new file mode 100644 +index 00000000..2037182a +--- /dev/null ++++ b/giscanner/doctemplates/devdocs/meson.build +@@ -0,0 +1,19 @@ ++doc_templates += files([ ++ 'Gjs/_doc.tmpl', ++ 'Gjs/_index.tmpl', ++ 'Gjs/_method.tmpl', ++ 'Gjs/_methods.tmpl', ++ 'Gjs/_properties.tmpl', ++ 'Gjs/_signals.tmpl', ++ 'Gjs/_staticmethods.tmpl', ++ 'Gjs/_vfuncs.tmpl', ++ 'Gjs/base.tmpl', ++ 'Gjs/callback.tmpl', ++ 'Gjs/class.tmpl', ++ 'Gjs/default.tmpl', ++ 'Gjs/enum.tmpl', ++ 'Gjs/function.tmpl', ++ 'Gjs/interface.tmpl', ++ 'Gjs/method.tmpl', ++ 'Gjs/namespace.tmpl', ++]) +diff --git a/giscanner/doctemplates/mallard/meson.build b/giscanner/doctemplates/mallard/meson.build +new file mode 100644 +index 00000000..5fe4e2af +--- /dev/null ++++ b/giscanner/doctemplates/mallard/meson.build +@@ -0,0 +1,63 @@ ++base_templates = files([ ++ 'base.tmpl', ++ 'class.tmpl', ++ 'namespace.tmpl', ++]) ++ ++c_templates = files([ ++ 'C/callback.tmpl', ++ 'C/class.tmpl', ++ 'C/constructor.tmpl', ++ 'C/default.tmpl', ++ 'C/enum.tmpl', ++ 'C/field.tmpl', ++ 'C/function.tmpl', ++ 'C/interface.tmpl', ++ 'C/method.tmpl', ++ 'C/namespace.tmpl', ++ 'C/property.tmpl', ++ 'C/record.tmpl', ++ 'C/signal.tmpl', ++ 'C/vfunc.tmpl', ++]) ++ ++gjs_templates = files([ ++ 'Gjs/callback.tmpl', ++ 'Gjs/class.tmpl', ++ 'Gjs/constructor.tmpl', ++ 'Gjs/default.tmpl', ++ 'Gjs/enum.tmpl', ++ 'Gjs/field.tmpl', ++ 'Gjs/function.tmpl', ++ 'Gjs/interface.tmpl', ++ 'Gjs/method.tmpl', ++ 'Gjs/namespace.tmpl', ++ 'Gjs/property.tmpl', ++ 'Gjs/record.tmpl', ++ 'Gjs/signal.tmpl', ++ 'Gjs/vfunc.tmpl', ++]) ++ ++py_templates = files([ ++ 'Python/callback.tmpl', ++ 'Python/class.tmpl', ++ 'Python/constructor.tmpl', ++ 'Python/default.tmpl', ++ 'Python/enum.tmpl', ++ 'Python/field.tmpl', ++ 'Python/function.tmpl', ++ 'Python/interface.tmpl', ++ 'Python/method.tmpl', ++ 'Python/namespace.tmpl', ++ 'Python/property.tmpl', ++ 'Python/record.tmpl', ++ 'Python/signal.tmpl', ++ 'Python/vfunc.tmpl', ++]) ++ ++doc_templates += [ ++ base_templates, ++ c_templates, ++ gjs_templates, ++ py_templates, ++] +diff --git a/giscanner/meson.build b/giscanner/meson.build +index 41edcd44..3d7dc678 100644 +--- a/giscanner/meson.build ++++ b/giscanner/meson.build +@@ -53,17 +53,9 @@ configure_file(input : '../girepository/gdump.c', + + install_subdir('doctemplates', install_dir: giscannerdir) + +-# XXX: this doesn't track the input, but there is nothing to copy many files +-# in meson. +-doc_templates = custom_target('copy-templates', +- input : 'doctemplates', +- output : 'doctemplates', +- command : [ +- python, '-c', +- 'import sys, shutil;' + +- 'shutil.rmtree(sys.argv[2], ignore_errors=True);' + +- 'shutil.copytree(sys.argv[1], sys.argv[2])', +- '@INPUT@', '@OUTPUT@']) ++doc_templates = [] ++subdir('doctemplates/devdocs') ++subdir('doctemplates/mallard') + + flex = find_program('flex', 'win_flex') + bison = find_program('bison', 'win_bison') +diff --git a/tests/scanner/meson.build b/tests/scanner/meson.build +index 5176b957..b81b3fd5 100644 +--- a/tests/scanner/meson.build ++++ b/tests/scanner/meson.build +@@ -525,19 +525,26 @@ foreach gir : test_girs + endforeach + + if has_girdoctool and glib_dep.type_name() == 'pkgconfig' ++ doctool_env = environment() ++ doctool_env.set('srcdir', meson.current_source_dir()) ++ doctool_env.set('builddir', meson.current_build_dir()) ++ + foreach language : ['C', 'Python', 'Gjs'] + regress_docs = custom_target( + 'generate-docs-' + language, + input: regress_gir, +- depends: [doc_templates], ++ depend_files: doc_templates, + build_by_default: not cairo_deps_found, ++ env: doctool_env, + output: 'Regress-1.0-' + language, + command: [ + python, girdoctool, + '--add-include-path=' + join_paths(build_root, 'gir'), + '--add-include-path=' + meson.current_build_dir(), + '--language', language, +- '@INPUT@', '-o', '@OUTPUT@'], ++ '--templates-dir=' + join_paths(meson.current_source_dir(), '../../giscanner/doctemplates'), ++ '@INPUT@', '-o', '@OUTPUT@', ++ ], + ) + + if cairo_deps_found +@@ -546,10 +553,7 @@ if has_girdoctool and glib_dep.type_name() == 'pkgconfig' + python, + args: [gi_tester, 'Regress-1.0-' + language], + depends: [regress_docs], +- env: [ +- 'srcdir=' + meson.current_source_dir(), +- 'builddir=' + meson.current_build_dir(), +- ], ++ env: doctool_env, + ) + endif + endforeach +@@ -557,9 +561,10 @@ if has_girdoctool and glib_dep.type_name() == 'pkgconfig' + regress_sections = custom_target( + 'generate-docs-sections', + input: regress_gir, +- depends: [doc_templates], ++ depend_files: [doc_templates], + build_by_default: not cairo_deps_found, + output: 'Regress-1.0-sections.txt', ++ env: doctool_env, + command: [ + python, girdoctool, + '--add-include-path=' + join_paths(build_root, 'gir'), +@@ -574,10 +579,7 @@ if has_girdoctool and glib_dep.type_name() == 'pkgconfig' + python, + args: [gi_tester, 'Regress-1.0-sections.txt'], + depends: [regress_sections], +- env: [ +- 'srcdir=' + meson.current_source_dir(), +- 'builddir=' + meson.current_build_dir(), +- ], ++ env: doctool_env, + ) + endif + endif +-- +2.20.1 + diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-gir-add-a-dependency-for-g-ir-compiler-for-building-.patch b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-gir-add-a-dependency-for-g-ir-compiler-for-building-.patch deleted file mode 100644 index fc37a5bb96..0000000000 --- a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-gir-add-a-dependency-for-g-ir-compiler-for-building-.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 56ba5656258b82dbc069ab3a61e597c931a16a83 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Wed, 17 Jun 2020 11:43:16 +0200 -Subject: [PATCH] gir: add a dependency for g-ir-compiler for building .girs - -meson inserts the dependency if the compiler is used directly, but -fails to do so if the compiler is run through a wrapper. This leads -to build race errors between building the compiler and using it. - -Fix provided by Quentin Schulz <quentin.schulz@streamunlimited.com> - -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gobject-introspection/-/merge_requests/228] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - gir/meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gir/meson.build b/gir/meson.build -index b37fdb81..557e5517 100644 ---- a/gir/meson.build -+++ b/gir/meson.build -@@ -448,7 +448,7 @@ foreach gir : gir_files - typelibs += custom_target('generate-typelib-@0@'.format(gir).underscorify(), - input: gir, - output: '@BASENAME@.typelib', -- depends: [gobject_gir, ], -+ depends: [gobject_gir, gircompiler, ], - command: gircompiler_command, - install: true, - install_dir: typelibdir, --- -2.27.0 - diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch deleted file mode 100644 index b484b5e9e6..0000000000 --- a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch +++ /dev/null @@ -1,28 +0,0 @@ -From f742da8b3913f4818d3f419117076afe62f4dbf4 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Wed, 5 Sep 2018 16:46:52 +0200 -Subject: [PATCH] giscanner: ignore error return codes from ldd-wrapper - -prelink-rtld, which we use instead of ldd returns 127 when it can't find a library. -It is not an error per se, but it breaks subprocess.check_output(). - -Upstream-Status: Inappropriate [oe-core specific] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - ---- - giscanner/shlibs.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py -index d67df95..80352a6 100644 ---- a/giscanner/shlibs.py -+++ b/giscanner/shlibs.py -@@ -102,7 +102,7 @@ def _resolve_non_libtool(options, binary, libraries): - args.extend(['otool', '-L', binary.args[0]]) - else: - args.extend(['ldd', binary.args[0]]) -- output = subprocess.check_output(args) -+ output = subprocess.run(args, check=False, stdout=subprocess.PIPE).stdout - if isinstance(output, bytes): - output = output.decode("utf-8", "replace") - diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.64.1.bb b/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.70.0.bb index 7eefdd3e27..fcda10bd33 100644 --- a/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.64.1.bb +++ b/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.70.0.bb @@ -6,7 +6,7 @@ generation for bindings, API verification and documentation generation." HOMEPAGE = "https://wiki.gnome.org/action/show/Projects/GObjectIntrospection" BUGTRACKER = "https://gitlab.gnome.org/GNOME/gobject-introspection/issues" SECTION = "libs" -LICENSE = "LGPLv2+ & GPLv2+" +LICENSE = "LGPL-2.0-or-later & GPL-2.0-or-later & MIT" LIC_FILES_CHKSUM = "file://COPYING;md5=c434e8128a68bedd59b80b2ac1eb1c4a \ file://tools/compiler.c;endline=20;md5=fc5007fc20022720e6c0b0cdde41fabd \ file://giscanner/sourcescanner.c;endline=22;md5=194d6e0c1d00662f32d030ce44de8d39 \ @@ -14,14 +14,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c434e8128a68bedd59b80b2ac1eb1c4a \ " SRC_URI = "${GNOME_MIRROR}/${BPN}/${@oe.utils.trim_version("${PV}", 2)}/${BPN}-${PV}.tar.xz \ - file://0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch \ - file://0001-gir-add-a-dependency-for-g-ir-compiler-for-building-.patch \ + file://0001-build-Avoid-the-doctemplates-hack.patch \ " -SRC_URI[md5sum] = "3419dfd086efcf83768e0579ab6abd2b" -SRC_URI[sha256sum] = "80beae6728c134521926affff9b2e97125749b38d38744dc901f4010ee3e7fa7" +SRC_URI[sha256sum] = "902b4906e3102d17aa2fcb6dad1c19971c70f2a82a159ddc4a94df73a3cafc4a" -SRC_URI_append_class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch" +SRC_URI:append:class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch" inherit meson pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even multilib_script @@ -29,14 +27,12 @@ GTKDOC_MESON_OPTION = "gtk_doc" MULTILIB_SCRIPTS = "${PN}:${bindir}/g-ir-annotation-tool ${PN}:${bindir}/g-ir-scanner" -DEPENDS_append = " libffi zlib glib-2.0 python3 flex-native bison-native autoconf-archive" +DEPENDS += " libffi zlib glib-2.0 python3 flex-native bison-native autoconf-archive" # target build needs qemu to run temporary introspection binaries created # on the fly by g-ir-scanner and a native version of itself to run # native versions of its own tools during build. -# Also prelink-rtld is used to find out library dependencies of introspection binaries -# (standard ldd doesn't work when cross-compiling). -DEPENDS_class-target_append = " gobject-introspection-native qemu-native prelink-native" +DEPENDS:append:class-target = " gobject-introspection-native qemu-native" # needed for writing out the qemu wrapper script export STAGING_DIR_HOST @@ -47,8 +43,8 @@ PACKAGECONFIG[doctool] = "-Ddoctool=enabled,-Ddoctool=disabled,python3-mako," # Configure target build to use native tools of itself and to use a qemu wrapper # and optionally to generate introspection data -EXTRA_OEMESON_class-target = " \ - -Dgi_cross_use_host_gi=true \ +EXTRA_OEMESON:class-target = " \ + -Dgi_cross_use_prebuilt_gi=true \ -Dgi_cross_binary_wrapper=${B}/g-ir-scanner-qemuwrapper \ -Dgi_cross_ldd_wrapper=${B}/g-ir-scanner-lddwrapper \ -Dgi_cross_pkgconfig_sysroot_path=${PKG_CONFIG_SYSROOT_DIR} \ @@ -56,21 +52,14 @@ EXTRA_OEMESON_class-target = " \ ${@'-Dgir_dir_prefix=${libdir}' if d.getVar('MULTILIBS') else ''} \ " -# Need to ensure ld.so.conf exists so prelink-native works -# both before we build and if we install from sstate -do_configure[prefuncs] += "gobject_introspection_preconfigure" -python gobject_introspection_preconfigure () { - oe.utils.write_ld_so_conf(d) -} - -do_configure_prepend_class-native() { +do_configure:prepend:class-native() { # Tweak the native python scripts so that they don't refer to the # full path of native python binary (the solution is taken from glib-2.0 recipe) # This removes the risk of exceeding Linux kernel's shebang line limit (128 bytes) sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in } -do_configure_prepend_class-target() { +do_configure:prepend:class-target() { # Write out a qemu wrapper that will be given to gi-scanner so that it # can run target helper binaries through that. qemu_binary="${@qemu_wrapper_cmdline(d, '$STAGING_DIR_HOST', ['\\$GIR_EXTRA_LIBS_PATH','.libs','$STAGING_DIR_HOST/${libdir}','$STAGING_DIR_HOST/${base_libdir}'])}" @@ -95,7 +84,7 @@ EOF # from the target sysroot. cat > ${B}/g-ir-scanner-wrapper << EOF #!/bin/sh -# This prevents g-ir-scanner from writing cache data to $HOME +# This prevents g-ir-scanner from writing cache data to user's HOME dir export GI_SCANNER_DISABLE_CACHE=1 g-ir-scanner --lib-dirs-envvar=GIR_EXTRA_LIBS_PATH --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_DATADIR}/gir-1.0 --add-include-path=${STAGING_LIBDIR}/gir-1.0 "\$@" @@ -114,7 +103,7 @@ EOF # for a different architecture cat > ${B}/g-ir-scanner-lddwrapper << EOF #!/bin/sh -prelink-rtld --root=$STAGING_DIR_HOST "\$@" +$OBJDUMP -p "\$@" EOF chmod +x ${B}/g-ir-scanner-lddwrapper @@ -123,7 +112,7 @@ EOF sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in } -do_compile_prepend() { +do_compile:prepend() { # This prevents g-ir-scanner from writing cache data to $HOME export GI_SCANNER_DISABLE_CACHE=1 @@ -131,9 +120,14 @@ do_compile_prepend() { export GIR_EXTRA_LIBS_PATH=$B/.libs } +do_install:prepend() { + # This prevents g-ir-scanner from writing cache data to $HOME + export GI_SCANNER_DISABLE_CACHE=1 +} + # Our wrappers need to be available system-wide, because they will be used # to build introspection files for all other gobject-based packages -do_install_append_class-target() { +do_install:append:class-target() { install -d ${D}${bindir}/ install ${B}/g-ir-scanner-qemuwrapper ${D}${bindir}/ install ${B}/g-ir-scanner-wrapper ${D}${bindir}/ @@ -143,9 +137,9 @@ do_install_append_class-target() { # we need target versions of introspection tools in sysroot so that they can be run via qemu # when building introspection files in other packages -SYSROOT_DIRS_append_class-target = " ${bindir}" +SYSROOT_DIRS:append:class-target = " ${bindir}" -SYSROOT_PREPROCESS_FUNCS_append_class-target = " gi_binaries_sysroot_preprocess" +SYSROOT_PREPROCESS_FUNCS:append:class-target = " gi_binaries_sysroot_preprocess" gi_binaries_sysroot_preprocess() { # Tweak the binary names in the introspection pkgconfig file, so that it # picks up our wrappers which do the cross-compile and qemu magic. @@ -155,7 +149,7 @@ gi_binaries_sysroot_preprocess() { ${SYSROOT_DESTDIR}${libdir}/pkgconfig/gobject-introspection-1.0.pc } -SYSROOT_PREPROCESS_FUNCS_append = " gi_ldsoconf_sysroot_preprocess" +SYSROOT_PREPROCESS_FUNCS:append = " gi_ldsoconf_sysroot_preprocess" gi_ldsoconf_sysroot_preprocess () { mkdir -p ${SYSROOT_DESTDIR}${bindir} dest=${SYSROOT_DESTDIR}${bindir}/postinst-ldsoconf-${PN} @@ -178,26 +172,26 @@ gi_package_preprocess() { SSTATE_SCAN_FILES += "g-ir-scanner-qemuwrapper g-ir-scanner-wrapper g-ir-compiler-wrapper g-ir-scanner-lddwrapper Gio-2.0.gir postinst-ldsoconf-${PN}" # .typelib files are needed at runtime and so they go to the main package -FILES_${PN}_append = " ${libdir}/girepository-*/*.typelib" +FILES:${PN}:append = " ${libdir}/girepository-*/*.typelib" # .gir files go to dev package, as they're needed for developing (but not for running) # things that depends on introspection. -FILES_${PN}-dev_append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir" -FILES_${PN}-dev_append = " ${datadir}/gir-*/*.rnc" +FILES:${PN}-dev:append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir" +FILES:${PN}-dev:append = " ${datadir}/gir-*/*.rnc" # These are used by gobject-based packages # to generate transient introspection binaries -FILES_${PN}-dev_append = " ${datadir}/gobject-introspection-1.0/gdump.c \ +FILES:${PN}-dev:append = " ${datadir}/gobject-introspection-1.0/gdump.c \ ${datadir}/gobject-introspection-1.0/Makefile.introspection" # These are used by dependent packages (e.g. pygobject) to build their # testsuites. -FILES_${PN}-dev_append = " ${datadir}/gobject-introspection-1.0/tests/*.c \ +FILES:${PN}-dev:append = " ${datadir}/gobject-introspection-1.0/tests/*.c \ ${datadir}/gobject-introspection-1.0/tests/*.h" -FILES_${PN}-dbg += "${libdir}/gobject-introspection/giscanner/.debug/" -FILES_${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a" +FILES:${PN}-dbg += "${libdir}/gobject-introspection/giscanner/.debug/" +FILES:${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a" -RDEPENDS_${PN} = "python3-pickle python3-xml" +RDEPENDS:${PN} = "python3-pickle python3-xml" BBCLASSEXTEND = "native" diff --git a/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas/0001-Do-not-skip-gir-installation-for-cross-compiling.patch b/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas/0001-Do-not-skip-gir-installation-for-cross-compiling.patch deleted file mode 100644 index c481b18f1c..0000000000 --- a/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas/0001-Do-not-skip-gir-installation-for-cross-compiling.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 42e58c4c3e95a4a78ee8294f9b3901726bbbabe4 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> -Date: Sat, 11 May 2019 00:21:11 +0200 -Subject: [PATCH] Do not skip gir installation for cross compiling -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -We are cool and can handle cross gobject-introspection. - -Upstream-Status: Inappropriate [OE specific] - -Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> ---- - headers/meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/headers/meson.build b/headers/meson.build -index 3ce8b61..1132695 100644 ---- a/headers/meson.build -+++ b/headers/meson.build -@@ -19,7 +19,7 @@ enums_xml = custom_target( - install: true, - install_dir: schemasdir) - --if not meson.is_cross_build() and get_option('introspection') -+if get_option('introspection') - noinst_lib = shared_library('noinst', - headers, - install: false) --- -2.20.1 - diff --git a/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb b/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_41.0.bb index f54b242e73..280e3c8b50 100644 --- a/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb +++ b/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_41.0.bb @@ -4,15 +4,13 @@ GSettings schemas for settings shared by various components of a desktop." HOMEPAGE = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas" BUGTRACKER = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/issues" -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" DEPENDS = "glib-2.0" GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even +inherit gnomebase gsettings gobject-introspection gettext -SRC_URI[archive.md5sum] = "708ddd8dec388ebda5539667604197c3" -SRC_URI[archive.sha256sum] = "004bdbe43cf8290f2de7d8537e14d8957610ca479a4fa368e34dbd03f03ec9d9" -SRC_URI += "file://0001-Do-not-skip-gir-installation-for-cross-compiling.patch" +SRC_URI[archive.sha256sum] = "77289972e596d044583f0c056306d8f1dbd8adcf912910a50da0a663e65332ed" diff --git a/meta/recipes-gnome/gtk+/gtk+3.inc b/meta/recipes-gnome/gtk+/gtk+3.inc index 8d5edb7ee8..7d50d7bd2e 100644 --- a/meta/recipes-gnome/gtk+/gtk+3.inc +++ b/meta/recipes-gnome/gtk+/gtk+3.inc @@ -9,13 +9,13 @@ SECTION = "libs" DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf \ gdk-pixbuf-native" -LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+" +LICENSE = "LGPL-2.0-only & LGPL-2.0-or-later & LGPL-2.1-or-later" inherit autotools gettext pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings features_check gobject-introspection BBCLASSEXTEND = "native nativesdk" -GSETTINGS_PACKAGE_class-native = "" +GSETTINGS_PACKAGE:class-native = "" # versions >= 3.90 are development versions, otherwise like upstream-version-is-even UPSTREAM_CHECK_REGEX = "[^\d\.](?P<pver>3\.([1-8]?[02468])+(\.\d+)+)\.tar" @@ -26,10 +26,7 @@ ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" # it here avoids rebuilding everything. export PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native" -do_configure_prepend() { - # Do this because the configure script is running ./libtool directly - rm -f libtool - ln -s ${TARGET_PREFIX}libtool libtool +do_configure:prepend() { #delete a file that will get confused with generated one in ${B} rm -f ${S}/gtk/gtktypefuncs.c @@ -48,22 +45,19 @@ EXTRA_OECONF += " \ ${@bb.utils.contains("DISTRO_FEATURES", "x11", "", "--disable-gtk-doc", d)} \ " -do_compile_prepend() { +do_compile:prepend() { export GIR_EXTRA_LIBS_PATH="${B}/gdk/.libs" } -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl wayland x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'glx', '', d)}" -PACKAGECONFIG_class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" -PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl wayland x11', d)}" +PACKAGECONFIG:class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes" # this is provided by oe-core patch that removes epoxy/gl dependency from a X11 build PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,libepoxy" -PACKAGECONFIG[glx] = "--enable-glx,--disable-glx,,libgl" PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland wayland-protocols libxkbcommon virtual/egl virtual/libgles2 wayland-native" PACKAGECONFIG[cups] = "--enable-cups,--disable-cups,cups" -PACKAGECONFIG[cloudprint] = "--enable-cloudprint,--disable-cloudprint,rest json-glib" PACKAGECONFIG[colord] = "--enable-colord,--disable-colord,colord" prepare_gtk_scripts() { @@ -74,15 +68,15 @@ prepare_gtk_scripts() { ln ${D}${bindir}/gtk-query-immodules-3.0 ${D}${libexecdir}/${MLPREFIX}gtk-query-immodules-3.0 } -do_install_append_class-target() { +do_install:append:class-target() { prepare_gtk_scripts } -do_install_append_class-nativesdk() { +do_install:append:class-nativesdk() { prepare_gtk_scripts } -do_install_append_class-native() { +do_install:append:class-native() { create_wrapper ${D}/${bindir}/gtk-update-icon-cache \ GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache create_wrapper ${D}/${bindir}/gtk-encode-symbolic-svg \ @@ -93,7 +87,7 @@ PROVIDES += "gtk-icon-utils" PACKAGES =+ "${PN}-demo" LIBV = "3.0.0" -FILES_${PN}-demo = "${bindir}/gtk3-demo \ +FILES:${PN}-demo = "${bindir}/gtk3-demo \ ${bindir}/gtk3-demo-application \ ${bindir}/gtk3-icon-browser \ ${bindir}/gtk3-widget-factory \ @@ -104,14 +98,14 @@ FILES_${PN}-demo = "${bindir}/gtk3-demo \ ${datadir}/icons/hicolor/*/apps/gtk3-demo*.png \ ${datadir}/icons/hicolor/*/apps/gtk3-widget-factory*.png" -FILES_${PN}_append = " ${bindir}/gtk-update-icon-cache-3.0 \ +FILES:${PN}:append = " ${bindir}/gtk-update-icon-cache-3.0 \ ${bindir}/gtk-query-immodules-3.0 \ ${bindir}/gtk-launch \ ${datadir}/themes ${sysconfdir} ${datadir}/glib-2.0/schemas/ \ ${libdir}/gtk-3.0/${LIBV}/engines/libpixmap.so \ ${libdir}/gtk-3.0/modules/*.so" -FILES_${PN}-dev += " \ +FILES:${PN}-dev += " \ ${datadir}/gtk-3.0/gtkbuilder.rng \ ${datadir}/gtk-3.0/include \ ${datadir}/gtk-3.0/valgrind \ @@ -137,22 +131,22 @@ GTKBASE_RRECOMMENDS ?= "liberation-fonts \ adwaita-icon-theme-symbolic \ " -GTKBASE_RRECOMMENDS_class-native ?= "\ +GTKBASE_RRECOMMENDS:class-native ?= "\ " GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1" -RRECOMMENDS_${PN} = "${GTKBASE_RRECOMMENDS}" -RRECOMMENDS_${PN}_libc-glibc = "${GTKGLIBC_RRECOMMENDS}" -RDEPENDS_${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}" +RRECOMMENDS:${PN} = "${GTKBASE_RRECOMMENDS}" +RRECOMMENDS:${PN}:libc-glibc = "${GTKGLIBC_RRECOMMENDS}" +RDEPENDS:${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}" PACKAGES_DYNAMIC += "^gtk3-immodule-.* ^gtk3-printbackend-.*" -ALTERNATIVE_${PN} = "gtk-update-icon-cache" +ALTERNATIVE:${PN} = "gtk-update-icon-cache" ALTERNATIVE_TARGET[gtk-update-icon-cache] = "${bindir}/gtk-update-icon-cache-3.0" ALTERNATIVE_PRIORITY = "30" -python populate_packages_prepend () { +python populate_packages:prepend () { import os.path gtk_libdir = d.expand('${libdir}/gtk-3.0/${LIBV}') @@ -166,5 +160,5 @@ python populate_packages_prepend () { do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk3-printbackend-%s', 'GTK printbackend module for %s') if (d.getVar('DEBIAN_NAMES')): - d.setVar(d.expand('PKG_${PN}'), '${MLPREFIX}libgtk-3.0') + d.setVar(d.expand('PKG:${PN}'), '${MLPREFIX}libgtk-3.0') } diff --git a/meta/recipes-gnome/gtk+/gtk+3/0001-Hardcoded-libtool.patch b/meta/recipes-gnome/gtk+/gtk+3/0001-Hardcoded-libtool.patch deleted file mode 100644 index c210bbc7d5..0000000000 --- a/meta/recipes-gnome/gtk+/gtk+3/0001-Hardcoded-libtool.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 0ecaa5bab162abf0cb2057d77beeb7b89d5873b4 Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen <jussi.kukkonen@intel.com> -Date: Tue, 21 Jun 2016 14:53:56 +0300 -Subject: [PATCH 1/4] Hardcoded libtool - -Upstream-Status: Inappropriate [embedded specific] - -Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> -Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> ---- - configure.ac | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 6628e21..f43ac09 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -617,7 +617,7 @@ AC_MSG_CHECKING([whether to write dependencies into .pc files]) - case $enable_explicit_deps in - auto) - export SED -- deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh` -+ deplibs_check_method=`(./$host_alias-libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh` - if test "x$deplibs_check_method" != xpass_all || test "x$enable_static" = xyes ; then - enable_explicit_deps=yes - else -@@ -895,7 +895,7 @@ else - dnl Now we check to see if our libtool supports shared lib deps - dnl (in a rather ugly way even) - if $dynworks; then -- module_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config" -+ module_libtool_config="${CONFIG_SHELL-/bin/sh} ./$host_alias-libtool --config" - module_deplibs_check=`$module_libtool_config | \ - grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \ - sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'` -@@ -1649,7 +1649,7 @@ AC_SUBST(GTK_PRINT_BACKENDS) - # We are using gmodule-no-export now, but I'm leaving the stripping - # code in place for now, since pango and atk still require gmodule. - export SED --export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` -+export_dynamic=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` - if test -n "$export_dynamic"; then - GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"` - GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"` --- -2.12.0 - diff --git a/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch b/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch index 398c9bc36a..35cbab8761 100644 --- a/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch +++ b/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch @@ -1,4 +1,4 @@ -From f83fcf1991afad6d9c15546b2ccd775dad4e314c Mon Sep 17 00:00:00 2001 +From eef50c94587fc30cd624adb5eb213eb9fa663dc1 Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen <jussi.kukkonen@intel.com> Date: Tue, 21 Jun 2016 15:11:39 +0300 Subject: [PATCH] Add --disable-opengl configure option @@ -47,7 +47,7 @@ Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> create mode 100644 gdk/x11/gdkx-without-gl-context.h diff --git a/configure.ac b/configure.ac -index bd651bb..b4c061f 100644 +index 851bcbf..6cbf6a2 100644 --- a/configure.ac +++ b/configure.ac @@ -346,6 +346,15 @@ AC_ARG_ENABLE(cloudproviders, @@ -210,7 +210,7 @@ index 932daf1..54239d6 100644 return info; diff --git a/gdk/Makefile.am b/gdk/Makefile.am -index 479d6a1..7edbee8 100644 +index 710a548..b45f631 100644 --- a/gdk/Makefile.am +++ b/gdk/Makefile.am @@ -274,7 +274,6 @@ x11_introspection_files = \ @@ -243,10 +243,10 @@ index 479d6a1..7edbee8 100644 GdkX11_3_0_gir_SCANNERFLAGS = \ --identifier-prefix=Gdk \ diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c -index 240c99f..9eb49bf 100644 +index 748f548..911ab2a 100644 --- a/gdk/gdkdisplay.c +++ b/gdk/gdkdisplay.c -@@ -2419,7 +2419,9 @@ gboolean +@@ -2420,7 +2420,9 @@ gboolean gdk_display_make_gl_context_current (GdkDisplay *display, GdkGLContext *context) { @@ -258,7 +258,7 @@ index 240c99f..9eb49bf 100644 GdkRenderingMode diff --git a/gdk/gdkgl.c b/gdk/gdkgl.c -index 933e204..1767508 100644 +index 9690077..55f85ef 100644 --- a/gdk/gdkgl.c +++ b/gdk/gdkgl.c @@ -26,7 +26,9 @@ @@ -334,7 +334,7 @@ index 933e204..1767508 100644 +#endif } diff --git a/gdk/gdkglcontext.c b/gdk/gdkglcontext.c -index dfbed63..556f0a3 100644 +index 3b23639..1f04f8e 100644 --- a/gdk/gdkglcontext.c +++ b/gdk/gdkglcontext.c @@ -85,7 +85,9 @@ @@ -380,7 +380,7 @@ index dfbed63..556f0a3 100644 /** diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c -index 6ae0f86..4e48a2a 100644 +index 2de8ba4..1883a79 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -45,7 +45,9 @@ @@ -513,7 +513,7 @@ index 32b1f24..6352313 100644 + -include $(top_srcdir)/git.mk diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c -index 817944e..e7a2947 100644 +index 7e08f47..30fd7b6 100644 --- a/gdk/x11/gdkdisplay-x11.c +++ b/gdk/x11/gdkdisplay-x11.c @@ -37,7 +37,9 @@ @@ -526,7 +526,7 @@ index 817944e..e7a2947 100644 #include "gdk-private.h" #include "gdkprofilerprivate.h" -@@ -3188,7 +3190,9 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class) +@@ -3191,7 +3193,9 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class) display_class->text_property_to_utf8_list = _gdk_x11_display_text_property_to_utf8_list; display_class->utf8_to_string_target = _gdk_x11_display_utf8_to_string_target; @@ -538,10 +538,10 @@ index 817944e..e7a2947 100644 display_class->get_default_seat = gdk_x11_display_get_default_seat; diff --git a/gdk/x11/gdkscreen-x11.c b/gdk/x11/gdkscreen-x11.c -index 8939ae9..931bff9 100644 +index bb4df05..46f5349 100644 --- a/gdk/x11/gdkscreen-x11.c +++ b/gdk/x11/gdkscreen-x11.c -@@ -1723,3 +1723,8 @@ gdk_x11_screen_get_current_desktop (GdkScreen *screen) +@@ -1827,3 +1827,8 @@ gdk_x11_screen_get_current_desktop (GdkScreen *screen) { return get_netwm_cardinal_property (screen, "_NET_CURRENT_DESKTOP"); } @@ -551,7 +551,7 @@ index 8939ae9..931bff9 100644 +void _gdk_x11_screen_update_visuals_for_gl (GdkScreen *screen) {} +#endif diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c -index 1fe7b90..d23a347 100644 +index 721d9bb..8e87acc 100644 --- a/gdk/x11/gdkwindow-x11.c +++ b/gdk/x11/gdkwindow-x11.c @@ -36,7 +36,9 @@ @@ -564,7 +564,7 @@ index 1fe7b90..d23a347 100644 #include "gdkprivate-x11.h" #include "gdk-private.h" -@@ -5861,7 +5863,9 @@ gdk_window_impl_x11_class_init (GdkWindowImplX11Class *klass) +@@ -5881,7 +5883,9 @@ gdk_window_impl_x11_class_init (GdkWindowImplX11Class *klass) impl_class->set_opaque_region = gdk_x11_window_set_opaque_region; impl_class->set_shadow_width = gdk_x11_window_set_shadow_width; impl_class->show_window_menu = gdk_x11_window_show_window_menu; @@ -668,10 +668,10 @@ index 0000000..c9e2617 + +#endif /* __GDK_X_H__ */ diff --git a/gtk/Makefile.am b/gtk/Makefile.am -index eaca473..99352d1 100644 +index 074fb35..4fa9eb6 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am -@@ -1449,7 +1449,7 @@ gtktypefuncs.inc: stamp-gtktypebuiltins.h stamp-gtkprivatetypebuiltins.h $(top_s +@@ -1457,7 +1457,7 @@ gtktypefuncs.inc: stamp-gtktypebuiltins.h stamp-gtkprivatetypebuiltins.h $(top_s ${CPP} $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-gtfsrc.c | \ $(GREP) -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \ sort | uniq | \ @@ -681,7 +681,7 @@ index eaca473..99352d1 100644 $(srcdir)/gtktestutils.c: gtktypefuncs.inc diff --git a/gtk/gtkglarea.c b/gtk/gtkglarea.c -index 9a56443..7de0db2 100644 +index 802303e..33001cf 100644 --- a/gtk/gtkglarea.c +++ b/gtk/gtkglarea.c @@ -29,7 +29,9 @@ @@ -724,8 +724,8 @@ index 9a56443..7de0db2 100644 g_return_if_fail (GTK_IS_GL_AREA (area)); @@ -533,11 +540,13 @@ gtk_gl_area_attach_buffers (GtkGLArea *area) - glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_STENCIL_ATTACHMENT_EXT, - GL_RENDERBUFFER_EXT, priv->depth_stencil_buffer); + glFramebufferRenderbuffer (GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, + GL_RENDERBUFFER, priv->depth_stencil_buffer); } +#endif } @@ -738,7 +738,7 @@ index 9a56443..7de0db2 100644 if (priv->context == NULL) @@ -569,6 +578,7 @@ gtk_gl_area_delete_buffers (GtkGLArea *area) - glDeleteFramebuffersEXT (1, &priv->frame_buffer); + glDeleteFramebuffers (1, &priv->frame_buffer); priv->frame_buffer = 0; } +#endif @@ -777,7 +777,7 @@ index 9a56443..7de0db2 100644 static gboolean diff --git a/gtk/inspector/general.c b/gtk/inspector/general.c -index c241ec8..24576dd 100644 +index 48237d1..1f9b9be 100644 --- a/gtk/inspector/general.c +++ b/gtk/inspector/general.c @@ -33,8 +33,10 @@ @@ -824,7 +824,7 @@ index c241ec8..24576dd 100644 if (GDK_IS_WAYLAND_DISPLAY (gdk_display_get_default ())) { diff --git a/tests/Makefile.am b/tests/Makefile.am -index ee1e8b5..e6c6502 100644 +index f283e89..5e7180e 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -80,8 +80,6 @@ noinst_PROGRAMS = $(TEST_PROGS) \ diff --git a/meta/recipes-gnome/gtk+/gtk+3_3.24.21.bb b/meta/recipes-gnome/gtk+/gtk+3_3.24.31.bb index 70c0e66db7..a53cd7a45e 100644 --- a/meta/recipes-gnome/gtk+/gtk+3_3.24.21.bb +++ b/meta/recipes-gnome/gtk+/gtk+3_3.24.31.bb @@ -3,13 +3,11 @@ require gtk+3.inc MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \ - file://0001-Hardcoded-libtool.patch \ file://0002-Do-not-try-to-initialize-GL-without-libGL.patch \ file://0003-Add-disable-opengl-configure-option.patch \ file://link_fribidi.patch \ " -SRC_URI[md5sum] = "95afed6c860d27de827db66434d681da" -SRC_URI[sha256sum] = "aeea6ae7cd35e83dfc7699be716519faefca346c62e784dd1a37d9df94c08f52" +SRC_URI[sha256sum] = "423c3e7fdb4c459ee889e35fd4d71fd2623562541c1041b11c07e5ad1ff10bf9" S = "${WORKDIR}/gtk+-${PV}" diff --git a/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch b/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch index 5ca4e3e086..1d260aa72b 100644 --- a/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch +++ b/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch @@ -1,4 +1,4 @@ -From 657310f3842c84d28f6b77e8ad4d9b93472ca5da Mon Sep 17 00:00:00 2001 +From ebb0f7313a0931f646e86badce2627eff2fa37a8 Mon Sep 17 00:00:00 2001 From: Ross Burton <ross.burton@intel.com> Date: Mon, 5 Sep 2016 22:25:44 +0100 Subject: [PATCH] Use native pkg-config when looking for gtk-doc. diff --git a/meta/recipes-gnome/gtk-doc/gtk-doc_1.32.bb b/meta/recipes-gnome/gtk-doc/gtk-doc_1.33.2.bb index 1eaf370ab0..150d2c0b23 100644 --- a/meta/recipes-gnome/gtk-doc/gtk-doc_1.32.bb +++ b/meta/recipes-gnome/gtk-doc/gtk-doc_1.33.2.bb @@ -1,8 +1,8 @@ SUMMARY = "Documentation generator for glib-based software" DESCRIPTION = "Gtk-doc is a set of scripts that extract specially formatted comments \ from glib-based software and produce a set of html documentation files from them" -HOMEPAGE = "http://www.gtk.org/gtk-doc/" -LICENSE = "GPLv2" +HOMEPAGE = "https://www.gtk.org/docs/" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" inherit gnomebase @@ -18,28 +18,28 @@ PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "api-documentation", PACKAGECONFIG[working-scripts] = ",,libxslt-native xmlto-native python3-six python3-pygments" PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,glib-2.0" -SRC_URI[archive.md5sum] = "07764836262e154e94922e5f2aa476ae" -SRC_URI[archive.sha256sum] = "de0ef034fb17cb21ab0c635ec730d19746bce52984a6706e7bbec6fb5e0b907c" +SRC_URI[archive.sha256sum] = "cc1b709a20eb030a278a1f9842a362e00402b7f834ae1df4c1998a723152bf43" SRC_URI += "file://0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch \ file://0001-Do-not-error-out-if-xsltproc-is-not-found.patch \ file://conditionaltests.patch \ file://no-clobber.patch \ " -SRC_URI_append_class-native = " file://pkg-config-native.patch" +SRC_URI:append:class-native = " file://pkg-config-native.patch" BBCLASSEXTEND = "native nativesdk" # Do not check for XML catalogs when building because that # information is not used for anything during build. Recipe # dependencies make sure we have all the right bits. -do_configure_prepend() { +do_configure:prepend() { sed -i -e 's,^JH_CHECK_XML_CATALOG.*,,' ${S}/configure.ac } -do_install_append () { +do_install:append () { # configure values for python3 and pkg-config encoded in scripts for fn in ${bindir}/gtkdoc-depscan \ ${bindir}/gtkdoc-mkhtml2 \ + ${datadir}/gtk-doc/python/gtkdoc/config_data.py \ ${datadir}/gtk-doc/python/gtkdoc/config.py; do sed -e 's,${RECIPE_SYSROOT_NATIVE}/usr/bin/pkg-config,${bindir}/pkg-config,' \ -e 's,${HOSTTOOLS_DIR}/python3,${bindir}/python3,' \ @@ -47,11 +47,10 @@ do_install_append () { done } -FILES_${PN} += "${datadir}/sgml" -FILES_${PN}-dev += "${libdir}/cmake" -FILES_${PN}-doc = "" +FILES:${PN} += "${datadir}/sgml" +FILES:${PN}-doc = "" -SYSROOT_PREPROCESS_FUNCS_append_class-native = " gtkdoc_makefiles_sysroot_preprocess" +SYSROOT_PREPROCESS_FUNCS:append:class-native = " gtkdoc_makefiles_sysroot_preprocess" gtkdoc_makefiles_sysroot_preprocess() { # Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries # instead of libtool wrapper or running them directly @@ -59,4 +58,3 @@ gtkdoc_makefiles_sysroot_preprocess() { -e "s|GTKDOC_RUN =.*|GTKDOC_RUN = \$(top_builddir)/gtkdoc-qemuwrapper|" \ ${SYSROOT_DESTDIR}${datadir}/gtk-doc/data/gtk-doc*make } - diff --git a/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb b/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb index 74e3430528..bb6cb000ab 100644 --- a/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb +++ b/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb @@ -4,7 +4,7 @@ theme for implementations of the icon theme specification." HOMEPAGE = "https://www.freedesktop.org/wiki/Software/icon-theme" BUGTRACKER = "https://bugs.freedesktop.org/" -LICENSE = "GPLv2" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=f08a446809913fc9b3c718f0eaea0426" SRC_URI = "https://icon-theme.freedesktop.org/releases/${BPN}-${PV}.tar.xz" @@ -13,6 +13,6 @@ SRC_URI[sha256sum] = "317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d5 inherit allarch autotools -FILES_${PN} += "${datadir}/icons" +FILES:${PN} += "${datadir}/icons" BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-gnome/json-glib/json-glib_1.4.4.bb b/meta/recipes-gnome/json-glib/json-glib_1.6.6.bb index 5143d73ed7..627f389536 100644 --- a/meta/recipes-gnome/json-glib/json-glib_1.4.4.bb +++ b/meta/recipes-gnome/json-glib/json-glib_1.6.6.bb @@ -6,28 +6,27 @@ instances to and from JSON data types." HOMEPAGE = "https://wiki.gnome.org/Projects/JsonGlib" BUGTRACKER = "https://gitlab.gnome.org/GNOME/json-glib/issues" -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" DEPENDS = "glib-2.0" GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase lib_package gobject-introspection gtk-doc gettext ptest-gnome manpages +inherit gnomebase lib_package gobject-introspection gi-docgen gettext ptest-gnome manpages upstream-version-is-even +GIR_MESON_ENABLE_FLAG = 'enabled' +GIR_MESON_DISABLE_FLAG = 'disabled' +GIDOCGEN_MESON_ENABLE_FLAG = 'enabled' +GIDOCGEN_MESON_DISABLE_FLAG = 'disabled' -SRC_URI += "file://run-ptest" -SRC_URI[archive.md5sum] = "4d4bb9837f6d31e32d0ce658ae135f68" -SRC_URI[archive.sha256sum] = "720c5f4379513dc11fd97dc75336eb0c0d3338c53128044d9fabec4374f4bc47" +SRC_URI += " file://run-ptest" +SRC_URI[archive.sha256sum] = "96ec98be7a91f6dde33636720e3da2ff6ecbb90e76ccaa49497f31a6855a490e" +PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}" PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxslt-native xmlto-native" - -do_install_append() { - if ! ${@bb.utils.contains('PTEST_ENABLED', '1', 'true', 'false', d)}; then - rm -rf ${D}${datadir}/installed-tests ${D}${libexecdir} - fi -} +PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false" BBCLASSEXTEND = "native nativesdk" # Currently it's not possible to disable gettext in Meson, so we need to force # this back on. -USE_NLS_class-native = "yes" +USE_NLS:class-native = "yes" diff --git a/meta/recipes-gnome/libdazzle/libdazzle_3.36.0.bb b/meta/recipes-gnome/libdazzle/libdazzle_3.42.0.bb index 25ccee2e29..a10acc6ada 100644 --- a/meta/recipes-gnome/libdazzle/libdazzle_3.36.0.bb +++ b/meta/recipes-gnome/libdazzle/libdazzle_3.42.0.bb @@ -2,7 +2,7 @@ SUMMARY = "The libdazzle library is a companion library to GObject and Gtk+." DESCRIPTION = "A wide range of components from utilities for GIO, widgets for \ GTK+, an animation framework, state machines, paneling and high-performance \ counters are included." -LICENSE = "GPLv3+" +LICENSE = "GPL-3.0-or-later" HOMEPAGE = "https://gitlab.gnome.org/GNOME/libdazzle" BUGTRACKER = "https://gitlab.gnome.org/GNOME/libdazzle/issues" LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a" @@ -12,8 +12,7 @@ inherit gnomebase upstream-version-is-even vala features_check gobject-introspec DEPENDS = "glib-2.0-native glib-2.0 gtk+3" -SRC_URI[archive.md5sum] = "154be45a6aac020e7d59f477bd7cafcf" -SRC_URI[archive.sha256sum] = "82b31bbf550fc62970c78bf7f9d55e5fae5b8ea13b24fe2d13c8c6039409d958" +SRC_URI[archive.sha256sum] = "eae67a3b3d9cce408ee9ec0ab6adecb83e52eb53f9bc93713f4df1e84da16925" GIR_MESON_OPTION = 'with_introspection' diff --git a/meta/recipes-gnome/libgudev/libgudev_233.bb b/meta/recipes-gnome/libgudev/libgudev_237.bb index 8bc379ff62..9ce43ce34b 100644 --- a/meta/recipes-gnome/libgudev/libgudev_233.bb +++ b/meta/recipes-gnome/libgudev/libgudev_237.bb @@ -5,19 +5,27 @@ other programming languages, such as Javascript, because of GObject \ introspection support." HOMEPAGE = "https://wiki.gnome.org/Projects/libgudev" BUGTRACKER = "https://gitlab.gnome.org/GNOME/libgudev/issues" -SRC_URI[archive.sha256sum] = "587c4970eb23f4e2deee2cb1fb7838c94a78c578f41ce12cac0a3f4a80dabb03" -SRC_URI[archive.md5sum] = "d59a317a40aaa02a2226056c0bb4d3e1" +SRC_URI[archive.sha256sum] = "0d06b21170d20c93e4f0534dbb9b0a8b4f1119ffb00b4031aaeb5b9148b686aa" DEPENDS = "glib-2.0 udev" -EXTRA_OECONF = "--disable-umockdev" +RCONFLICTS:${PN} = "systemd (<= 220)" -RCONFLICTS_${PN} = "systemd (<= 220)" - -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" +GNOMEBASEBUILDCLASS = "meson" inherit gnomebase gobject-introspection gtk-doc +GIR_MESON_ENABLE_FLAG = 'enabled' +GIR_MESON_DISABLE_FLAG = 'disabled' + +GTKDOC_MESON_OPTION = "gtk_doc" + UPSTREAM_CHECK_URI = "http://ftp.gnome.org/pub/GNOME/sources/libgudev/" UPSTREAM_CHECK_REGEX = "(?P<pver>(\d+))" + +# This isn't a GNOME-style version do gnome_verdir fails. Just return the +# version as that is how the directory is structured. +def gnome_verdir(v): + return v diff --git a/meta/recipes-gnome/libhandy/libhandy/0001-Add-private-headers.patch b/meta/recipes-gnome/libhandy/libhandy/0001-Add-private-headers.patch new file mode 100644 index 0000000000..7b2a512738 --- /dev/null +++ b/meta/recipes-gnome/libhandy/libhandy/0001-Add-private-headers.patch @@ -0,0 +1,37 @@ +From e7c3e8fa00f6a68b2e0629db5ee115e641ea710e Mon Sep 17 00:00:00 2001 +From: Mingli Yu <mingli.yu@windriver.com> +Date: Wed, 8 Dec 2021 07:35:52 +0000 +Subject: [PATCH] Add private headers + +After the commit(8157ecc Separate public and private enums) introduced, +there comes a race as below: + | In file included from ../git/src/hdy-settings.c:11: + | ../git/src/hdy-settings-private.h:16:10: fatal error: hdy-enums-private.h: No such file or directory + | 16 | #include "hdy-enums-private.h" + +So also add private headers like private sources to libhandy_sources to +fix the issue. + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libhandy/-/merge_requests/796] + +Signed-off-by: Mingli Yu <mingli.yu@windriver.com> +--- + src/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/meson.build b/src/meson.build +index d087323..6f11f27 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -64,7 +64,7 @@ hdy_private_enums = gnome.mkenums('hdy-enums-private', + ) + + libhandy_public_sources += [hdy_public_enums[0]] +-libhandy_private_sources += [hdy_private_enums[0]] ++libhandy_private_sources += hdy_private_enums + libhandy_generated_headers += [hdy_public_enums[1]] + + src_headers = [ +-- +2.32.0 + diff --git a/meta/recipes-gnome/libhandy/libhandy_1.5.0.bb b/meta/recipes-gnome/libhandy/libhandy_1.5.0.bb new file mode 100644 index 0000000000..722593dfb1 --- /dev/null +++ b/meta/recipes-gnome/libhandy/libhandy_1.5.0.bb @@ -0,0 +1,30 @@ +SUMMARY = "A library full of GTK+ widgets for mobile phones" +DESCRIPTION = "Library with GTK widgets for mobile phones. Libhandy provides \ +GTK widgets and GObjects to ease developing applications for mobile phones. \ +It was developed by Purism (and used by several official GNOME projects) \ +to extend Gtk by providing mobile-friendly widgets and make the creation of \ +responsive apps easier." +HOMEPAGE = "https://gitlab.gnome.org/GNOME/libhandy" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/libhandy/-/issues" +LICENSE = "LGPL-2.1-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI = "git://gitlab.gnome.org/GNOME/libhandy.git;protocol=https;branch=master \ + file://0001-Add-private-headers.patch \ +" +SRCREV = "8fa8306a79215fc6ebf2483145da98bf9b2495ab" +S = "${WORKDIR}/git" + +UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+))" +GIR_MESON_ENABLE_FLAG = 'enabled' +GIR_MESON_DISABLE_FLAG = 'disabled' +GTKDOC_MESON_OPTION = 'gtk_doc' + +inherit meson gobject-introspection vala gettext gtk-doc features_check + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +DEPENDS += "gtk+3" + +PACKAGES =+ "${PN}-examples" +FILES:${PN}-examples = "${bindir}" diff --git a/meta/recipes-gnome/libhandy/libhandy_git.bb b/meta/recipes-gnome/libhandy/libhandy_git.bb deleted file mode 100644 index 64258941ee..0000000000 --- a/meta/recipes-gnome/libhandy/libhandy_git.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "A library full of GTK+ widgets for mobile phones" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -SRC_URI = "git://source.puri.sm/Librem5/${BPN}.git;protocol=https" -SRCREV = "7a193d7692c9c76a1a94f17c4d30b585f77d177c" -S = "${WORKDIR}/git" -PV = "0.0.13" - -GIR_MESON_ENABLE_FLAG = 'enabled' -GIR_MESON_DISABLE_FLAG = 'disabled' -GTKDOC_MESON_OPTION = 'gtk_doc' - -inherit meson gobject-introspection vala gettext gtk-doc features_check - -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" - -DEPENDS += "gtk+3" - -PACKAGES =+ "${PN}-examples" -FILES_${PN}-examples = "${bindir}" diff --git a/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb b/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb index 29a28272e1..fa3253b616 100644 --- a/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb +++ b/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb @@ -1,19 +1,26 @@ SUMMARY = "Library for sending desktop notifications to a notification daemon" +DESCRIPTION = "It sends desktop notifications to a notification daemon, as defined \ +in the Desktop Notifications spec. These notifications can be used to inform \ +the user about an event or display some form of information without getting \ +in the user's way." HOMEPAGE = "https://gitlab.gnome.org/GNOME/libnotify" BUGTRACKER = "https://gitlab.gnome.org/GNOME/libnotify/issues" SECTION = "libs" -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" -DEPENDS = "dbus gtk+3 glib-2.0" +DEPENDS = "dbus glib-2.0 gdk-pixbuf" + +PACKAGECONFIG ?= "" +PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false,gtk+3" GNOMEBASEBUILDCLASS = "meson" GTKDOC_MESON_OPTION = "gtk_doc" GIR_MESON_ENABLE_FLAG = "enabled" GIR_MESON_DISABLE_FLAG = "disabled" inherit gnomebase gtk-doc features_check gobject-introspection -# depends on gtk+3 -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" +# depends on gtk+3 if tests are enabled +ANY_OF_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'tests', '${GTK3DISTROFEATURES}', '', d)}" SRC_URI[archive.md5sum] = "ccd9c53364174cc8d13e18a1988faa76" SRC_URI[archive.sha256sum] = "66c0517ed16df7af258e83208faaf5069727dfd66995c4bbc51c16954d674761" @@ -23,6 +30,9 @@ EXTRA_OEMESON = "-Dman=false" # there were times, we had two versions of libnotify (oe-core libnotify:0.6.x / # meta-gnome libnotify3: 0.7.x) PROVIDES += "libnotify3" -RPROVIDES_${PN} += "libnotify3" -RCONFLICTS_${PN} += "libnotify3" -RREPLACES_${PN} += "libnotify3" +RPROVIDES:${PN} += "libnotify3" +RCONFLICTS:${PN} += "libnotify3" +RREPLACES:${PN} += "libnotify3" + +# -7381 is specific to the NodeJS bindings +CVE_CHECK_IGNORE += "CVE-2013-7381" diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch b/meta/recipes-gnome/librsvg/librsvg/0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch deleted file mode 100644 index 954bb60880..0000000000 --- a/meta/recipes-gnome/librsvg/librsvg/0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch +++ /dev/null @@ -1,35 +0,0 @@ -From b99891e31eb6ce550e7e1cb2ca592095b3050a93 Mon Sep 17 00:00:00 2001 -From: Brion Vibber <brion@pobox.com> -Date: Sun, 25 Feb 2018 18:42:36 -0800 -Subject: Auto-detect -Bsymbolic, fixes configure on macOS - -The -Bsymbolic linker option is ELF-specific, and was breaking -configure on macOS unless --disable-Bsymbolic was explicitly passed. - -Switching the behavior from requiring -Bsymbolic to be available -by default to just warning and continuing on without. - -Fixes https://gitlab.gnome.org/GNOME/librsvg/issues/211 - -Upstream-Status: Backport -Signed-off-by: Adrian Bunk <bunk@stusta.de> ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 15b26b2d..9f8dce29 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -216,7 +216,7 @@ AM_CONDITIONAL([ENABLE_PIXBUF_LOADER],[test "$enable_pixbuf_loader" = "yes"]) - AC_ARG_ENABLE([Bsymbolic], - [AS_HELP_STRING([--disable-Bsymbolic], - [disable linking with -Bsymbolic])], -- [],[enable_Bsymbolic=yes]) -+ [enable_Bsymbolic=no],[enable_Bsymbolic=auto]) - - BSYMBOLIC_LDFLAG= - if test "$enable_Bsymbolic" != "no"; then --- -2.20.1 - diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch b/meta/recipes-gnome/librsvg/librsvg/0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch new file mode 100644 index 0000000000..d7487c234c --- /dev/null +++ b/meta/recipes-gnome/librsvg/librsvg/0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch @@ -0,0 +1,47 @@ +From 95b2cd0169cb1b4694c2bce67169b1aa1d5e2be0 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex@linutronix.de> +Date: Tue, 21 Sep 2021 16:27:14 +0200 +Subject: [PATCH] Makefile.am: pass rust target to cargo also when not cross + compiling + +Otherwise oe-core's native build doesn't work either. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin <alex@linutronix.de> +--- + Makefile.am | 2 -- + configure.ac | 4 +--- + 2 files changed, 1 insertion(+), 5 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index e93714e..effe5d3 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -137,9 +137,7 @@ else + CARGO_RELEASE_ARGS=--release + endif + +-if CROSS_COMPILING + CARGO_TARGET_ARGS=--target=$(RUST_TARGET) +-endif + + CARGO_VERBOSE = $(cargo_verbose_$(V)) + cargo_verbose_ = $(cargo_verbose_$(AM_DEFAULT_VERBOSITY)) +diff --git a/configure.ac b/configure.ac +index 41590ca..84cd56b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -255,9 +255,7 @@ AC_ARG_VAR(RUST_TARGET, [Set rust target (default=$host)]) + : ${RUST_TARGET:=$host} + + AM_CONDITIONAL([CROSS_COMPILING], [test "x$cross_compiling" = xyes]) +-AS_IF([test "x$cross_compiling" = "xyes"], [ +- RUST_TARGET_SUBDIR="$RUST_TARGET/$RUST_TARGET_SUBDIR" +-]) ++RUST_TARGET_SUBDIR="$RUST_TARGET/$RUST_TARGET_SUBDIR" + AC_SUBST([RUST_TARGET_SUBDIR]) + + dnl =========================================================================== +-- +2.20.1 + diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-Remove-non-reproducible-SRCDIR.patch b/meta/recipes-gnome/librsvg/librsvg/0001-Remove-non-reproducible-SRCDIR.patch deleted file mode 100644 index 75fc7f9d0b..0000000000 --- a/meta/recipes-gnome/librsvg/librsvg/0001-Remove-non-reproducible-SRCDIR.patch +++ /dev/null @@ -1,30 +0,0 @@ -From bea5156cd7e7122715b26c769c35928141a1da2c Mon Sep 17 00:00:00 2001 -From: Joshua Watt <JPEWhacker@gmail.com> -Date: Mon, 18 Nov 2019 14:46:34 -0600 -Subject: [PATCH] Remove non-reproducible SRCDIR - -Removes SRCDIR as the prefix for finding the test font. This wouldn't -work anyway, since that path is not present on the target. - -This patch is specific to OE, since it appears that this entire method -of testing was removed when upstream was re-written in rust - -Upstream-Status: Inappropriate [OE-specific, no longer present upstream] -Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> ---- - rsvg-cairo-draw.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/rsvg-cairo-draw.c b/rsvg-cairo-draw.c -index caa9104..cfb7ed2 100644 ---- a/rsvg-cairo-draw.c -+++ b/rsvg-cairo-draw.c -@@ -398,7 +398,7 @@ set_font_options_for_testing (PangoContext *context) - static void - create_font_config_for_testing (RsvgCairoRender *render) - { -- const char *font_path = SRCDIR "/tests/resources/LiberationSans-Regular.ttf"; -+ const char *font_path = "/tests/resources/LiberationSans-Regular.ttf"; - - if (render->font_config_for_testing != NULL) - return; diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch b/meta/recipes-gnome/librsvg/librsvg/0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch new file mode 100644 index 0000000000..992ff8dee7 --- /dev/null +++ b/meta/recipes-gnome/librsvg/librsvg/0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch @@ -0,0 +1,51 @@ +From c0b0ef51b3c997a1c20ef9381ba2201ed477f609 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex@linutronix.de> +Date: Tue, 21 Sep 2021 16:54:23 +0200 +Subject: [PATCH] system-deps/src/lib.rs: do not probe into harcoded list of + targets + +Oe-core defines custom targets, and this probe fails. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin <alex@linutronix.de> + +--- + vendor/system-deps/.cargo-checksum.json | 2 +- + vendor/system-deps/src/lib.rs | 16 +--------------- + 2 files changed, 2 insertions(+), 16 deletions(-) + +diff --git a/vendor/system-deps/.cargo-checksum.json b/vendor/system-deps/.cargo-checksum.json +index 862df8b..931748e 100644 +--- a/vendor/system-deps/.cargo-checksum.json ++++ b/vendor/system-deps/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.toml":"927df7476ebf5f5983169cfd973f4c95b84da17caeb20d33cccf50e326af5316","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"3fe7396637bf9233908f41c6001cfcb00a379225e06e36e508c8b3d7264a8aae","src/lib.rs":"c38fd96ca3233ebee3bb7e37ca8f8a7a2685cdd7fcccf0210eaa879aa91dc684","src/metadata.rs":"657bc1b77e949e4800f9dd808790ffa535820e1658d412121a1da548e0cdd02c","src/test.rs":"9d5f8c1fb7a821352d6ba75cb005ead3e36b4f359e61feb605ab8a36d4fd31f8","src/tests/lib/libteststatic.a":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","src/tests/testanotherlib.pc":"bb4fd942324e6d49ce3becd827aa5c948d1924ca6681904a3695c19b1424eb3c","src/tests/testdata.pc":"43f481e989c03674fed5ef78c6420b3f8d36a2ce001928d86c418d1844acd5e7","src/tests/testlib-2.0.pc":"152eb0c70c14c3d948118408f3d1fd3bb7531b02aa792db85bd957f7db90b45b","src/tests/testlib-3.0.pc":"cd39c2ef88f6828c9291150cc4b624e769abef484674eaebaa4f67979501315f","src/tests/testlib.pc":"75c0d8a5345f65794f583c83e1cf0dbf3385af6e6abea1d61bb86eef707a52db","src/tests/teststaticlib.pc":"77df23f6c7c1d47aff18453b47c87e53ec8a96017546e0a55c8c4d1e13b70134","src/tests/toml-missing-file/no-cargo-toml-here":"6ab4da4b56f15315df6538610cfcd2ba3d0f9a7a8414678ff00ab5a78f7d41fa"},"package":"a1a45a1c4c9015217e12347f2a411b57ce2c4fc543913b14b6fe40483328e709"} +\ No newline at end of file ++{"files":{"Cargo.toml":"927df7476ebf5f5983169cfd973f4c95b84da17caeb20d33cccf50e326af5316","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"3fe7396637bf9233908f41c6001cfcb00a379225e06e36e508c8b3d7264a8aae","src/lib.rs":"534efc2f977d8c67d5be3a4c3e81093a6c00ab2de1102404166b1573ad96dbd2","src/metadata.rs":"657bc1b77e949e4800f9dd808790ffa535820e1658d412121a1da548e0cdd02c","src/test.rs":"9d5f8c1fb7a821352d6ba75cb005ead3e36b4f359e61feb605ab8a36d4fd31f8","src/tests/lib/libteststatic.a":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","src/tests/testanotherlib.pc":"bb4fd942324e6d49ce3becd827aa5c948d1924ca6681904a3695c19b1424eb3c","src/tests/testdata.pc":"43f481e989c03674fed5ef78c6420b3f8d36a2ce001928d86c418d1844acd5e7","src/tests/testlib-2.0.pc":"152eb0c70c14c3d948118408f3d1fd3bb7531b02aa792db85bd957f7db90b45b","src/tests/testlib-3.0.pc":"cd39c2ef88f6828c9291150cc4b624e769abef484674eaebaa4f67979501315f","src/tests/testlib.pc":"75c0d8a5345f65794f583c83e1cf0dbf3385af6e6abea1d61bb86eef707a52db","src/tests/teststaticlib.pc":"77df23f6c7c1d47aff18453b47c87e53ec8a96017546e0a55c8c4d1e13b70134","src/tests/toml-missing-file/no-cargo-toml-here":"6ab4da4b56f15315df6538610cfcd2ba3d0f9a7a8414678ff00ab5a78f7d41fa"},"package":"a1a45a1c4c9015217e12347f2a411b57ce2c4fc543913b14b6fe40483328e709"} +diff --git a/vendor/system-deps/src/lib.rs b/vendor/system-deps/src/lib.rs +index 45ab1ce..f87d1ec 100644 +--- a/vendor/system-deps/src/lib.rs ++++ b/vendor/system-deps/src/lib.rs +@@ -800,21 +800,7 @@ impl Config { + } + + fn check_cfg(&self, cfg: &cfg_expr::Expression) -> Result<bool, Error> { +- use cfg_expr::{targets::get_builtin_target_by_triple, Predicate}; +- +- let target = self +- .env +- .get("TARGET") +- .expect("no TARGET env variable defined"); +- let target = get_builtin_target_by_triple(&target) +- .unwrap_or_else(|| panic!("Invalid TARGET: {}", target)); +- +- let res = cfg.eval(|pred| match pred { +- Predicate::Target(tp) => Some(tp.matches(target)), +- _ => None, +- }); +- +- res.ok_or_else(|| Error::UnsupportedCfg(cfg.original().to_string())) ++ Ok(true) + } + } + diff --git a/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch b/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch deleted file mode 100644 index 6c23071cd3..0000000000 --- a/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 4e0ce3f22d45033a108cbacca3e5ec6728bd44f3 Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen <jussi.kukkonen@intel.com> -Date: Tue, 11 Aug 2015 16:25:38 +0300 -Subject: [PATCH] configure: add option to enable/disable use of GTK+ - -Distro packagers like predictability and automatically detected optional -dependencies are not predicable. Add a --with-gtk3 option (default to "auto") -for forcibly controlling whether GTK+ will be used or not. - -Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=712693] - -Signed-off-by: Ross Burton <ross.burton@intel.com> -Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> ---- - configure.ac | 17 +++++++++++------ - 1 file changed, 11 insertions(+), 6 deletions(-) - -diff --git a/configure.ac b/configure.ac -index e61a952..c3aae84 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -130,17 +130,22 @@ AC_CHECK_FUNCS(strtok_r) - # GTK - # =========================================================================== - --PKG_CHECK_MODULES([GTK3],[gtk+-3.0 >= $GTK3_REQUIRED],[have_gtk_3=yes],[have_gtk_3=no]) -- - GTK3_BINARY_VERSION= - --if test "$have_gtk_3" = "yes"; then -- GTK3_BINARY_VERSION="`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`" -+AC_MSG_CHECKING([whether to use GTK+ 3]) -+AC_ARG_WITH([gtk3], -+ [AS_HELP_STRING([--without-gtk3],[Don't build GTK+3 tools (default=auto)])], -+ [],[PKG_CHECK_EXISTS([gtk+-3.0 >= $GTK3_REQUIRED],[with_gtk3=yes],[with_gtk3=no])]) -+AC_MSG_RESULT([$with_gtk3]) -+ -+if test "$with_gtk3" = "yes"; then -+ PKG_CHECK_MODULES(GTK3, [gtk+-3.0 >= $GTK3_REQUIRED]) -+ GTK3_BINARY_VERSION="`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`" - fi - - AC_SUBST([GTK3_BINARY_VERSION]) - --AM_CONDITIONAL([HAVE_GTK_3],[test "$have_gtk_3" = "yes"]) -+AM_CONDITIONAL([HAVE_GTK_3],[test "$with_gtk3" = "yes"]) - - dnl =========================================================================== - dnl GDK-Pixbuf SVG loader -@@ -298,6 +303,6 @@ librsvg-$VERSION - Build introspectable bindings: ${found_introspection} - Build Vala bindings: ${enable_vala} - Build GdkPixbuf loader: ${enable_pixbuf_loader} -- GTK+ $GTK3_REQUIRED or later: ${have_gtk_3} -+ GTK+ $GTK3_REQUIRED or later: ${with_gtk_3} - Build miscellaneous tools: ${build_misc_tools} - " --- -2.1.4 - diff --git a/meta/recipes-gnome/librsvg/librsvg_2.40.20.bb b/meta/recipes-gnome/librsvg/librsvg_2.40.20.bb deleted file mode 100644 index 337299ff69..0000000000 --- a/meta/recipes-gnome/librsvg/librsvg_2.40.20.bb +++ /dev/null @@ -1,50 +0,0 @@ -SUMMARY = "Library for rendering SVG files" -DESCRIPTION = "A small library to render Scalable Vector Graphics (SVG), \ -associated with the GNOME Project. It renders SVG files to Cairo surfaces. \ -Cairo is the 2D, antialiased drawing library that GNOME uses to draw things to \ -the screen or to generate output for printing." -HOMEPAGE = "https://gitlab.gnome.org/GNOME/librsvg" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/librsvg/issues" - -RECIPE_NO_UPDATE_REASON = "Versions from 2.41.0 requires Rust compiler to build it" - -LICENSE = "LGPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://rsvg.h;beginline=3;endline=24;md5=20b4113c4909bbf0d67e006778302bc6" - -SECTION = "x11/utils" -DEPENDS = "cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango" -BBCLASSEXTEND = "native nativesdk" - -inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection - -SRC_URI += "file://gtk-option.patch \ - file://0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch \ - file://0001-Remove-non-reproducible-SRCDIR.patch \ -" - -SRC_URI[archive.md5sum] = "4949d313b0c5d9161a5c259104af5568" -SRC_URI[archive.sha256sum] = "cff4dd3c3b78bfe99d8fcfad3b8ba1eee3289a0823c0e118d78106be6b84c92b" - -CACHED_CONFIGUREVARS = "ac_cv_path_GDK_PIXBUF_QUERYLOADERS=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" - -PACKAGECONFIG ??= "gdkpixbuf" -# The gdk-pixbuf loader -PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader,gdk-pixbuf-native" -# GTK+ test application (rsvg-view) -PACKAGECONFIG[gtk] = "--with-gtk3,--without-gtk3,gtk+3" - -do_install_append() { - # Loadable modules don't need .a or .la on Linux - rm -f ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.a ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.la -} - -PACKAGES =+ "librsvg-gtk rsvg" -FILES_rsvg = "${bindir}/rsvg* \ - ${datadir}/pixmaps/svg-viewer.svg \ - ${datadir}/themes" -FILES_librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so \ - ${datadir}/thumbnailers/librsvg.thumbnailer" -RRECOMMENDS_librsvg-gtk = "gdk-pixbuf-bin" - -PIXBUF_PACKAGES = "librsvg-gtk" diff --git a/meta/recipes-gnome/librsvg/librsvg_2.52.7.bb b/meta/recipes-gnome/librsvg/librsvg_2.52.7.bb new file mode 100644 index 0000000000..eb420e732c --- /dev/null +++ b/meta/recipes-gnome/librsvg/librsvg_2.52.7.bb @@ -0,0 +1,75 @@ +SUMMARY = "Library for rendering SVG files" +DESCRIPTION = "A small library to render Scalable Vector Graphics (SVG), \ +associated with the GNOME Project. It renders SVG files to Cairo surfaces. \ +Cairo is the 2D, antialiased drawing library that GNOME uses to draw things to \ +the screen or to generate output for printing." +HOMEPAGE = "https://gitlab.gnome.org/GNOME/librsvg" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/librsvg/issues" + +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \ + " + +SECTION = "x11/utils" +DEPENDS = "cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango" +BBCLASSEXTEND = "native" + +inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection rust vala + +SRC_URI += "file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch \ + file://0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch \ + " + +SRC_URI[archive.sha256sum] = "057c1eeeaf85c84e254bdb707459207f5840da5b4d52b4711c03140ed09e6887" + +# librsvg is still autotools-based, but is calling cargo from its automake-driven makefiles +# so we cannot use cargo class directly, but still need bits and pieces from it +# for cargo to be happy +BASEDEPENDS:append = " cargo-native" + +export RUST_BACKTRACE = "full" +export RUSTFLAGS +export RUST_TARGET_PATH + +export RUST_TARGET = "${HOST_SYS}" + +RUSTFLAGS:append:mips = " --cfg crossbeam_no_atomic_64" +RUSTFLAGS:append:mipsel = " --cfg crossbeam_no_atomic_64" +RUSTFLAGS:append:powerpc = " --cfg crossbeam_no_atomic_64" +RUSTFLAGS:append:riscv32 = " --cfg crossbeam_no_atomic_64" + +# rust-cross writes the target linker binary into target json definition without any flags. +# This breaks here because the linker isn't going to work without at least knowing where +# the sysroot is. So copy the json to workdir, and patch in the path to wrapper from rust class +# which supplies the needed flags. +do_compile:prepend() { + cp ${STAGING_LIBDIR_NATIVE}/rustlib/${HOST_SYS}.json ${WORKDIR} + cp ${STAGING_LIBDIR_NATIVE}/rustlib/${BUILD_SYS}.json ${WORKDIR} + sed -ie 's,"linker": ".*","linker": "${RUST_TARGET_CC}",g' ${WORKDIR}/${HOST_SYS}.json + RUST_TARGET_PATH="${WORKDIR}" + export RUST_TARGET_PATH +} + +# Issue only on windows +CVE_CHECK_IGNORE += "CVE-2018-1000041" + +CACHED_CONFIGUREVARS = "ac_cv_path_GDK_PIXBUF_QUERYLOADERS=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" + +PACKAGECONFIG ??= "gdkpixbuf" +# The gdk-pixbuf loader +PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader,gdk-pixbuf-native" + +do_install:append() { + # Loadable modules don't need .a or .la on Linux + rm -f ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.a ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.la +} + +PACKAGES =+ "librsvg-gtk rsvg" +FILES:rsvg = "${bindir}/rsvg* \ + ${datadir}/pixmaps/svg-viewer.svg \ + ${datadir}/themes" +FILES:librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so \ + ${datadir}/thumbnailers/librsvg.thumbnailer" +RRECOMMENDS:librsvg-gtk = "gdk-pixbuf-bin" + +PIXBUF_PACKAGES = "librsvg-gtk" diff --git a/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch b/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch deleted file mode 100644 index 51ee66f42b..0000000000 --- a/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch +++ /dev/null @@ -1,137 +0,0 @@ -meson: add option introspection - -Add an option 'introspection' for meson which could control whether -build GIR files or not. - -Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libsecret/-/merge_requests/53] - -Signed-off-by: Kai Kang <kai.kang@windriver.com> ---- - libsecret/meson.build | 86 ++++++++++++++++++++++--------------------- - meson.build | 1 + - meson_options.txt | 1 + - 3 files changed, 46 insertions(+), 42 deletions(-) - -diff --git a/libsecret/meson.build b/libsecret/meson.build -index 759b5ef..2ee8850 100644 ---- a/libsecret/meson.build -+++ b/libsecret/meson.build -@@ -104,50 +104,52 @@ libsecret_dep = declare_dependency( - ) - - # GObject Introspection --libsecret_gir_sources = [ -- 'secret-attributes.c', -- 'secret-attributes.h', -- 'secret-backend.c', -- 'secret-backend.h', -- 'secret-collection.c', -- 'secret-collection.h', -- 'secret-item.c', -- 'secret-item.h', -- 'secret-methods.c', -- 'secret-password.c', -- 'secret-password.h', -- 'secret-paths.c', -- 'secret-paths.h', -- 'secret-prompt.c', -- 'secret-prompt.h', -- 'secret-retrievable.c', -- 'secret-retrievable.h', -- 'secret-schema.c', -- 'secret-schema.h', -- 'secret-schemas.c', -- 'secret-schemas.h', -- 'secret-service.c', -- 'secret-service.h', -- 'secret-types.h', -- 'secret-value.c', -- 'secret-value.h', --] --libsecret_gir_sources += version_h --libsecret_gir_sources += _enums_generated -- --libsecret_gir = gnome.generate_gir(libsecret, -- sources: libsecret_gir_sources, -- namespace: 'Secret', -- nsversion: api_version_major, -- export_packages: 'libsecret-@0@'.format(api_version_major), -- includes: [ 'GObject-2.0', 'Gio-2.0' ], -- header: 'libsecret/secret.h', -- extra_args: [ '-D SECRET_COMPILATION'], -- install: true, --) -+if with_gir -+ libsecret_gir_sources = [ -+ 'secret-attributes.c', -+ 'secret-attributes.h', -+ 'secret-backend.c', -+ 'secret-backend.h', -+ 'secret-collection.c', -+ 'secret-collection.h', -+ 'secret-item.c', -+ 'secret-item.h', -+ 'secret-methods.c', -+ 'secret-password.c', -+ 'secret-password.h', -+ 'secret-paths.c', -+ 'secret-paths.h', -+ 'secret-prompt.c', -+ 'secret-prompt.h', -+ 'secret-retrievable.c', -+ 'secret-retrievable.h', -+ 'secret-schema.c', -+ 'secret-schema.h', -+ 'secret-schemas.c', -+ 'secret-schemas.h', -+ 'secret-service.c', -+ 'secret-service.h', -+ 'secret-types.h', -+ 'secret-value.c', -+ 'secret-value.h', -+ ] -+ libsecret_gir_sources += version_h -+ libsecret_gir_sources += _enums_generated -+ -+ libsecret_gir = gnome.generate_gir(libsecret, -+ sources: libsecret_gir_sources, -+ namespace: 'Secret', -+ nsversion: api_version_major, -+ export_packages: 'libsecret-@0@'.format(api_version_major), -+ includes: [ 'GObject-2.0', 'Gio-2.0' ], -+ header: 'libsecret/secret.h', -+ extra_args: [ '-D SECRET_COMPILATION'], -+ install: true, -+ ) -+endif - - # Vapi --if with_vapi -+if with_vapi and with_gir - libsecret_vapi = gnome.generate_vapi('libsecret-@0@'.format(api_version_major), - sources: libsecret_gir[0], - metadata_dirs: meson.source_root() / 'libsecret', -diff --git a/meson.build b/meson.build -index a26d046..d22e008 100644 ---- a/meson.build -+++ b/meson.build -@@ -22,6 +22,7 @@ with_gcrypt = get_option('gcrypt') - enable_debug = get_option('debugging') - with_vapi = get_option('vapi') - with_gtkdoc = get_option('gtk_doc') -+with_gir = get_option('introspection') - - # Some variables - config_h_dir = include_directories('.') -diff --git a/meson_options.txt b/meson_options.txt -index c1fda5d..445aeb0 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -3,3 +3,4 @@ option('gcrypt', type: 'boolean', value: true, description: 'With gcrypt and tra - option('debugging', type: 'boolean', value: false, description: 'Turn debugging on/off') - option('vapi', type: 'boolean', value: true, description: 'Create VAPI file.') - option('gtk_doc', type: 'boolean', value: true, description: 'Build reference documentation using gtk-doc') -+option('introspection', type: 'boolean', value: true, description: 'Create GIR file.') --- -2.17.1 - diff --git a/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb b/meta/recipes-gnome/libsecret/libsecret_0.20.5.bb index 533015a1e4..9b09c3bee4 100644 --- a/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb +++ b/meta/recipes-gnome/libsecret/libsecret_0.20.5.bb @@ -3,26 +3,24 @@ DESCRIPTION = "A GObject-based library for accessing the Secret Service API of \ the freedesktop.org project, a cross-desktop effort to access passwords, \ tokens and other types of secrets. libsecret provides a convenient wrapper \ for these methods so consumers do not have to call the low-level DBus methods." -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" +HOMEPAGE = "https://github.com/GNOME/libsecret" BUGTRACKER = "https://gitlab.gnome.org/GNOME/libsecret/issues" LIC_FILES_CHKSUM = "file://COPYING;md5=23c2a5e0106b99d75238986559bb5fc6" GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase gtk-doc vala gobject-introspection manpages +inherit gnomebase gi-docgen vala gobject-introspection manpages DEPENDS += "glib-2.0 libgcrypt gettext-native" -SRC_URI += "file://0001-meson-add-option-introspection.patch" - -SRC_URI[archive.md5sum] = "47c3fdfeb111a87b509ad271e4a6f496" -SRC_URI[archive.sha256sum] = "4fcb3c56f8ac4ab9c75b66901fb0104ec7f22aa9a012315a14c0d6dffa5290e4" +SRC_URI[archive.sha256sum] = "3fb3ce340fcd7db54d87c893e69bfc2b1f6e4d4b279065ffe66dac9f0fd12b4d" GTKDOC_MESON_OPTION = 'gtk_doc' PACKAGECONFIG[manpages] = "-Dmanpage=true,-Dmanpage=false,libxslt-native xmlto-native" # http://errors.yoctoproject.org/Errors/Details/20228/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" +ARM_INSTRUCTION_SET:armv4 = "arm" +ARM_INSTRUCTION_SET:armv5 = "arm" +ARM_INSTRUCTION_SET:armv6 = "arm" |