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'))
|