summaryrefslogtreecommitdiffstats
path: root/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0002-Work-around-thumbnailer-cross-compile-failure.patch
blob: b0cd838a8fdb8f53539707a102c85a495be76cd7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
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'))