diff options
Diffstat (limited to 'meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0002-Work-around-thumbnailer-cross-compile-failure.patch')
-rw-r--r-- | meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0002-Work-around-thumbnailer-cross-compile-failure.patch | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0002-Work-around-thumbnailer-cross-compile-failure.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0002-Work-around-thumbnailer-cross-compile-failure.patch new file mode 100644 index 0000000000..b0cd838a8f --- /dev/null +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0002-Work-around-thumbnailer-cross-compile-failure.patch @@ -0,0 +1,131 @@ +From a184e6bfdd7761ad9807f3de9e873d49aff79e6d Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Thu, 14 Feb 2019 17:56:34 +0100 +Subject: [PATCH] (target only) Work-around thumbnailer cross-compile failure + +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: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + build-aux/gen-thumbnailer.py | 2 -- + tests/meson.build | 49 +----------------------------------- + thumbnailer/meson.build | 5 +--- + 3 files changed, 2 insertions(+), 54 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 77a427a..467f5b2 100644 +--- a/tests/meson.build ++++ b/tests/meson.build +@@ -1,38 +1,6 @@ + # 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 +-resources_c = custom_target('resources.c', +- input: 'resources.gresource.xml', +- output: 'resources.c', +- command: [ +- gen_resources, +- '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()), +- '--loaders=@0@'.format(loaders_cache.full_path()), +- '--sourcedir=@0@'.format(meson.current_source_dir()), +- '--source', +- '@INPUT@', +- '@OUTPUT@', +- ], +- depends: [ +- gdk_pixbuf_pixdata, +- loaders_cache, +- ]) +-resources_h = custom_target('resources.h', +- input: 'resources.gresource.xml', +- output: 'resources.h', +- command: [ +- gen_resources, +- '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()), +- '--loaders=@0@'.format(loaders_cache.full_path()), +- '--sourcedir=@0@'.format(meson.current_source_dir()), +- '--header', +- '@INPUT@', +- '@OUTPUT@', +- ], +- depends: [ +- gdk_pixbuf_pixdata, +- loaders_cache, +- ]) + + installed_tests = [ + [ 'animation' ], +@@ -94,7 +62,7 @@ foreach t: installed_tests + test_sources = [ test_name + '.c', 'test-common.c' ] + needs_resources = t.get(1, false) + if needs_resources +- test_sources += [ resources_c, resources_h ] ++ test_sources += [ 'resources.c', 'resources.h' ] + endif + + custom_target(test_name + '.test', +@@ -116,21 +84,6 @@ foreach t: installed_tests + ], + c_args: common_cflags) + +- # Two particularly slow tests +- if test_name == 'pixbuf-area-updated' or test_name == 'pixbuf-randomly-modified' +- timeout = 300 +- else +- timeout = 30 +- endif +- +- test(test_name, test_bin, +- 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/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')) |