diff options
author | Jason M. Bills <jason.m.bills@linux.intel.com> | 2021-07-30 00:16:52 +0300 |
---|---|---|
committer | Jason M. Bills <jason.m.bills@linux.intel.com> | 2021-07-30 00:16:52 +0300 |
commit | bb6a14e2f317abf60677c6ad8de9c33d5760bf36 (patch) | |
tree | 00457d3677e86437cec25fd7dab6c4513a53b1a4 /poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch | |
parent | defdca82c107f46e980c84bffb1b2c1263522fa0 (diff) | |
parent | cf6fd27dbd8e2d1b507f8c3752b85801b2c6ef57 (diff) | |
download | openbmc-bb6a14e2f317abf60677c6ad8de9c33d5760bf36.tar.xz |
Merge tag '0.63' of ssh://git-amr-1.devtools.intel.com:29418/openbmc-openbmc into update
Diffstat (limited to 'poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch')
-rw-r--r-- | poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch new file mode 100644 index 000000000..a8206a450 --- /dev/null +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-Add-use_prebuilt_tools-option.patch @@ -0,0 +1,171 @@ +From ba73bb0f3d2023839bc3b681c49b7ec1192cceb4 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Sat, 8 May 2021 21:58:54 +0200 +Subject: [PATCH] Add use_prebuilt_tools option + +This allows using the gdk-pixbuf tools from the host to +build and install tests in a cross-compile scenarion. + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/merge_requests/119] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + gdk-pixbuf/meson.build | 11 +++++++++-- + meson.build | 6 +++--- + meson_options.txt | 4 ++++ + tests/meson.build | 16 ++++++++-------- + thumbnailer/meson.build | 24 ++++++++++++++++++------ + 5 files changed, 42 insertions(+), 19 deletions(-) + +diff --git a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build +index 8b0590b..7331491 100644 +--- a/gdk-pixbuf/meson.build ++++ b/gdk-pixbuf/meson.build +@@ -342,13 +342,20 @@ foreach bin: gdkpixbuf_bin + include_directories: [ root_inc, gdk_pixbuf_inc ], + c_args: common_cflags + gdk_pixbuf_cflags, + install: true) +- meson.override_find_program(bin_name, bin) ++ if not get_option('use_prebuilt_tools') ++ meson.override_find_program(bin_name, bin) ++ endif + + # Used in tests + set_variable(bin_name.underscorify(), bin) + endforeach + +-if not meson.is_cross_build() ++if get_option('use_prebuilt_tools') ++ gdk_pixbuf_query_loaders = find_program('gdk-pixbuf-query-loaders', required: true) ++ gdk_pixbuf_pixdata = find_program('gdk-pixbuf-pixdata', required: true) ++endif ++ ++if not meson.is_cross_build() or get_option('use_prebuilt_tools') + # 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', +diff --git a/meson.build b/meson.build +index 7a1409b..0bc73eb 100644 +--- a/meson.build ++++ b/meson.build +@@ -403,16 +403,16 @@ subdir('gdk-pixbuf') + # i18n + subdir('po') + +-if not meson.is_cross_build() ++if not meson.is_cross_build() or get_option('use_prebuilt_tools') + subdir('tests') +- subdir('thumbnailer') + endif ++subdir('thumbnailer') + + # Documentation + build_docs = get_option('gtk_doc') or get_option('docs') + subdir('docs') + +-if not meson.is_cross_build() ++if not meson.is_cross_build() or get_option('use_prebuilt_tools') + meson.add_install_script('build-aux/post-install.py', + gdk_pixbuf_bindir, + gdk_pixbuf_libdir, +diff --git a/meson_options.txt b/meson_options.txt +index 0ee6718..cc29855 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -49,4 +49,8 @@ option('gio_sniffing', + description: 'Perform file type detection using GIO (Unused on MacOS and Windows)', + type: 'boolean', + value: true) ++option('use_prebuilt_tools', ++ description: 'Use prebuilt gdk-pixbuf tools from the host for cross-compilation', ++ type: 'boolean', ++ value: false) + +diff --git a/tests/meson.build b/tests/meson.build +index 7c6cb11..1029e6a 100644 +--- a/tests/meson.build ++++ b/tests/meson.build +@@ -5,6 +5,12 @@ + # $PATH. Ideally we should use gnome.compile_resources() and let Meson deal with + # this problem: See https://github.com/mesonbuild/meson/issues/8266. + if enabled_loaders.contains('png') and host_system != 'windows' ++ ++ resources_deps = [loaders_cache,] ++ if not get_option('use_prebuilt_tools') ++ resources_deps += [gdk_pixbuf_pixdata,] ++ endif ++ + # 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 +@@ -21,10 +27,7 @@ if enabled_loaders.contains('png') and host_system != 'windows' + '@INPUT@', + '@OUTPUT@', + ], +- depends: [ +- gdk_pixbuf_pixdata, +- loaders_cache, +- ], ++ depends: resources_deps, + ) + + resources_h = custom_target('resources.h', +@@ -40,10 +43,7 @@ if enabled_loaders.contains('png') and host_system != 'windows' + '@INPUT@', + '@OUTPUT@', + ], +- depends: [ +- gdk_pixbuf_pixdata, +- loaders_cache, +- ], ++ depends: resources_deps, + ) + no_resources = false + else +diff --git a/thumbnailer/meson.build b/thumbnailer/meson.build +index b6a206d..9336c21 100644 +--- a/thumbnailer/meson.build ++++ b/thumbnailer/meson.build +@@ -6,13 +6,29 @@ bin = executable('gdk-pixbuf-thumbnailer', + ], + dependencies: gdk_pixbuf_deps + [ gdkpixbuf_dep ], + install: true) +-meson.override_find_program('gdk-pixbuf-thumbnailer', bin) ++if not get_option('use_prebuilt_tools') ++ meson.override_find_program('gdk-pixbuf-thumbnailer', bin) ++endif + + gdk_pixbuf_print_mime_types = executable('gdk-pixbuf-print-mime-types', + 'gdk-pixbuf-print-mime-types.c', ++ install: true, + c_args: common_cflags, + dependencies: gdk_pixbuf_deps + [ gdkpixbuf_dep ]) + ++if get_option('use_prebuilt_tools') ++ gdk_pixbuf_print_mime_types = find_program('gdk-pixbuf-print-mime-types', required: true) ++endif ++ ++thumbnailer_deps = [loaders_cache,] ++ ++if not get_option('use_prebuilt_tools') ++ thumbnailer_deps += [ ++ gdk_pixbuf_print_mime_types, ++ gdk_pixbuf_pixdata, ++ ] ++endif ++ + custom_target('thumbnailer', + input: 'gdk-pixbuf-thumbnailer.thumbnailer.in', + output: 'gdk-pixbuf-thumbnailer.thumbnailer', +@@ -25,10 +41,6 @@ custom_target('thumbnailer', + '@INPUT@', + '@OUTPUT@', + ], +- depends: [ +- gdk_pixbuf_print_mime_types, +- gdk_pixbuf_pixdata, +- loaders_cache, +- ], ++ depends: thumbnailer_deps, + install: true, + install_dir: join_paths(gdk_pixbuf_datadir, 'thumbnailers')) |