summaryrefslogtreecommitdiffstats
path: root/meta/recipes-gnome
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2019-02-20 21:10:25 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-02-25 11:44:59 +0000
commit9a1fa28c70882a514d189799df8dd087059d79d9 (patch)
tree3af6374bd0e3f1b4c039aa98fd4a220e71c1d413 /meta/recipes-gnome
parentebbd49f952ddab952b5e1b7596330401087343e3 (diff)
downloadopenembedded-core-contrib-9a1fa28c70882a514d189799df8dd087059d79d9.tar.gz
gdk-pixbuf: convert from autotools to meson
Drop autotools-specific patches. Rework jku's thumbnailer patch into meson configuration. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-gnome')
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Disable-tests-in-native-builds.patch31
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-a-couple-of-decisions-around-cross-compilation.patch38
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Fix-without-libtiff-not-having-an-effect.patch27
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Work-around-thumbnailer-cross-compile-failure.patch53
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-loaders.cache-depend-on-loaders-being-fully-build.patch51
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0002-Work-around-thumbnailer-cross-compile-failure.patch131
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch42
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch33
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.36.11.bb47
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 @@
+From b287cb313dbfac3257f1ab451b19ba59580f78e1 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 18 Feb 2019 16:00:12 +0100
+Subject: [PATCH] Disable tests in native builds.
+
+They have found to be problematic at least on Centos 7:
+https://autobuilder.yoctoproject.org/typhoon/#/builders/50/builds/296/steps/7/logs/step1b
+
+With autotools this was not a problem because it had a configuration
+switch for disabling test, which was used. Meson has no such facility :(
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 92c4049..0871c84 100644
+--- a/meson.build
++++ b/meson.build
+@@ -397,7 +397,7 @@ endif
+ # i18n
+ subdir('po')
+
+-subdir('tests')
++#subdir('tests')
+ subdir('thumbnailer')
+
+ # 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 @@
+From 48cbdd56036728ffea431ad63cf5e2ad05cef69c 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] Fix a couple of decisions around cross-compilation
+
+1. gobject-introspection can be build when cross compiling
+2. generating loaders.cache requires running a target binary which
+we do elsewhere (in postinsts)
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ gdk-pixbuf/meson.build | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build
+index 77c162b..fc3eb33 100644
+--- a/gdk-pixbuf/meson.build
++++ b/gdk-pixbuf/meson.build
+@@ -230,6 +230,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',
+@@ -241,8 +242,9 @@ loaders_cache = custom_target('loaders.cache',
+ ],
+ build_by_default: true)
+ loaders_dep = declare_dependency(sources: [ loaders_cache ])
++endif
+
+-build_gir = get_option('with_gir') and not meson.is_cross_build()
++build_gir = get_option('with_gir')
+ if build_gir
+ gir_args = [
+ '--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 @@
-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/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 @@
-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/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 @@
+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/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'))
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 @@
-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/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 @@
-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/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"
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 \
+ file://0001-Fix-a-couple-of-decisions-around-cross-compilation.patch \
+ file://0001-loaders.cache-depend-on-loaders-being-fully-build.patch \
+ "
+
+SRC_URI_append_class-target = " \
+ file://0002-Work-around-thumbnailer-cross-compile-failure.patch \
+ "
+SRC_URI_append_class-nativesdk = " \
+ file://0002-Work-around-thumbnailer-cross-compile-failure.patch \
+ file://0001-Disable-tests-in-native-builds.patch \
+ "
+SRC_URI_append_class-native = " \
+ file://0001-Disable-tests-in-native-builds.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
+inherit meson pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc lib_package
+
+GTKDOC_ENABLE_FLAG = "-Dwith_docs=true"
+GTKDOC_DISABLE_FLAG = "-Dwith_docs=false"
+
+GI_ENABLE_FLAG = "-Dwith_gir=true"
+GI_DISABLE_FLAG = "-Dwith_gir=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)} "
LIBV = "2.10.0"
@@ -34,12 +58,12 @@ 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[png] = "-Denable_png=true,-Denable_png=false,libpng"
+PACKAGECONFIG[jpeg] = "-Denable_jpeg=true,-Denable_jpeg=false,jpeg"
+PACKAGECONFIG[tiff] = "-Denable_tiff=true,-Denable_tiff=false,tiff"
+PACKAGECONFIG[jpeg2000] = "-Denable_jasper=true,-Denable_jasper=false,jasper"
-PACKAGECONFIG[x11] = "--with-x11,--without-x11,virtual/libx11"
+PACKAGECONFIG[x11] = ",,virtual/libx11"
PACKAGES =+ "${PN}-xlib"
@@ -81,6 +105,11 @@ 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 not install ptests if ptest is not enabled; gdk-pixbuf has no configuration option for this
+ if [ "${PTEST_ENABLED}" != "1" ]; then
+ rm -rf ${D}${datadir}/installed-tests
+ fi
}
do_install_append_class-native() {