diff options
Diffstat (limited to 'poky/meta/recipes-gnome')
36 files changed, 845 insertions, 640 deletions
diff --git a/poky/meta/recipes-gnome/epiphany/epiphany_3.28.3.1.bb b/poky/meta/recipes-gnome/epiphany/epiphany_3.30.3.bb index b46c9d3b4..a64c82f48 100644 --- a/poky/meta/recipes-gnome/epiphany/epiphany_3.28.3.1.bb +++ b/poky/meta/recipes-gnome/epiphany/epiphany_3.30.3.bb @@ -4,7 +4,7 @@ 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" + glib-2.0 glib-2.0-native json-glib libdazzle" GNOMEBASEBUILDCLASS = "meson" inherit gnomebase gsettings distro_features_check upstream-version-is-even gettext @@ -13,8 +13,8 @@ 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.md5sum] = "31a4a443e8e22f085a10f80b7e41d5f3" -SRC_URI[archive.sha256sum] = "690546a701f046c5c2b3a092659589ea6e17cb0f9a81ec3fdb3046b00cede6f7" +SRC_URI[archive.md5sum] = "fd05702b1c9bcb6a0633de54c4a6ccd2" +SRC_URI[archive.sha256sum] = "76cdb8db6af2da8c3371a73e2dfd5ba64867b5f1e65fa9621f35348a42ff0d17" EXTRA_OEMESON += " -Ddistributor_name=${DISTRO}" diff --git a/poky/meta/recipes-gnome/gcr/gcr_3.28.0.bb b/poky/meta/recipes-gnome/gcr/gcr_3.28.1.bb index 0796362e4..2299199c3 100644 --- a/poky/meta/recipes-gnome/gcr/gcr_3.28.0.bb +++ b/poky/meta/recipes-gnome/gcr/gcr_3.28.1.bb @@ -12,8 +12,8 @@ inherit gnomebase gtk-icon-cache gtk-doc distro_features_check upstream-version- # depends on gtk+3, but also x11 through gtk+-x11 REQUIRED_DISTRO_FEATURES = "x11" -SRC_URI[archive.md5sum] = "5321319307dad34dca2fd52e7c9c01ab" -SRC_URI[archive.sha256sum] = "15e175d1da7ec486d59749ba34906241c442898118ce224a7b70bf2e849faf0b" +SRC_URI[archive.md5sum] = "afd88cacfd54c1ac5b3e0eb35e3aa674" +SRC_URI[archive.sha256sum] = "95204aa2111c301778ebfbe60975ce3ed698c958430ffcc2a785ac5e593d168b" FILES_${PN} += " \ ${datadir}/dbus-1 \ diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch new file mode 100644 index 000000000..e638fd3b6 --- /dev/null +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch @@ -0,0 +1,46 @@ +From bf71999b6e64d1f1919b0351b27c1c417e2b8856 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 | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +diff --git a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build +index 1995ffd..d692cb7 100644 +--- a/gdk-pixbuf/meson.build ++++ b/gdk-pixbuf/meson.build +@@ -291,6 +291,7 @@ foreach bin: gdkpixbuf_bin + set_variable(bin_name.underscorify(), bin) + endforeach + ++if not meson.is_cross_build() + # 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', +@@ -302,6 +303,18 @@ loaders_cache = custom_target('loaders.cache', + ], + build_by_default: true) + loaders_dep = declare_dependency(sources: [ loaders_cache ]) ++else ++loaders_cache = custom_target('loaders.cache', ++ output: 'loaders.cache', ++ capture: true, ++ depends: [ dynamic_loaders_dep ], ++ command: [ ++ 'gdk-pixbuf-query-loaders', ++ dynamic_loaders, ++ ], ++ build_by_default: true) ++loaders_dep = declare_dependency(sources: [ loaders_cache ]) ++endif + + pkgconfig = import('pkgconfig') + pkgconfig.generate( diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch deleted file mode 100644 index 2a54d8ed7..000000000 --- a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 460befc992adb32434b0408b453be39a6866ccf8 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Tue, 10 Oct 2017 14:33:18 +0300 -Subject: [PATCH] Fix --without-libtiff not having an effect. - -Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=788770] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 315e0cc..98e780c 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -676,7 +676,7 @@ if test x$gio_can_sniff = x; then - AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data]) - fi - --AM_CONDITIONAL(HAVE_TIFF, test "x$libtiff_found" != x) -+AM_CONDITIONAL(HAVE_TIFF, test "x$libtiff_found" != xno) - AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x) - AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x) - AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x) --- -2.14.1 - diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch index 31ed988f3..110b32a49 100644 --- a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch @@ -1,47 +1,28 @@ -From 6646e8aadc4030d891ac27c25494e5793d59dc85 Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen <jussi.kukkonen@intel.com> -Date: Wed, 22 Feb 2017 11:24:39 +0200 +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. -Use native gdk-pixbuf-print-mime-types when generating the thumbnail -metadata. 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: Jussi Kukkonen <jussi.kukkonen@intel.com> +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> --- - thumbnailer/Makefile.am | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) + thumbnailer/meson.build | 1 + + 1 file changed, 1 insertion(+) -diff --git a/thumbnailer/Makefile.am b/thumbnailer/Makefile.am -index c9fe123..b0c6c70 100644 ---- a/thumbnailer/Makefile.am -+++ b/thumbnailer/Makefile.am -@@ -1,5 +1,4 @@ --bin_PROGRAMS = gdk-pixbuf-thumbnailer --noinst_PROGRAMS = gdk-pixbuf-print-mime-types -+bin_PROGRAMS = gdk-pixbuf-thumbnailer gdk-pixbuf-print-mime-types - - gdk_pixbuf_thumbnailer_SOURCES = gdk-pixbuf-thumbnailer.c gnome-thumbnailer-skeleton.c gnome-thumbnailer-skeleton.h - gdk_pixbuf_thumbnailer_CPPFLAGS = \ -@@ -25,9 +24,9 @@ gdk_pixbuf_print_mime_types_LDADD = \ +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 ]) - thumbnailerdir = $(datadir)/thumbnailers/ - thumbnailer_DATA = gdk-pixbuf-thumbnailer.thumbnailer --gdk-pixbuf-thumbnailer.thumbnailer: gdk-pixbuf-thumbnailer.thumbnailer.in Makefile gdk-pixbuf-print-mime-types$(EXEEXT) $(top_builddir)/gdk-pixbuf/loaders.cache -+gdk-pixbuf-thumbnailer.thumbnailer: gdk-pixbuf-thumbnailer.thumbnailer.in Makefile gdk-pixbuf-print-mime-types$(EXEEXT) - $(AM_V_GEN) $(SED) -e "s|\@bindir\@|$(bindir)|" \ -- -e "s|\@mimetypes\@|`GDK_PIXBUF_MODULE_FILE=$(top_builddir)/gdk-pixbuf/loaders.cache GDK_PIXBUF_PIXDATA=$(top_builddir)/gdk-pixbuf/gdk-pixbuf-pixdata $(builddir)/gdk-pixbuf-print-mime-types`|" \ -+ -e "s|\@mimetypes\@|`gdk-pixbuf-print-mime-types`|" \ - $< > $@ - - EXTRA_DIST = gdk-pixbuf-thumbnailer.thumbnailer.in --- -2.1.4 - + custom_target('thumbnailer', diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-loaders.cache-depend-on-loaders-being-fully-build.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-loaders.cache-depend-on-loaders-being-fully-build.patch new file mode 100644 index 000000000..2a7751511 --- /dev/null +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-loaders.cache-depend-on-loaders-being-fully-build.patch @@ -0,0 +1,51 @@ +From 116bc8f7a6034ce43053876a72a132fcd4e1e472 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Wed, 20 Feb 2019 19:53:07 +0100 +Subject: [PATCH] loaders.cache: depend on loaders being fully build + +Otherwise, races have been observed: +https://autobuilder.yoctoproject.org/typhoon/#/builders/61/builds/310/steps/7/logs/step1b + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + gdk-pixbuf/meson.build | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build +index fc3eb33..4e7ed20 100644 +--- a/gdk-pixbuf/meson.build ++++ b/gdk-pixbuf/meson.build +@@ -171,6 +171,7 @@ gdkpixbuf_dep = declare_dependency(link_with: gdkpixbuf, + # Now check if we are building loaders as installed shared modules + # We do this here because shared modules depend on libgdk-pixbuf + dynamic_loaders = [] ++dynamic_loaders_dep = [] + + foreach l: loaders + name = l[0] +@@ -189,6 +190,7 @@ foreach l: loaders + + # We need the path to build loaders.cache for tests + dynamic_loaders += mod.full_path() ++ dynamic_loaders_dep += mod + endif + endforeach + +@@ -206,6 +208,7 @@ if enable_native_windows_loaders + install: true, + install_dir: gdk_pixbuf_loaderdir) + dynamic_loaders += mod.full_path() ++ dynamic_loaders_dep += mod + endforeach + endif + endif +@@ -236,6 +239,7 @@ if not meson.is_cross_build() + loaders_cache = custom_target('loaders.cache', + output: 'loaders.cache', + capture: true, ++ depends: [ dynamic_loaders_dep ], + command: [ + gdk_pixbuf_query_loaders, + dynamic_loaders, diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0003-target-only-Work-around-thumbnailer-cross-compile-fa.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0003-target-only-Work-around-thumbnailer-cross-compile-fa.patch new file mode 100644 index 000000000..928962d23 --- /dev/null +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0003-target-only-Work-around-thumbnailer-cross-compile-fa.patch @@ -0,0 +1,96 @@ +From 6fc7f341399ec49ab06c94426f50dbdca49a2844 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 4fa3fbc..eca5166 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')) +-- +2.17.1 + diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0004-Do-not-run-tests-when-building.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0004-Do-not-run-tests-when-building.patch new file mode 100644 index 000000000..96c546f27 --- /dev/null +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0004-Do-not-run-tests-when-building.patch @@ -0,0 +1,39 @@ +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/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch deleted file mode 100644 index edbdced43..000000000 --- a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch +++ /dev/null @@ -1,42 +0,0 @@ -Upstream-Status: Pending - -This patch fixes parallel install issue that lib libpixbufloader-png.la -depends on libgdk_pixbuf-2.0.la which will be regenerated during insta- -llation, if libgdk_pixbuf-2.0.la is regenerating and at the same time -libpixbufloader-png.la links it, the error will happen. - -Error message is: -* usr/bin/ld: cannot find -lgdk_pixbuf-2.0 -* collect2: ld returned 1 exit status - -Make an explicit dependency to the libs install targets would fix this -issue. - -Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> ---- - gdk-pixbuf/Makefile.am | 1 + - libdeps.mk | 3 +++ - 2 files changed, 4 insertions(+), 0 deletions(-) - create mode 100644 libdeps.mk - -diff --git a/gdk-pixbuf/Makefile.am b/gdk-pixbuf/Makefile.am -index 95a93a8..db44cae 100644 ---- a/gdk-pixbuf/Makefile.am -+++ b/gdk-pixbuf/Makefile.am -@@ -783,3 +783,4 @@ loaders.cache: - endif - - -include $(top_srcdir)/git.mk -+-include $(top_srcdir)/libdeps.mk -diff --git a/libdeps.mk b/libdeps.mk -new file mode 100644 -index 0000000..d7a10a8 ---- /dev/null -+++ b/libdeps.mk -@@ -0,0 +1,3 @@ -+# Extending dependencies of install-loaderLTLIBRARIES: -+# The $(lib-LTLIBRARIES) is needed by relinking $(loader_LTLIBRARIES) -+install-loaderLTLIBRARIES: install-libLTLIBRARIES --- -1.7.6.1 - diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch index 7d0d54baf..25410b11e 100644 --- a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch @@ -1,7 +1,7 @@ -From b6a7b30522455cab39a0b9ea8463313380146e70 Mon Sep 17 00:00:00 2001 +From f00603d58d844422363b896ea7d07aaf48ddaa66 Mon Sep 17 00:00:00 2001 From: Ross Burton <ross.burton@intel.com> Date: Tue, 1 Apr 2014 17:23:36 +0100 -Subject: [PATCH 3/4] gdk-pixbuf: add an option so that loader errors are fatal +Subject: [PATCH] gdk-pixbuf: add an option so that loader errors are fatal If an environment variable is specified set the return value from main() to non-zero if the loader had errors (missing libraries, generally). @@ -14,10 +14,10 @@ Signed-off-by: Ross Burton <ross.burton@intel.com> 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/gdk-pixbuf/queryloaders.c b/gdk-pixbuf/queryloaders.c -index a81c804..350bec8 100644 +index 312aa78..b813d99 100644 --- a/gdk-pixbuf/queryloaders.c +++ b/gdk-pixbuf/queryloaders.c -@@ -146,7 +146,7 @@ write_loader_info (GString *contents, const char *path, GdkPixbufFormat *info) +@@ -212,7 +212,7 @@ write_loader_info (GString *contents, const char *path, GdkPixbufFormat *info) g_string_append_c (contents, '\n'); } @@ -26,7 +26,7 @@ index a81c804..350bec8 100644 query_module (GString *contents, const char *dir, const char *file) { char *path; -@@ -155,6 +155,7 @@ query_module (GString *contents, const char *dir, const char *file) +@@ -221,6 +221,7 @@ query_module (GString *contents, const char *dir, const char *file) void (*fill_vtable) (GdkPixbufModule *module); gpointer fill_info_ptr; gpointer fill_vtable_ptr; @@ -34,7 +34,7 @@ index a81c804..350bec8 100644 if (g_path_is_absolute (file)) path = g_strdup (file); -@@ -204,10 +205,13 @@ query_module (GString *contents, const char *dir, const char *file) +@@ -270,10 +271,13 @@ query_module (GString *contents, const char *dir, const char *file) g_module_error()); else g_fprintf (stderr, "Cannot load loader %s\n", path); @@ -48,26 +48,26 @@ index a81c804..350bec8 100644 } #ifdef G_OS_WIN32 -@@ -257,6 +261,7 @@ int main (int argc, char **argv) - GString *contents; - gchar *cache_file = NULL; +@@ -314,6 +318,7 @@ int main (int argc, char **argv) gint first_file = 1; + GFile *pixbuf_libdir_file; + gchar *pixbuf_libdir; + gboolean success = TRUE; #ifdef G_OS_WIN32 gchar *libdir; -@@ -370,7 +375,9 @@ int main (int argc, char **argv) +@@ -452,7 +457,9 @@ int main (int argc, char **argv) } modules = g_list_sort (modules, (GCompareFunc)strcmp); for (l = modules; l != NULL; l = l->next) -- query_module (contents, path, l->data); -+ if (!query_module (contents, path, l->data)) +- query_module (contents, moduledir, l->data); ++ if (!query_module (contents, moduledir, l->data)) + success = FALSE; + g_list_free_full (modules, g_free); + g_free (moduledir); #else - g_string_append_printf (contents, "# dynamic loading of modules not supported\n"); -@@ -385,7 +392,8 @@ int main (int argc, char **argv) +@@ -468,7 +475,8 @@ int main (int argc, char **argv) infilename = g_locale_to_utf8 (infilename, -1, NULL, NULL, NULL); #endif @@ -77,9 +77,9 @@ index a81c804..350bec8 100644 } g_free (cwd); } -@@ -401,5 +409,8 @@ int main (int argc, char **argv) - else - g_print ("%s\n", contents->str); +@@ -486,5 +494,8 @@ int main (int argc, char **argv) + + g_free (pixbuf_libdir); - return 0; + if (g_getenv ("GDK_PIXBUF_FATAL_LOADER")) @@ -87,6 +87,3 @@ index a81c804..350bec8 100644 + else + return 0; } --- -2.14.1 - diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch deleted file mode 100644 index ecca62a71..000000000 --- a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch +++ /dev/null @@ -1,33 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - -Index: gdk-pixbuf-2.22.1/configure.ac -=================================================================== ---- gdk-pixbuf-2.22.1.orig/configure.ac 2010-11-26 09:06:34.000000000 +0800 -+++ gdk-pixbuf-2.22.1/configure.ac 2010-11-26 09:07:33.000000000 +0800 -@@ -287,7 +287,7 @@ - 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 -@@ -484,7 +484,7 @@ - dnl Now we check to see if our libtool supports shared lib deps - dnl (in a rather ugly way even) - if $dynworks; then -- pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config" -+ pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./$host_alias-libtool --config" - pixbuf_deplibs_check=`$pixbuf_libtool_config | \ - grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \ - sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'` -@@ -957,7 +957,7 @@ - # 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_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"` - fi diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb deleted file mode 100644 index 99c84c6dd..000000000 --- a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb +++ /dev/null @@ -1,102 +0,0 @@ -SUMMARY = "Image loading library for GTK+" -HOMEPAGE = "http://www.gtk.org/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "LGPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ - file://gdk-pixbuf/gdk-pixbuf.h;endline=26;md5=72b39da7cbdde2e665329fef618e1d6b" - -SECTION = "libs" - -DEPENDS = "glib-2.0 gdk-pixbuf-native shared-mime-info" - -MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" - -SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ - file://hardcoded_libtool.patch \ - file://extending-libinstall-dependencies.patch \ - file://run-ptest \ - file://fatal-loader.patch \ - file://0001-Work-around-thumbnailer-cross-compile-failure.patch \ - file://0001-Fix-without-libtiff-not-having-an-effect.patch \ - " - -SRC_URI[md5sum] = "6e84e5485c17ce7c25df77fe76eb2d6a" -SRC_URI[sha256sum] = "ae62ab87250413156ed72ef756347b10208c00e76b222d82d9ed361ed9dde2f3" - -inherit autotools pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc lib_package - -LIBV = "2.10.0" - -GDK_PIXBUF_LOADERS ?= "png jpeg" - -PACKAGECONFIG ??= "${GDK_PIXBUF_LOADERS}" -PACKAGECONFIG_linuxstdbase = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${GDK_PIXBUF_LOADERS}" -PACKAGECONFIG_class-native = "${GDK_PIXBUF_LOADERS}" - -PACKAGECONFIG[png] = "--with-libpng,--without-libpng,libpng" -PACKAGECONFIG[jpeg] = "--with-libjpeg,--without-libjpeg,jpeg" -PACKAGECONFIG[tiff] = "--with-libtiff,--without-libtiff,tiff" -PACKAGECONFIG[jpeg2000] = "--with-libjasper,--without-libjasper,jasper" - -PACKAGECONFIG[x11] = "--with-x11,--without-x11,virtual/libx11" - -PACKAGES =+ "${PN}-xlib" - -# For GIO image type sniffing -RDEPENDS_${PN} = "shared-mime-info" - -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}-bin += "${datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer" - -FILES_${PN}-dev += " \ - ${bindir}/gdk-pixbuf-csource \ - ${bindir}/gdk-pixbuf-pixdata \ - ${bindir}/gdk-pixbuf-print-mime-types \ - ${includedir}/* \ - ${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders/*.la \ -" - -PACKAGES_DYNAMIC += "^gdk-pixbuf-loader-.*" -PACKAGES_DYNAMIC_class-native = "" - -python populate_packages_prepend () { - postinst_pixbufloader = d.getVar("postinst_pixbufloader") - - loaders_root = d.expand('${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders') - - packages = ' '.join(do_split_packages(d, loaders_root, '^libpixbufloader-(.*)\.so$', 'gdk-pixbuf-loader-%s', 'GDK pixbuf loader for %s')) - d.setVar('PIXBUF_PACKAGES', packages) - - # 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) -} - -do_install_append() { - # Move gdk-pixbuf-query-loaders into libdir so it is always available - # in multilib builds. - mv ${D}/${bindir}/gdk-pixbuf-query-loaders ${D}/${libdir}/gdk-pixbuf-2.0/ -} - -do_install_append_class-native() { - find ${D}${libdir} -name "libpixbufloader-*.la" -exec rm \{\} \; - - create_wrapper ${D}/${bindir}/gdk-pixbuf-csource \ - GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache - - create_wrapper ${D}/${bindir}/gdk-pixbuf-pixdata \ - GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache - - create_wrapper ${D}/${bindir}/gdk-pixbuf-print-mime-types \ - GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache - - create_wrapper ${D}/${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders \ - GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \ - GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders -} -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb new file mode 100644 index 000000000..c5de7a92a --- /dev/null +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb @@ -0,0 +1,136 @@ +SUMMARY = "Image loading library for GTK+" +HOMEPAGE = "http://www.gtk.org/" +BUGTRACKER = "https://bugzilla.gnome.org/" + +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ + file://gdk-pixbuf/gdk-pixbuf.h;endline=26;md5=72b39da7cbdde2e665329fef618e1d6b \ + " + +SECTION = "libs" + +DEPENDS = "glib-2.0 gdk-pixbuf-native shared-mime-info" + +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://0001-loaders.cache-depend-on-loaders-being-fully-build.patch \ + file://0004-Do-not-run-tests-when-building.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] = "77765f24496dc8c90c6e0cbe10fd8f0e" +SRC_URI[sha256sum] = "dd50973c7757bcde15de6bcd3a6d462a445efd552604ae6435a0532fbbadae47" + +inherit meson pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc lib_package + +GTKDOC_ENABLE_FLAG = "-Ddocs=true" +GTKDOC_DISABLE_FLAG = "-Ddocs=false" + +GI_ENABLE_FLAG = "-Dgir=true" +GI_DISABLE_FLAG = "-Dgir=false" + +EXTRA_OEMESON_append_class-nativesdk = " ${GI_DISABLE_FLAG}" + +EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ + '${GI_DISABLE_FLAG}', d)} " + +EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ + '${GTKDOC_DISABLE_FLAG}', d)} " + +EXTRA_OEMESON_append = " ${@bb.utils.contains('PTEST_ENABLED', '1', '-Dinstalled_tests=true', '-Dinstalled_tests=false', d)}" + +LIBV = "2.10.0" + +GDK_PIXBUF_LOADERS ?= "png jpeg" + +PACKAGECONFIG ??= "${GDK_PIXBUF_LOADERS}" +PACKAGECONFIG_linuxstdbase = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${GDK_PIXBUF_LOADERS}" +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[x11] = "-Dx11=true,-Dx11=false,virtual/libx11" + +PACKAGES =+ "${PN}-xlib" + +# For GIO image type sniffing +RDEPENDS_${PN} = "shared-mime-info" + +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}-bin += "${datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer" + +FILES_${PN}-dev += " \ + ${bindir}/gdk-pixbuf-csource \ + ${bindir}/gdk-pixbuf-pixdata \ + ${bindir}/gdk-pixbuf-print-mime-types \ + ${includedir}/* \ + ${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders/*.la \ +" + +PACKAGES_DYNAMIC += "^gdk-pixbuf-loader-.*" +PACKAGES_DYNAMIC_class-native = "" + +python populate_packages_prepend () { + postinst_pixbufloader = d.getVar("postinst_pixbufloader") + + loaders_root = d.expand('${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders') + + packages = ' '.join(do_split_packages(d, loaders_root, r'^libpixbufloader-(.*)\.so$', 'gdk-pixbuf-loader-%s', 'GDK pixbuf loader for %s')) + d.setVar('PIXBUF_PACKAGES', packages) + + # 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) +} + +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/ + +} + +do_install_append_class-native() { + find ${D}${libdir} -name "libpixbufloader-*.la" -exec rm \{\} \; + + create_wrapper ${D}/${bindir}/gdk-pixbuf-csource \ + XDG_DATA_DIRS=${STAGING_DATADIR} \ + GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache + + create_wrapper ${D}/${bindir}/gdk-pixbuf-pixdata \ + XDG_DATA_DIRS=${STAGING_DATADIR} \ + GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache + + create_wrapper ${D}/${bindir}/gdk-pixbuf-print-mime-types \ + XDG_DATA_DIRS=${STAGING_DATADIR} \ + GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache + + create_wrapper ${D}/${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders \ + XDG_DATA_DIRS=${STAGING_DATADIR} \ + GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \ + GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders + + create_wrapper ${D}/${bindir}/gdk-pixbuf-query-loaders \ + XDG_DATA_DIRS=${STAGING_DATADIR} \ + GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \ + GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders +} +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch b/poky/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch index b5992eba7..43abdcd85 100644 --- a/poky/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch +++ b/poky/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch @@ -1,4 +1,4 @@ -From 9661951838773251d0a914e897e8a0d95ce027f6 Mon Sep 17 00:00:00 2001 +From 499222d95a3d06bc425672d50e8c47868667250b 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 fb787dc..5caef0c 100644 +index 38e64bd..6ed480e 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,6 @@ AC_PREREQ(2.53) - AC_INIT([adwaita-icon-theme], [3.28.0], + AC_INIT([adwaita-icon-theme], [3.30.1], [http://bugzilla.gnome.org/enter_bug.cgi?product=adwaita-icon-theme]) -AC_CANONICAL_HOST AC_CONFIG_MACRO_DIR([m4]) diff --git a/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.28.0.bb b/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.30.1.bb index 40dd35ba3..8eadbd2ee 100644 --- a/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.28.0.bb +++ b/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.30.1.bb @@ -8,22 +8,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c84cac88e46fc07647ea07e6c24eeb7c" inherit allarch autotools pkgconfig gettext gtk-icon-cache upstream-version-is-even - MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ file://0001-Don-t-use-AC_CANONICAL_HOST.patch \ file://0001-Run-installation-commands-as-shell-jobs.patch \ " -SRC_URI[md5sum] = "b25b2d82cbebf2cc9cd469457b604f2c" -SRC_URI[sha256sum] = "7aae8c1dffd6772fd1a21a3d365a0ea28b7c3988bdbbeafbf8742cda68242150" +SRC_URI[md5sum] = "db3fd812821d72fdd9a3c7d622a95b35" +SRC_URI[sha256sum] = "6d752a2b1bc668483956d4485c39cad1642d9358e133ff689526e43674a4e1ce" -do_install_append() { - # Build uses gtk-encode-symbolic-svg to create png versions: - # no need to store the svgs anymore. - rm -f ${D}${prefix}/share/icons/Adwaita/scalable/*/*-symbolic.svg \ - ${D}${prefix}/share/icons/Adwaita/scalable/*/*-symbolic-rtl.svg -} +DEPENDS += "librsvg-native" PACKAGES = "${PN}-cursors ${PN}-symbolic-hires ${PN}-symbolic ${PN}-hires ${PN}" @@ -37,8 +31,11 @@ FILES_${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.p ${prefix}/share/icons/Adwaita/48x48/*/*.symbolic.png \ ${prefix}/share/icons/Adwaita/32x32/*/*.symbolic.png" FILES_${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \ - ${prefix}/share/icons/Adwaita/24x24/*/*.symbolic.png" + ${prefix}/share/icons/Adwaita/24x24/*/*.symbolic.png \ + ${prefix}/share/icons/Adwaita/scalable/*/*-symbolic*.svg" FILES_${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \ ${prefix}/share/icons/Adwaita/512x512/" FILES_${PN} = "${prefix}/share/icons/Adwaita/ \ ${prefix}/share/pkgconfig/adwaita-icon-theme.pc" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb b/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb index 120ae3e02..e6742f37d 100644 --- a/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb +++ b/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb @@ -22,12 +22,11 @@ S = "${WORKDIR}/GConf-${PV}" EXTRA_OECONF = "--enable-shared --disable-static \ --disable-orbit --with-openldap=no --disable-gtk" -# Disable PolicyKit by default -PACKAGECONFIG ??= "" -# We really don't want PolicyKit for native +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'polkit', d)}" +# We really don't want Polkit for native PACKAGECONFIG_class-native = "" -PACKAGECONFIG[policykit] = "--enable-defaults-service,--disable-defaults-service,polkit" +PACKAGECONFIG[polkit] = "--enable-defaults-service,--disable-defaults-service,polkit" PACKAGECONFIG[debug] = "--enable-debug=yes, --enable-debug=minimum" do_install_append() { diff --git a/poky/meta/recipes-gnome/gnome/libart-lgpl/libart_lgpl-2.3.21-crosscompile.patch b/poky/meta/recipes-gnome/gnome/libart-lgpl/libart_lgpl-2.3.21-crosscompile.patch deleted file mode 100644 index 0261f58c9..000000000 --- a/poky/meta/recipes-gnome/gnome/libart-lgpl/libart_lgpl-2.3.21-crosscompile.patch +++ /dev/null @@ -1,84 +0,0 @@ -Taken from portage - -Upstream-Status: Pending -Signed-off-by: Khem Raj <raj.khem@gmail.com> - -From e1443c945a4cf67096d8c27721aadd7368382b3f Mon Sep 17 00:00:00 2001 -From: Gilles Dartiguelongue <eva@gentoo.org> -Date: Tue, 6 Apr 2010 15:22:25 +0200 -Subject: [PATCH 2/2] gentoo: use ISO types for fixed type size - ---- - Makefile.am | 11 ++--------- - art_config.h | 5 +++++ - configure.in | 10 ---------- - 3 files changed, 7 insertions(+), 19 deletions(-) - create mode 100644 art_config.h - -diff --git a/Makefile.am b/Makefile.am -index 95952da..6aa2fe3 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -2,13 +2,6 @@ check_PROGRAMS = testart testuta - - bin_SCRIPTS = \ - libart2-config -- --noinst_SCRIPTS = gen_art_config.sh -- --BUILT_SOURCES = art_config.h -- --art_config.h: -- ./gen_art_config.sh > art_config.h - - EXTRA_DIST = \ - libart.def \ -@@ -173,5 +166,5 @@ install-data-local: install-ms-lib install-libtool-import-lib - - uninstall-local: uninstall-ms-lib uninstall-libtool-import-lib - --CLEANFILES = $(BUILT_SOURCES) $(bin_SCRIPTS) --DISTCLEANFILES = $(BUILT_SOURCES) $(bin_SCRIPTS) -+CLEANFILES = $(bin_SCRIPTS) -+DISTCLEANFILES = $(bin_SCRIPTS) -diff --git a/art_config.h b/art_config.h -new file mode 100644 -index 0000000..5985f1f ---- a/art_config.h -+++ b/art_config.h -@@ -0,0 +1,5 @@ -+#include <stdint.h> -+ -+typedef uint8_t art_u8; -+typedef uint16_t art_u16; -+typedef uint32_t art_u32; -diff --git a/configure.in b/configure.in -index e4804f7..ddcac4f 100644 ---- a/configure.in -+++ b/configure.in -@@ -92,15 +92,6 @@ AC_FUNC_ALLOCA - - AC_C_BIGENDIAN - --AC_CHECK_SIZEOF(char) --AC_SUBST(ART_SIZEOF_CHAR, $ac_cv_sizeof_char) --AC_CHECK_SIZEOF(short) --AC_SUBST(ART_SIZEOF_SHORT, $ac_cv_sizeof_short) --AC_CHECK_SIZEOF(int) --AC_SUBST(ART_SIZEOF_INT, $ac_cv_sizeof_int) --AC_CHECK_SIZEOF(long) --AC_SUBST(ART_SIZEOF_LONG, $ac_cv_sizeof_long) -- - AC_CONFIG_FILES([ - libart-features.h - Makefile -@@ -109,6 +100,5 @@ libart-2.0-uninstalled.pc - libart-zip]) - - AC_CONFIG_FILES([libart-config],[chmod +x libart-config]) --AC_CONFIG_FILES([gen_art_config.sh],[chmod +x gen_art_config.sh]) - - AC_OUTPUT --- -1.7.0.4 - diff --git a/poky/meta/recipes-gnome/gnome/libart-lgpl_2.3.21.bb b/poky/meta/recipes-gnome/gnome/libart-lgpl_2.3.21.bb deleted file mode 100644 index 95581b297..000000000 --- a/poky/meta/recipes-gnome/gnome/libart-lgpl_2.3.21.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "Library of functions for 2D graphics" -SECTION = "x11/gnome" -LICENSE = "LGPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7" -PR = "r2" - -# can't use gnome.oeclass due to _ in filename -SRC_URI = "${GNOME_MIRROR}/libart_lgpl/2.3/libart_lgpl-${PV}.tar.bz2 \ - file://libart_lgpl-2.3.21-crosscompile.patch \ - " - -SRC_URI[md5sum] = "08559ff3c67fd95d57b0c5e91a6b4302" -SRC_URI[sha256sum] = "fdc11e74c10fc9ffe4188537e2b370c0abacca7d89021d4d303afdf7fd7476fa" - -inherit autotools pkgconfig - -DEPENDS = "" - -FILES_${PN} = "${libdir}/*.so.*" -FILES_${PN}-dev += "${bindir}/libart2-config" - -S = "${WORKDIR}/libart_lgpl-${PV}" diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch new file mode 100644 index 000000000..80c9e71ad --- /dev/null +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch @@ -0,0 +1,160 @@ +From ea25a5a755bc839d5b504aac207f860ae68109bc Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Thu, 15 Nov 2018 15:10:05 +0100 +Subject: [PATCH] Port cross-compilation support to meson + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + gir/meson.build | 59 ++++++++++++++++++++++++++++++++++------------- + meson.build | 4 +++- + meson_options.txt | 20 ++++++++++++++++ + 3 files changed, 66 insertions(+), 17 deletions(-) + +diff --git a/gir/meson.build b/gir/meson.build +index 1cb514a..f873068 100644 +--- a/gir/meson.build ++++ b/gir/meson.build +@@ -36,15 +36,27 @@ gir_files = [ + typelibdir = join_paths(get_option('libdir'), 'girepository-1.0') + install_data(gir_files, install_dir: girdir) + +-scanner_command = [ +- python, +- girscanner, +- '--output=@OUTPUT@', +- '--no-libtool', +- '--reparse-validate', +- '--add-include-path', join_paths(meson.current_build_dir()), +- '--add-include-path', join_paths(meson.current_source_dir()), +-] ++if get_option('enable-host-gi') ++ scanner_command = [ ++ 'g-ir-scanner', ++ '--output=@OUTPUT@', ++ '--no-libtool', ++ '--reparse-validate', ++ '--add-include-path', join_paths(meson.current_build_dir()), ++ '--add-include-path', join_paths(meson.current_source_dir()), ++ ] ++else ++ scanner_command = [ ++ python, ++ girscanner, ++ '--output=@OUTPUT@', ++ '--no-libtool', ++ '--reparse-validate', ++ '--add-include-path', join_paths(meson.current_build_dir()), ++ '--add-include-path', join_paths(meson.current_source_dir()), ++ ] ++endif ++ + + dep_type = glib_dep.type_name() + if dep_type == 'internal' +@@ -57,6 +69,12 @@ if dep_type == 'internal' + '--extra-library=glib-2.0', '--extra-library=gobject-2.0'] + endif + ++if get_option('enable-gi-cross-wrapper') != '' ++ scanner_command += ['--use-binary-wrapper=' + get_option('enable-gi-cross-wrapper')] ++endif ++if get_option('enable-gi-ldd-wrapper') != '' ++ scanner_command += ['--use-ldd-wrapper=' + get_option('enable-gi-ldd-wrapper')] ++endif + # Take a glob and print to newlines + globber = ''' + from glob import glob +@@ -83,8 +101,8 @@ glib_command = scanner_command + [ + + if dep_type == 'pkgconfig' + glib_command += ['--external-library', '--pkg=glib-2.0'] +- glib_libdir = glib_dep.get_pkgconfig_variable('libdir') +- glib_incdir = join_paths(glib_dep.get_pkgconfig_variable('includedir'), 'glib-2.0') ++ glib_libdir = get_option('pkgconfig-sysroot-path') + glib_dep.get_pkgconfig_variable('libdir') ++ glib_incdir = get_option('pkgconfig-sysroot-path') + join_paths(glib_dep.get_pkgconfig_variable('includedir'), 'glib-2.0') + glib_libincdir = join_paths(glib_libdir, 'glib-2.0', 'include') + glib_files += join_paths(glib_incdir, 'gobject', 'glib-types.h') + glib_files += join_paths(glib_libincdir, 'glibconfig.h') +@@ -338,7 +356,7 @@ endforeach + if giounix_dep.found() + if dep_type == 'pkgconfig' + gio_command += ['--pkg=gio-unix-2.0'] +- giounix_includedir = join_paths(giounix_dep.get_pkgconfig_variable('includedir'), 'gio-unix-2.0') ++ giounix_includedir = get_option('pkgconfig-sysroot-path') + join_paths(giounix_dep.get_pkgconfig_variable('includedir'), 'gio-unix-2.0') + # Get the installed gio-unix header list + ret = run_command(python, '-c', globber.format(join_paths(giounix_includedir, 'gio', '*.h'))) + if ret.returncode() != 0 +@@ -416,15 +434,24 @@ gir_files += custom_target('gir-girepository', + ] + ) + ++if get_option('enable-gi-cross-wrapper') != '' ++ gircompiler_command = [get_option('enable-gi-cross-wrapper'), gircompiler.full_path(), '-o', '@OUTPUT@', '@INPUT@', ++ '--includedir', meson.current_build_dir(), ++ '--includedir', meson.current_source_dir(), ++ ] ++else ++ gircompiler_command = [gircompiler, '-o', '@OUTPUT@', '@INPUT@', ++ '--includedir', meson.current_build_dir(), ++ '--includedir', meson.current_source_dir(), ++ ] ++endif ++ + foreach gir : gir_files + custom_target('generate-typelib-@0@'.format(gir).underscorify(), + input: gir, + output: '@BASENAME@.typelib', + depends: [gobject_gir, ], +- command: [gircompiler, '-o', '@OUTPUT@', '@INPUT@', +- '--includedir', meson.current_build_dir(), +- '--includedir', meson.current_source_dir(), +- ], ++ command: gircompiler_command, + install: true, + install_dir: typelibdir, + ) +diff --git a/meson.build b/meson.build +index 17acd82..e0bb495 100644 +--- a/meson.build ++++ b/meson.build +@@ -81,7 +81,9 @@ libffi_dep = dependency('libffi', + subdir('girepository') + subdir('tools') + subdir('giscanner') +-subdir('gir') ++if get_option('enable-introspection-data') == true ++ subdir('gir') ++endif + subdir('examples') + subdir('docs') + subdir('tests') +diff --git a/meson_options.txt b/meson_options.txt +index ee6958d..b168142 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -25,3 +25,23 @@ option('python', type: 'string', value: 'python3', + option('gir-dir-prefix', type: 'string', + description: 'Intermediate prefix for gir installation under ${prefix}' + ) ++ ++option('enable-host-gi', type: 'boolean', value : false, ++ description: 'Use gobject introspection tools installed in the host system (useful when cross-compiling)' ++) ++ ++option('enable-gi-cross-wrapper', type: 'string', ++ description: 'Use a wrapper to run gicompiler and binaries produced by giscanner (useful when cross-compiling)' ++) ++ ++option('enable-gi-ldd-wrapper', type: 'string', ++ description: 'Use a ldd wrapper instead of system ldd command in giscanner (useful when cross-compiling)' ++) ++ ++option('enable-introspection-data', type: 'boolean', value : true, ++ description: 'Build introspection data (.gir and .typelib files) in addition to library and tools' ++) ++ ++option('pkgconfig-sysroot-path', type: 'string', ++ description: 'Specify a sysroot path to prepend to pkgconfig output (useful when cross-compiling)' ++) diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch index ba85c317f..a91d22afa 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch @@ -1,4 +1,4 @@ -From 4cf37d56fddcc22bcd818f6d470404f56d907f3c Mon Sep 17 00:00:00 2001 +From 7ea8c83d84a05f686128e652a5447fb5f6fb68be 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 @@ -17,7 +17,8 @@ Signed-off-by: Sascha Silbe <x-yo17@se-silbe.de> --- girepository/girepository.c | 15 +++++++++++++-- - 1 file changed, 13 insertions(+), 2 deletions(-) + girepository/meson.build | 2 +- + 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/girepository/girepository.c b/girepository/girepository.c index c1fa3d3..efa557e 100644 @@ -60,3 +61,16 @@ index c1fa3d3..efa557e 100644 typelib_search_path = g_slist_prepend (typelib_search_path, typelib_dir); +diff --git a/girepository/meson.build b/girepository/meson.build +index 6a8c5b5..8892f2a 100644 +--- a/girepository/meson.build ++++ b/girepository/meson.build +@@ -27,7 +27,7 @@ girepo_internals_lib = static_library('girepository-internals', + ], + c_args: gi_hidden_visibility_cflags, + include_directories : configinc, +- dependencies: [girepo_gthash_dep, libffi_dep], ++ dependencies: [girepo_gthash_dep, libffi_dep, cc.find_library('dl')], + ) + + girepo_internals_dep = declare_dependency( diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0010-meson-add-option-gir-dir-prefix.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0010-meson-add-option-gir-dir-prefix.patch new file mode 100644 index 000000000..8eec5f867 --- /dev/null +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0010-meson-add-option-gir-dir-prefix.patch @@ -0,0 +1,66 @@ +From bbc34f00fd30a13eafc607a956de60d822260355 Mon Sep 17 00:00:00 2001 +From: Kai Kang <kai.kang@windriver.com> +Date: Fri, 14 Sep 2018 01:26:38 -0700 +Subject: [PATCH] meson: add option 'gir-dir-prefix' + +Add option 'gir-dir-prefix' for meson to make the installation path of +.gir files could be configured which has been done for autoconf. + +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gobject-introspection/commit/3938b86f5289c2b28a5ec42965b8da4b509445c4] +Signed-off-by: Kai Kang <kai.kang@windriver.com> +--- + gir/meson.build | 1 - + meson.build | 8 +++++++- + meson_options.txt | 4 ++++ + 3 files changed, 11 insertions(+), 2 deletions(-) + +diff --git a/gir/meson.build b/gir/meson.build +index 607bbc4..1cb514a 100644 +--- a/gir/meson.build ++++ b/gir/meson.build +@@ -34,7 +34,6 @@ gir_files = [ + ] + + typelibdir = join_paths(get_option('libdir'), 'girepository-1.0') +-girdir = join_paths(get_option('datadir'), 'gir-1.0') + install_data(gir_files, install_dir: girdir) + + scanner_command = [ +diff --git a/meson.build b/meson.build +index a1432f7..17acd82 100644 +--- a/meson.build ++++ b/meson.build +@@ -18,7 +18,12 @@ python = pymod.find_installation(get_option('python')) + cc = meson.get_compiler('c') + config = configuration_data() + config.set_quoted('GIR_SUFFIX', 'gir-1.0') +-config.set_quoted('GIR_DIR', join_paths(get_option('prefix'), get_option('datadir'), 'gir-1.0')) ++gir_dir_prefix = get_option('gir-dir-prefix') ++if gir_dir_prefix == '' ++ gir_dir_prefix = get_option('datadir') ++endif ++girdir = join_paths(get_option('prefix'), gir_dir_prefix, 'gir-1.0') ++config.set_quoted('GIR_DIR', girdir) + config.set_quoted('GOBJECT_INTROSPECTION_LIBDIR', join_paths(get_option('prefix'), get_option('libdir'))) + + foreach type : ['char', 'short', 'int', 'long'] +@@ -93,6 +98,7 @@ pkgconfig_conf.set('libdir', join_paths('${prefix}', get_option('libdir'))) + pkgconfig_conf.set('datarootdir', join_paths('${prefix}', get_option('datadir'))) + pkgconfig_conf.set('datadir', '${datarootdir}') + pkgconfig_conf.set('includedir', join_paths('${prefix}', get_option('includedir'))) ++pkgconfig_conf.set('GIR_DIR', join_paths('${prefix}', gir_dir_prefix, 'gir-1.0')) + if host_system == 'windows' or host_system == 'cygwin' + pkgconfig_conf.set('EXEEXT', '.exe') + else +diff --git a/meson_options.txt b/meson_options.txt +index 49726be..ee6958d 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -21,3 +21,7 @@ option('cairo-libname', type: 'string', + option('python', type: 'string', value: 'python3', + description: 'Path or name of the Python interpreter to build for' + ) ++ ++option('gir-dir-prefix', type: 'string', ++ description: 'Intermediate prefix for gir installation under ${prefix}' ++) diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.0.bb b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.3.bb index 55ca87dda..4ff9b7bf4 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.0.bb +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.3.bb @@ -19,14 +19,16 @@ SRC_URI = "${GNOME_MIRROR}/${BPN}/${@oe.utils.trim_version("${PV}", 2)}/${BPN}-$ file://0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch \ file://0001-configure.ac-make-GIR_DIR-configurable.patch \ file://0002-g-ir-tools-respect-gir_dir_prefix.patch \ + file://0010-meson-add-option-gir-dir-prefix.patch \ + file://0001-Port-cross-compilation-support-to-meson.patch \ " -SRC_URI[md5sum] = "94fec875276262037bfcd51226db12fe" -SRC_URI[sha256sum] = "27c1590a32749de0a5481ce897772547043e94bccba4bc0a7edb3d8513e401ec" +SRC_URI[md5sum] = "182432c1f33886be8f4da073218b597d" +SRC_URI[sha256sum] = "025b632bbd944dcf11fc50d19a0ca086b83baf92b3e34936d008180d28cdc3c8" SRC_URI_append_class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch" -inherit autotools pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even multilib_script +inherit meson pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even multilib_script MULTILIB_SCRIPTS = "${PN}:${bindir}/g-ir-annotation-tool ${PN}:${bindir}/g-ir-scanner" @@ -44,17 +46,17 @@ export STAGING_DIR_HOST export B PACKAGECONFIG ?= "" -PACKAGECONFIG[doctool] = "--enable-doctool,--disable-doctool,python3-mako," +PACKAGECONFIG[doctool] = "-Ddoctool=true,-Ddoctool=false,python3-mako," # Configure target build to use native tools of itself and to use a qemu wrapper # and optionally to generate introspection data -EXTRA_OECONF_class-target = " \ - --disable-static \ - --enable-host-gi \ - --enable-gi-cross-wrapper=${B}/g-ir-scanner-qemuwrapper \ - --enable-gi-ldd-wrapper=${B}/g-ir-scanner-lddwrapper \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-introspection-data', '--disable-introspection-data', d)} \ - ${@'--with-gir-dir-prefix=${libdir}' if d.getVar('MULTILIBS') else ''} \ +EXTRA_OEMESON_class-target = " \ + -Denable-host-gi=true \ + -Denable-gi-cross-wrapper=${B}/g-ir-scanner-qemuwrapper \ + -Denable-gi-ldd-wrapper=${B}/g-ir-scanner-lddwrapper \ + -Dpkgconfig-sysroot-path=${PKG_CONFIG_SYSROOT_DIR} \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Denable-introspection-data=true', '-Denable-introspection-data=false', d)} \ + ${@'-Dgir-dir-prefix=${libdir}' if d.getVar('MULTILIBS') else ''} \ " # Need to ensure ld.so.conf exists so prelink-native works @@ -74,7 +76,7 @@ do_configure_prepend_class-native() { 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}'])}" + qemu_binary="${@qemu_wrapper_cmdline(d, '$STAGING_DIR_HOST', ['\\$GIR_EXTRA_LIBS_PATH','.libs','$STAGING_DIR_HOST/${libdir}','$STAGING_DIR_HOST/${base_libdir}'])}" cat > ${B}/g-ir-scanner-qemuwrapper << EOF #!/bin/sh # Use a modules directory which doesn't exist so we don't load random things diff --git a/poky/meta/recipes-gnome/gtk+/gtk+.inc b/poky/meta/recipes-gnome/gtk+/gtk+.inc index 14ed8d812..d6d14a79d 100644 --- a/poky/meta/recipes-gnome/gtk+/gtk+.inc +++ b/poky/meta/recipes-gnome/gtk+/gtk+.inc @@ -26,7 +26,7 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'directfb x11', d)}" PACKAGECONFIG[x11] = "--with-x=yes --with-gdktarget=x11,--with-x=no,${X11DEPENDS}" # without --with-gdktarget=directfb it will check for cairo-xlib which isn't available without X11 DISTRO_FEATURE PACKAGECONFIG[directfb] = "--with-gdktarget=directfb,,directfb" -PACKAGECONFIG[manpages] = "--enable-man --with-xml-catalog=${STAGING_ETCDIR_NATIVE}/xml/catalog.xml, --disable-man, libxslt-native xmlto-native" +PACKAGECONFIG[manpages] = "--enable-man --with-xml-catalog=${STAGING_ETCDIR_NATIVE}/xml/catalog, --disable-man, libxslt-native xmlto-native" inherit autotools gtk-doc pkgconfig update-alternatives gtk-immodules-cache gobject-introspection manpages diff --git a/poky/meta/recipes-gnome/gtk+/gtk+3.inc b/poky/meta/recipes-gnome/gtk+/gtk+3.inc index 6331a4323..77b6c3153 100644 --- a/poky/meta/recipes-gnome/gtk+/gtk+3.inc +++ b/poky/meta/recipes-gnome/gtk+/gtk+3.inc @@ -12,6 +12,10 @@ LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+" inherit autotools gettext pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings distro_features_check gobject-introspection +BBCLASSEXTEND = "native nativesdk" + +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" @@ -33,7 +37,6 @@ EXTRA_OECONF += " \ --disable-glibtest \ --disable-xinerama \ --enable-modules \ - --disable-cups \ --disable-colord \ ${@bb.utils.contains("DISTRO_FEATURES", "x11", "", "--disable-gtk-doc", d)} \ " @@ -50,15 +53,32 @@ PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fon 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/mesa wayland-native" +PACKAGECONFIG[cups] = "--enable-cups,--disable-cups,cups" -do_install_append() { - mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0 +prepare_gtk_scripts() { + mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0 # duplicate gtk-query-immodules for post install script update_gtk_immodules_cache mkdir -p ${D}${libexecdir} ln ${D}${bindir}/gtk-query-immodules-3.0 ${D}${libexecdir}/${MLPREFIX}gtk-query-immodules-3.0 } +do_install_append_class-target() { + prepare_gtk_scripts +} + +do_install_append_class-nativesdk() { + prepare_gtk_scripts +} + +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 \ + GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache +} + +PROVIDES += "gtk-icon-utils" PACKAGES =+ "${PN}-demo" LIBV = "3.0.0" @@ -104,6 +124,10 @@ GTKBASE_RRECOMMENDS ?= "liberation-fonts \ shared-mime-info \ adwaita-icon-theme-symbolic \ " + +GTKBASE_RRECOMMENDS_class-native ?= "\ + " + GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1" RRECOMMENDS_${PN} = "${GTKBASE_RRECOMMENDS}" @@ -123,11 +147,11 @@ python populate_packages_prepend () { immodules_root = os.path.join(gtk_libdir, 'immodules') printmodules_root = os.path.join(gtk_libdir, 'printbackends'); - immodules = do_split_packages(d, immodules_root, '^im-(.*)\.so$', 'gtk3-immodule-%s', 'GTK input module for %s') + immodules = do_split_packages(d, immodules_root, r'^im-(.*)\.so$', 'gtk3-immodule-%s', 'GTK input module for %s') if immodules: d.setVar("GTKIMMODULES_PACKAGES", " ".join(immodules)) - do_split_packages(d, printmodules_root, '^libprintbackend-(.*)\.so$', 'gtk3-printbackend-%s', 'GTK printbackend module for %s') + 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') diff --git a/poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch b/poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch index d2f12dc7f..e5a67d098 100644 --- a/poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch +++ b/poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch @@ -1,7 +1,7 @@ -From de36df70d87ba3453ed4f2b92e990021c67238f5 Mon Sep 17 00:00:00 2001 +From 9e243474eea4330b593e0f6dd418b61b79699d8b 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 3/4] Add --disable-opengl configure option +Subject: [PATCH] Add --disable-opengl configure option --disable-opengl will remove the dependency on libepoxy and on the OpenGL APIs. This is useful for those who want to keep using gtk+3 @@ -21,32 +21,32 @@ Upstream-Status: Inappropriate [Evil eye expected from upstream] Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> --- - configure.ac | 13 +++++-- - demos/gtk-demo/glarea.c | 14 ++++++++ - docs/tools/Makefile.am | 9 +++-- - docs/tools/widgets.c | 4 ++- - gdk/gdkdisplay.c | 4 ++- - gdk/gdkgl.c | 10 ++++++ - gdk/gdkglcontext.c | 6 ++++ - gdk/gdkwindow.c | 13 +++++++ - gdk/x11/Makefile.am | 30 +++++++++++++--- - gdk/x11/gdkdisplay-x11.c | 6 +++- - gdk/x11/gdkscreen-x11.c | 5 +++ - gdk/x11/gdkwindow-x11.c | 4 +++ - gdk/x11/gdkx-autocleanups.h | 2 ++ + configure.ac | 13 ++++- + demos/gtk-demo/glarea.c | 14 ++++++ + docs/tools/Makefile.am | 9 +++- + docs/tools/widgets.c | 4 +- + gdk/gdkdisplay.c | 4 +- + gdk/gdkgl.c | 10 ++++ + gdk/gdkglcontext.c | 6 +++ + gdk/gdkwindow.c | 13 +++++ + gdk/x11/Makefile.am | 30 +++++++++-- + gdk/x11/gdkdisplay-x11.c | 6 ++- + gdk/x11/gdkscreen-x11.c | 5 ++ + gdk/x11/gdkwindow-x11.c | 4 ++ + gdk/x11/gdkx-autocleanups.h | 2 + gdk/x11/{gdkx.h => gdkx-with-gl-context.h} | 1 - - gdk/x11/gdkx-without-gl-context.h | 58 ++++++++++++++++++++++++++++++ + gdk/x11/gdkx-without-gl-context.h | 58 ++++++++++++++++++++++ gtk/Makefile.am | 3 +- - gtk/gtkglarea.c | 20 ++++++++++- - gtk/inspector/general.c | 6 ++++ - tests/Makefile.am | 10 ++++-- - testsuite/gtk/objects-finalize.c | 2 ++ + gtk/gtkglarea.c | 20 +++++++- + gtk/inspector/general.c | 6 +++ + tests/Makefile.am | 10 ++-- + testsuite/gtk/objects-finalize.c | 2 + 20 files changed, 202 insertions(+), 18 deletions(-) rename gdk/x11/{gdkx.h => gdkx-with-gl-context.h} (98%) create mode 100644 gdk/x11/gdkx-without-gl-context.h diff --git a/configure.ac b/configure.ac -index 0a48875..6f0a3a6 100644 +index a91b29c..561d3b5 100644 --- a/configure.ac +++ b/configure.ac @@ -351,6 +351,15 @@ AC_ARG_ENABLE(cloudproviders, @@ -65,7 +65,7 @@ index 0a48875..6f0a3a6 100644 AC_ARG_ENABLE(glx, [AS_HELP_STRING([--enable-glx], [When enabled Gdk will try to initialize GLX])]) -@@ -1372,7 +1381,7 @@ CFLAGS="$saved_cflags" +@@ -1381,7 +1390,7 @@ CFLAGS="$saved_cflags" LDFLAGS="$saved_ldflags" GDK_PACKAGES="$PANGO_PACKAGES gdk-pixbuf-2.0 >= gdk_pixbuf_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version" @@ -74,7 +74,7 @@ index 0a48875..6f0a3a6 100644 PKG_CHECK_MODULES(GDK_DEP, $GDK_PACKAGES $GDK_PRIVATE_PACKAGES) GDK_DEP_LIBS="$GDK_EXTRA_LIBS $GDK_DEP_LIBS $MATH_LIB" -@@ -1406,7 +1415,7 @@ fi +@@ -1415,7 +1424,7 @@ fi PKG_CHECK_MODULES(ATK, $ATK_PACKAGES) GTK_PACKAGES="atk >= atk_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version gdk-pixbuf-2.0 >= gdk_pixbuf_required_version gio-2.0 >= glib_required_version" @@ -224,12 +224,12 @@ index 40225e9..c55e1de 100644 GdkRenderingMode diff --git a/gdk/gdkgl.c b/gdk/gdkgl.c -index 8e7b8c2..b579b22 100644 +index 933e204..1767508 100644 --- a/gdk/gdkgl.c +++ b/gdk/gdkgl.c -@@ -22,7 +22,9 @@ - - #include "gdkinternals.h" +@@ -26,7 +26,9 @@ + # include "win32/gdkwin32.h" + #endif +#ifdef HAVE_OPENGL #include <epoxy/gl.h> @@ -237,7 +237,7 @@ index 8e7b8c2..b579b22 100644 #include <math.h> #include <string.h> -@@ -36,6 +38,7 @@ gdk_cairo_surface_mark_as_direct (cairo_surface_t *surface, +@@ -40,6 +42,7 @@ gdk_cairo_surface_mark_as_direct (cairo_surface_t *surface, g_object_ref (window), g_object_unref); } @@ -245,7 +245,7 @@ index 8e7b8c2..b579b22 100644 static const char * get_vertex_type_name (int type) { -@@ -208,6 +211,7 @@ use_texture_rect_program (GdkGLContextPaintData *paint_data) +@@ -212,6 +215,7 @@ use_texture_rect_program (GdkGLContextPaintData *paint_data) glUseProgram (paint_data->current_program->program); } } @@ -253,7 +253,7 @@ index 8e7b8c2..b579b22 100644 void gdk_gl_texture_quads (GdkGLContext *paint_context, -@@ -216,6 +220,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context, +@@ -220,6 +224,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context, GdkTexturedQuad *quads, gboolean flip_colors) { @@ -261,7 +261,7 @@ index 8e7b8c2..b579b22 100644 GdkGLContextPaintData *paint_data = gdk_gl_context_get_paint_data (paint_context); GdkGLContextProgram *program; GdkWindow *window = gdk_gl_context_get_window (paint_context); -@@ -289,6 +294,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context, +@@ -293,6 +298,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context, glDisableVertexAttribArray (program->position_location); glDisableVertexAttribArray (program->uv_location); @@ -269,7 +269,7 @@ index 8e7b8c2..b579b22 100644 } /* x,y,width,height describes a rectangle in the gl render buffer -@@ -337,6 +343,7 @@ gdk_cairo_draw_from_gl (cairo_t *cr, +@@ -341,6 +347,7 @@ gdk_cairo_draw_from_gl (cairo_t *cr, int width, int height) { @@ -277,7 +277,7 @@ index 8e7b8c2..b579b22 100644 GdkGLContext *paint_context; cairo_surface_t *image; cairo_matrix_t matrix; -@@ -707,6 +714,7 @@ out: +@@ -718,6 +725,7 @@ out: if (clip_region) cairo_region_destroy (clip_region); @@ -285,7 +285,7 @@ index 8e7b8c2..b579b22 100644 } /* This is always called with the paint context current */ -@@ -714,6 +722,7 @@ void +@@ -725,6 +733,7 @@ void gdk_gl_texture_from_surface (cairo_surface_t *surface, cairo_region_t *region) { @@ -293,14 +293,14 @@ index 8e7b8c2..b579b22 100644 GdkGLContext *paint_context; cairo_surface_t *image; double device_x_offset, device_y_offset; -@@ -814,4 +823,5 @@ gdk_gl_texture_from_surface (cairo_surface_t *surface, +@@ -825,4 +834,5 @@ gdk_gl_texture_from_surface (cairo_surface_t *surface, glDisable (GL_SCISSOR_TEST); glDeleteTextures (1, &texture_id); +#endif } diff --git a/gdk/gdkglcontext.c b/gdk/gdkglcontext.c -index c79dca0..8a7bec2 100644 +index dfbed63..556f0a3 100644 --- a/gdk/gdkglcontext.c +++ b/gdk/gdkglcontext.c @@ -85,7 +85,9 @@ @@ -337,7 +337,7 @@ index c79dca0..8a7bec2 100644 GdkGLContextPrivate *priv = gdk_gl_context_get_instance_private (context); gboolean has_npot, has_texture_rectangle; -@@ -847,6 +852,7 @@ gdk_gl_context_check_extensions (GdkGLContext *context) +@@ -853,6 +858,7 @@ gdk_gl_context_check_extensions (GdkGLContext *context) priv->use_texture_rectangle ? "yes" : "no")); priv->extensions_checked = TRUE; @@ -346,7 +346,7 @@ index c79dca0..8a7bec2 100644 /** diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c -index c0e0a7d..437ab03 100644 +index 6b231f0..904b86d 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -45,7 +45,9 @@ @@ -478,7 +478,7 @@ index 6289f3a..cbbac79 100644 + -include $(top_srcdir)/git.mk diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c -index e9a263f..2829a31 100644 +index 659b9fa..b15536b 100644 --- a/gdk/x11/gdkdisplay-x11.c +++ b/gdk/x11/gdkdisplay-x11.c @@ -37,7 +37,9 @@ @@ -491,7 +491,7 @@ index e9a263f..2829a31 100644 #include "gdk-private.h" #include <glib.h> -@@ -3169,7 +3171,9 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class) +@@ -3194,7 +3196,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; @@ -503,10 +503,10 @@ index e9a263f..2829a31 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 7bf9979..cd1cc9d 100644 +index 272cecd..2bb34ac 100644 --- a/gdk/x11/gdkscreen-x11.c +++ b/gdk/x11/gdkscreen-x11.c -@@ -1643,3 +1643,8 @@ gdk_x11_screen_get_current_desktop (GdkScreen *screen) +@@ -1675,3 +1675,8 @@ gdk_x11_screen_get_current_desktop (GdkScreen *screen) { return get_netwm_cardinal_property (screen, "_NET_CURRENT_DESKTOP"); } @@ -516,7 +516,7 @@ index 7bf9979..cd1cc9d 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 3d6fd3b..2bd5c87 100644 +index c6205e4..df2334f 100644 --- a/gdk/x11/gdkwindow-x11.c +++ b/gdk/x11/gdkwindow-x11.c @@ -36,7 +36,9 @@ @@ -529,7 +529,7 @@ index 3d6fd3b..2bd5c87 100644 #include "gdkprivate-x11.h" #include "gdk-private.h" -@@ -5801,7 +5803,9 @@ gdk_window_impl_x11_class_init (GdkWindowImplX11Class *klass) +@@ -5804,7 +5806,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; @@ -633,10 +633,10 @@ index 0000000..c9e2617 + +#endif /* __GDK_X_H__ */ diff --git a/gtk/Makefile.am b/gtk/Makefile.am -index 842c2f9..0921bc7 100644 +index 5594429..2259bb3 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am -@@ -1416,14 +1416,13 @@ gtkprivatetypebuiltins.c: $(gtk_private_type_h_sources) gtkprivatetypebuiltins. +@@ -1434,14 +1434,13 @@ gtkprivatetypebuiltins.c: $(gtk_private_type_h_sources) gtkprivatetypebuiltins. && cp xgen-gptbc gtkprivatetypebuiltins.c \ && rm -f xgen-gptbc @@ -650,10 +650,10 @@ index 842c2f9..0921bc7 100644 - $(SED) '{ s/^/*tp++ = /; s/$$/();/; s/^.*\(gdk_x11\|gtk_plug_\|gtk_socket_\).*$$/#ifdef GDK_WINDOWING_X11\n&\n#endif/; }' >> xgen-gtf \ + $(SED) '{ s/^/*tp++ = /; s/$$/();/; s/^.*\(gdk_x11\|gtk_plug_\|gtk_socket_\).*$$/#ifdef GDK_WINDOWING_X11\n&\n#endif/; s/^.*gdk_x11_gl.*$$/#ifdef HAVE_OPENGL\n&\n#endif/; }' >> xgen-gtf \ && cp xgen-gtf $@ && rm -f xgen-gtf - gtktestutils.c: gtktypefuncs.c + $(srcdir)/gtktestutils.c: gtktypefuncs.c diff --git a/gtk/gtkglarea.c b/gtk/gtkglarea.c -index 094378e..f7c7f47 100644 +index ea383c0..bb4eb64 100644 --- a/gtk/gtkglarea.c +++ b/gtk/gtkglarea.c @@ -28,7 +28,9 @@ @@ -796,7 +796,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 e2db6e4..e51cf34 100644 +index 7c5ca99..e4a4546 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -80,8 +80,6 @@ noinst_PROGRAMS = $(TEST_PROGS) \ @@ -808,7 +808,7 @@ index e2db6e4..e51cf34 100644 testgrid \ testgtk \ testheaderbar \ -@@ -170,12 +168,18 @@ noinst_PROGRAMS = $(TEST_PROGS) \ +@@ -172,12 +170,18 @@ noinst_PROGRAMS = $(TEST_PROGS) \ testactionbar \ testwindowsize \ testpopover \ @@ -842,6 +842,3 @@ index 0b3a519..07b096f 100644 #endif /* Not allowed to finalize a GdkPixbufLoader without calling gdk_pixbuf_loader_close() */ all_types[i] != GDK_TYPE_PIXBUF_LOADER && --- -2.14.1 - diff --git a/poky/meta/recipes-gnome/gtk+/gtk+3/link_fribidi.patch b/poky/meta/recipes-gnome/gtk+/gtk+3/link_fribidi.patch new file mode 100644 index 000000000..e4bbd799f --- /dev/null +++ b/poky/meta/recipes-gnome/gtk+/gtk+3/link_fribidi.patch @@ -0,0 +1,19 @@ +Link with libfribidi, this is to avoid under linking where these functions are +used but the library is not linked in, and they are marked undefined by BFD linker +but gold linker refuses to link + +| ./.libs/libgdk-3.so: error: undefined reference to 'fribidi_get_bidi_type' + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Upstream-Status: Pending + +--- a/gdk/Makefile.am ++++ b/gdk/Makefile.am +@@ -55,6 +55,7 @@ LDADD = \ + -version-info $(LT_VERSION_INFO) \ + -export-dynamic \ + -rpath $(libdir) \ ++ -lfribidi \ + $(no_undefined) + + # diff --git a/poky/meta/recipes-gnome/gtk+/gtk+3_3.22.30.bb b/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.5.bb index 697b51854..92c9a3ebf 100644 --- a/poky/meta/recipes-gnome/gtk+/gtk+3_3.22.30.bb +++ b/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.5.bb @@ -6,9 +6,10 @@ SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar 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] = "61e60dc073e0a6893c72043d20579dc0" -SRC_URI[sha256sum] = "a1a4a5c12703d4e1ccda28333b87ff462741dc365131fbc94c218ae81d9a6567" +SRC_URI[md5sum] = "32862355c08f6af3e7848c695cd4081b" +SRC_URI[sha256sum] = "0be5fb0d302bc3de26ab58c32990d895831e2b7c7418d0ffea1206d6a3ddb02f" S = "${WORKDIR}/gtk+-${PV}" diff --git a/poky/meta/recipes-gnome/gtk+/gtk+_2.24.32.bb b/poky/meta/recipes-gnome/gtk+/gtk+_2.24.32.bb index 89fca736b..682d31e49 100644 --- a/poky/meta/recipes-gnome/gtk+/gtk+_2.24.32.bb +++ b/poky/meta/recipes-gnome/gtk+/gtk+_2.24.32.bb @@ -27,8 +27,8 @@ python populate_packages_prepend () { immodules_root = os.path.join(gtk_libdir, 'immodules') printmodules_root = os.path.join(gtk_libdir, 'printbackends'); - d.setVar('GTKIMMODULES_PACKAGES', ' '.join(do_split_packages(d, immodules_root, '^im-(.*)\.so$', 'gtk-immodule-%s', 'GTK input module for %s'))) - do_split_packages(d, printmodules_root, '^libprintbackend-(.*)\.so$', 'gtk-printbackend-%s', 'GTK printbackend module for %s') + d.setVar('GTKIMMODULES_PACKAGES', ' '.join(do_split_packages(d, immodules_root, r'^im-(.*)\.so$', 'gtk-immodule-%s', 'GTK input module for %s'))) + do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk-printbackend-%s', 'GTK printbackend module for %s') if (d.getVar('DEBIAN_NAMES')): d.setVar(d.expand('PKG_${PN}'), '${MLPREFIX}libgtk-2.0') diff --git a/poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.30.bb b/poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.30.bb deleted file mode 100644 index 28e7a312d..000000000 --- a/poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.22.30.bb +++ /dev/null @@ -1,63 +0,0 @@ -SUMMARY = "Native icon utils for GTK+" -DESCRIPTION = "gtk-update-icon-cache and gtk-encode-symbolic-svg built from GTK+ natively, for build time and on-host postinst script execution." -SECTION = "libs" - -DEPENDS = "glib-2.0-native gdk-pixbuf-native librsvg-native" - -LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+" - -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://Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch" -SRC_URI[md5sum] = "61e60dc073e0a6893c72043d20579dc0" -SRC_URI[sha256sum] = "a1a4a5c12703d4e1ccda28333b87ff462741dc365131fbc94c218ae81d9a6567" - -LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \ - file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \ - file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \ - file://tests/testgtk.c;endline=25;md5=cb732daee1d82af7a2bf953cf3cf26f1" - -S = "${WORKDIR}/gtk+-${PV}" - -inherit pkgconfig 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" - -PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native" - -do_configure() { - # Quite ugly but defines enough to compile the tools. - if ! test -f gtk/config.h; then - echo "#define GETTEXT_PACKAGE \"gtk30\"" >> gtk/config.h - echo "#define HAVE_UNISTD_H 1" >> gtk/config.h - echo "#define HAVE_FTW_H 1" >> gtk/config.h - fi - if ! test -f gdk/config.h; then - touch gdk/config.h - fi -} - -do_compile() { - ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \ - ${S}/gtk/updateiconcache.c \ - $(${PKG_CONFIG_FOR_BUILD} --cflags --libs gdk-pixbuf-2.0) \ - -o gtk-update-icon-cache - - ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \ - ${S}/gtk/encodesymbolic.c \ - $(${PKG_CONFIG_FOR_BUILD} --cflags --libs gio-2.0 gdk-pixbuf-2.0) \ - -o gtk-encode-symbolic-svg -} - -do_install() { - install -d ${D}${bindir} - install -m 0755 ${B}/gtk-update-icon-cache ${D}${bindir} - install -m 0755 ${B}/gtk-encode-symbolic-svg ${D}${bindir} - - 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 \ - GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache -} diff --git a/poky/meta/recipes-gnome/gtk+/gtk-icon-utils/Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch b/poky/meta/recipes-gnome/gtk+/gtk-icon-utils/Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch deleted file mode 100644 index 237f80375..000000000 --- a/poky/meta/recipes-gnome/gtk+/gtk-icon-utils/Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 4d09ff324419fe4e671233044e424378da53969b Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen <jussi.kukkonen@intel.com> -Date: Tue, 9 Jun 2015 14:20:30 +0300 -Subject: [PATCH] Remove Gdk-dependency from gtk-encode-symbolic-svg - -Building gtk-encode-symbolic-svg without building Gdk is useful -as only the icon tools are needed on the native build: this makes -native build much faster and requires much less dependencies. - -Upstream-Status: Pending - -Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> ---- - gtk/encodesymbolic.c | 36 ++++++++++-------------------------- - 1 file changed, 10 insertions(+), 26 deletions(-) - -diff --git a/gtk/encodesymbolic.c b/gtk/encodesymbolic.c -index 9f7d015..1f07563 100644 ---- a/gtk/encodesymbolic.c -+++ b/gtk/encodesymbolic.c -@@ -19,7 +19,6 @@ - - #include <glib.h> - #include <gdk-pixbuf/gdk-pixdata.h> --#include <gdk/gdk.h> - #include <glib/gi18n.h> - - #ifdef HAVE_UNISTD_H -@@ -43,30 +42,18 @@ static GdkPixbuf * - load_symbolic_svg (char *file_data, gsize file_len, - int width, - int height, -- const GdkRGBA *fg, -- const GdkRGBA *success_color, -- const GdkRGBA *warning_color, -- const GdkRGBA *error_color, -+ const char *css_fg, -+ const char *css_success, -+ const char *css_warning, -+ const char *css_error, - GError **error) - { - GInputStream *stream; - GdkPixbuf *pixbuf; -- gchar *css_fg; -- gchar *css_success; -- gchar *css_warning; -- gchar *css_error; - gchar *data; - gchar *svg_width, *svg_height; - gchar *escaped_file_data; - -- css_fg = gdk_rgba_to_string (fg); -- -- css_success = css_warning = css_error = NULL; -- -- css_warning = gdk_rgba_to_string (warning_color); -- css_error = gdk_rgba_to_string (error_color); -- css_success = gdk_rgba_to_string (success_color); -- - /* Fetch size from the original icon */ - stream = g_memory_input_stream_new_from_data (file_data, file_len, NULL); - pixbuf = gdk_pixbuf_new_from_stream (stream, NULL, error); -@@ -105,10 +92,6 @@ load_symbolic_svg (char *file_data, gsize file_len, - "</svg>", - NULL); - g_free (escaped_file_data); -- g_free (css_fg); -- g_free (css_warning); -- g_free (css_error); -- g_free (css_success); - g_free (svg_width); - g_free (svg_height); - -@@ -167,7 +150,8 @@ make_symbolic_pixbuf (char *file, - GError **error) - - { -- GdkRGBA r = { 1,0,0,1}, g = {0,1,0,1}; -+ const char r[] = "rgba(255,0,0,1)"; -+ const char g[] = "rgba(0,255,0,1)"; - GdkPixbuf *loaded; - GdkPixbuf *pixbuf; - int plane; -@@ -196,10 +180,10 @@ make_symbolic_pixbuf (char *file, - * the "rest", as all color fractions should add up to 1. - */ - loaded = load_symbolic_svg (file_data, file_len, width, height, -- &g, -- plane == 0 ? &r : &g, -- plane == 1 ? &r : &g, -- plane == 2 ? &r : &g, -+ g, -+ plane == 0 ? r : g, -+ plane == 1 ? r : g, -+ plane == 2 ? r : g, - error); - if (loaded == NULL) - return NULL; --- -2.1.4 - diff --git a/poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb b/poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb index 7064b1942..fb8033448 100644 --- a/poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb +++ b/poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb @@ -12,3 +12,5 @@ SRC_URI[sha256sum] = "317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d5 inherit allarch autotools FILES_${PN} += "${datadir}/icons" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-gnome/json-glib/json-glib/run-ptest b/poky/meta/recipes-gnome/json-glib/json-glib/run-ptest new file mode 100644 index 000000000..0c6398a17 --- /dev/null +++ b/poky/meta/recipes-gnome/json-glib/json-glib/run-ptest @@ -0,0 +1,3 @@ +#! /bin/sh + +gnome-desktop-testing-runner json-glib diff --git a/poky/meta/recipes-gnome/json-glib/json-glib_1.4.2.bb b/poky/meta/recipes-gnome/json-glib/json-glib_1.4.4.bb index 19fe3cc44..95f90569d 100644 --- a/poky/meta/recipes-gnome/json-glib/json-glib_1.4.2.bb +++ b/poky/meta/recipes-gnome/json-glib/json-glib_1.4.4.bb @@ -10,13 +10,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" DEPENDS = "glib-2.0" -SRC_URI[archive.md5sum] = "35107e23a7bbbc70f31c34f7b9adf1c3" -SRC_URI[archive.sha256sum] = "2d7709a44749c7318599a6829322e081915bdc73f5be5045882ed120bb686dc8" - GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase lib_package gobject-introspection gtk-doc gettext +inherit gnomebase lib_package gobject-introspection gtk-doc gettext ptest-gnome manpages + +SRC_URI += "file://run-ptest" +SRC_URI[archive.md5sum] = "4d4bb9837f6d31e32d0ce658ae135f68" +SRC_URI[archive.sha256sum] = "720c5f4379513dc11fd97dc75336eb0c0d3338c53128044d9fabec4374f4bc47" + +PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxslt-native xmlto-native" -# This builds both API docs (via gtk-doc) and manpages +# This builds both API docs (via gtk-doc) GTKDOC_ENABLE_FLAG = "-Ddocs=true" GTKDOC_DISABLE_FLAG = "-Ddocs=false" @@ -29,8 +32,9 @@ EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'T '${GI_DISABLE_FLAG}', d)} " do_install_append() { - # FIXME: these need to be provided via ptest - rm -rf ${D}${datadir}/installed-tests ${D}${libexecdir} + if ! ${@bb.utils.contains('PTEST_ENABLED', '1', 'true', 'false', d)}; then + rm -rf ${D}${datadir}/installed-tests ${D}${libexecdir} + fi } BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-gnome/libdazzle/libdazzle/0001-Add-a-define-so-that-gir-compilation-succeeds.patch b/poky/meta/recipes-gnome/libdazzle/libdazzle/0001-Add-a-define-so-that-gir-compilation-succeeds.patch new file mode 100644 index 000000000..c959d4397 --- /dev/null +++ b/poky/meta/recipes-gnome/libdazzle/libdazzle/0001-Add-a-define-so-that-gir-compilation-succeeds.patch @@ -0,0 +1,26 @@ +From 546d53c3515e8a488a204763437d1fa0917097e5 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Tue, 11 Dec 2018 12:39:30 +0100 +Subject: [PATCH] Add a define so that gir compilation succeeds + +For some reason meson 0.49.0 does not anymore pass global arguments to gir compiler. + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + src/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/meson.build b/src/meson.build +index 6ff8a6a..f0b2887 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -132,7 +132,7 @@ if get_option('with_introspection') + install_dir_gir: girdir, + install_dir_typelib: typelibdir, + export_packages: libdazzle_package, +- extra_args: [ '--c-include=dazzle.h', '--quiet' ], ++ extra_args: [ '--c-include=dazzle.h', '--quiet', '-DDAZZLE_COMPILATION' ], + ) + + if get_option('with_vapi') diff --git a/poky/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb b/poky/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb new file mode 100644 index 000000000..3779b15af --- /dev/null +++ b/poky/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb @@ -0,0 +1,20 @@ +SUMMARY = "The libdazzle library is a companion library to GObject and Gtk+." +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a" + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase upstream-version-is-even vala distro_features_check gobject-introspection + +DEPENDS = "glib-2.0-native glib-2.0 gtk+3" + +SRC_URI += " file://0001-Add-a-define-so-that-gir-compilation-succeeds.patch" +SRC_URI[archive.md5sum] = "24e2e1b914a34f5b8868a9507d1f3c4c" +SRC_URI[archive.sha256sum] = "78770eae9fa15ac5acb9c733d29459330b2540affbf72933119e36dbd90b36d5" + +GI_ENABLE_FLAG = "-Dwith_introspection=true" +GI_DISABLE_FLAG = "-Dwith_introspection=false" + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ + '${GI_DISABLE_FLAG}', d)} " diff --git a/poky/meta/recipes-gnome/libsecret/libsecret_0.18.6.bb b/poky/meta/recipes-gnome/libsecret/libsecret_0.18.7.bb index 518c71feb..ba38d107f 100644 --- a/poky/meta/recipes-gnome/libsecret/libsecret_0.18.6.bb +++ b/poky/meta/recipes-gnome/libsecret/libsecret_0.18.7.bb @@ -4,12 +4,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=23c2a5e0106b99d75238986559bb5fc6" inherit gnomebase gtk-doc vala gobject-introspection manpages -DEPENDS += "glib-2.0 libgcrypt gettext-native intltool-native" +DEPENDS += "glib-2.0 libgcrypt gettext-native" PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, libxslt-native xmlto-native" -SRC_URI[archive.md5sum] = "c6cf132a56bd346fbf49a43abb02e5c2" -SRC_URI[archive.sha256sum] = "5efbc890ba41a323ffe0599cd260fd12bd8eb62a04aa1bd1b2762575d253d66f" +SRC_URI[archive.md5sum] = "376153ece17081eb5410870e0dc5c031" +SRC_URI[archive.sha256sum] = "0d66fe1fc4561b3e046ee281d7c5a703a9baac88a8c4fb42ebc739d31dabd487" # http://errors.yoctoproject.org/Errors/Details/20228/ ARM_INSTRUCTION_SET_armv4 = "arm" |