diff options
Diffstat (limited to 'meta/recipes-gnome/gdk-pixbuf')
9 files changed, 306 insertions, 147 deletions
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Disable-tests-in-native-builds.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Disable-tests-in-native-builds.patch new file mode 100644 index 0000000000..1e45b716b9 --- /dev/null +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Disable-tests-in-native-builds.patch | |||
@@ -0,0 +1,31 @@ | |||
1 | From b287cb313dbfac3257f1ab451b19ba59580f78e1 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Mon, 18 Feb 2019 16:00:12 +0100 | ||
4 | Subject: [PATCH] Disable tests in native builds. | ||
5 | |||
6 | They have found to be problematic at least on Centos 7: | ||
7 | https://autobuilder.yoctoproject.org/typhoon/#/builders/50/builds/296/steps/7/logs/step1b | ||
8 | |||
9 | With autotools this was not a problem because it had a configuration | ||
10 | switch for disabling test, which was used. Meson has no such facility :( | ||
11 | |||
12 | Upstream-Status: Inappropriate [oe-core specific] | ||
13 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
14 | |||
15 | --- | ||
16 | meson.build | 2 +- | ||
17 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
18 | |||
19 | diff --git a/meson.build b/meson.build | ||
20 | index 92c4049..0871c84 100644 | ||
21 | --- a/meson.build | ||
22 | +++ b/meson.build | ||
23 | @@ -397,7 +397,7 @@ endif | ||
24 | # i18n | ||
25 | subdir('po') | ||
26 | |||
27 | -subdir('tests') | ||
28 | +#subdir('tests') | ||
29 | subdir('thumbnailer') | ||
30 | |||
31 | # Documentation | ||
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch new file mode 100644 index 0000000000..90d4830df5 --- /dev/null +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch | |||
@@ -0,0 +1,38 @@ | |||
1 | From 48cbdd56036728ffea431ad63cf5e2ad05cef69c Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Thu, 14 Feb 2019 18:06:25 +0100 | ||
4 | Subject: [PATCH] Fix a couple of decisions around cross-compilation | ||
5 | |||
6 | 1. gobject-introspection can be build when cross compiling | ||
7 | 2. generating loaders.cache requires running a target binary which | ||
8 | we do elsewhere (in postinsts) | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
12 | --- | ||
13 | gdk-pixbuf/meson.build | 4 +++- | ||
14 | 1 file changed, 3 insertions(+), 1 deletion(-) | ||
15 | |||
16 | diff --git a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build | ||
17 | index 77c162b..fc3eb33 100644 | ||
18 | --- a/gdk-pixbuf/meson.build | ||
19 | +++ b/gdk-pixbuf/meson.build | ||
20 | @@ -230,6 +230,7 @@ foreach bin: gdkpixbuf_bin | ||
21 | set_variable(bin_name.underscorify(), bin) | ||
22 | endforeach | ||
23 | |||
24 | +if not meson.is_cross_build() | ||
25 | # The 'loaders.cache' used for testing, so we don't accidentally | ||
26 | # load the installed cache; we always build it by default | ||
27 | loaders_cache = custom_target('loaders.cache', | ||
28 | @@ -241,8 +242,9 @@ loaders_cache = custom_target('loaders.cache', | ||
29 | ], | ||
30 | build_by_default: true) | ||
31 | loaders_dep = declare_dependency(sources: [ loaders_cache ]) | ||
32 | +endif | ||
33 | |||
34 | -build_gir = get_option('with_gir') and not meson.is_cross_build() | ||
35 | +build_gir = get_option('with_gir') | ||
36 | if build_gir | ||
37 | gir_args = [ | ||
38 | '--quiet', | ||
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch deleted file mode 100644 index 2a54d8ed76..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch +++ /dev/null | |||
@@ -1,27 +0,0 @@ | |||
1 | From 460befc992adb32434b0408b453be39a6866ccf8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Tue, 10 Oct 2017 14:33:18 +0300 | ||
4 | Subject: [PATCH] Fix --without-libtiff not having an effect. | ||
5 | |||
6 | Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=788770] | ||
7 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
8 | --- | ||
9 | configure.ac | 2 +- | ||
10 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
11 | |||
12 | diff --git a/configure.ac b/configure.ac | ||
13 | index 315e0cc..98e780c 100644 | ||
14 | --- a/configure.ac | ||
15 | +++ b/configure.ac | ||
16 | @@ -676,7 +676,7 @@ if test x$gio_can_sniff = x; then | ||
17 | AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data]) | ||
18 | fi | ||
19 | |||
20 | -AM_CONDITIONAL(HAVE_TIFF, test "x$libtiff_found" != x) | ||
21 | +AM_CONDITIONAL(HAVE_TIFF, test "x$libtiff_found" != xno) | ||
22 | AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x) | ||
23 | AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x) | ||
24 | AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x) | ||
25 | -- | ||
26 | 2.14.1 | ||
27 | |||
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch index 31ed988f32..110b32a490 100644 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch | |||
@@ -1,47 +1,28 @@ | |||
1 | From 6646e8aadc4030d891ac27c25494e5793d59dc85 Mon Sep 17 00:00:00 2001 | 1 | From 8c7ced988def52654946458a3779e383b27f14f7 Mon Sep 17 00:00:00 2001 |
2 | From: Jussi Kukkonen <jussi.kukkonen@intel.com> | 2 | From: Alexander Kanavin <alex.kanavin@gmail.com> |
3 | Date: Wed, 22 Feb 2017 11:24:39 +0200 | 3 | Date: Thu, 14 Feb 2019 17:56:10 +0100 |
4 | Subject: [PATCH] Work-around thumbnailer cross-compile failure | 4 | Subject: [PATCH] Work-around thumbnailer cross-compile failure |
5 | 5 | ||
6 | Install gdk-pixbuf-print-mime-types that's needed for thumbnail | 6 | Install gdk-pixbuf-print-mime-types that's needed for thumbnail |
7 | metadata generation. | 7 | metadata generation. |
8 | 8 | ||
9 | Use native gdk-pixbuf-print-mime-types when generating the thumbnail | ||
10 | metadata. This works but the mime types will come from native | ||
11 | loader.cache (which will only contain in-tree loaders), not from the | ||
12 | target loader.cache. | ||
13 | |||
14 | The upstream issue is https://bugzilla.gnome.org/show_bug.cgi?id=779057 | 9 | The upstream issue is https://bugzilla.gnome.org/show_bug.cgi?id=779057 |
15 | 10 | ||
16 | Upstream-Status: Inappropriate [workaround] | 11 | Upstream-Status: Inappropriate [workaround] |
17 | Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | 12 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> |
18 | --- | 13 | --- |
19 | thumbnailer/Makefile.am | 7 +++---- | 14 | thumbnailer/meson.build | 1 + |
20 | 1 file changed, 3 insertions(+), 4 deletions(-) | 15 | 1 file changed, 1 insertion(+) |
21 | 16 | ||
22 | diff --git a/thumbnailer/Makefile.am b/thumbnailer/Makefile.am | 17 | diff --git a/thumbnailer/meson.build b/thumbnailer/meson.build |
23 | index c9fe123..b0c6c70 100644 | 18 | index e801144..aaafec8 100644 |
24 | --- a/thumbnailer/Makefile.am | 19 | --- a/thumbnailer/meson.build |
25 | +++ b/thumbnailer/Makefile.am | 20 | +++ b/thumbnailer/meson.build |
26 | @@ -1,5 +1,4 @@ | 21 | @@ -10,6 +10,7 @@ executable('gdk-pixbuf-thumbnailer', |
27 | -bin_PROGRAMS = gdk-pixbuf-thumbnailer | 22 | gdk_pixbuf_print_mime_types = executable('gdk-pixbuf-print-mime-types', |
28 | -noinst_PROGRAMS = gdk-pixbuf-print-mime-types | 23 | 'gdk-pixbuf-print-mime-types.c', |
29 | +bin_PROGRAMS = gdk-pixbuf-thumbnailer gdk-pixbuf-print-mime-types | 24 | c_args: common_cflags, |
30 | 25 | + install: true, | |
31 | gdk_pixbuf_thumbnailer_SOURCES = gdk-pixbuf-thumbnailer.c gnome-thumbnailer-skeleton.c gnome-thumbnailer-skeleton.h | 26 | dependencies: gdk_pixbuf_deps + [ gdkpixbuf_dep ]) |
32 | gdk_pixbuf_thumbnailer_CPPFLAGS = \ | ||
33 | @@ -25,9 +24,9 @@ gdk_pixbuf_print_mime_types_LDADD = \ | ||
34 | 27 | ||
35 | thumbnailerdir = $(datadir)/thumbnailers/ | 28 | custom_target('thumbnailer', |
36 | thumbnailer_DATA = gdk-pixbuf-thumbnailer.thumbnailer | ||
37 | -gdk-pixbuf-thumbnailer.thumbnailer: gdk-pixbuf-thumbnailer.thumbnailer.in Makefile gdk-pixbuf-print-mime-types$(EXEEXT) $(top_builddir)/gdk-pixbuf/loaders.cache | ||
38 | +gdk-pixbuf-thumbnailer.thumbnailer: gdk-pixbuf-thumbnailer.thumbnailer.in Makefile gdk-pixbuf-print-mime-types$(EXEEXT) | ||
39 | $(AM_V_GEN) $(SED) -e "s|\@bindir\@|$(bindir)|" \ | ||
40 | - -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`|" \ | ||
41 | + -e "s|\@mimetypes\@|`gdk-pixbuf-print-mime-types`|" \ | ||
42 | $< > $@ | ||
43 | |||
44 | EXTRA_DIST = gdk-pixbuf-thumbnailer.thumbnailer.in | ||
45 | -- | ||
46 | 2.1.4 | ||
47 | |||
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-loaders.cache-depend-on-loaders-being-fully-build.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-loaders.cache-depend-on-loaders-being-fully-build.patch new file mode 100644 index 0000000000..2a7751511b --- /dev/null +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-loaders.cache-depend-on-loaders-being-fully-build.patch | |||
@@ -0,0 +1,51 @@ | |||
1 | From 116bc8f7a6034ce43053876a72a132fcd4e1e472 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Wed, 20 Feb 2019 19:53:07 +0100 | ||
4 | Subject: [PATCH] loaders.cache: depend on loaders being fully build | ||
5 | |||
6 | Otherwise, races have been observed: | ||
7 | https://autobuilder.yoctoproject.org/typhoon/#/builders/61/builds/310/steps/7/logs/step1b | ||
8 | |||
9 | Upstream-Status: Pending | ||
10 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
11 | |||
12 | --- | ||
13 | gdk-pixbuf/meson.build | 4 ++++ | ||
14 | 1 file changed, 4 insertions(+) | ||
15 | |||
16 | diff --git a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build | ||
17 | index fc3eb33..4e7ed20 100644 | ||
18 | --- a/gdk-pixbuf/meson.build | ||
19 | +++ b/gdk-pixbuf/meson.build | ||
20 | @@ -171,6 +171,7 @@ gdkpixbuf_dep = declare_dependency(link_with: gdkpixbuf, | ||
21 | # Now check if we are building loaders as installed shared modules | ||
22 | # We do this here because shared modules depend on libgdk-pixbuf | ||
23 | dynamic_loaders = [] | ||
24 | +dynamic_loaders_dep = [] | ||
25 | |||
26 | foreach l: loaders | ||
27 | name = l[0] | ||
28 | @@ -189,6 +190,7 @@ foreach l: loaders | ||
29 | |||
30 | # We need the path to build loaders.cache for tests | ||
31 | dynamic_loaders += mod.full_path() | ||
32 | + dynamic_loaders_dep += mod | ||
33 | endif | ||
34 | endforeach | ||
35 | |||
36 | @@ -206,6 +208,7 @@ if enable_native_windows_loaders | ||
37 | install: true, | ||
38 | install_dir: gdk_pixbuf_loaderdir) | ||
39 | dynamic_loaders += mod.full_path() | ||
40 | + dynamic_loaders_dep += mod | ||
41 | endforeach | ||
42 | endif | ||
43 | endif | ||
44 | @@ -236,6 +239,7 @@ if not meson.is_cross_build() | ||
45 | loaders_cache = custom_target('loaders.cache', | ||
46 | output: 'loaders.cache', | ||
47 | capture: true, | ||
48 | + depends: [ dynamic_loaders_dep ], | ||
49 | command: [ | ||
50 | gdk_pixbuf_query_loaders, | ||
51 | dynamic_loaders, | ||
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 @@ | |||
1 | From a184e6bfdd7761ad9807f3de9e873d49aff79e6d Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Thu, 14 Feb 2019 17:56:34 +0100 | ||
4 | Subject: [PATCH] (target only) Work-around thumbnailer cross-compile failure | ||
5 | |||
6 | Use native gdk-pixbuf-print-mime-types when generating the thumbnail | ||
7 | metadata. This works but the mime types will come from native | ||
8 | loader.cache (which will only contain in-tree loaders), not from the | ||
9 | target loader.cache. | ||
10 | |||
11 | The upstream issue is https://bugzilla.gnome.org/show_bug.cgi?id=779057 | ||
12 | |||
13 | Upstream-Status: Inappropriate [workaround] | ||
14 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
15 | |||
16 | --- | ||
17 | build-aux/gen-thumbnailer.py | 2 -- | ||
18 | tests/meson.build | 49 +----------------------------------- | ||
19 | thumbnailer/meson.build | 5 +--- | ||
20 | 3 files changed, 2 insertions(+), 54 deletions(-) | ||
21 | |||
22 | diff --git a/build-aux/gen-thumbnailer.py b/build-aux/gen-thumbnailer.py | ||
23 | index 05ac821..c5b99ab 100644 | ||
24 | --- a/build-aux/gen-thumbnailer.py | ||
25 | +++ b/build-aux/gen-thumbnailer.py | ||
26 | @@ -20,8 +20,6 @@ argparser.add_argument('output', help='Output file') | ||
27 | args = argparser.parse_args() | ||
28 | |||
29 | newenv = os.environ.copy() | ||
30 | -newenv['GDK_PIXBUF_PIXDATA'] = args.pixdata | ||
31 | -newenv['GDK_PIXBUF_MODULE_FILE'] = args.loaders | ||
32 | # 'nt': NT-based Windows, see https://docs.python.org/3/library/os.html | ||
33 | if os.name == 'nt': | ||
34 | gdk_pixbuf_dll_buildpath = os.path.dirname(args.pixdata) | ||
35 | diff --git a/tests/meson.build b/tests/meson.build | ||
36 | index 77a427a..467f5b2 100644 | ||
37 | --- a/tests/meson.build | ||
38 | +++ b/tests/meson.build | ||
39 | @@ -1,38 +1,6 @@ | ||
40 | # Resources; we cannot use gnome.compile_resources() here, because we need to | ||
41 | # override the environment in order to use the utilities we just built instead | ||
42 | # of the system ones | ||
43 | -resources_c = custom_target('resources.c', | ||
44 | - input: 'resources.gresource.xml', | ||
45 | - output: 'resources.c', | ||
46 | - command: [ | ||
47 | - gen_resources, | ||
48 | - '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()), | ||
49 | - '--loaders=@0@'.format(loaders_cache.full_path()), | ||
50 | - '--sourcedir=@0@'.format(meson.current_source_dir()), | ||
51 | - '--source', | ||
52 | - '@INPUT@', | ||
53 | - '@OUTPUT@', | ||
54 | - ], | ||
55 | - depends: [ | ||
56 | - gdk_pixbuf_pixdata, | ||
57 | - loaders_cache, | ||
58 | - ]) | ||
59 | -resources_h = custom_target('resources.h', | ||
60 | - input: 'resources.gresource.xml', | ||
61 | - output: 'resources.h', | ||
62 | - command: [ | ||
63 | - gen_resources, | ||
64 | - '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()), | ||
65 | - '--loaders=@0@'.format(loaders_cache.full_path()), | ||
66 | - '--sourcedir=@0@'.format(meson.current_source_dir()), | ||
67 | - '--header', | ||
68 | - '@INPUT@', | ||
69 | - '@OUTPUT@', | ||
70 | - ], | ||
71 | - depends: [ | ||
72 | - gdk_pixbuf_pixdata, | ||
73 | - loaders_cache, | ||
74 | - ]) | ||
75 | |||
76 | installed_tests = [ | ||
77 | [ 'animation' ], | ||
78 | @@ -94,7 +62,7 @@ foreach t: installed_tests | ||
79 | test_sources = [ test_name + '.c', 'test-common.c' ] | ||
80 | needs_resources = t.get(1, false) | ||
81 | if needs_resources | ||
82 | - test_sources += [ resources_c, resources_h ] | ||
83 | + test_sources += [ 'resources.c', 'resources.h' ] | ||
84 | endif | ||
85 | |||
86 | custom_target(test_name + '.test', | ||
87 | @@ -116,21 +84,6 @@ foreach t: installed_tests | ||
88 | ], | ||
89 | c_args: common_cflags) | ||
90 | |||
91 | - # Two particularly slow tests | ||
92 | - if test_name == 'pixbuf-area-updated' or test_name == 'pixbuf-randomly-modified' | ||
93 | - timeout = 300 | ||
94 | - else | ||
95 | - timeout = 30 | ||
96 | - endif | ||
97 | - | ||
98 | - test(test_name, test_bin, | ||
99 | - args: [ '-k', '--tap' ], | ||
100 | - env: [ | ||
101 | - 'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir()), | ||
102 | - 'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()), | ||
103 | - 'GDK_PIXBUF_MODULE_FILE=@0@'.format(loaders_cache.full_path()), | ||
104 | - ], | ||
105 | - timeout: timeout) | ||
106 | endforeach | ||
107 | |||
108 | executable('pixbuf-read', | ||
109 | diff --git a/thumbnailer/meson.build b/thumbnailer/meson.build | ||
110 | index aaafec8..71bd61b 100644 | ||
111 | --- a/thumbnailer/meson.build | ||
112 | +++ b/thumbnailer/meson.build | ||
113 | @@ -18,9 +18,7 @@ custom_target('thumbnailer', | ||
114 | output: 'gdk-pixbuf-thumbnailer.thumbnailer', | ||
115 | command: [ | ||
116 | gen_thumbnailer, | ||
117 | - '--printer=@0@'.format(gdk_pixbuf_print_mime_types.full_path()), | ||
118 | - '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()), | ||
119 | - '--loaders=@0@'.format(loaders_cache.full_path()), | ||
120 | + '--printer=gdk-pixbuf-print-mime-types', | ||
121 | '--bindir=@0@'.format(gdk_pixbuf_bindir), | ||
122 | '@INPUT@', | ||
123 | '@OUTPUT@', | ||
124 | @@ -28,7 +26,6 @@ custom_target('thumbnailer', | ||
125 | depends: [ | ||
126 | gdk_pixbuf_print_mime_types, | ||
127 | gdk_pixbuf_pixdata, | ||
128 | - loaders_cache, | ||
129 | ], | ||
130 | install: true, | ||
131 | install_dir: join_paths(gdk_pixbuf_datadir, 'thumbnailers')) | ||
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch deleted file mode 100644 index edbdced43a..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch +++ /dev/null | |||
@@ -1,42 +0,0 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | This patch fixes parallel install issue that lib libpixbufloader-png.la | ||
4 | depends on libgdk_pixbuf-2.0.la which will be regenerated during insta- | ||
5 | llation, if libgdk_pixbuf-2.0.la is regenerating and at the same time | ||
6 | libpixbufloader-png.la links it, the error will happen. | ||
7 | |||
8 | Error message is: | ||
9 | * usr/bin/ld: cannot find -lgdk_pixbuf-2.0 | ||
10 | * collect2: ld returned 1 exit status | ||
11 | |||
12 | Make an explicit dependency to the libs install targets would fix this | ||
13 | issue. | ||
14 | |||
15 | Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> | ||
16 | --- | ||
17 | gdk-pixbuf/Makefile.am | 1 + | ||
18 | libdeps.mk | 3 +++ | ||
19 | 2 files changed, 4 insertions(+), 0 deletions(-) | ||
20 | create mode 100644 libdeps.mk | ||
21 | |||
22 | diff --git a/gdk-pixbuf/Makefile.am b/gdk-pixbuf/Makefile.am | ||
23 | index 95a93a8..db44cae 100644 | ||
24 | --- a/gdk-pixbuf/Makefile.am | ||
25 | +++ b/gdk-pixbuf/Makefile.am | ||
26 | @@ -783,3 +783,4 @@ loaders.cache: | ||
27 | endif | ||
28 | |||
29 | -include $(top_srcdir)/git.mk | ||
30 | +-include $(top_srcdir)/libdeps.mk | ||
31 | diff --git a/libdeps.mk b/libdeps.mk | ||
32 | new file mode 100644 | ||
33 | index 0000000..d7a10a8 | ||
34 | --- /dev/null | ||
35 | +++ b/libdeps.mk | ||
36 | @@ -0,0 +1,3 @@ | ||
37 | +# Extending dependencies of install-loaderLTLIBRARIES: | ||
38 | +# The $(lib-LTLIBRARIES) is needed by relinking $(loader_LTLIBRARIES) | ||
39 | +install-loaderLTLIBRARIES: install-libLTLIBRARIES | ||
40 | -- | ||
41 | 1.7.6.1 | ||
42 | |||
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch deleted file mode 100644 index ecca62a712..0000000000 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch +++ /dev/null | |||
@@ -1,33 +0,0 @@ | |||
1 | Upstream-Status: Inappropriate [configuration] | ||
2 | |||
3 | Index: gdk-pixbuf-2.22.1/configure.ac | ||
4 | =================================================================== | ||
5 | --- gdk-pixbuf-2.22.1.orig/configure.ac 2010-11-26 09:06:34.000000000 +0800 | ||
6 | +++ gdk-pixbuf-2.22.1/configure.ac 2010-11-26 09:07:33.000000000 +0800 | ||
7 | @@ -287,7 +287,7 @@ | ||
8 | case $enable_explicit_deps in | ||
9 | auto) | ||
10 | export SED | ||
11 | - deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh` | ||
12 | + deplibs_check_method=`(./$host_alias-libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh` | ||
13 | if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then | ||
14 | enable_explicit_deps=yes | ||
15 | else | ||
16 | @@ -484,7 +484,7 @@ | ||
17 | dnl Now we check to see if our libtool supports shared lib deps | ||
18 | dnl (in a rather ugly way even) | ||
19 | if $dynworks; then | ||
20 | - pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config" | ||
21 | + pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./$host_alias-libtool --config" | ||
22 | pixbuf_deplibs_check=`$pixbuf_libtool_config | \ | ||
23 | grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \ | ||
24 | sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'` | ||
25 | @@ -957,7 +957,7 @@ | ||
26 | # We are using gmodule-no-export now, but I'm leaving the stripping | ||
27 | # code in place for now, since pango and atk still require gmodule. | ||
28 | export SED | ||
29 | -export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` | ||
30 | +export_dynamic=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` | ||
31 | if test -n "$export_dynamic"; then | ||
32 | GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"` | ||
33 | fi | ||
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb index a7d3884d1f..5f081fbb94 100644 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb | |||
@@ -13,18 +13,42 @@ DEPENDS = "glib-2.0 gdk-pixbuf-native shared-mime-info" | |||
13 | MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" | 13 | MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" |
14 | 14 | ||
15 | SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ | 15 | SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ |
16 | file://hardcoded_libtool.patch \ | ||
17 | file://extending-libinstall-dependencies.patch \ | ||
18 | file://run-ptest \ | 16 | file://run-ptest \ |
19 | file://fatal-loader.patch \ | 17 | file://fatal-loader.patch \ |
20 | file://0001-Work-around-thumbnailer-cross-compile-failure.patch \ | 18 | file://0001-Work-around-thumbnailer-cross-compile-failure.patch \ |
21 | file://0001-Fix-without-libtiff-not-having-an-effect.patch \ | 19 | file://0001-Fix-a-couple-of-decisions-around-cross-compilation.patch \ |
20 | file://0001-loaders.cache-depend-on-loaders-being-fully-build.patch \ | ||
21 | " | ||
22 | |||
23 | SRC_URI_append_class-target = " \ | ||
24 | file://0002-Work-around-thumbnailer-cross-compile-failure.patch \ | ||
25 | " | ||
26 | SRC_URI_append_class-nativesdk = " \ | ||
27 | file://0002-Work-around-thumbnailer-cross-compile-failure.patch \ | ||
28 | file://0001-Disable-tests-in-native-builds.patch \ | ||
29 | " | ||
30 | SRC_URI_append_class-native = " \ | ||
31 | file://0001-Disable-tests-in-native-builds.patch \ | ||
22 | " | 32 | " |
23 | 33 | ||
24 | SRC_URI[md5sum] = "6e84e5485c17ce7c25df77fe76eb2d6a" | 34 | SRC_URI[md5sum] = "6e84e5485c17ce7c25df77fe76eb2d6a" |
25 | SRC_URI[sha256sum] = "ae62ab87250413156ed72ef756347b10208c00e76b222d82d9ed361ed9dde2f3" | 35 | SRC_URI[sha256sum] = "ae62ab87250413156ed72ef756347b10208c00e76b222d82d9ed361ed9dde2f3" |
26 | 36 | ||
27 | inherit autotools pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc lib_package | 37 | inherit meson pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc lib_package |
38 | |||
39 | GTKDOC_ENABLE_FLAG = "-Dwith_docs=true" | ||
40 | GTKDOC_DISABLE_FLAG = "-Dwith_docs=false" | ||
41 | |||
42 | GI_ENABLE_FLAG = "-Dwith_gir=true" | ||
43 | GI_DISABLE_FLAG = "-Dwith_gir=false" | ||
44 | |||
45 | EXTRA_OEMESON_append_class-nativesdk = " ${GI_DISABLE_FLAG}" | ||
46 | |||
47 | EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ | ||
48 | '${GI_DISABLE_FLAG}', d)} " | ||
49 | |||
50 | EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ | ||
51 | '${GTKDOC_DISABLE_FLAG}', d)} " | ||
28 | 52 | ||
29 | LIBV = "2.10.0" | 53 | LIBV = "2.10.0" |
30 | 54 | ||
@@ -34,12 +58,12 @@ PACKAGECONFIG ??= "${GDK_PIXBUF_LOADERS}" | |||
34 | PACKAGECONFIG_linuxstdbase = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${GDK_PIXBUF_LOADERS}" | 58 | PACKAGECONFIG_linuxstdbase = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${GDK_PIXBUF_LOADERS}" |
35 | PACKAGECONFIG_class-native = "${GDK_PIXBUF_LOADERS}" | 59 | PACKAGECONFIG_class-native = "${GDK_PIXBUF_LOADERS}" |
36 | 60 | ||
37 | PACKAGECONFIG[png] = "--with-libpng,--without-libpng,libpng" | 61 | PACKAGECONFIG[png] = "-Denable_png=true,-Denable_png=false,libpng" |
38 | PACKAGECONFIG[jpeg] = "--with-libjpeg,--without-libjpeg,jpeg" | 62 | PACKAGECONFIG[jpeg] = "-Denable_jpeg=true,-Denable_jpeg=false,jpeg" |
39 | PACKAGECONFIG[tiff] = "--with-libtiff,--without-libtiff,tiff" | 63 | PACKAGECONFIG[tiff] = "-Denable_tiff=true,-Denable_tiff=false,tiff" |
40 | PACKAGECONFIG[jpeg2000] = "--with-libjasper,--without-libjasper,jasper" | 64 | PACKAGECONFIG[jpeg2000] = "-Denable_jasper=true,-Denable_jasper=false,jasper" |
41 | 65 | ||
42 | PACKAGECONFIG[x11] = "--with-x11,--without-x11,virtual/libx11" | 66 | PACKAGECONFIG[x11] = ",,virtual/libx11" |
43 | 67 | ||
44 | PACKAGES =+ "${PN}-xlib" | 68 | PACKAGES =+ "${PN}-xlib" |
45 | 69 | ||
@@ -81,6 +105,11 @@ do_install_append() { | |||
81 | # Move gdk-pixbuf-query-loaders into libdir so it is always available | 105 | # Move gdk-pixbuf-query-loaders into libdir so it is always available |
82 | # in multilib builds. | 106 | # in multilib builds. |
83 | mv ${D}/${bindir}/gdk-pixbuf-query-loaders ${D}/${libdir}/gdk-pixbuf-2.0/ | 107 | mv ${D}/${bindir}/gdk-pixbuf-query-loaders ${D}/${libdir}/gdk-pixbuf-2.0/ |
108 | |||
109 | # Do not install ptests if ptest is not enabled; gdk-pixbuf has no configuration option for this | ||
110 | if [ "${PTEST_ENABLED}" != "1" ]; then | ||
111 | rm -rf ${D}${datadir}/installed-tests | ||
112 | fi | ||
84 | } | 113 | } |
85 | 114 | ||
86 | do_install_append_class-native() { | 115 | do_install_append_class-native() { |