Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
43
sources/poky/meta/recipes-gnome/epiphany/epiphany_46.0.bb
Normal file
43
sources/poky/meta/recipes-gnome/epiphany/epiphany_46.0.bb
Normal file
@@ -0,0 +1,43 @@
|
||||
SUMMARY = "WebKit based web browser for GNOME"
|
||||
DESCRIPTION = "Epiphany is an open source web browser for the Linux desktop environment. \
|
||||
It provides a simple and easy-to-use internet browsing experience."
|
||||
HOMEPAGE = "https://wiki.gnome.org/Apps/Web"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/epiphany"
|
||||
LICENSE = "GPL-3.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
|
||||
|
||||
DEPENDS = " \
|
||||
webkitgtk \
|
||||
gcr \
|
||||
gsettings-desktop-schemas \
|
||||
nettle \
|
||||
json-glib \
|
||||
libadwaita \
|
||||
libarchive \
|
||||
libdazzle \
|
||||
libhandy \
|
||||
libportal \
|
||||
libsoup \
|
||||
glib-2.0-native \
|
||||
coreutils-native \
|
||||
desktop-file-utils-native \
|
||||
"
|
||||
|
||||
inherit gnomebase gsettings features_check gettext mime-xdg gtk-icon-cache
|
||||
REQUIRED_DISTRO_FEATURES = "x11 opengl"
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@oe.utils.trim_version("${PV}", 1)}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
|
||||
file://0002-help-meson.build-disable-the-use-of-yelp.patch \
|
||||
file://migrator.patch \
|
||||
file://distributor.patch \
|
||||
"
|
||||
SRC_URI[archive.sha256sum] = "f4348f2cf51c07c0c106d130172d4d23f2cd4068771e1de007b758ca2ade5660"
|
||||
|
||||
# Developer mode enables debugging
|
||||
PACKAGECONFIG[developer-mode] = "-Ddeveloper_mode=true,-Ddeveloper_mode=false"
|
||||
|
||||
FILES:${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo"
|
||||
RDEPENDS:${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas"
|
||||
|
||||
# ANGLE requires SSE support as of webkit 2.40.x on 32 bit x86
|
||||
COMPATIBLE_HOST:x86 = "${@bb.utils.contains_any('TUNE_FEATURES', 'core2 corei7', '.*', 'null', d)}"
|
||||
@@ -0,0 +1,29 @@
|
||||
From bd45c75fe691e275d7a7d7e641ac66b153369a1c Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Wed, 31 Jan 2018 15:50:38 +0200
|
||||
Subject: [PATCH] help/meson.build: disable the use of yelp
|
||||
|
||||
In particular this avoids calling itstool which oe-core doesn't provide.
|
||||
|
||||
Upstream-Status: Inappropriate [oe-core specific]
|
||||
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
---
|
||||
help/meson.build | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/help/meson.build b/help/meson.build
|
||||
index ff324dd..f5e421d 100644
|
||||
--- a/help/meson.build
|
||||
+++ b/help/meson.build
|
||||
@@ -31,7 +31,7 @@ help_media = [
|
||||
'media/org.gnome.Epiphany.svg'
|
||||
]
|
||||
|
||||
-gnome.yelp(meson.project_name(),
|
||||
- sources: help_files,
|
||||
- media: help_media,
|
||||
-)
|
||||
+#gnome.yelp(meson.project_name(),
|
||||
+# sources: help_files,
|
||||
+# media: help_media,
|
||||
+#)
|
||||
@@ -0,0 +1,24 @@
|
||||
From c297f5b89d7c8e98ac98e1d9a7506df6db6fc025 Mon Sep 17 00:00:00 2001
|
||||
From: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
Date: Fri, 26 Feb 2021 10:17:52 +0000
|
||||
Subject: [PATCH] Don't encode the distro from /etc/os-release into the
|
||||
binaries.
|
||||
|
||||
Upstream-Status: Pending
|
||||
RP 2021/2/26
|
||||
---
|
||||
meson.build | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index e416cc7..ee5f7b1 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -15,6 +15,7 @@ if r.returncode() == 0
|
||||
else
|
||||
distributor_name = 'GNOME Web'
|
||||
endif
|
||||
+distributor_name = 'OpenEmbedded'
|
||||
|
||||
prefix = get_option('prefix')
|
||||
datadir = join_paths(prefix, get_option('datadir'))
|
||||
@@ -0,0 +1,32 @@
|
||||
From b38a4ceaeec05efb1b822d52c43590e7fd518113 Mon Sep 17 00:00:00 2001
|
||||
From: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
Date: Thu, 25 Feb 2021 14:52:32 +0000
|
||||
Subject: [PATCH] epiphany: Fix reproducibility issue
|
||||
|
||||
We don't want to encide BUILD_ROOT into target packages. This is used
|
||||
for build time tests but in our case those would be on target anyway
|
||||
do use the target paths.
|
||||
|
||||
Upstream-Status: Pending
|
||||
RP 2021/2/25
|
||||
---
|
||||
lib/ephy-profile-utils.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/lib/ephy-profile-utils.c b/lib/ephy-profile-utils.c
|
||||
index a2f6181..5218077 100644
|
||||
--- a/lib/ephy-profile-utils.c
|
||||
+++ b/lib/ephy-profile-utils.c
|
||||
@@ -130,10 +130,10 @@ ephy_profile_utils_do_migration (const char *profile_directory,
|
||||
argv[i++] = NULL;
|
||||
|
||||
#if DEVELOPER_MODE
|
||||
- argv[0] = BUILD_ROOT "/src/" EPHY_PROFILE_MIGRATOR;
|
||||
+ argv[0] = PKGLIBEXECDIR "/" EPHY_PROFILE_MIGRATOR;
|
||||
#else
|
||||
if (debug)
|
||||
- argv[0] = BUILD_ROOT "/src/" EPHY_PROFILE_MIGRATOR;
|
||||
+ argv[0] = PKGLIBEXECDIR "/" EPHY_PROFILE_MIGRATOR;
|
||||
#endif
|
||||
|
||||
g_spawn_sync (NULL, (char **)argv, envp, G_SPAWN_SEARCH_PATH,
|
||||
58
sources/poky/meta/recipes-gnome/gcr/gcr_4.2.1.bb
Normal file
58
sources/poky/meta/recipes-gnome/gcr/gcr_4.2.1.bb
Normal file
@@ -0,0 +1,58 @@
|
||||
SUMMARY = "A library for bits of crypto UI and parsing etc"
|
||||
DESCRIPTION = "GCR is a library for displaying certificates, and crypto UI, \
|
||||
accessing key stores. It also provides the viewer for crypto files on the \
|
||||
GNOME desktop."
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcr"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues"
|
||||
|
||||
LICENSE = "LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
|
||||
|
||||
DEPENDS = "p11-kit glib-2.0 libgcrypt gnupg-native \
|
||||
${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}"
|
||||
|
||||
CACHED_CONFIGUREVARS += "ac_cv_path_GPG='gpg2'"
|
||||
|
||||
CFLAGS += "-D_GNU_SOURCE"
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
inherit gnomebase gtk-icon-cache gi-docgen features_check vala gobject-introspection gettext mime mime-xdg
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'opengl', '', d)}"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "ed783b5c80373cd058c02ea9e3e2a64e558599ca190a5abd598122e479967de5"
|
||||
|
||||
PACKAGECONFIG ??= " \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'gtk', '', d)} \
|
||||
${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'vapi', '', d)} \
|
||||
"
|
||||
PACKAGECONFIG[gtk] = "-Dgtk4=true,-Dgtk4=false,gtk4"
|
||||
PACKAGECONFIG[ssh_agent] = "-Dssh_agent=true,-Dssh_agent=false,libsecret,openssh"
|
||||
#'Use systemd socket activation for server programs'
|
||||
PACKAGECONFIG[systemd] = "-Dsystemd=enabled,-Dsystemd=disabled,systemd"
|
||||
PACKAGECONFIG[vapi] = "-Dvapi=true,-Dvapi=false,"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/dbus-1 \
|
||||
${datadir}/gcr-4 \
|
||||
${systemd_user_unitdir}/gcr-ssh-agent.socket \
|
||||
${systemd_user_unitdir}/gcr-ssh-agent.service \
|
||||
"
|
||||
|
||||
# http://errors.yoctoproject.org/Errors/Details/20229/
|
||||
ARM_INSTRUCTION_SET:armv4 = "arm"
|
||||
ARM_INSTRUCTION_SET:armv5 = "arm"
|
||||
ARM_INSTRUCTION_SET:armv6 = "arm"
|
||||
|
||||
EXTRA_OEMESON += "--cross-file=${WORKDIR}/meson-${PN}.cross"
|
||||
|
||||
do_write_config:append() {
|
||||
cat >${WORKDIR}/meson-${PN}.cross <<EOF
|
||||
[binaries]
|
||||
gpg2 = '${bindir}/gpg2'
|
||||
ssh-add = '${bindir}/ssh-add'
|
||||
ssh-agent = '${bindir}/ssh-agent'
|
||||
EOF
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
From 325a4cde99a00b84116ab7111d27e6973f3c5026 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex@linutronix.de>
|
||||
Date: Thu, 26 Jan 2023 20:29:46 +0100
|
||||
Subject: [PATCH] meson.build: allow (a subset of) tests in cross compile
|
||||
settings
|
||||
|
||||
There is no need to completely disable tests: most of them
|
||||
do not require running target executables at build time,
|
||||
and so can be built and installed.
|
||||
|
||||
This requires inserting a couple of specific guards around
|
||||
items that do require running target executables.
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/merge_requests/150]
|
||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
||||
---
|
||||
meson.build | 6 +++---
|
||||
tests/meson.build | 10 ++++++----
|
||||
2 files changed, 9 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 3eb3fcc..dc7e790 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -390,10 +390,10 @@ subdir('gdk-pixbuf')
|
||||
# i18n
|
||||
subdir('po')
|
||||
|
||||
+if get_option('tests')
|
||||
+ subdir('tests')
|
||||
+endif
|
||||
if not meson.is_cross_build()
|
||||
- if get_option('tests')
|
||||
- subdir('tests')
|
||||
- endif
|
||||
subdir('thumbnailer')
|
||||
endif
|
||||
|
||||
diff --git a/tests/meson.build b/tests/meson.build
|
||||
index 3781066..911b5fb 100644
|
||||
--- a/tests/meson.build
|
||||
+++ b/tests/meson.build
|
||||
@@ -4,7 +4,7 @@
|
||||
# gdk-pixbuf-pixdata from build directory because it needs all DLL locations in
|
||||
# $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'
|
||||
+if enabled_loaders.contains('png') and host_system != 'windows' and not meson.is_cross_build()
|
||||
# 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
|
||||
@@ -164,9 +164,11 @@ endif
|
||||
test_deps = gdk_pixbuf_deps + [ gdkpixbuf_dep, ]
|
||||
test_args = [ '-k' ]
|
||||
test_env = environment()
|
||||
-test_env.set('G_TEST_SRCDIR', meson.current_source_dir())
|
||||
-test_env.set('G_TEST_BUILDDIR', meson.current_build_dir())
|
||||
-test_env.set('GDK_PIXBUF_MODULE_FILE', loaders_cache.full_path())
|
||||
+if not meson.is_cross_build()
|
||||
+ test_env.set('G_TEST_SRCDIR', meson.current_source_dir())
|
||||
+ test_env.set('G_TEST_BUILDDIR', meson.current_build_dir())
|
||||
+ test_env.set('GDK_PIXBUF_MODULE_FILE', loaders_cache.full_path())
|
||||
+endif
|
||||
|
||||
foreach test_name, test_data: installed_tests
|
||||
test_sources = [ test_name + '.c', 'test-common.c' ]
|
||||
@@ -0,0 +1,55 @@
|
||||
From 4af78023ce7d3b5e3cec422a59bb4f48fa4f5886 Mon Sep 17 00:00:00 2001
|
||||
From: Matthias Clasen <mclasen@redhat.com>
|
||||
Date: Fri, 11 Jul 2025 11:02:05 -0400
|
||||
Subject: [PATCH] jpeg: Be more careful with chunked icc data
|
||||
|
||||
We we inadvertendly trusting the sequence numbers not to lie.
|
||||
If they do we would report a larger data size than we actually
|
||||
allocated, leading to out of bounds memory access in base64
|
||||
encoding later on.
|
||||
|
||||
This has been assigned CVE-2025-7345.
|
||||
|
||||
Fixes: #249
|
||||
|
||||
CVE: CVE-2025-7345
|
||||
|
||||
Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/commit/4af78023ce7d3b5e3cec422a59bb4f48fa4f5886]
|
||||
|
||||
Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
|
||||
---
|
||||
gdk-pixbuf/io-jpeg.c | 8 ++++++--
|
||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/gdk-pixbuf/io-jpeg.c b/gdk-pixbuf/io-jpeg.c
|
||||
index 3841fc0..9ee1d21 100644
|
||||
--- a/gdk-pixbuf/io-jpeg.c
|
||||
+++ b/gdk-pixbuf/io-jpeg.c
|
||||
@@ -356,6 +356,7 @@ jpeg_parse_exif_app2_segment (JpegExifContext *context, jpeg_saved_marker_ptr ma
|
||||
context->icc_profile = g_new (gchar, chunk_size);
|
||||
/* copy the segment data to the profile space */
|
||||
memcpy (context->icc_profile, marker->data + 14, chunk_size);
|
||||
+ ret = TRUE;
|
||||
goto out;
|
||||
}
|
||||
|
||||
@@ -377,12 +378,15 @@ jpeg_parse_exif_app2_segment (JpegExifContext *context, jpeg_saved_marker_ptr ma
|
||||
/* copy the segment data to the profile space */
|
||||
memcpy (context->icc_profile + offset, marker->data + 14, chunk_size);
|
||||
|
||||
- /* it's now this big plus the new data we've just copied */
|
||||
- context->icc_profile_size += chunk_size;
|
||||
+ context->icc_profile_size = MAX (context->icc_profile_size, offset + chunk_size);
|
||||
|
||||
/* success */
|
||||
ret = TRUE;
|
||||
out:
|
||||
+ if (!ret) {
|
||||
+ g_free (context->icc_profile);
|
||||
+ context->icc_profile = NULL;
|
||||
+ }
|
||||
return ret;
|
||||
}
|
||||
|
||||
--
|
||||
2.40.0
|
||||
@@ -0,0 +1,88 @@
|
||||
From f78ab4edaee5f62663a9a4bcfa56e5c524da4474 Mon Sep 17 00:00:00 2001
|
||||
From: Ross Burton <ross.burton@intel.com>
|
||||
Date: Tue, 1 Apr 2014 17:23:36 +0100
|
||||
Subject: [PATCH] gdk-pixbuf: add an option so that loader errors are fatal
|
||||
|
||||
If an environment variable is specified set the return value from main() to
|
||||
non-zero if the loader had errors (missing libraries, generally).
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/merge_requests/144]
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
---
|
||||
gdk-pixbuf/queryloaders.c | 19 +++++++++++++++----
|
||||
1 file changed, 15 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/gdk-pixbuf/queryloaders.c b/gdk-pixbuf/queryloaders.c
|
||||
index baa9a5c..9b6fa89 100644
|
||||
--- a/gdk-pixbuf/queryloaders.c
|
||||
+++ b/gdk-pixbuf/queryloaders.c
|
||||
@@ -216,7 +216,7 @@ write_loader_info (GString *contents, const char *path, GdkPixbufFormat *info)
|
||||
g_string_append_c (contents, '\n');
|
||||
}
|
||||
|
||||
-static void
|
||||
+static gboolean
|
||||
query_module (GString *contents, const char *dir, const char *file)
|
||||
{
|
||||
char *path;
|
||||
@@ -225,6 +225,7 @@ query_module (GString *contents, const char *dir, const char *file)
|
||||
void (*fill_vtable) (GdkPixbufModule *module);
|
||||
gpointer fill_info_ptr;
|
||||
gpointer fill_vtable_ptr;
|
||||
+ gboolean ret = TRUE;
|
||||
|
||||
if (g_path_is_absolute (file))
|
||||
path = g_strdup (file);
|
||||
@@ -274,10 +275,13 @@ query_module (GString *contents, const char *dir, const char *file)
|
||||
g_module_error());
|
||||
else
|
||||
g_fprintf (stderr, "Cannot load loader %s\n", path);
|
||||
+ ret = FALSE;
|
||||
}
|
||||
if (module)
|
||||
g_module_close (module);
|
||||
g_free (path);
|
||||
+
|
||||
+ return ret;
|
||||
}
|
||||
|
||||
#if defined(G_OS_WIN32) && defined(GDK_PIXBUF_RELOCATABLE)
|
||||
@@ -318,6 +322,7 @@ int main (int argc, char **argv)
|
||||
gint first_file = 1;
|
||||
GFile *pixbuf_libdir_file;
|
||||
gchar *pixbuf_libdir;
|
||||
+ gboolean success = TRUE;
|
||||
|
||||
#ifdef G_OS_WIN32
|
||||
gchar *libdir;
|
||||
@@ -456,7 +461,9 @@ int main (int argc, char **argv)
|
||||
}
|
||||
modules = g_list_sort (modules, (GCompareFunc)strcmp);
|
||||
for (l = modules; l != NULL; l = l->next)
|
||||
- query_module (contents, moduledir, l->data);
|
||||
+ if (!query_module (contents, moduledir, l->data))
|
||||
+ success = FALSE;
|
||||
+
|
||||
g_list_free_full (modules, g_free);
|
||||
g_free (moduledir);
|
||||
#else
|
||||
@@ -472,7 +479,8 @@ int main (int argc, char **argv)
|
||||
infilename = g_locale_to_utf8 (infilename,
|
||||
-1, NULL, NULL, NULL);
|
||||
#endif
|
||||
- query_module (contents, cwd, infilename);
|
||||
+ if (!query_module (contents, cwd, infilename))
|
||||
+ success = FALSE;
|
||||
}
|
||||
g_free (cwd);
|
||||
}
|
||||
@@ -492,5 +500,8 @@ int main (int argc, char **argv)
|
||||
|
||||
g_free (pixbuf_libdir);
|
||||
|
||||
- return 0;
|
||||
+ if (g_getenv ("GDK_PIXBUF_FATAL_LOADER"))
|
||||
+ return success ? 0 : 1;
|
||||
+ else
|
||||
+ return 0;
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
#! /bin/sh
|
||||
|
||||
gnome-desktop-testing-runner gdk-pixbuf
|
||||
120
sources/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.12.bb
Normal file
120
sources/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.12.bb
Normal file
@@ -0,0 +1,120 @@
|
||||
SUMMARY = "Image loading library for GTK+"
|
||||
DESCRIPTION = "The GDK Pixbuf library provides: Image loading and saving \
|
||||
facilities, fast scaling and compositing of pixbufs and Simple animation \
|
||||
loading (ie. animated GIFs)"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/GdkPixbuf"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/gdk-pixbuf/issues"
|
||||
|
||||
LICENSE = "LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
|
||||
file://gdk-pixbuf/gdk-pixbuf.h;endline=26;md5=72b39da7cbdde2e665329fef618e1d6b \
|
||||
"
|
||||
|
||||
SECTION = "libs"
|
||||
|
||||
DEPENDS = "glib-2.0 shared-mime-info"
|
||||
|
||||
MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
|
||||
file://run-ptest \
|
||||
file://fatal-loader.patch \
|
||||
file://0001-meson.build-allow-a-subset-of-tests-in-cross-compile.patch \
|
||||
file://CVE-2025-7345.patch \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "b9505b3445b9a7e48ced34760c3bcb73e966df3ac94c95a148cb669ab748e3c7"
|
||||
|
||||
inherit meson pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gi-docgen lib_package
|
||||
|
||||
GIR_MESON_OPTION = 'introspection'
|
||||
GIR_MESON_ENABLE_FLAG = "enabled"
|
||||
GIR_MESON_DISABLE_FLAG = "disabled"
|
||||
|
||||
LIBV = "2.10.0"
|
||||
|
||||
GDK_PIXBUF_LOADERS ?= "png jpeg"
|
||||
|
||||
PACKAGECONFIG = "${GDK_PIXBUF_LOADERS} \
|
||||
${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}"
|
||||
PACKAGECONFIG:class-native = "${GDK_PIXBUF_LOADERS}"
|
||||
|
||||
PACKAGECONFIG[png] = "-Dpng=enabled,-Dpng=disabled,libpng"
|
||||
PACKAGECONFIG[jpeg] = "-Djpeg=enabled,-Djpeg=disabled,jpeg"
|
||||
PACKAGECONFIG[tiff] = "-Dtiff=enabled,-Dtiff=disabled,tiff"
|
||||
PACKAGECONFIG[tests] = "-Dinstalled_tests=true,-Dinstalled_tests=false"
|
||||
|
||||
EXTRA_OEMESON = "-Dman=false"
|
||||
|
||||
PACKAGES =+ "${PN}-xlib"
|
||||
|
||||
# For GIO image type sniffing
|
||||
RDEPENDS:${PN} = "shared-mime-info"
|
||||
|
||||
FILES:${PN}-xlib = "${libdir}/*pixbuf_xlib*${SOLIBS}"
|
||||
ALLOW_EMPTY:${PN}-xlib = "1"
|
||||
|
||||
FILES:${PN} += "${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders"
|
||||
|
||||
FILES:${PN}-bin += "${datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer"
|
||||
|
||||
FILES:${PN}-dev += " \
|
||||
${bindir}/gdk-pixbuf-csource \
|
||||
${bindir}/gdk-pixbuf-pixdata \
|
||||
${bindir}/gdk-pixbuf-print-mime-types \
|
||||
${includedir}/* \
|
||||
${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders/*.la \
|
||||
"
|
||||
|
||||
PACKAGES_DYNAMIC += "^gdk-pixbuf-loader-.*"
|
||||
PACKAGES_DYNAMIC:class-native = ""
|
||||
|
||||
python populate_packages:prepend () {
|
||||
postinst_pixbufloader = d.getVar("postinst_pixbufloader")
|
||||
|
||||
loaders_root = d.expand('${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders')
|
||||
|
||||
packages = ' '.join(do_split_packages(d, loaders_root, r'^libpixbufloader-(.*)\.so$', 'gdk-pixbuf-loader-%s', 'GDK pixbuf loader for %s'))
|
||||
d.setVar('PIXBUF_PACKAGES', packages)
|
||||
|
||||
# The test suite exercises all the loaders, so ensure they are all
|
||||
# dependencies of the ptest package.
|
||||
d.appendVar("RDEPENDS:%s-ptest" % d.getVar('PN'), " " + packages)
|
||||
}
|
||||
|
||||
do_install:append() {
|
||||
# Copy gdk-pixbuf-query-loaders into libdir so it is always available
|
||||
# in multilib builds.
|
||||
cp ${D}/${bindir}/gdk-pixbuf-query-loaders ${D}/${libdir}/gdk-pixbuf-2.0/
|
||||
|
||||
}
|
||||
|
||||
do_install_ptest() {
|
||||
# Remove a bad fuzzing attempt that sporadically fails without a way to reproduce
|
||||
rm ${D}/${datadir}/installed-tests/gdk-pixbuf/pixbuf-randomly-modified.test
|
||||
# https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/issues/215
|
||||
rm ${D}/${datadir}/installed-tests/gdk-pixbuf/pixbuf-jpeg.test
|
||||
}
|
||||
|
||||
do_install:append:class-native() {
|
||||
find ${D}${libdir} -name "libpixbufloader-*.la" -exec rm \{\} \;
|
||||
|
||||
create_wrapper ${D}/${bindir}/gdk-pixbuf-csource \
|
||||
XDG_DATA_DIRS=${STAGING_DATADIR} \
|
||||
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache
|
||||
|
||||
create_wrapper ${D}/${bindir}/gdk-pixbuf-pixdata \
|
||||
XDG_DATA_DIRS=${STAGING_DATADIR} \
|
||||
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache
|
||||
|
||||
create_wrapper ${D}/${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders \
|
||||
XDG_DATA_DIRS=${STAGING_DATADIR} \
|
||||
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \
|
||||
GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders
|
||||
|
||||
create_wrapper ${D}/${bindir}/gdk-pixbuf-query-loaders \
|
||||
XDG_DATA_DIRS=${STAGING_DATADIR} \
|
||||
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \
|
||||
GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders
|
||||
}
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
@@ -0,0 +1,21 @@
|
||||
SUMMARY = "Documentation tool for GObject-based libraries"
|
||||
DESCRIPTION = "GI-DocGen is a document generator for GObject-based libraries. GObject is \
|
||||
the base type system of the GNOME project. GI-Docgen reuses the \
|
||||
introspection data generated by GObject-based libraries to generate the API \
|
||||
reference of these libraries, as well as other ancillary documentation."
|
||||
HOMEPAGE = "https://gnome.pages.gitlab.gnome.org/gi-docgen/"
|
||||
|
||||
LICENSE = "GPL-3.0-or-later & Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://gi-docgen.py;beginline=1;endline=5;md5=2dc0f1f01202478cfe813c0e7f80b326"
|
||||
|
||||
SRC_URI = "git://gitlab.gnome.org/GNOME/gi-docgen.git;protocol=https;branch=main"
|
||||
|
||||
SRCREV = "96f2e9b93e1d8a5338eb05b87fd879856ab7b3cc"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit setuptools3
|
||||
|
||||
RDEPENDS:${PN} += "python3-asyncio python3-core python3-jinja2 python3-json python3-markdown python3-markupsafe python3-pygments python3-toml python3-typogrify python3-xml"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
@@ -0,0 +1,29 @@
|
||||
SUMMARY = "GTK+ icon theme"
|
||||
DESCRIPTION = "The Adwaita icon theme is the default icon theme of the GNOME desktop \
|
||||
This package package contains an icon theme for Gtk+ 3 applications."
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme/issues"
|
||||
SECTION = "x11/gnome"
|
||||
|
||||
LICENSE = "LGPL-3.0-only | CC-BY-SA-3.0"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=c84cac88e46fc07647ea07e6c24eeb7c \
|
||||
file://COPYING_CCBYSA3;md5=96143d33de3a79321b1006c4e8ed07e7 \
|
||||
file://COPYING_LGPL;md5=e6a600fd5e1d9cbde2d983680233ad02"
|
||||
|
||||
inherit gnomebase allarch gtk-icon-cache
|
||||
|
||||
SRC_URI[archive.sha256sum] = "2442bfb06f4e6cc95bf6e2682fdff98fa5eddc688751b9d6215c623cb4e42ff1"
|
||||
|
||||
DEPENDS += "librsvg-native"
|
||||
|
||||
PACKAGES =+ "${PN}-cursors ${PN}-symbolic"
|
||||
|
||||
RREPLACES:${PN} = "gnome-icon-theme"
|
||||
RCONFLICTS:${PN} = "gnome-icon-theme"
|
||||
RPROVIDES:${PN} = "gnome-icon-theme"
|
||||
|
||||
FILES:${PN}-cursors = "${datadir}/icons/Adwaita/cursors/"
|
||||
FILES:${PN}-symbolic = "${datadir}/icons/Adwaita/symbolic*/"
|
||||
FILES:${PN}-doc += "${datadir}/licenses/adwaita-icon-theme"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
@@ -0,0 +1,28 @@
|
||||
Upstream-Status: Pending
|
||||
|
||||
In some circumstances, gconf isn't able to save configurations
|
||||
because ~/.config folder aka root_dir doesn't exist.
|
||||
This issue was not seen before because ~/.config directory is shared
|
||||
between several packages and one of those packages usually creates it
|
||||
by the time gconf wants to use it.
|
||||
|
||||
This patch makes sure that gconf creates the .config directory if it
|
||||
doesn't exist, along with the gconf directory inside it.
|
||||
|
||||
Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
|
||||
Signed-off-by: Alejandro Hernandez <alejandr@xilinx.com>
|
||||
|
||||
|
||||
Index: GConf-3.2.6/backends/markup-backend.c
|
||||
===================================================================
|
||||
--- GConf-3.2.6.orig/backends/markup-backend.c
|
||||
+++ GConf-3.2.6/backends/markup-backend.c
|
||||
@@ -276,7 +276,7 @@ resolve_address (const char *address,
|
||||
/* dir_mode without search bits */
|
||||
file_mode = dir_mode & (~0111);
|
||||
}
|
||||
- else if (g_mkdir (root_dir, dir_mode) < 0)
|
||||
+ else if (g_mkdir_with_parents (root_dir, dir_mode) < 0)
|
||||
{
|
||||
/* Error out even on EEXIST - shouldn't happen anyway */
|
||||
gconf_set_error (err, GCONF_ERROR_FAILED,
|
||||
60
sources/poky/meta/recipes-gnome/gnome/gconf/python3.patch
Normal file
60
sources/poky/meta/recipes-gnome/gnome/gconf/python3.patch
Normal file
@@ -0,0 +1,60 @@
|
||||
gconf: use python3
|
||||
|
||||
Convert gsettings-schema-convert to use python3.
|
||||
|
||||
Upstream-Status: Inappropriate [gconf is deprecated]
|
||||
|
||||
Signed-off-by: Joe Slater <joe.slater@windriver.com>
|
||||
|
||||
|
||||
--- a/gsettings/gsettings-schema-convert
|
||||
+++ b/gsettings/gsettings-schema-convert
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env python
|
||||
+#!/usr/bin/env python3
|
||||
# vim: set ts=4 sw=4 et: coding=UTF-8
|
||||
#
|
||||
# Copyright (c) 2010, Novell, Inc.
|
||||
@@ -603,7 +603,7 @@ class SimpleSchemaParser:
|
||||
for line in lines:
|
||||
current_line_nb += 1
|
||||
self.parse_line(line)
|
||||
- except GSettingsSchemaConvertException, e:
|
||||
+ except GSettingsSchemaConvertException as e:
|
||||
raise GSettingsSchemaConvertException('%s:%s: %s' % (os.path.basename(self.file), current_line_nb, e))
|
||||
|
||||
return self.root
|
||||
@@ -1095,7 +1095,7 @@ def main(args):
|
||||
try:
|
||||
parser = GConfSchemaParser(argfile, options.gettext_domain, options.schema_id, options.keep_underscores)
|
||||
schema_root = parser.parse()
|
||||
- except SyntaxError, e:
|
||||
+ except SyntaxError as e:
|
||||
raise GSettingsSchemaConvertException('\'%s\' does not look like a valid gconf schema file: %s' % (argfile, e))
|
||||
else:
|
||||
# autodetect if file is XML or not
|
||||
@@ -1104,7 +1104,7 @@ def main(args):
|
||||
schema_root = parser.parse()
|
||||
if not options.simple and not options.xml:
|
||||
options.simple = True
|
||||
- except SyntaxError, e:
|
||||
+ except SyntaxError as e:
|
||||
parser = SimpleSchemaParser(argfile)
|
||||
schema_root = parser.parse()
|
||||
if not options.simple and not options.xml:
|
||||
@@ -1127,13 +1127,13 @@ def main(args):
|
||||
fout = open(options.output, 'w')
|
||||
fout.write(output)
|
||||
fout.close()
|
||||
- except GSettingsSchemaConvertException, e:
|
||||
+ except GSettingsSchemaConvertException as e:
|
||||
fout.close()
|
||||
if os.path.exists(options.output):
|
||||
os.unlink(options.output)
|
||||
raise e
|
||||
|
||||
- except GSettingsSchemaConvertException, e:
|
||||
+ except GSettingsSchemaConvertException as e:
|
||||
print >> sys.stderr, '%s' % e
|
||||
return 1
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
Upstream-Status: Pending
|
||||
|
||||
Remove '+' from invalid characters list
|
||||
|
||||
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
|
||||
|
||||
Index: GConf-3.2.5/gconf/gconf-backend.c
|
||||
===================================================================
|
||||
--- GConf-3.2.5.orig/gconf/gconf-backend.c
|
||||
+++ GConf-3.2.5/gconf/gconf-backend.c
|
||||
@@ -37,7 +37,7 @@ static const char invalid_chars[] =
|
||||
/* Space is common in user names (and thus home directories) on Windows */
|
||||
" "
|
||||
#endif
|
||||
- "\t\r\n\"$&<>,+=#!()'|{}[]?~`;%\\";
|
||||
+ "\t\r\n\"$&<>,=#!()'|{}[]?~`;%\\";
|
||||
|
||||
static gboolean
|
||||
gconf_address_valid (const char *address,
|
||||
@@ -0,0 +1,95 @@
|
||||
Fixes errors such as this in the rootfs generation:
|
||||
|
||||
(gconftool-2.real:10095): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
|
||||
Using X11 for dbus-daemon autolaunch was disabled at compile time, set your DBUS_SESSION_BUS_ADDRESS instead
|
||||
|
||||
Upstream-Status: Backport
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
From b0895e1998ebc83ab030ec0f17c0685439f5b404 Mon Sep 17 00:00:00 2001
|
||||
From: Ray Strode <rstrode@redhat.com>
|
||||
Date: Mon, 15 Apr 2013 09:57:34 -0400
|
||||
Subject: [PATCH] dbus: Don't spew to console when unable to connect to dbus
|
||||
daemon
|
||||
|
||||
Instead pass the error up for the caller to decide what to do.
|
||||
|
||||
This prevent untrappable warning messages from showing up at the
|
||||
console if gconftool --makefile-install-rule is called.
|
||||
---
|
||||
gconf/gconf-dbus.c | 24 ++++++++++++------------
|
||||
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/gconf/gconf-dbus.c b/gconf/gconf-dbus.c
|
||||
index 5610fcf..048e3ea 100644
|
||||
--- a/gconf/gconf-dbus.c
|
||||
+++ b/gconf/gconf-dbus.c
|
||||
@@ -105,7 +105,7 @@ static GHashTable *engines_by_db = NULL;
|
||||
static GHashTable *engines_by_address = NULL;
|
||||
static gboolean dbus_disconnected = FALSE;
|
||||
|
||||
-static gboolean ensure_dbus_connection (void);
|
||||
+static gboolean ensure_dbus_connection (GError **error);
|
||||
static gboolean ensure_service (gboolean start_if_not_found,
|
||||
GError **err);
|
||||
static gboolean ensure_database (GConfEngine *conf,
|
||||
@@ -383,7 +383,7 @@ gconf_engine_detach (GConfEngine *conf)
|
||||
}
|
||||
|
||||
static gboolean
|
||||
-ensure_dbus_connection (void)
|
||||
+ensure_dbus_connection (GError **err)
|
||||
{
|
||||
DBusError error;
|
||||
|
||||
@@ -392,7 +392,9 @@ ensure_dbus_connection (void)
|
||||
|
||||
if (dbus_disconnected)
|
||||
{
|
||||
- g_warning ("The connection to DBus was broken. Can't reinitialize it.");
|
||||
+ g_set_error (err, GCONF_ERROR,
|
||||
+ GCONF_ERROR_NO_SERVER,
|
||||
+ "The connection to DBus was broken. Can't reinitialize it.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -402,7 +404,10 @@ ensure_dbus_connection (void)
|
||||
|
||||
if (!global_conn)
|
||||
{
|
||||
- g_warning ("Client failed to connect to the D-BUS daemon:\n%s", error.message);
|
||||
+ g_set_error (err, GCONF_ERROR,
|
||||
+ GCONF_ERROR_NO_SERVER,
|
||||
+ "Client failed to connect to the D-BUS daemon:\n%s",
|
||||
+ error.message);
|
||||
|
||||
dbus_error_free (&error);
|
||||
return FALSE;
|
||||
@@ -431,13 +436,8 @@ ensure_service (gboolean start_if_not_found,
|
||||
|
||||
if (global_conn == NULL)
|
||||
{
|
||||
- if (!ensure_dbus_connection ())
|
||||
- {
|
||||
- g_set_error (err, GCONF_ERROR,
|
||||
- GCONF_ERROR_NO_SERVER,
|
||||
- _("No D-BUS daemon running\n"));
|
||||
- return FALSE;
|
||||
- }
|
||||
+ if (!ensure_dbus_connection (err))
|
||||
+ return FALSE;
|
||||
|
||||
g_assert (global_conn != NULL);
|
||||
}
|
||||
@@ -2512,7 +2512,7 @@ gconf_ping_daemon (void)
|
||||
{
|
||||
if (global_conn == NULL)
|
||||
{
|
||||
- if (!ensure_dbus_connection ())
|
||||
+ if (!ensure_dbus_connection (NULL))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
61
sources/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb
Normal file
61
sources/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb
Normal file
@@ -0,0 +1,61 @@
|
||||
SUMMARY = "GNOME configuration system"
|
||||
DESCRIPTION = "GConf is a system for storing application preferences. \
|
||||
It is intended for user preferences; not configuration of something like \
|
||||
Apache, or arbitrary data storage."
|
||||
SECTION = "x11/gnome"
|
||||
HOMEPAGE = "https://gitlab.gnome.org/Archive/gconf"
|
||||
LICENSE = "LGPL-2.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
|
||||
|
||||
DEPENDS = "glib-2.0 glib-2.0-native dbus dbus-glib libxml2 intltool-native"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "autotools"
|
||||
inherit gnomebase gtk-doc gettext gobject-introspection gio-module-cache
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/GConf/${@gnome_verdir("${PV}")}/GConf-${PV}.tar.xz;name=archive \
|
||||
file://remove_plus_from_invalid_characters_list.patch \
|
||||
file://unable-connect-dbus.patch \
|
||||
file://create_config_directory.patch \
|
||||
file://python3.patch \
|
||||
"
|
||||
|
||||
SRC_URI[archive.md5sum] = "2b16996d0e4b112856ee5c59130e822c"
|
||||
SRC_URI[archive.sha256sum] = "1912b91803ab09a5eed34d364bf09fe3a2a9c96751fde03a4e0cfa51a04d784c"
|
||||
|
||||
S = "${WORKDIR}/GConf-${PV}"
|
||||
|
||||
EXTRA_OECONF = "--enable-shared --disable-static \
|
||||
--disable-orbit --with-openldap=no --disable-gtk"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'polkit', d)}"
|
||||
# We really don't want Polkit for native
|
||||
PACKAGECONFIG:class-native = ""
|
||||
|
||||
PACKAGECONFIG[polkit] = "--enable-defaults-service,--disable-defaults-service,polkit"
|
||||
PACKAGECONFIG[debug] = "--enable-debug=yes, --enable-debug=minimum"
|
||||
|
||||
do_install:append() {
|
||||
# this directory need to be created to avoid an Error 256 at gdm launch
|
||||
install -d ${D}${sysconfdir}/gconf/gconf.xml.system
|
||||
|
||||
# this stuff is unusable
|
||||
rm -f ${D}${libdir}/GConf/*/*.*a
|
||||
rm -f ${D}${libdir}/gio/*/*.*a
|
||||
}
|
||||
|
||||
do_install:append:class-native() {
|
||||
create_wrapper ${D}/${bindir}/gconftool-2 \
|
||||
GCONF_BACKEND_DIR=${STAGING_LIBDIR_NATIVE}/GConf/2
|
||||
}
|
||||
|
||||
FILES:${PN} += "${libdir}/GConf/* \
|
||||
${libdir}/gio/*/*.so \
|
||||
${datadir}/polkit* \
|
||||
${datadir}/dbus-1/services/*.service \
|
||||
${datadir}/dbus-1/system-services/*.service \
|
||||
"
|
||||
RDEPENDS:${PN} = "python3-xml"
|
||||
|
||||
FILES:${PN}-dev += "${datadir}/sgml/gconf/gconf-1.0.dtd"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
@@ -0,0 +1,76 @@
|
||||
From aeb5532f8be42d42f4e8725ca42e239b36983a4d Mon Sep 17 00:00:00 2001
|
||||
From: Sascha Silbe <x-yo17@se-silbe.de>
|
||||
Date: Fri, 8 Jun 2018 13:55:10 +0200
|
||||
Subject: [PATCH] Relocate the repository directory for native builds
|
||||
|
||||
Instead of hard-coding GOBJECT_INTROSPECTION_LIBDIR when
|
||||
gobject-introspection is built, use dladdr() to determine where
|
||||
GOBJECT_INTROSPECTION_LIBDIR is and use that path to calculate the
|
||||
repository directory.
|
||||
|
||||
This fixes gobject-introspection-native accessing paths across build
|
||||
directories (e.g. if the build directories use the same shared state
|
||||
cache or sstate mirror).
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
Signed-off-by: Sascha Silbe <x-yo17@se-silbe.de>
|
||||
|
||||
---
|
||||
girepository/girepository.c | 15 +++++++++++++--
|
||||
girepository/meson.build | 2 +-
|
||||
2 files changed, 14 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/girepository/girepository.c b/girepository/girepository.c
|
||||
index a0754f4..2d456f9 100644
|
||||
--- a/girepository/girepository.c
|
||||
+++ b/girepository/girepository.c
|
||||
@@ -21,6 +21,8 @@
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
+#define _GNU_SOURCE
|
||||
+
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
@@ -34,6 +36,8 @@
|
||||
#include "gitypelib-internal.h"
|
||||
#include "girepository-private.h"
|
||||
|
||||
+#include <dlfcn.h>
|
||||
+
|
||||
/**
|
||||
* SECTION:girepository
|
||||
* @short_description: GObject Introspection repository manager
|
||||
@@ -215,9 +219,16 @@ init_globals (void)
|
||||
g_free (custom_dirs);
|
||||
}
|
||||
|
||||
- libdir = GOBJECT_INTROSPECTION_LIBDIR;
|
||||
+ Dl_info gi_lib_info;
|
||||
|
||||
- typelib_dir = g_build_filename (libdir, "girepository-1.0", NULL);
|
||||
+ if (dladdr (g_irepository_get_default, &gi_lib_info)) {
|
||||
+ char *libdir = g_path_get_dirname (gi_lib_info.dli_fname);
|
||||
+ typelib_dir = g_build_filename (libdir, "girepository-1.0", NULL);
|
||||
+ g_free (libdir);
|
||||
+ } else {
|
||||
+ libdir = GOBJECT_INTROSPECTION_LIBDIR;
|
||||
+ typelib_dir = g_build_filename (libdir, "girepository-1.0", NULL);
|
||||
+ }
|
||||
|
||||
typelib_search_path = g_slist_prepend (typelib_search_path, typelib_dir);
|
||||
|
||||
diff --git a/girepository/meson.build b/girepository/meson.build
|
||||
index 786749a..15cf2a9 100644
|
||||
--- a/girepository/meson.build
|
||||
+++ b/girepository/meson.build
|
||||
@@ -45,7 +45,7 @@ girepo_internals_lib = static_library('girepository-internals',
|
||||
],
|
||||
c_args: gi_hidden_visibility_cflags + custom_c_args,
|
||||
include_directories : configinc,
|
||||
- dependencies: [girepo_gthash_dep, libffi_dep],
|
||||
+ dependencies: [girepo_gthash_dep, libffi_dep, cc.find_library('dl')],
|
||||
)
|
||||
|
||||
girepo_internals_dep = declare_dependency(
|
||||
@@ -0,0 +1,194 @@
|
||||
SUMMARY = "Middleware layer between GObject-using C libraries and language bindings"
|
||||
DESCRIPTION = "GObject Introspection is a project for providing machine \
|
||||
readable introspection data of the API of C libraries. This introspection \
|
||||
data can be used in several different use cases, for example automatic code \
|
||||
generation for bindings, API verification and documentation generation."
|
||||
HOMEPAGE = "https://wiki.gnome.org/action/show/Projects/GObjectIntrospection"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/gobject-introspection/issues"
|
||||
SECTION = "libs"
|
||||
LICENSE = "LGPL-2.0-or-later & GPL-2.0-or-later & MIT"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=c434e8128a68bedd59b80b2ac1eb1c4a \
|
||||
file://tools/compiler.c;endline=20;md5=fc5007fc20022720e6c0b0cdde41fabd \
|
||||
file://giscanner/sourcescanner.c;endline=22;md5=194d6e0c1d00662f32d030ce44de8d39 \
|
||||
file://girepository/giregisteredtypeinfo.c;endline=21;md5=661847611ae6979465415f31a759ba27 \
|
||||
"
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${BPN}/${@oe.utils.trim_version("${PV}", 2)}/${BPN}-${PV}.tar.xz \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "bd7babd99af7258e76819e45ba4a6bc399608fe762d83fde3cac033c50841bb4"
|
||||
|
||||
SRC_URI:append:class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch"
|
||||
|
||||
inherit meson pkgconfig gtk-doc python3targetconfig qemu gobject-introspection-data upstream-version-is-even multilib_script
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
MULTILIB_SCRIPTS = "${PN}:${bindir}/g-ir-annotation-tool ${PN}:${bindir}/g-ir-scanner"
|
||||
|
||||
DEPENDS += " libffi zlib glib-2.0 python3 flex-native bison-native"
|
||||
|
||||
# target build needs qemu to run temporary introspection binaries created
|
||||
# on the fly by g-ir-scanner and a native version of itself to run
|
||||
# native versions of its own tools during build.
|
||||
DEPENDS:append:class-target = " gobject-introspection-native qemu-native"
|
||||
|
||||
# needed for writing out the qemu wrapper script
|
||||
export STAGING_DIR_HOST
|
||||
export B
|
||||
|
||||
PACKAGECONFIG ?= ""
|
||||
PACKAGECONFIG[doctool] = "-Ddoctool=enabled,-Ddoctool=disabled,python3-mako,"
|
||||
|
||||
# Configure target build to use native tools of itself and to use a qemu wrapper
|
||||
# and optionally to generate introspection data
|
||||
EXTRA_OEMESON:class-target = " \
|
||||
-Dgi_cross_use_prebuilt_gi=true \
|
||||
-Dgi_cross_binary_wrapper=${B}/g-ir-scanner-qemuwrapper \
|
||||
-Dgi_cross_ldd_wrapper=${B}/g-ir-scanner-lddwrapper \
|
||||
-Dgi_cross_pkgconfig_sysroot_path=${PKG_CONFIG_SYSROOT_DIR} \
|
||||
${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Dbuild_introspection_data=true', '-Dbuild_introspection_data=false', d)} \
|
||||
${@'-Dgir_dir_prefix=${libdir}' if d.getVar('MULTILIBS') else ''} \
|
||||
"
|
||||
|
||||
do_configure:prepend:class-native() {
|
||||
# Tweak the native python scripts so that they don't refer to the
|
||||
# full path of native python binary (the solution is taken from glib-2.0 recipe)
|
||||
# This removes the risk of exceeding Linux kernel's shebang line limit (128 bytes)
|
||||
sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in
|
||||
}
|
||||
|
||||
do_configure:prepend:class-target() {
|
||||
# Write out a qemu wrapper that will be given to gi-scanner so that it
|
||||
# can run target helper binaries through that.
|
||||
qemu_binary="${@qemu_wrapper_cmdline(d, '$STAGING_DIR_HOST', ['\\$GIR_EXTRA_LIBS_PATH','.libs','$STAGING_DIR_HOST/${libdir}','$STAGING_DIR_HOST/${base_libdir}'])}"
|
||||
cat > ${B}/g-ir-scanner-qemuwrapper << EOF
|
||||
#!/bin/sh
|
||||
# Use a modules directory which doesn't exist so we don't load random things
|
||||
# which may then get deleted (or their dependencies) and potentially segfault
|
||||
export GIO_MODULE_DIR=${STAGING_LIBDIR}/gio/modules-dummy
|
||||
|
||||
$qemu_binary "\$@"
|
||||
if [ \$? -ne 0 ]; then
|
||||
echo "If the above error message is about missing .so libraries, then setting up GIR_EXTRA_LIBS_PATH in the recipe should help."
|
||||
echo "(typically like this: GIR_EXTRA_LIBS_PATH=\"$""{B}/something/.libs\" )"
|
||||
exit 1
|
||||
fi
|
||||
EOF
|
||||
chmod +x ${B}/g-ir-scanner-qemuwrapper
|
||||
|
||||
# Write out a wrapper for g-ir-scanner itself, which will be used when building introspection files
|
||||
# for glib-based packages. This wrapper calls the native version of the scanner, and tells it to use
|
||||
# a qemu wrapper for running transient target binaries produced by the scanner, and an include directory
|
||||
# from the target sysroot.
|
||||
cat > ${B}/g-ir-scanner-wrapper << EOF
|
||||
#!/bin/sh
|
||||
# This prevents g-ir-scanner from writing cache data to user's HOME dir
|
||||
export GI_SCANNER_DISABLE_CACHE=1
|
||||
|
||||
g-ir-scanner --lib-dirs-envvar=GIR_EXTRA_LIBS_PATH --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_DATADIR}/gir-1.0 --add-include-path=${STAGING_LIBDIR}/gir-1.0 "\$@"
|
||||
EOF
|
||||
chmod +x ${B}/g-ir-scanner-wrapper
|
||||
|
||||
# Write out a wrapper for g-ir-compiler, which runs the target version of it through qemu.
|
||||
# g-ir-compiler writes out the raw content of a C struct to disk, and therefore is architecture dependent.
|
||||
cat > ${B}/g-ir-compiler-wrapper << EOF
|
||||
#!/bin/sh
|
||||
${STAGING_BINDIR}/g-ir-scanner-qemuwrapper ${STAGING_BINDIR}/g-ir-compiler "\$@"
|
||||
EOF
|
||||
chmod +x ${B}/g-ir-compiler-wrapper
|
||||
|
||||
# Write out a wrapper to use instead of ldd, which does not work when a binary is built
|
||||
# for a different architecture
|
||||
cat > ${B}/g-ir-scanner-lddwrapper << EOF
|
||||
#!/bin/sh
|
||||
\$OBJDUMP -p "\$@"
|
||||
EOF
|
||||
chmod +x ${B}/g-ir-scanner-lddwrapper
|
||||
|
||||
# Also tweak the target python scripts so that they don't refer to the
|
||||
# native version of python binary (the solution is taken from glib-2.0 recipe)
|
||||
sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in
|
||||
}
|
||||
|
||||
do_compile:prepend() {
|
||||
# Needed to run g-ir unit tests, which won't be able to find the built libraries otherwise
|
||||
export GIR_EXTRA_LIBS_PATH=$B/.libs
|
||||
}
|
||||
|
||||
do_install:prepend() {
|
||||
# This prevents g-ir-scanner from writing cache data to $HOME
|
||||
export GI_SCANNER_DISABLE_CACHE=1
|
||||
}
|
||||
|
||||
# Our wrappers need to be available system-wide, because they will be used
|
||||
# to build introspection files for all other gobject-based packages
|
||||
do_install:append:class-target() {
|
||||
install -d ${D}${bindir}/
|
||||
install ${B}/g-ir-scanner-qemuwrapper ${D}${bindir}/
|
||||
install ${B}/g-ir-scanner-wrapper ${D}${bindir}/
|
||||
install ${B}/g-ir-compiler-wrapper ${D}${bindir}/
|
||||
install ${B}/g-ir-scanner-lddwrapper ${D}${bindir}/
|
||||
}
|
||||
|
||||
# we need target versions of introspection tools in sysroot so that they can be run via qemu
|
||||
# when building introspection files in other packages
|
||||
SYSROOT_DIRS:append:class-target = " ${bindir}"
|
||||
|
||||
SYSROOT_PREPROCESS_FUNCS:append:class-target = " gi_binaries_sysroot_preprocess"
|
||||
gi_binaries_sysroot_preprocess() {
|
||||
# Tweak the binary names in the introspection pkgconfig file, so that it
|
||||
# picks up our wrappers which do the cross-compile and qemu magic.
|
||||
sed -i \
|
||||
-e "s|g_ir_scanner=.*|g_ir_scanner=${bindir}/g-ir-scanner-wrapper|" \
|
||||
-e "s|g_ir_compiler=.*|g_ir_compiler=${bindir}/g-ir-compiler-wrapper|" \
|
||||
${SYSROOT_DESTDIR}${libdir}/pkgconfig/gobject-introspection-1.0.pc
|
||||
}
|
||||
|
||||
SYSROOT_PREPROCESS_FUNCS:append = " gi_ldsoconf_sysroot_preprocess"
|
||||
gi_ldsoconf_sysroot_preprocess () {
|
||||
mkdir -p ${SYSROOT_DESTDIR}${bindir}
|
||||
dest=${SYSROOT_DESTDIR}${bindir}/postinst-ldsoconf-${PN}
|
||||
echo "#!/bin/sh" > $dest
|
||||
echo "mkdir -p ${STAGING_DIR_TARGET}${sysconfdir}" >> $dest
|
||||
echo "echo ${base_libdir} >> ${STAGING_DIR_TARGET}${sysconfdir}/ld.so.conf" >> $dest
|
||||
echo "echo ${libdir} >> ${STAGING_DIR_TARGET}${sysconfdir}/ld.so.conf" >> $dest
|
||||
chmod 755 $dest
|
||||
}
|
||||
|
||||
# Remove wrapper files from the package, only used for cross-compiling
|
||||
PACKAGE_PREPROCESS_FUNCS += "gi_package_preprocess"
|
||||
gi_package_preprocess() {
|
||||
rm -f ${PKGD}${bindir}/g-ir-scanner-qemuwrapper
|
||||
rm -f ${PKGD}${bindir}/g-ir-scanner-wrapper
|
||||
rm -f ${PKGD}${bindir}/g-ir-compiler-wrapper
|
||||
rm -f ${PKGD}${bindir}/g-ir-scanner-lddwrapper
|
||||
}
|
||||
|
||||
SSTATE_SCAN_FILES += "g-ir-scanner-qemuwrapper g-ir-scanner-wrapper g-ir-compiler-wrapper g-ir-scanner-lddwrapper Gio-2.0.gir postinst-ldsoconf-${PN}"
|
||||
|
||||
# .typelib files are needed at runtime and so they go to the main package
|
||||
FILES:${PN}:append = " ${libdir}/girepository-*/*.typelib"
|
||||
|
||||
# .gir files go to dev package, as they're needed for developing (but not for running)
|
||||
# things that depends on introspection.
|
||||
FILES:${PN}-dev:append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir"
|
||||
FILES:${PN}-dev:append = " ${datadir}/gir-*/*.rnc"
|
||||
|
||||
# These are used by gobject-based packages
|
||||
# to generate transient introspection binaries
|
||||
FILES:${PN}-dev:append = " ${datadir}/gobject-introspection-1.0/gdump.c \
|
||||
${datadir}/gobject-introspection-1.0/Makefile.introspection"
|
||||
|
||||
# These are used by dependent packages (e.g. pygobject) to build their
|
||||
# testsuites.
|
||||
FILES:${PN}-dev:append = " ${datadir}/gobject-introspection-1.0/tests/*.c \
|
||||
${datadir}/gobject-introspection-1.0/tests/*.h"
|
||||
|
||||
FILES:${PN}-dbg += "${libdir}/gobject-introspection/giscanner/.debug/"
|
||||
FILES:${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a"
|
||||
|
||||
# setuptools can be removed when upstream removes all uses of distutils
|
||||
RDEPENDS:${PN} = "python3-pickle python3-xml python3-setuptools"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
@@ -0,0 +1,15 @@
|
||||
SUMMARY = "GNOME desktop-wide GSettings schemas"
|
||||
DESCRIPTION = "GSettings desktop-wide schemas contains a collection of \
|
||||
GSettings schemas for settings shared by various components of a desktop."
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/issues"
|
||||
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
DEPENDS = "glib-2.0"
|
||||
|
||||
|
||||
inherit gnomebase gsettings gobject-introspection gettext
|
||||
|
||||
SRC_URI[archive.sha256sum] = "493a46a1161b6388d57aa72f632a79ce96c42d5ffbd1d0b00f496ec5876f8575"
|
||||
154
sources/poky/meta/recipes-gnome/gtk+/gtk+3.inc
Normal file
154
sources/poky/meta/recipes-gnome/gtk+/gtk+3.inc
Normal file
@@ -0,0 +1,154 @@
|
||||
|
||||
SUMMARY = "Multi-platform toolkit for creating GUIs"
|
||||
DESCRIPTION = "GTK+ is a multi-platform toolkit for creating graphical user interfaces. Offering a complete \
|
||||
set of widgets, GTK+ is suitable for projects ranging from small one-off projects to complete application suites."
|
||||
HOMEPAGE = "http://www.gtk.org"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/"
|
||||
SECTION = "libs"
|
||||
|
||||
DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf gdk-pixbuf-native"
|
||||
|
||||
LICENSE = "LGPL-2.0-only & LGPL-2.0-or-later & LGPL-2.1-or-later"
|
||||
|
||||
inherit meson gettext pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings features_check gobject-introspection
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
GSETTINGS_PACKAGE:class-native = ""
|
||||
|
||||
# versions >= 3.90 are development versions, otherwise like upstream-version-is-even
|
||||
UPSTREAM_CHECK_REGEX = "[^\d\.](?P<pver>3\.([1-8]?[02468])+(\.\d+)+)\.tar"
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
|
||||
do_configure:prepend() {
|
||||
# These files are generated by wayland-scanner but will race over modification
|
||||
# time between the copies in the sysroot from wayland-protocols and the copy
|
||||
# in the source tree. Solve the race by deleting so they need to be regenerated.
|
||||
rm -f ${S}/modules/input/*-text-input-*.[ch]
|
||||
}
|
||||
|
||||
GTKDOC_MESON_OPTION = 'gtk_doc'
|
||||
|
||||
EXTRA_OEMESON = "-Dxinerama=no -Dtests=false"
|
||||
EXTRA_OEMESON:append:class-native = " -Ddemos=false -Dexamples=false"
|
||||
|
||||
PACKAGECONFIG ??= " \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'opengl x11', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'opengl wayland', 'wayland', '', d)} \
|
||||
"
|
||||
PACKAGECONFIG:class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
|
||||
PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
|
||||
|
||||
PACKAGECONFIG[x11] = "-Dx11_backend=true,-Dx11_backend=false,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes"
|
||||
# this is provided by oe-core patch that removes epoxy/gl dependency from a X11 build
|
||||
PACKAGECONFIG[opengl] = "-Dopengl=true,-Dopengl=false,libepoxy"
|
||||
PACKAGECONFIG[wayland] = "-Dwayland_backend=true,-Dwayland_backend=false,wayland wayland-protocols libxkbcommon virtual/egl virtual/libgles2 wayland-native"
|
||||
PACKAGECONFIG[cups] = ",,cups,cups gtk3-printbackend-cups"
|
||||
PACKAGECONFIG[colord] = "-Dcolord=yes,-Dcolord=no,colord"
|
||||
PACKAGECONFIG[cloudproviders] = "-Dcloudproviders=true,-Dcloudproviders=false,libcloudproviders"
|
||||
PACKAGECONFIG[tracker3] = "-Dtracker3=true,-Dtracker3=false,tracker,tracker-miners"
|
||||
|
||||
prepare_gtk_scripts() {
|
||||
mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0
|
||||
|
||||
# duplicate gtk-query-immodules for post install script update_gtk_immodules_cache
|
||||
mkdir -p ${D}${libexecdir}
|
||||
ln ${D}${bindir}/gtk-query-immodules-3.0 ${D}${libexecdir}/${MLPREFIX}gtk-query-immodules-3.0
|
||||
}
|
||||
|
||||
do_install:append:class-target() {
|
||||
prepare_gtk_scripts
|
||||
}
|
||||
|
||||
do_install:append:class-nativesdk() {
|
||||
prepare_gtk_scripts
|
||||
}
|
||||
|
||||
do_install:append:class-native() {
|
||||
create_wrapper ${D}/${bindir}/gtk-update-icon-cache \
|
||||
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache
|
||||
create_wrapper ${D}/${bindir}/gtk-encode-symbolic-svg \
|
||||
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache
|
||||
}
|
||||
|
||||
PROVIDES += "gtk-icon-utils"
|
||||
PACKAGES =+ "${PN}-demo"
|
||||
LIBV = "3.0.0"
|
||||
|
||||
FILES:${PN}-demo = "${bindir}/gtk3-demo \
|
||||
${bindir}/gtk3-demo-application \
|
||||
${bindir}/gtk3-icon-browser \
|
||||
${bindir}/gtk3-widget-factory \
|
||||
${datadir}/gtk-3.0/demo \
|
||||
${datadir}/applications/gtk3-demo.desktop \
|
||||
${datadir}/applications/gtk3-icon-browser.desktop \
|
||||
${datadir}/applications/gtk3-widget-factory.desktop \
|
||||
${datadir}/icons/hicolor/*/apps/gtk3-demo*.png \
|
||||
${datadir}/icons/hicolor/*/apps/gtk3-widget-factory*.png"
|
||||
|
||||
FILES:${PN}:append = " ${bindir}/gtk-update-icon-cache-3.0 \
|
||||
${bindir}/gtk-query-immodules-3.0 \
|
||||
${bindir}/gtk-launch \
|
||||
${datadir}/themes ${datadir}/gtk-3.0/emoji \
|
||||
${sysconfdir} ${datadir}/glib-2.0/schemas/ \
|
||||
${libdir}/gtk-3.0/${LIBV}/engines/libpixmap.so \
|
||||
${libdir}/gtk-3.0/modules/*.so"
|
||||
|
||||
FILES:${PN}-dev += " \
|
||||
${datadir}/gtk-3.0/gtkbuilder.rng \
|
||||
${datadir}/gtk-3.0/include \
|
||||
${datadir}/gtk-3.0/valgrind \
|
||||
${datadir}/gettext/its \
|
||||
${libdir}/gtk-3.0/include \
|
||||
${libdir}/gtk-3.0/${LIBV}/loaders/*.la \
|
||||
${libdir}/gtk-3.0/${LIBV}/immodules/*.la \
|
||||
${libdir}/gtk-3.0/3.0.0/printbackends/*.la \
|
||||
${libdir}/gtk-3.0/${LIBV}/engines/*.la \
|
||||
${libdir}/gtk-3.0/modules/*.la \
|
||||
${bindir}/gtk-builder-convert \
|
||||
${bindir}/gtk-encode-symbolic-svg \
|
||||
${bindir}/gtk-builder-tool \
|
||||
${bindir}/gtk-query-settings \
|
||||
"
|
||||
|
||||
GTKBASE_RRECOMMENDS ?= "liberation-fonts \
|
||||
gdk-pixbuf-loader-png \
|
||||
gdk-pixbuf-loader-jpeg \
|
||||
gdk-pixbuf-loader-gif \
|
||||
gdk-pixbuf-loader-xpm \
|
||||
shared-mime-info \
|
||||
adwaita-icon-theme-symbolic \
|
||||
"
|
||||
|
||||
GTKBASE_RRECOMMENDS:class-native ?= "\
|
||||
"
|
||||
|
||||
GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1"
|
||||
|
||||
RRECOMMENDS:${PN} = "${GTKBASE_RRECOMMENDS}"
|
||||
RRECOMMENDS:${PN}:libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
|
||||
RDEPENDS:${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}"
|
||||
|
||||
PACKAGES_DYNAMIC += "^gtk3-immodule-.* ^gtk3-printbackend-.*"
|
||||
|
||||
ALTERNATIVE:${PN} = "gtk-update-icon-cache"
|
||||
ALTERNATIVE_TARGET[gtk-update-icon-cache] = "${bindir}/gtk-update-icon-cache-3.0"
|
||||
ALTERNATIVE_PRIORITY = "30"
|
||||
|
||||
python populate_packages:prepend () {
|
||||
import os.path
|
||||
|
||||
gtk_libdir = d.expand('${libdir}/gtk-3.0/${LIBV}')
|
||||
immodules_root = os.path.join(gtk_libdir, 'immodules')
|
||||
printmodules_root = os.path.join(gtk_libdir, 'printbackends');
|
||||
|
||||
immodules = do_split_packages(d, immodules_root, r'^im-(.*)\.so$', 'gtk3-immodule-%s', 'GTK input module for %s')
|
||||
if immodules:
|
||||
d.setVar("GTKIMMODULES_PACKAGES", " ".join(immodules))
|
||||
|
||||
do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk3-printbackend-%s', 'GTK printbackend module for %s')
|
||||
|
||||
if (d.getVar('DEBIAN_NAMES')):
|
||||
d.setVar(d.expand('PKG:${PN}'), '${MLPREFIX}libgtk-3.0')
|
||||
}
|
||||
738
sources/poky/meta/recipes-gnome/gtk+/gtk+3/opengl.patch
Normal file
738
sources/poky/meta/recipes-gnome/gtk+/gtk+3/opengl.patch
Normal file
@@ -0,0 +1,738 @@
|
||||
From 4a0716f04fb25b51b08e994bd5a900b2e7f7fed5 Mon Sep 17 00:00:00 2001
|
||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
Date: Fri, 16 Oct 2015 16:35:16 +0300
|
||||
Subject: [PATCH] Do not try to initialize GL without libGL
|
||||
|
||||
_gdk_x11_screen_update_visuals_for_gl() will end up calling epoxys
|
||||
GLX api which will exit() if libGL.so.1 is not present. We do not
|
||||
want that to happen and we don't want every app to have to set
|
||||
"GDK_GL=disabled" environment variable: so use #ifdef set based on
|
||||
opengl distro feature.
|
||||
|
||||
Upstream is not interested in the fix as it is: Either epoxy should be
|
||||
fixed (to not exit) or GTK+ possibly could do some additional probing
|
||||
before calling epoxy APIs.
|
||||
|
||||
Upstream-Status: Denied
|
||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
---
|
||||
demos/gtk-demo/meson.build | 5 ++++-
|
||||
docs/tools/meson.build | 7 +++++--
|
||||
docs/tools/widgets.c | 6 +++++-
|
||||
gdk/gdkconfig.h.meson | 1 +
|
||||
gdk/gdkdisplay.c | 4 ++++
|
||||
gdk/gdkgl.c | 10 ++++++++++
|
||||
gdk/gdkglcontext.c | 6 ++++++
|
||||
gdk/gdkwindow.c | 13 +++++++++++++
|
||||
gdk/meson.build | 8 +++++++-
|
||||
gdk/x11/gdkdisplay-x11.c | 6 +++++-
|
||||
gdk/x11/gdkvisual-x11.c | 5 +++++
|
||||
gdk/x11/gdkwindow-x11.c | 4 ++++
|
||||
gdk/x11/gdkx-autocleanups.h | 2 ++
|
||||
gdk/x11/gdkx.h | 2 ++
|
||||
gdk/x11/meson.build | 7 +++++--
|
||||
gtk/gtkglarea.c | 19 +++++++++++++++++++
|
||||
gtk/inspector/general.c | 6 ++++++
|
||||
meson.build | 17 ++++++++++++++---
|
||||
meson_options.txt | 2 ++
|
||||
tests/meson.build | 9 +++++++--
|
||||
testsuite/gtk/objects-finalize.c | 2 ++
|
||||
21 files changed, 128 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/demos/gtk-demo/meson.build b/demos/gtk-demo/meson.build
|
||||
index 252da16d05..4b57cff6ac 100644
|
||||
--- a/demos/gtk-demo/meson.build
|
||||
+++ b/demos/gtk-demo/meson.build
|
||||
@@ -28,7 +28,6 @@ demos = files([
|
||||
'fishbowl.c',
|
||||
'foreigndrawing.c',
|
||||
'gestures.c',
|
||||
- 'glarea.c',
|
||||
'headerbar.c',
|
||||
'hypertext.c',
|
||||
'iconview.c',
|
||||
@@ -87,6 +86,10 @@ elif harfbuzz_dep.found() and pangoft_dep.found()
|
||||
gtkdemo_deps += [harfbuzz_dep, pangoft_dep]
|
||||
endif
|
||||
|
||||
+if opengl_enabled
|
||||
+ demos += files('glarea.c')
|
||||
+endif
|
||||
+
|
||||
if os_unix
|
||||
demos += files('pagesetup.c')
|
||||
endif
|
||||
diff --git a/docs/tools/meson.build b/docs/tools/meson.build
|
||||
index 05621ee7ed..3d0a333b32 100644
|
||||
--- a/docs/tools/meson.build
|
||||
+++ b/docs/tools/meson.build
|
||||
@@ -2,10 +2,13 @@ if x11_enabled
|
||||
doc_shooter_sources = [
|
||||
'shadow.c',
|
||||
'shooter.c',
|
||||
- 'widgets.c',
|
||||
- '../../tests/gtkgears.c',
|
||||
+ 'widgets.c'
|
||||
]
|
||||
|
||||
+ if opengl_enabled
|
||||
+ doc_shooter_sources += ['../../tests/gtkgears.c']
|
||||
+ endif
|
||||
+
|
||||
doc_shooter = executable('doc-shooter', doc_shooter_sources,
|
||||
include_directories: [ confinc, gdkinc, gtkinc, testinc, ],
|
||||
dependencies: libgtk_dep)
|
||||
diff --git a/docs/tools/widgets.c b/docs/tools/widgets.c
|
||||
index 932daf1746..348807e133 100644
|
||||
--- a/docs/tools/widgets.c
|
||||
+++ b/docs/tools/widgets.c
|
||||
@@ -8,7 +8,9 @@
|
||||
#include <X11/Xatom.h>
|
||||
#include <gdkx.h>
|
||||
#include "widgets.h"
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include "gtkgears.h"
|
||||
+#endif
|
||||
|
||||
#define SMALL_WIDTH 240
|
||||
#define SMALL_HEIGHT 75
|
||||
@@ -1526,9 +1528,11 @@ create_gl_area (void)
|
||||
widget = gtk_frame_new (NULL);
|
||||
gtk_frame_set_shadow_type (GTK_FRAME (widget), GTK_SHADOW_IN);
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
gears = gtk_gears_new ();
|
||||
gtk_container_add (GTK_CONTAINER (widget), gears);
|
||||
-
|
||||
+#endif
|
||||
+
|
||||
info = new_widget_info ("glarea", widget, MEDIUM);
|
||||
|
||||
return info;
|
||||
diff --git a/gdk/gdkconfig.h.meson b/gdk/gdkconfig.h.meson
|
||||
index 7db19e0470..088651bafa 100644
|
||||
--- a/gdk/gdkconfig.h.meson
|
||||
+++ b/gdk/gdkconfig.h.meson
|
||||
@@ -15,6 +15,7 @@ G_BEGIN_DECLS
|
||||
#mesondefine GDK_WINDOWING_WAYLAND
|
||||
#mesondefine GDK_WINDOWING_WIN32
|
||||
#mesondefine GDK_WINDOWING_QUARTZ
|
||||
+#mesondefine GDK_WITH_OPENGL
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c
|
||||
index 748f54860c..04ef2c09d4 100644
|
||||
--- a/gdk/gdkdisplay.c
|
||||
+++ b/gdk/gdkdisplay.c
|
||||
@@ -2420,7 +2420,11 @@ gboolean
|
||||
gdk_display_make_gl_context_current (GdkDisplay *display,
|
||||
GdkGLContext *context)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
return GDK_DISPLAY_GET_CLASS (display)->make_gl_context_current (display, context);
|
||||
+#else
|
||||
+ return FALSE;
|
||||
+#endif
|
||||
}
|
||||
|
||||
GdkRenderingMode
|
||||
diff --git a/gdk/gdkgl.c b/gdk/gdkgl.c
|
||||
index 9690077cc2..55f85ef605 100644
|
||||
--- a/gdk/gdkgl.c
|
||||
+++ b/gdk/gdkgl.c
|
||||
@@ -21,8 +21,9 @@
|
||||
#include "gdkglcontextprivate.h"
|
||||
|
||||
#include "gdkinternals.h"
|
||||
-
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
#include <math.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -36,6 +37,7 @@
|
||||
g_object_ref (window), g_object_unref);
|
||||
}
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
static const char *
|
||||
get_vertex_type_name (int type)
|
||||
{
|
||||
@@ -208,6 +210,7 @@
|
||||
glUseProgram (paint_data->current_program->program);
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
|
||||
void
|
||||
gdk_gl_texture_quads (GdkGLContext *paint_context,
|
||||
@@ -216,6 +219,7 @@
|
||||
GdkTexturedQuad *quads,
|
||||
gboolean flip_colors)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContextPaintData *paint_data = gdk_gl_context_get_paint_data (paint_context);
|
||||
GdkGLContextProgram *program;
|
||||
GdkWindow *window = gdk_gl_context_get_window (paint_context);
|
||||
@@ -289,6 +293,7 @@
|
||||
|
||||
glDisableVertexAttribArray (program->position_location);
|
||||
glDisableVertexAttribArray (program->uv_location);
|
||||
+#endif
|
||||
}
|
||||
|
||||
/* x,y,width,height describes a rectangle in the gl render buffer
|
||||
@@ -337,6 +342,7 @@
|
||||
int width,
|
||||
int height)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContext *paint_context, *current_context;
|
||||
cairo_surface_t *image;
|
||||
cairo_matrix_t matrix;
|
||||
@@ -703,6 +709,7 @@
|
||||
if (clip_region)
|
||||
cairo_region_destroy (clip_region);
|
||||
|
||||
+#endif
|
||||
}
|
||||
|
||||
/* This is always called with the paint context current */
|
||||
@@ -710,6 +717,7 @@
|
||||
gdk_gl_texture_from_surface (cairo_surface_t *surface,
|
||||
cairo_region_t *region)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContext *paint_context;
|
||||
cairo_surface_t *image;
|
||||
double device_x_offset, device_y_offset;
|
||||
@@ -810,4 +818,5 @@
|
||||
|
||||
glDisable (GL_SCISSOR_TEST);
|
||||
glDeleteTextures (1, &texture_id);
|
||||
+#endif
|
||||
}
|
||||
diff --git a/gdk/gdkglcontext.c b/gdk/gdkglcontext.c
|
||||
index 3b23639e1c..1f04f8e0b2 100644
|
||||
--- a/gdk/gdkglcontext.c
|
||||
+++ b/gdk/gdkglcontext.c
|
||||
@@ -85,7 +85,9 @@
|
||||
#include "gdkintl.h"
|
||||
#include "gdk-private.h"
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
|
||||
typedef struct {
|
||||
GdkDisplay *display;
|
||||
@@ -243,6 +245,7 @@ gdk_gl_context_upload_texture (GdkGLContext *context,
|
||||
int height,
|
||||
guint texture_target)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContextPrivate *priv = gdk_gl_context_get_instance_private (context);
|
||||
|
||||
g_return_if_fail (GDK_IS_GL_CONTEXT (context));
|
||||
@@ -286,6 +289,7 @@ gdk_gl_context_upload_texture (GdkGLContext *context,
|
||||
glTexSubImage2D (texture_target, 0, 0, i, width, 1, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, (unsigned char*) data + (i * stride));
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
|
||||
static gboolean
|
||||
@@ -774,6 +778,7 @@ gdk_gl_context_realize (GdkGLContext *context,
|
||||
static void
|
||||
gdk_gl_context_check_extensions (GdkGLContext *context)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContextPrivate *priv = gdk_gl_context_get_instance_private (context);
|
||||
gboolean has_npot, has_texture_rectangle;
|
||||
|
||||
@@ -853,6 +858,7 @@ gdk_gl_context_check_extensions (GdkGLContext *context)
|
||||
priv->use_texture_rectangle ? "yes" : "no"));
|
||||
|
||||
priv->extensions_checked = TRUE;
|
||||
+#endif
|
||||
}
|
||||
|
||||
/**
|
||||
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
|
||||
index 727b0cf1f4..d4d91b0d16 100644
|
||||
--- a/gdk/gdkwindow.c
|
||||
+++ b/gdk/gdkwindow.c
|
||||
@@ -45,7 +45,9 @@
|
||||
|
||||
#include <math.h>
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
|
||||
/* for the use of round() */
|
||||
#include "fallback-c89.c"
|
||||
@@ -2844,6 +2846,13 @@ gdk_window_get_paint_gl_context (GdkWindow *window,
|
||||
{
|
||||
GError *internal_error = NULL;
|
||||
|
||||
+#ifndef HAVE_OPENGL
|
||||
+ g_set_error_literal (error, GDK_GL_ERROR,
|
||||
+ GDK_GL_ERROR_NOT_AVAILABLE,
|
||||
+ _("GL support disabled with --disable-opengl"));
|
||||
+ return NULL;
|
||||
+#endif
|
||||
+
|
||||
if (_gdk_gl_flags & GDK_GL_DISABLE)
|
||||
{
|
||||
g_set_error_literal (error, GDK_GL_ERROR,
|
||||
@@ -2979,6 +2988,7 @@ gdk_window_begin_paint_internal (GdkWindow *window,
|
||||
}
|
||||
else
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
gdk_gl_context_make_current (context);
|
||||
/* With gl we always need a surface to combine the gl
|
||||
drawing with the native drawing. */
|
||||
@@ -2993,6 +3003,7 @@ gdk_window_begin_paint_internal (GdkWindow *window,
|
||||
glBlendFunc (GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
|
||||
|
||||
glViewport (0, 0, ww, wh);
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3056,6 +3067,7 @@ gdk_window_end_paint_internal (GdkWindow *window)
|
||||
|
||||
gdk_gl_context_make_current (window->gl_paint_context);
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
if (!cairo_region_is_empty (opaque_region))
|
||||
gdk_gl_texture_from_surface (window->current_paint.surface,
|
||||
opaque_region);
|
||||
@@ -3066,6 +3078,7 @@ gdk_window_end_paint_internal (GdkWindow *window)
|
||||
window->current_paint.need_blend_region);
|
||||
glDisable(GL_BLEND);
|
||||
}
|
||||
+#endif
|
||||
|
||||
cairo_region_destroy (opaque_region);
|
||||
|
||||
diff --git a/gdk/meson.build b/gdk/meson.build
|
||||
index 4bb1bf2b6c..64172b8d3e 100644
|
||||
--- a/gdk/meson.build
|
||||
+++ b/gdk/meson.build
|
||||
@@ -56,7 +56,6 @@ gdk_gir_public_headers = files(
|
||||
'gdkdrawingcontext.h',
|
||||
'gdkevents.h',
|
||||
'gdkframetimings.h',
|
||||
- 'gdkglcontext.h',
|
||||
'gdkkeys.h',
|
||||
'gdkkeysyms.h',
|
||||
'gdkmain.h',
|
||||
@@ -78,6 +77,12 @@ gdk_gir_public_headers = files(
|
||||
'gdkwindow.h',
|
||||
)
|
||||
gdk_nogir_public_headers = [files('gdkkeysyms-compat.h')]
|
||||
+if opengl_enabled
|
||||
+gdk_gir_public_headers += files('gdkglcontext.h')
|
||||
+else
|
||||
+gdk_nogir_public_headers += files('gdkglcontext.h')
|
||||
+endif
|
||||
+
|
||||
gdk_public_headers = gdk_gir_public_headers + gdk_nogir_public_headers
|
||||
install_headers(gdk_public_headers, subdir : 'gtk-3.0/gdk')
|
||||
|
||||
@@ -166,6 +171,7 @@ gdkconfig_cdata.set('GDK_WINDOWING_WAYLAND', wayland_enabled)
|
||||
gdkconfig_cdata.set('GDK_WINDOWING_WIN32', win32_enabled)
|
||||
gdkconfig_cdata.set('GDK_WINDOWING_BROADWAY', broadway_enabled)
|
||||
gdkconfig_cdata.set('GDK_WINDOWING_QUARTZ', quartz_enabled)
|
||||
+gdkconfig_cdata.set('GDK_WITH_OPENGL', opengl_enabled)
|
||||
|
||||
gdkconfig = configure_file(
|
||||
input : 'gdkconfig.h.meson',
|
||||
diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c
|
||||
index 7e08f472cc..30fd7b6089 100644
|
||||
--- a/gdk/x11/gdkdisplay-x11.c
|
||||
+++ b/gdk/x11/gdkdisplay-x11.c
|
||||
@@ -37,7 +37,9 @@
|
||||
#include "gdkdisplay-x11.h"
|
||||
#include "gdkprivate-x11.h"
|
||||
#include "gdkscreen-x11.h"
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include "gdkglcontext-x11.h"
|
||||
+#endif
|
||||
#include "gdk-private.h"
|
||||
#include "gdkprofilerprivate.h"
|
||||
|
||||
@@ -3191,7 +3193,9 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class)
|
||||
display_class->text_property_to_utf8_list = _gdk_x11_display_text_property_to_utf8_list;
|
||||
display_class->utf8_to_string_target = _gdk_x11_display_utf8_to_string_target;
|
||||
|
||||
- display_class->make_gl_context_current = gdk_x11_display_make_gl_context_current;
|
||||
+#ifdef HAVE_OPENGL
|
||||
+ display_class->make_gl_context_current = gdk_x11_display_make_gl_context_current;
|
||||
+#endif
|
||||
|
||||
display_class->get_default_seat = gdk_x11_display_get_default_seat;
|
||||
|
||||
diff --git a/gdk/x11/gdkvisual-x11.c b/gdk/x11/gdkvisual-x11.c
|
||||
index 81479d81f4..3c8c5c02ff 100644
|
||||
--- a/gdk/x11/gdkvisual-x11.c
|
||||
+++ b/gdk/x11/gdkvisual-x11.c
|
||||
@@ -306,7 +306,12 @@ _gdk_x11_screen_init_visuals (GdkScreen *screen)
|
||||
/* If GL is available we want to pick better default/rgba visuals,
|
||||
as we care about glx details such as alpha/depth/stencil depth,
|
||||
stereo and double buffering */
|
||||
+ /* update_visuals_for_gl() will end up calling epoxy GLX api which
|
||||
+ will exit if libgl is not there: so only do this if we know GL
|
||||
+ is available */
|
||||
+#ifdef HAVE_GLX
|
||||
_gdk_x11_screen_update_visuals_for_gl (screen);
|
||||
+#endif
|
||||
}
|
||||
|
||||
gint
|
||||
diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c
|
||||
index 194bc82e29..0302bb68d4 100644
|
||||
--- a/gdk/x11/gdkwindow-x11.c
|
||||
+++ b/gdk/x11/gdkwindow-x11.c
|
||||
@@ -36,7 +36,9 @@
|
||||
#include "gdkasync.h"
|
||||
#include "gdkeventsource.h"
|
||||
#include "gdkdisplay-x11.h"
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include "gdkglcontext-x11.h"
|
||||
+#endif
|
||||
#include "gdkprivate-x11.h"
|
||||
#include "gdk-private.h"
|
||||
|
||||
@@ -5888,7 +5890,9 @@ gdk_window_impl_x11_class_init (GdkWindowImplX11Class *klass)
|
||||
impl_class->set_opaque_region = gdk_x11_window_set_opaque_region;
|
||||
impl_class->set_shadow_width = gdk_x11_window_set_shadow_width;
|
||||
impl_class->show_window_menu = gdk_x11_window_show_window_menu;
|
||||
+#ifdef HAVE_OPENGL
|
||||
impl_class->create_gl_context = gdk_x11_window_create_gl_context;
|
||||
impl_class->invalidate_for_new_frame = gdk_x11_window_invalidate_for_new_frame;
|
||||
+#endif
|
||||
impl_class->get_unscaled_size = gdk_x11_window_get_unscaled_size;
|
||||
}
|
||||
diff --git a/gdk/x11/gdkx-autocleanups.h b/gdk/x11/gdkx-autocleanups.h
|
||||
index edb0ea7dbf..a317d61cca 100644
|
||||
--- a/gdk/x11/gdkx-autocleanups.h
|
||||
+++ b/gdk/x11/gdkx-autocleanups.h
|
||||
@@ -30,7 +30,9 @@ G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11DeviceXI2, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Display, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11DisplayManager, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11DragContext, g_object_unref)
|
||||
+#ifdef HAVE_OPENGL
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11GLContext, g_object_unref)
|
||||
+#endif
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Keymap, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Screen, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Visual, g_object_unref)
|
||||
diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx.h
|
||||
index 1f64bccb6d..4db6c18351 100644
|
||||
--- a/gdk/x11/gdkx.h
|
||||
+++ b/gdk/x11/gdkx.h
|
||||
@@ -43,7 +43,9 @@
|
||||
#include <gdk/x11/gdkx11display.h>
|
||||
#include <gdk/x11/gdkx11displaymanager.h>
|
||||
#include <gdk/x11/gdkx11dnd.h>
|
||||
+#ifdef GDK_WITH_OPENGL
|
||||
#include <gdk/x11/gdkx11glcontext.h>
|
||||
+#endif
|
||||
#include <gdk/x11/gdkx11keys.h>
|
||||
#include <gdk/x11/gdkx11monitor.h>
|
||||
#include <gdk/x11/gdkx11property.h>
|
||||
diff --git a/gdk/x11/meson.build b/gdk/x11/meson.build
|
||||
index 754ae0a615..0318c83877 100644
|
||||
--- a/gdk/x11/meson.build
|
||||
+++ b/gdk/x11/meson.build
|
||||
@@ -14,7 +14,6 @@ gdk_x11_sources = files(
|
||||
'gdkeventsource.c',
|
||||
'gdkeventtranslator.c',
|
||||
'gdkgeometry-x11.c',
|
||||
- 'gdkglcontext-x11.c',
|
||||
'gdkkeys-x11.c',
|
||||
'gdkmain-x11.c',
|
||||
'gdkproperty-x11.c',
|
||||
@@ -42,7 +41,6 @@ gdk_x11_public_headers = files(
|
||||
'gdkx11display.h',
|
||||
'gdkx11displaymanager.h',
|
||||
'gdkx11dnd.h',
|
||||
- 'gdkx11glcontext.h',
|
||||
'gdkx11keys.h',
|
||||
'gdkx11monitor.h',
|
||||
'gdkx11property.h',
|
||||
@@ -53,6 +51,11 @@ gdk_x11_public_headers = files(
|
||||
'gdkx11window.h',
|
||||
)
|
||||
|
||||
+if opengl_enabled
|
||||
+ gdk_x11_sources += files('gdkglcontext-x11.c')
|
||||
+ gdk_x11_public_headers += files('gdkx11glcontext.h')
|
||||
+endif
|
||||
+
|
||||
install_headers(gdk_x11_public_headers, subdir: 'gtk-3.0/gdk/x11/')
|
||||
install_headers('gdkx.h', subdir: 'gtk-3.0/gdk/')
|
||||
|
||||
diff --git a/gtk/gtkglarea.c b/gtk/gtkglarea.c
|
||||
index 802303ea9f..6439d7745d 100644
|
||||
--- a/gtk/gtkglarea.c
|
||||
+++ b/gtk/gtkglarea.c
|
||||
@@ -29,7 +29,9 @@
|
||||
#include "gtkprivate.h"
|
||||
#include "gtkrender.h"
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
|
||||
/**
|
||||
* SECTION:gtkglarea
|
||||
@@ -369,9 +371,12 @@ gtk_gl_area_real_create_context (GtkGLArea *area)
|
||||
static void
|
||||
gtk_gl_area_resize (GtkGLArea *area, int width, int height)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
glViewport (0, 0, width, height);
|
||||
+#endif
|
||||
}
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
/*
|
||||
* Creates all the buffer objects needed for rendering the scene
|
||||
*/
|
||||
@@ -483,6 +488,7 @@ gtk_gl_area_allocate_buffers (GtkGLArea *area)
|
||||
|
||||
priv->needs_render = TRUE;
|
||||
}
|
||||
+#endif
|
||||
|
||||
/**
|
||||
* gtk_gl_area_attach_buffers:
|
||||
@@ -501,6 +507,7 @@ gtk_gl_area_allocate_buffers (GtkGLArea *area)
|
||||
void
|
||||
gtk_gl_area_attach_buffers (GtkGLArea *area)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GtkGLAreaPrivate *priv = gtk_gl_area_get_instance_private (area);
|
||||
|
||||
g_return_if_fail (GTK_IS_GL_AREA (area));
|
||||
@@ -533,11 +540,13 @@ gtk_gl_area_attach_buffers (GtkGLArea *area)
|
||||
glFramebufferRenderbuffer (GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT,
|
||||
GL_RENDERBUFFER, priv->depth_stencil_buffer);
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
|
||||
static void
|
||||
gtk_gl_area_delete_buffers (GtkGLArea *area)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GtkGLAreaPrivate *priv = gtk_gl_area_get_instance_private (area);
|
||||
|
||||
if (priv->context == NULL)
|
||||
@@ -569,6 +578,7 @@ gtk_gl_area_delete_buffers (GtkGLArea *area)
|
||||
glDeleteFramebuffers (1, &priv->frame_buffer);
|
||||
priv->frame_buffer = 0;
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -679,6 +689,7 @@ gtk_gl_area_draw (GtkWidget *widget,
|
||||
GtkGLArea *area = GTK_GL_AREA (widget);
|
||||
GtkGLAreaPrivate *priv = gtk_gl_area_get_instance_private (area);
|
||||
gboolean unused;
|
||||
+#ifdef HAVE_OPENGL
|
||||
int w, h, scale;
|
||||
GLenum status;
|
||||
|
||||
@@ -736,6 +747,14 @@ gtk_gl_area_draw (GtkWidget *widget,
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
+#else
|
||||
+ if (priv->error != NULL)
|
||||
+ gtk_gl_area_draw_error_screen (area,
|
||||
+ cr,
|
||||
+ gtk_widget_get_allocated_width (widget),
|
||||
+ gtk_widget_get_allocated_height (widget));
|
||||
+ return FALSE;
|
||||
+#endif
|
||||
}
|
||||
|
||||
static gboolean
|
||||
diff --git a/gtk/inspector/general.c b/gtk/inspector/general.c
|
||||
index 4fd0c3039c..a8e59ed077 100644
|
||||
--- a/gtk/inspector/general.c
|
||||
+++ b/gtk/inspector/general.c
|
||||
@@ -33,8 +33,10 @@
|
||||
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
#include "x11/gdkx.h"
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/glx.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#ifdef GDK_WINDOWING_WIN32
|
||||
#include "win32/gdkwin32.h"
|
||||
@@ -217,6 +219,7 @@ add_label_row (GtkInspectorGeneral *gen,
|
||||
gtk_size_group_add_widget (GTK_SIZE_GROUP (gen->priv->labels), label);
|
||||
}
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
static void
|
||||
append_glx_extension_row (GtkInspectorGeneral *gen,
|
||||
@@ -226,6 +229,7 @@ append_glx_extension_row (GtkInspectorGeneral *gen,
|
||||
add_check_row (gen, GTK_LIST_BOX (gen->priv->gl_box), ext, epoxy_has_glx_extension (dpy, 0, ext), 0);
|
||||
}
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#ifdef GDK_WINDOWING_WAYLAND
|
||||
static void
|
||||
@@ -275,6 +279,7 @@ wayland_get_display (struct wl_display *wl_display)
|
||||
static void
|
||||
init_gl (GtkInspectorGeneral *gen)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
if (GDK_IS_X11_DISPLAY (gdk_display_get_default ()))
|
||||
{
|
||||
@@ -301,6 +306,7 @@ init_gl (GtkInspectorGeneral *gen)
|
||||
}
|
||||
else
|
||||
#endif
|
||||
+#endif
|
||||
#ifdef GDK_WINDOWING_WAYLAND
|
||||
if (GDK_IS_WAYLAND_DISPLAY (gdk_display_get_default ()))
|
||||
{
|
||||
diff --git a/meson.build b/meson.build
|
||||
index aed48fc3f6..bfc33af0f6 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -137,6 +137,7 @@ wayland_enabled = get_option('wayland_backend')
|
||||
broadway_enabled = get_option('broadway_backend')
|
||||
quartz_enabled = get_option('quartz_backend')
|
||||
win32_enabled = get_option('win32_backend')
|
||||
+opengl_enabled = get_option('opengl')
|
||||
|
||||
os_unix = false
|
||||
os_linux = false
|
||||
@@ -430,7 +431,7 @@ pangocairo_dep = dependency('pangocairo', version: cairo_req,
|
||||
fallback : ['pango', 'libpangocairo_dep'])
|
||||
pixbuf_dep = dependency('gdk-pixbuf-2.0', version: gdk_pixbuf_req,
|
||||
fallback : ['gdk-pixbuf', 'gdkpixbuf_dep'])
|
||||
-epoxy_dep = dependency('epoxy', version: epoxy_req,
|
||||
+epoxy_dep = dependency('epoxy', version: epoxy_req, required: opengl_enabled,
|
||||
fallback: ['libepoxy', 'libepoxy_dep'])
|
||||
atk_dep = dependency('atk', version: atk_req,
|
||||
fallback : ['atk', 'libatk_dep'])
|
||||
@@ -476,6 +477,10 @@ if tracker3_enabled
|
||||
endif
|
||||
endif
|
||||
|
||||
+if opengl_enabled
|
||||
+ cdata.set('HAVE_OPENGL', 1)
|
||||
+endif
|
||||
+
|
||||
if iso_codes_dep.found()
|
||||
cdata.set_quoted('ISO_CODES_PREFIX', iso_codes_dep.get_variable(pkgconfig: 'prefix'))
|
||||
else
|
||||
@@ -912,9 +917,15 @@ else
|
||||
gio_packages = ['gio-2.0', glib_req]
|
||||
endif
|
||||
|
||||
+if opengl_enabled
|
||||
+ epoxy_packages = ['epoxy', epoxy_req]
|
||||
+else
|
||||
+ epoxy_packages = []
|
||||
+endif
|
||||
+
|
||||
pkgconf.set('GDK_PRIVATE_PACKAGES',
|
||||
' '.join(gio_packages + x11_pkgs + wayland_pkgs + cairo_backends +
|
||||
- ['epoxy', epoxy_req] + cloudproviders_packages +
|
||||
+ epoxy_packages + cloudproviders_packages +
|
||||
['fribidi', fribidi_req]))
|
||||
|
||||
gtk_packages = ' '.join([
|
||||
@@ -928,7 +939,7 @@ pkgconf.set('GTK_PACKAGES', gtk_packages)
|
||||
# Requires.private
|
||||
pc_gdk_extra_libs += cairo_libs
|
||||
|
||||
-gtk_private_packages = atk_pkgs + wayland_pkgs + ['epoxy', epoxy_req, 'fribidi', fribidi_req]
|
||||
+gtk_private_packages = atk_pkgs + wayland_pkgs + epoxy_packages + ['fribidi', fribidi_req]
|
||||
if wayland_enabled or x11_enabled
|
||||
gtk_private_packages += ['pangoft2']
|
||||
endif
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 94099aa01e..8bd096896d 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -19,6 +19,8 @@ option('profiler', type: 'boolean', value: false,
|
||||
description : 'Enable profiler support')
|
||||
option('tracker3', type: 'boolean', value: false,
|
||||
description : 'Enable Tracker3 filechooser search')
|
||||
+option('opengl', type: 'boolean', value: true,
|
||||
+ description : 'Enable use of GL')
|
||||
|
||||
# Print backends
|
||||
option('print_backends', type : 'string', value : 'auto',
|
||||
diff --git a/tests/meson.build b/tests/meson.build
|
||||
index 586fe2f45e..6ecf317dde 100644
|
||||
--- a/tests/meson.build
|
||||
+++ b/tests/meson.build
|
||||
@@ -5,7 +5,6 @@ gtk_tests = [
|
||||
['scrolling-performance', ['frame-stats.c', 'variable.c']],
|
||||
['blur-performance', ['../gtk/gtkcairoblur.c']],
|
||||
['flicker'],
|
||||
- ['gdkgears', ['gtkgears.c']],
|
||||
['listmodel'],
|
||||
['motion-compression'],
|
||||
['styleexamples'],
|
||||
@@ -54,7 +53,6 @@ gtk_tests = [
|
||||
['testfullscreen'],
|
||||
['testgeometry'],
|
||||
['testgiconpixbuf'],
|
||||
- ['testglblending', ['gtkgears.c']],
|
||||
['testgmenu'],
|
||||
['testgrid'],
|
||||
['testgrouping'],
|
||||
@@ -137,6 +135,13 @@ if x11_enabled
|
||||
]
|
||||
endif
|
||||
|
||||
+if opengl_enabled
|
||||
+ gtk_tests += [
|
||||
+ ['gdkgears', ['gtkgears.c']],
|
||||
+ ['testglblending', ['gtkgears.c']],
|
||||
+ ]
|
||||
+endif
|
||||
+
|
||||
if os_linux
|
||||
gtk_tests += [['testfontchooserdialog']]
|
||||
endif
|
||||
diff --git a/testsuite/gtk/objects-finalize.c b/testsuite/gtk/objects-finalize.c
|
||||
index 24540e313f..e0f863ab6a 100644
|
||||
--- a/testsuite/gtk/objects-finalize.c
|
||||
+++ b/testsuite/gtk/objects-finalize.c
|
||||
@@ -116,7 +116,9 @@ main (int argc, char **argv)
|
||||
all_types[i] != GDK_TYPE_X11_DEVICE_MANAGER_CORE &&
|
||||
all_types[i] != GDK_TYPE_X11_DEVICE_MANAGER_XI2 &&
|
||||
all_types[i] != GDK_TYPE_X11_DISPLAY_MANAGER &&
|
||||
+#ifdef HAVE_OPENGL
|
||||
all_types[i] != GDK_TYPE_X11_GL_CONTEXT &&
|
||||
+#endif
|
||||
#endif
|
||||
/* Not allowed to finalize a GdkPixbufLoader without calling gdk_pixbuf_loader_close() */
|
||||
all_types[i] != GDK_TYPE_PIXBUF_LOADER &&
|
||||
--
|
||||
2.30.2
|
||||
|
||||
17
sources/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.41.bb
Normal file
17
sources/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.41.bb
Normal file
@@ -0,0 +1,17 @@
|
||||
require gtk+3.inc
|
||||
|
||||
MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
|
||||
|
||||
SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \
|
||||
file://opengl.patch \
|
||||
"
|
||||
SRC_URI[sha256sum] = "47da61487af3087a94bc49296fd025ca0bc02f96ef06c556e7c8988bd651b6fa"
|
||||
|
||||
S = "${WORKDIR}/gtk+-${PV}"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
|
||||
file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
|
||||
file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
|
||||
file://tests/testgtk.c;endline=25;md5=cb732daee1d82af7a2bf953cf3cf26f1"
|
||||
|
||||
CVE_PRODUCT = "gnome:gtk"
|
||||
135
sources/poky/meta/recipes-gnome/gtk+/gtk4_4.14.1.bb
Normal file
135
sources/poky/meta/recipes-gnome/gtk+/gtk4_4.14.1.bb
Normal file
@@ -0,0 +1,135 @@
|
||||
SUMMARY = "Multi-platform toolkit for creating GUIs"
|
||||
DESCRIPTION = "GTK is a multi-platform toolkit for creating graphical user interfaces. Offering a complete \
|
||||
set of widgets, GTK is suitable for projects ranging from small one-off projects to complete application suites."
|
||||
HOMEPAGE = "http://www.gtk.org"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/"
|
||||
SECTION = "libs"
|
||||
|
||||
DEPENDS = " \
|
||||
atk \
|
||||
cairo \
|
||||
fribidi \
|
||||
gdk-pixbuf \
|
||||
gdk-pixbuf-native \
|
||||
gi-docgen \
|
||||
glib-2.0 \
|
||||
graphene \
|
||||
harfbuzz \
|
||||
jpeg \
|
||||
libdrm \
|
||||
libepoxy \
|
||||
libpng \
|
||||
librsvg \
|
||||
libxkbcommon \
|
||||
pango \
|
||||
tiff \
|
||||
"
|
||||
|
||||
LICENSE = "LGPL-2.0-only & LGPL-2.0-or-later & LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
|
||||
file://gtk/gtk.h;endline=25;md5=61900d77e8d5bc67cf15ad93de9a3490 \
|
||||
file://gdk/gdk.h;endline=25;md5=a0fb26c1f6b94e66d148279e192c333f \
|
||||
file://tests/testgtk.c;endline=25;md5=49d06770681b8322466b52ed19d29fb2 \
|
||||
"
|
||||
|
||||
MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
|
||||
|
||||
UPSTREAM_CHECK_REGEX = "gtk-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar.xz"
|
||||
|
||||
SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk/${MAJ_VER}/gtk-${PV}.tar.xz"
|
||||
SRC_URI[sha256sum] = "fcefb3f132f8cc4711a9efa5b353c9ae9bb5eeff0246fa74dbc2f2f839b9e308"
|
||||
|
||||
S = "${WORKDIR}/gtk-${PV}"
|
||||
|
||||
CVE_PRODUCT = "gnome:gtk"
|
||||
|
||||
inherit meson gettext pkgconfig gi-docgen update-alternatives gsettings features_check gobject-introspection
|
||||
|
||||
# TBD: nativesdk
|
||||
# gobject-introspection.bbclass pins introspection off for nativesk. As long as
|
||||
# we do not remove this wisdom or hack gtk4, it is not possible to build
|
||||
# nativesdk-gtk4
|
||||
BBCLASSEXTEND = "native"
|
||||
|
||||
GSETTINGS_PACKAGE:class-native = ""
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
REQUIRED_DISTRO_FEATURES = "opengl"
|
||||
GTKDOC_MESON_OPTION = "documentation"
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
|
||||
EXTRA_OEMESON = " -Dbuild-tests=false -Dbuild-testsuite=false -Dbuild-demos=false"
|
||||
|
||||
PACKAGECONFIG ??= "gstreamer ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11 vulkan', d)}"
|
||||
PACKAGECONFIG:class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
|
||||
PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
|
||||
|
||||
PACKAGECONFIG[x11] = "-Dx11-backend=true,-Dx11-backend=false,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes xinerama"
|
||||
PACKAGECONFIG[wayland] = "-Dwayland-backend=true,-Dwayland-backend=false,wayland wayland-protocols virtual/egl virtual/libgles2 wayland-native"
|
||||
PACKAGECONFIG[cloudproviders] = "-Dcloudproviders=enabled,-Dcloudproviders=disabled,libcloudproviders"
|
||||
PACKAGECONFIG[cups] = "-Dprint-cups=enabled,-Dprint-cups=disabled,cups,cups gtk4-printbackend-cups"
|
||||
PACKAGECONFIG[colord] = "-Dcolord=enabled,-Dcolord=disabled,colord"
|
||||
PACKAGECONFIG[iso-codes] = ",,iso-codes,iso-codes"
|
||||
# gtk4 wants gstreamer-player-1.0 -> gstreamer1.0-plugins-bad
|
||||
PACKAGECONFIG[gstreamer] = "-Dmedia-gstreamer=enabled,-Dmedia-gstreamer=disabled,gstreamer1.0-plugins-bad"
|
||||
PACKAGECONFIG[tracker] = "-Dtracker=enabled,-Dtracker=disabled,tracker,tracker-miners"
|
||||
PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled, vulkan-loader vulkan-headers shaderc-native"
|
||||
|
||||
# Disable int-conversion warning as error until [1] is fixed
|
||||
# [1] https://gitlab.gnome.org/GNOME/gtk/-/issues/6033
|
||||
CFLAGS:append = " -Wno-error=int-conversion"
|
||||
|
||||
LIBV = "4.0.0"
|
||||
|
||||
FILES:${PN}:append = " \
|
||||
${datadir}/glib-2.0/schemas/ \
|
||||
${datadir}/gtk-4.0/emoji/ \
|
||||
${datadir}/metainfo/ \
|
||||
${datadir}/icons/hicolor/*/apps/org.gtk.PrintEditor4*.* \
|
||||
${libdir}/gtk-4.0/${LIBV}/media \
|
||||
${bindir}/gtk4-update-icon-cache \
|
||||
${bindir}/gtk4-launch \
|
||||
"
|
||||
|
||||
FILES:${PN}-dev += " \
|
||||
${datadir}/gtk-4.0/gtk4builder.rng \
|
||||
${datadir}/gtk-4.0/include \
|
||||
${datadir}/gtk-4.0/valgrind \
|
||||
${datadir}/gettext/its \
|
||||
${bindir}/gtk4-builder-tool \
|
||||
${bindir}/gtk4-encode-symbolic-svg \
|
||||
${bindir}/gtk4-query-settings \
|
||||
"
|
||||
|
||||
GTKBASE_RRECOMMENDS ?= " \
|
||||
liberation-fonts \
|
||||
gdk-pixbuf-loader-png \
|
||||
gdk-pixbuf-loader-jpeg \
|
||||
gdk-pixbuf-loader-gif \
|
||||
gdk-pixbuf-loader-xpm \
|
||||
shared-mime-info \
|
||||
adwaita-icon-theme-symbolic \
|
||||
"
|
||||
|
||||
GTKBASE_RRECOMMENDS:class-native ?= ""
|
||||
|
||||
GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1"
|
||||
|
||||
RRECOMMENDS:${PN} = "${GTKBASE_RRECOMMENDS}"
|
||||
RRECOMMENDS:${PN}:libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
|
||||
RDEPENDS:${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}"
|
||||
|
||||
PACKAGES_DYNAMIC += "^gtk4-printbackend-.*"
|
||||
python populate_packages:prepend () {
|
||||
import os.path
|
||||
|
||||
gtk_libdir = d.expand('${libdir}/gtk-4.0/${LIBV}')
|
||||
printmodules_root = os.path.join(gtk_libdir, 'printbackends');
|
||||
|
||||
do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk4-printbackend-%s', 'GTK printbackend module for %s')
|
||||
|
||||
if (d.getVar('DEBIAN_NAMES')):
|
||||
d.setVar(d.expand('PKG:${PN}'), '${MLPREFIX}libgtk-4.0')
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
From 8b7fbbb405959f2868ad6eadd7dd00018758a8a5 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Wed, 7 Sep 2016 14:52:04 +0300
|
||||
Subject: [PATCH] Do not error out if xsltproc is not found.
|
||||
|
||||
This allows us to drop the hard xsltproc dependency, if we're not
|
||||
going to actually run the gtkdoc scripts (when api documentation is
|
||||
disabled).
|
||||
|
||||
Upstream-Status: Inappropriate [oe-core specific]
|
||||
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 b0c88d7..2a61d6e 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -58,7 +58,7 @@ dnl Check for xsltproc
|
||||
dnl
|
||||
AC_PATH_PROG([XSLTPROC], [xsltproc])
|
||||
if test -z "$XSLTPROC"; then
|
||||
- AC_MSG_ERROR([xsltproc not found])
|
||||
+ AC_MSG_WARN([xsltproc not found])
|
||||
fi
|
||||
|
||||
dnl
|
||||
--
|
||||
2.9.3
|
||||
|
||||
@@ -0,0 +1,139 @@
|
||||
From 80e6aff72affa6d92f5abd7ff6353dfc4a7bff38 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Wed, 31 Aug 2016 16:44:46 +0300
|
||||
Subject: [PATCH] Do not hardocode paths to perl/python in scripts.
|
||||
|
||||
Doing so when the interpreters are somewhere deep in a sysroot directory
|
||||
can reach the shebang line limit, and resulting scripts wouldn't work
|
||||
on targets either.
|
||||
|
||||
Upstream-Status: Inappropriate [oe-core specific]
|
||||
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
|
||||
---
|
||||
gtkdoc-check.in | 2 +-
|
||||
gtkdoc-depscan.in | 2 +-
|
||||
gtkdoc-fixxref.in | 2 +-
|
||||
gtkdoc-mkdb.in | 2 +-
|
||||
gtkdoc-mkhtml.in | 2 +-
|
||||
gtkdoc-mkman.in | 2 +-
|
||||
gtkdoc-mkpdf.in | 2 +-
|
||||
gtkdoc-rebase.in | 2 +-
|
||||
gtkdoc-scan.in | 2 +-
|
||||
gtkdoc-scangobj.in | 2 +-
|
||||
tests/tools.sh.in | 2 +-
|
||||
11 files changed, 11 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/gtkdoc-check.in b/gtkdoc-check.in
|
||||
index 8c8e917..f6a25f6 100755
|
||||
--- a/gtkdoc-check.in
|
||||
+++ b/gtkdoc-check.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python; coding: utf-8 -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/gtkdoc-depscan.in b/gtkdoc-depscan.in
|
||||
index 9bfaf30..aadc952 100755
|
||||
--- a/gtkdoc-depscan.in
|
||||
+++ b/gtkdoc-depscan.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
|
||||
from __future__ import print_function
|
||||
|
||||
diff --git a/gtkdoc-fixxref.in b/gtkdoc-fixxref.in
|
||||
index 44f6bd1..26fbd93 100755
|
||||
--- a/gtkdoc-fixxref.in
|
||||
+++ b/gtkdoc-fixxref.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/gtkdoc-mkdb.in b/gtkdoc-mkdb.in
|
||||
index 42d5731..3a56d56 100755
|
||||
--- a/gtkdoc-mkdb.in
|
||||
+++ b/gtkdoc-mkdb.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python; coding: utf-8 -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/gtkdoc-mkhtml.in b/gtkdoc-mkhtml.in
|
||||
index 0d0a15d..914ff55 100755
|
||||
--- a/gtkdoc-mkhtml.in
|
||||
+++ b/gtkdoc-mkhtml.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python; coding: utf-8 -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/gtkdoc-mkman.in b/gtkdoc-mkman.in
|
||||
index c5445cd..65db71a 100755
|
||||
--- a/gtkdoc-mkman.in
|
||||
+++ b/gtkdoc-mkman.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python; coding: utf-8 -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/gtkdoc-mkpdf.in b/gtkdoc-mkpdf.in
|
||||
index e8c0c03..f807236 100755
|
||||
--- a/gtkdoc-mkpdf.in
|
||||
+++ b/gtkdoc-mkpdf.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python; coding: utf-8 -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/gtkdoc-rebase.in b/gtkdoc-rebase.in
|
||||
index 17a71c2..ec3fd28 100755
|
||||
--- a/gtkdoc-rebase.in
|
||||
+++ b/gtkdoc-rebase.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/gtkdoc-scan.in b/gtkdoc-scan.in
|
||||
index 954c811..f461504 100755
|
||||
--- a/gtkdoc-scan.in
|
||||
+++ b/gtkdoc-scan.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/gtkdoc-scangobj.in b/gtkdoc-scangobj.in
|
||||
index 4cbe130..52c2c24 100755
|
||||
--- a/gtkdoc-scangobj.in
|
||||
+++ b/gtkdoc-scangobj.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!@PYTHON@
|
||||
+#!/usr/bin/env python3
|
||||
# -*- python -*-
|
||||
#
|
||||
# gtk-doc - GTK DocBook documentation generator.
|
||||
diff --git a/tests/tools.sh.in b/tests/tools.sh.in
|
||||
index 343844a..9dc6692 100644
|
||||
--- a/tests/tools.sh.in
|
||||
+++ b/tests/tools.sh.in
|
||||
@@ -30,7 +30,7 @@ done
|
||||
# TODO: also test the module files
|
||||
for file in gtkdoc-check gtkdoc-depscan gtkdoc-fixxref gtkdoc-mkdb gtkdoc-mkhtml gtkdoc-mkhtml2 gtkdoc-mkman gtkdoc-mkpdf gtkdoc-rebase gtkdoc-scangobj; do
|
||||
fullfile=`which $file`
|
||||
- @PYTHON@ -m py_compile $fullfile
|
||||
+ python3 -m py_compile $fullfile
|
||||
if test $? != 0 ; then failed=`expr $failed + 1`; fi
|
||||
tested=`expr $tested + 1`
|
||||
done
|
||||
@@ -0,0 +1,24 @@
|
||||
From 72dfeec0e49478b0bfb471c4155044391bad8e6c Mon Sep 17 00:00:00 2001
|
||||
From: Ross Burton <ross.burton@arm.com>
|
||||
Date: Fri, 8 Dec 2023 10:35:25 +0000
|
||||
Subject: [PATCH] Don't use docdir from environment
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gtk-doc/-/merge_requests/73]
|
||||
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
||||
---
|
||||
buildsystems/autotools/gtkdocize.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/buildsystems/autotools/gtkdocize.in b/buildsystems/autotools/gtkdocize.in
|
||||
index 83127bf..76dcbfd 100755
|
||||
--- a/buildsystems/autotools/gtkdocize.in
|
||||
+++ b/buildsystems/autotools/gtkdocize.in
|
||||
@@ -39,7 +39,7 @@ set - $args
|
||||
|
||||
# assume working directory if srcdir is not set
|
||||
test "$srcdir" || srcdir=.
|
||||
-test "$docdir" || docdir="$srcdir"
|
||||
+docdir="$srcdir"
|
||||
|
||||
# detect configure script
|
||||
no_configure_found=0
|
||||
@@ -0,0 +1,46 @@
|
||||
From 78bbf185934147a69ceb4b617d424e12e70997bf Mon Sep 17 00:00:00 2001
|
||||
From: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
Date: Tue, 27 Jun 2017 21:00:58 +0100
|
||||
Subject: [PATCH 3/3] gtk-doc: Handle floating gtk-doc dependency
|
||||
|
||||
Allow the tests to be explicitly disabled to avoid floating dependnecy
|
||||
issues. This is not really an issue with RSS but is on previous releases.
|
||||
|
||||
RP 2017/6/27
|
||||
Upstream-Status: Pending
|
||||
|
||||
---
|
||||
configure.ac | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 684e2d1..e5e3aab 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -146,6 +146,11 @@ if test "x$GCC" = "xyes"; then
|
||||
fi
|
||||
fi
|
||||
|
||||
+AC_ARG_ENABLE([tests],
|
||||
+ AS_HELP_STRING([--enable-tests],
|
||||
+ [enable tests (default=yes)]),,
|
||||
+ [enable_tests="yes"])
|
||||
+
|
||||
dnl if glib is available we can enable the tests
|
||||
PKG_CHECK_MODULES(TEST_DEPS, [glib-2.0 >= 2.6.0 gobject-2.0 >= 2.6.0],
|
||||
[ glib_prefix="`$PKG_CONFIG --variable=prefix glib-2.0`"
|
||||
@@ -156,6 +161,11 @@ PKG_CHECK_MODULES(TEST_DEPS, [glib-2.0 >= 2.6.0 gobject-2.0 >= 2.6.0],
|
||||
build_tests="no"
|
||||
]
|
||||
)
|
||||
+if test "x$enable_tests" != "xyes"; then
|
||||
+ gtk_doc_use_libtool="no"
|
||||
+ build_tests="no"
|
||||
+fi
|
||||
+
|
||||
AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL" -a x$gtk_doc_use_libtool = xyes )
|
||||
dnl this enables the rule in test/Makefile.am
|
||||
AM_CONDITIONAL(BUILD_TESTS, test x$build_tests = xyes)
|
||||
--
|
||||
2.14.1
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
From 8bc4c1f169f89bc5531da5b7e892b8f20e0f9a18 Mon Sep 17 00:00:00 2001
|
||||
From: Ross Burton <ross.burton@intel.com>
|
||||
Date: Wed, 21 Mar 2018 14:47:29 +0000
|
||||
Subject: [PATCH] gtk-doc: don't regenerate gtk-doc in do_install
|
||||
|
||||
In out-of-tree builds gtk-doc's setup-build target copies all the content from $srcdir to $builddir.
|
||||
|
||||
However, if some of this content is regenerated at configure time this can happen:
|
||||
|
||||
1) configure writes new build/version.xml
|
||||
2) make compile copies content, including the tarball's src/version.xml
|
||||
to build/version.xml, and generates gtk-doc.
|
||||
3) make install notices build/version.xml is older than configure.status,
|
||||
so regenerates gtk-doc.
|
||||
|
||||
gtk-doc generation is a slow process at the best of times, so doing it twice isn't good.
|
||||
|
||||
Solve this by changing cp --force to cp --no-clobber, so setup-build only copies
|
||||
files which don't already exist.
|
||||
|
||||
Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=794571]
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
---
|
||||
buildsystems/autotools/gtk-doc.make | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/buildsystems/autotools/gtk-doc.make b/buildsystems/autotools/gtk-doc.make
|
||||
index 7d9a27f..8cb336d 100644
|
||||
--- a/buildsystems/autotools/gtk-doc.make
|
||||
+++ b/buildsystems/autotools/gtk-doc.make
|
||||
@@ -111,7 +111,7 @@ setup-build.stamp:
|
||||
destdir=`dirname $(abs_builddir)/$$file`; \
|
||||
test -d "$$destdir" || mkdir -p "$$destdir"; \
|
||||
test -f $(abs_srcdir)/$$file && \
|
||||
- cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
|
||||
+ cp -pn $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
|
||||
done; \
|
||||
fi; \
|
||||
fi
|
||||
@@ -0,0 +1,42 @@
|
||||
From ebb0f7313a0931f646e86badce2627eff2fa37a8 Mon Sep 17 00:00:00 2001
|
||||
From: Ross Burton <ross.burton@intel.com>
|
||||
Date: Mon, 5 Sep 2016 22:25:44 +0100
|
||||
Subject: [PATCH] Use native pkg-config when looking for gtk-doc.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
---
|
||||
buildsystems/autotools/gtk-doc.m4 | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/buildsystems/autotools/gtk-doc.m4 b/buildsystems/autotools/gtk-doc.m4
|
||||
index 2d12f01..e5afc3f 100644
|
||||
--- a/buildsystems/autotools/gtk-doc.m4
|
||||
+++ b/buildsystems/autotools/gtk-doc.m4
|
||||
@@ -25,7 +25,7 @@
|
||||
# Macro appear in them. The GNU General Public License (GPL) does govern
|
||||
# all other use of the material that constitutes the Autoconf Macro.
|
||||
|
||||
-# serial 2
|
||||
+# serial 2.1
|
||||
|
||||
dnl Usage:
|
||||
dnl GTK_DOC_CHECK([minimum-gtk-doc-version])
|
||||
@@ -35,11 +35,16 @@ AC_DEFUN([GTK_DOC_CHECK],
|
||||
AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
|
||||
AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
|
||||
|
||||
+ gtkdoc_pkgconfig_save=$PKG_CONFIG
|
||||
+ PKG_CONFIG=pkg-config-native
|
||||
+
|
||||
ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"])
|
||||
AC_MSG_CHECKING([for gtk-doc])
|
||||
PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no])
|
||||
AC_MSG_RESULT($have_gtk_doc)
|
||||
|
||||
+ PKG_CONFIG=$gtkdoc_pkgconfig_save
|
||||
+
|
||||
if test "$have_gtk_doc" = "no"; then
|
||||
AC_MSG_WARN([
|
||||
You will not be able to create source packages with 'make dist'
|
||||
65
sources/poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.33.2.bb
Normal file
65
sources/poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.33.2.bb
Normal file
@@ -0,0 +1,65 @@
|
||||
SUMMARY = "Documentation generator for glib-based software"
|
||||
DESCRIPTION = "Gtk-doc is a set of scripts that extract specially formatted comments \
|
||||
from glib-based software and produce a set of html documentation files from them"
|
||||
HOMEPAGE = "https://www.gtk.org/docs/"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "autotools"
|
||||
inherit gnomebase
|
||||
|
||||
# Configure the scripts correctly (and build their dependencies) only if they are actually
|
||||
# going to be used; otheriwse we need only the m4/makefile includes from the gtk-doc tarball.
|
||||
PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "api-documentation", "working-scripts", "", d)}"
|
||||
|
||||
# This will cause target gtk-doc to hardcode paths of native dependencies
|
||||
# into its scripts. This means that target gtk-doc package is broken;
|
||||
# hopefully no one minds because its scripts are not used for anything during build
|
||||
# and shouldn't be used on targets.
|
||||
PACKAGECONFIG[working-scripts] = ",,libxslt-native docbook-xml-dtd4-native docbook-xsl-stylesheets python3-pygments"
|
||||
PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,glib-2.0"
|
||||
|
||||
CACHED_CONFIGUREVARS += "ac_cv_path_XSLTPROC=xsltproc"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "cc1b709a20eb030a278a1f9842a362e00402b7f834ae1df4c1998a723152bf43"
|
||||
SRC_URI += "file://0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch \
|
||||
file://0001-Do-not-error-out-if-xsltproc-is-not-found.patch \
|
||||
file://conditionaltests.patch \
|
||||
file://no-clobber.patch \
|
||||
file://0001-Don-t-use-docdir-from-environment.patch \
|
||||
"
|
||||
SRC_URI:append:class-native = " file://pkg-config-native.patch"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
# Do not check for XML catalogs when building because that
|
||||
# information is not used for anything during build. Recipe
|
||||
# dependencies make sure we have all the right bits.
|
||||
do_configure:prepend() {
|
||||
sed -i -e 's,^JH_CHECK_XML_CATALOG.*,,' ${S}/configure.ac
|
||||
}
|
||||
|
||||
do_install:append () {
|
||||
# configure values for python3 and pkg-config encoded in scripts
|
||||
for fn in ${bindir}/gtkdoc-depscan \
|
||||
${bindir}/gtkdoc-mkhtml2 \
|
||||
${datadir}/gtk-doc/python/gtkdoc/config_data.py \
|
||||
${datadir}/gtk-doc/python/gtkdoc/config.py; do
|
||||
sed -e 's,${RECIPE_SYSROOT_NATIVE}/usr/bin/pkg-config,${bindir}/pkg-config,' \
|
||||
-e 's,${HOSTTOOLS_DIR}/python3,${bindir}/python3,' \
|
||||
-e '1s|^#!.*|#!/usr/bin/env python3|' \
|
||||
-i ${D}$fn
|
||||
done
|
||||
}
|
||||
|
||||
FILES:${PN} += "${datadir}/sgml"
|
||||
FILES:${PN}-doc = ""
|
||||
|
||||
SYSROOT_PREPROCESS_FUNCS:append:class-native = " gtkdoc_makefiles_sysroot_preprocess"
|
||||
gtkdoc_makefiles_sysroot_preprocess() {
|
||||
# Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries
|
||||
# instead of libtool wrapper or running them directly
|
||||
sed -i \
|
||||
-e "s|GTKDOC_RUN =.*|GTKDOC_RUN = \$(top_builddir)/gtkdoc-qemuwrapper|" \
|
||||
${SYSROOT_DESTDIR}${datadir}/gtk-doc/data/gtk-doc*make
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
SUMMARY = "Default icon theme that all icon themes automatically inherit from"
|
||||
DESCRIPTION = "The hicolor-icon-theme package contains a default fallback \
|
||||
theme for implementations of the icon theme specification."
|
||||
HOMEPAGE = "https://www.freedesktop.org/wiki/Software/icon-theme"
|
||||
BUGTRACKER = "https://bugs.freedesktop.org/"
|
||||
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=f08a446809913fc9b3c718f0eaea0426"
|
||||
|
||||
SRC_URI = "https://icon-theme.freedesktop.org/releases/${BPN}-${PV}.tar.xz"
|
||||
SRC_URI[md5sum] = "84eec8d6f810240a069c731f1870b474"
|
||||
SRC_URI[sha256sum] = "317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d588a9d8"
|
||||
|
||||
inherit allarch autotools
|
||||
|
||||
FILES:${PN} += "${datadir}/icons"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
@@ -0,0 +1,3 @@
|
||||
#! /bin/sh
|
||||
|
||||
gnome-desktop-testing-runner json-glib
|
||||
31
sources/poky/meta/recipes-gnome/json-glib/json-glib_1.8.0.bb
Normal file
31
sources/poky/meta/recipes-gnome/json-glib/json-glib_1.8.0.bb
Normal file
@@ -0,0 +1,31 @@
|
||||
SUMMARY = "JSON-GLib implements a full JSON parser using GLib and GObject"
|
||||
DESCRIPTION = "Use JSON-GLib it is possible to parse and generate valid JSON\
|
||||
data structures, using a DOM-like API. JSON-GLib also offers GObject \
|
||||
integration, providing the ability to serialize and deserialize GObject \
|
||||
instances to and from JSON data types."
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/JsonGlib"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/json-glib/issues"
|
||||
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
|
||||
|
||||
DEPENDS = "glib-2.0 glib-2.0-native"
|
||||
|
||||
inherit gnomebase lib_package gobject-introspection gi-docgen gettext ptest-gnome manpages upstream-version-is-even
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
GIDOCGEN_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIDOCGEN_MESON_DISABLE_FLAG = 'disabled'
|
||||
|
||||
SRC_URI += " file://run-ptest"
|
||||
SRC_URI[archive.sha256sum] = "97ef5eb92ca811039ad50a65f06633f1aae64792789307be7170795d8b319454"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}"
|
||||
PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxslt-native xmlto-native"
|
||||
PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
# Currently it's not possible to disable gettext in Meson, so we need to force
|
||||
# this back on.
|
||||
USE_NLS:class-native = "yes"
|
||||
@@ -0,0 +1,26 @@
|
||||
SUMMARY = "Building blocks for modern GNOME applications"
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/libadwaita"
|
||||
LICENSE="LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
DEPENDS = " \
|
||||
gtk4 \
|
||||
appstream \
|
||||
"
|
||||
|
||||
inherit gnomebase gobject-introspection gi-docgen vala features_check
|
||||
|
||||
SRC_URI[archive.sha256sum] = "c9faee005cb4912bce34f69f1af26b01a364534e12ede5d9bac44d8226d72c16"
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
REQUIRED_DISTRO_FEATURES = "opengl"
|
||||
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
GTKDOC_MESON_OPTION = 'gtk_doc'
|
||||
|
||||
PACKAGECONFIG[examples] = "-Dexamples=true,-Dexamples=false"
|
||||
|
||||
FILES:${PN} += "${datadir}/metainfo"
|
||||
|
||||
EXTRA_OEMESON += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Dvapi=true', '-Dvapi=false', d)}"
|
||||
@@ -0,0 +1,18 @@
|
||||
SUMMARY = "The libdazzle library is a companion library to GObject and Gtk+."
|
||||
DESCRIPTION = "A wide range of components from utilities for GIO, widgets for \
|
||||
GTK+, an animation framework, state machines, paneling and high-performance \
|
||||
counters are included."
|
||||
LICENSE = "GPL-3.0-or-later"
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/libdazzle"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/libdazzle/issues"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a"
|
||||
|
||||
inherit gnomebase upstream-version-is-even vala features_check gobject-introspection
|
||||
|
||||
DEPENDS = "glib-2.0-native glib-2.0 gtk+3"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "3cd3e45eb6e2680cb05d52e1e80dd8f9d59d4765212f0e28f78e6c1783d18eae"
|
||||
|
||||
GIR_MESON_OPTION = 'with_introspection'
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
@@ -0,0 +1,38 @@
|
||||
From dc4fcfb1e1e2326a412b252314af3e9424a31457 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 16 Jan 2024 12:02:46 -0800
|
||||
Subject: [PATCH] meson: Pass --export-dynamic option to linker
|
||||
|
||||
Bypass the compiler driver trying to comprehend and translate it for
|
||||
linker, since its not clear what the right behavior should be, gcc seems
|
||||
to translate it into --export-dynamic but clang 18+ rejects it
|
||||
|
||||
| x86_64-yoe-linux-clang: error: unknown argument: '-export-dynamic'
|
||||
|
||||
also see [1]
|
||||
|
||||
This makes it work as intended across gcc and clang
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libgudev/-/merge_requests/30]
|
||||
[1] https://discourse.llvm.org/t/clang-option-export-dynamic-parse-to-e-xport-dynamic-error/72454
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
gudev/meson.build | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/gudev/meson.build b/gudev/meson.build
|
||||
index e904203..3ed580b 100644
|
||||
--- a/gudev/meson.build
|
||||
+++ b/gudev/meson.build
|
||||
@@ -33,7 +33,7 @@ libgudev_c_args = [
|
||||
]
|
||||
|
||||
libgudev_link_args = [
|
||||
- '-export-dynamic',
|
||||
+ '-Wl,--export-dynamic',
|
||||
'-Wl,--version-script,@0@/libgudev-1.0.sym'.format(top_srcdir),
|
||||
]
|
||||
|
||||
--
|
||||
2.43.0
|
||||
|
||||
34
sources/poky/meta/recipes-gnome/libgudev/libgudev_238.bb
Normal file
34
sources/poky/meta/recipes-gnome/libgudev/libgudev_238.bb
Normal file
@@ -0,0 +1,34 @@
|
||||
SUMMARY = "GObject wrapper for libudev"
|
||||
DESCRIPTION = "This library makes it much simpler to use libudev from programs \
|
||||
already using GObject. It also makes it possible to easily use libudev from \
|
||||
other programming languages, such as Javascript, because of GObject \
|
||||
introspection support."
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/libgudev"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/libgudev/issues"
|
||||
SRC_URI[archive.sha256sum] = "61266ab1afc9d73dbc60a8b2af73e99d2fdff47d99544d085760e4fa667b5dd1"
|
||||
|
||||
DEPENDS = "glib-2.0 glib-2.0-native udev"
|
||||
|
||||
RCONFLICTS:${PN} = "systemd (<= 220)"
|
||||
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
inherit gnomebase gobject-introspection gtk-doc
|
||||
|
||||
SRC_URI += "file://0001-meson-Pass-export-dynamic-option-to-linker.patch"
|
||||
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
UPSTREAM_CHECK_URI = "http://ftp.gnome.org/pub/GNOME/sources/libgudev/"
|
||||
UPSTREAM_CHECK_REGEX = "(?P<pver>(\d+))"
|
||||
|
||||
EXTRA_OEMESON += "-Dtests=disabled -Dvapi=disabled"
|
||||
|
||||
# This isn't a GNOME-style version do gnome_verdir fails. Just return the
|
||||
# version as that is how the directory is structured.
|
||||
def gnome_verdir(v):
|
||||
return v
|
||||
27
sources/poky/meta/recipes-gnome/libhandy/libhandy_1.8.3.bb
Normal file
27
sources/poky/meta/recipes-gnome/libhandy/libhandy_1.8.3.bb
Normal file
@@ -0,0 +1,27 @@
|
||||
SUMMARY = "A library full of GTK+ widgets for mobile phones"
|
||||
DESCRIPTION = "Library with GTK widgets for mobile phones. Libhandy provides \
|
||||
GTK widgets and GObjects to ease developing applications for mobile phones. \
|
||||
It was developed by Purism (and used by several official GNOME projects) \
|
||||
to extend Gtk by providing mobile-friendly widgets and make the creation of \
|
||||
responsive apps easier."
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/libhandy"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/libhandy/-/issues"
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
SRC_URI = "git://gitlab.gnome.org/GNOME/libhandy.git;protocol=https;branch=libhandy-1-8"
|
||||
SRCREV = "9b0071408ce86a3ef843806fddd723a85f6f2416"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+))"
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
|
||||
inherit meson gobject-introspection vala gettext gi-docgen features_check pkgconfig
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
|
||||
DEPENDS += "gtk+3"
|
||||
|
||||
PACKAGES =+ "${PN}-examples"
|
||||
FILES:${PN}-examples = "${bindir}"
|
||||
35
sources/poky/meta/recipes-gnome/libnotify/libnotify_0.8.3.bb
Normal file
35
sources/poky/meta/recipes-gnome/libnotify/libnotify_0.8.3.bb
Normal file
@@ -0,0 +1,35 @@
|
||||
SUMMARY = "Library for sending desktop notifications to a notification daemon"
|
||||
DESCRIPTION = "It sends desktop notifications to a notification daemon, as defined \
|
||||
in the Desktop Notifications spec. These notifications can be used to inform \
|
||||
the user about an event or display some form of information without getting \
|
||||
in the user's way."
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/libnotify"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/libnotify/issues"
|
||||
SECTION = "libs"
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
|
||||
|
||||
DEPENDS = "glib-2.0 glib-2.0-native gdk-pixbuf"
|
||||
|
||||
PACKAGECONFIG ?= ""
|
||||
PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false,gtk+3"
|
||||
|
||||
GIR_MESON_ENABLE_FLAG = "enabled"
|
||||
GIR_MESON_DISABLE_FLAG = "disabled"
|
||||
inherit gnomebase gi-docgen features_check gobject-introspection
|
||||
# depends on gtk+3 if tests are enabled
|
||||
ANY_OF_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'tests', '${GTK3DISTROFEATURES}', '', d)}"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "ee8f3ef946156ad3406fdf45feedbdcd932dbd211ab4f16f75eba4f36fb2f6c0"
|
||||
|
||||
EXTRA_OEMESON = "-Dman=false"
|
||||
|
||||
# there were times, we had two versions of libnotify (oe-core libnotify:0.6.x /
|
||||
# meta-gnome libnotify3: 0.7.x)
|
||||
PROVIDES += "libnotify3"
|
||||
RPROVIDES:${PN} += "libnotify3"
|
||||
RCONFLICTS:${PN} += "libnotify3"
|
||||
RREPLACES:${PN} += "libnotify3"
|
||||
|
||||
# -7381 is specific to the NodeJS bindings
|
||||
CVE_STATUS[CVE-2013-7381] = "cpe-incorrect: The issue is specific to the NodeJS bindings"
|
||||
@@ -0,0 +1,49 @@
|
||||
From 26f96a178f8a0afded00bdd7238728c0b6e42a6b Mon Sep 17 00:00:00 2001
|
||||
From: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
Date: Thu, 9 May 2024 18:44:41 +0000
|
||||
Subject: [PATCH] meson.build: fix build race when building GTK vapi files
|
||||
|
||||
There's a build race when building the GTK vapi files:
|
||||
|
||||
FAILED: libportal/libportal-gtk4.vapi
|
||||
error: Package `libportal' not found in specified Vala API directories or GObject-Introspection GIR directories
|
||||
|
||||
This can be verified by adding "sleep 10;" to the command for the
|
||||
libportal/libportal.vapi target in the generated build.ninja file.
|
||||
|
||||
The GTK vapi files need to have access to the generic libportal.vapi file,
|
||||
but there is no explicit dependency. Switch the dependency name 'libportal'
|
||||
to the dependency object libportal_vapi so that Meson generates the
|
||||
dependency correctly.
|
||||
|
||||
Upstream-Status: Backport
|
||||
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
||||
---
|
||||
libportal/meson.build | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libportal/meson.build b/libportal/meson.build
|
||||
index fff7603..4e67f40 100644
|
||||
--- a/libportal/meson.build
|
||||
+++ b/libportal/meson.build
|
||||
@@ -168,7 +168,7 @@ if gtk3_dep.found()
|
||||
if vapi
|
||||
libportal_gtk3_vapi = gnome.generate_vapi('libportal-gtk3',
|
||||
sources: libportal_gtk3_gir[0],
|
||||
- packages: ['gio-2.0', 'gtk+-3.0', 'libportal'],
|
||||
+ packages: ['gio-2.0', 'gtk+-3.0', libportal_vapi],
|
||||
gir_dirs: [meson.current_build_dir()],
|
||||
vapi_dirs: [meson.current_build_dir()],
|
||||
install: true,
|
||||
@@ -227,7 +227,7 @@ if gtk4_dep.found()
|
||||
if vapi
|
||||
libportal_gtk4_vapi = gnome.generate_vapi('libportal-gtk4',
|
||||
sources: libportal_gtk4_gir[0],
|
||||
- packages: ['gio-2.0', 'gtk4', 'libportal'],
|
||||
+ packages: ['gio-2.0', 'gtk4', libportal_vapi],
|
||||
gir_dirs: [meson.current_build_dir()],
|
||||
vapi_dirs: [meson.current_build_dir()],
|
||||
install: true,
|
||||
--
|
||||
2.34.1
|
||||
|
||||
21
sources/poky/meta/recipes-gnome/libportal/libportal_0.7.1.bb
Normal file
21
sources/poky/meta/recipes-gnome/libportal/libportal_0.7.1.bb
Normal file
@@ -0,0 +1,21 @@
|
||||
SUMMARY = "libportal provides GIO-style async APIs for most Flatpak portals."
|
||||
DESCRIPTION = "It provides simple asynchronous wrappers for most Flatpak portals \
|
||||
with a familiar GObject API along side the D-Bus API"
|
||||
HOMEPAGE = "https://github.com/flatpak/libportal"
|
||||
BUGTRACKER = "https://github.com/flatpak/libportal/issues"
|
||||
LICENSE = "LGPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=3000208d539ec061b899bce1d9ce9404"
|
||||
|
||||
SRC_URI = "git://github.com/flatpak/${BPN}.git;protocol=https;branch=main \
|
||||
file://0001-meson.build-fix-build-race-when-building-GTK-vapi-fi.patch"
|
||||
SRCREV = "e9ed3a50cdde321eaf42361212480a66eb94a57a"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit meson gi-docgen gobject-introspection vala features_check pkgconfig
|
||||
GIDOCGEN_MESON_OPTION = 'docs'
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
|
||||
DEPENDS += "glib-2.0 glib-2.0-native gtk+3 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gtk4', '', d)}"
|
||||
|
||||
EXTRA_OEMESON = "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Dvapi=true', '-Dvapi=false', d)} -Dbackend-qt5=disabled"
|
||||
546
sources/poky/meta/recipes-gnome/librsvg/librsvg-crates.inc
Normal file
546
sources/poky/meta/recipes-gnome/librsvg/librsvg-crates.inc
Normal file
@@ -0,0 +1,546 @@
|
||||
# Autogenerated with 'bitbake -c update_crates librsvg'
|
||||
|
||||
# from Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/adler/1.0.2 \
|
||||
crate://crates.io/aho-corasick/1.1.2 \
|
||||
crate://crates.io/android-tzdata/0.1.1 \
|
||||
crate://crates.io/android_system_properties/0.1.5 \
|
||||
crate://crates.io/anes/0.1.6 \
|
||||
crate://crates.io/anstream/0.6.5 \
|
||||
crate://crates.io/anstyle/1.0.4 \
|
||||
crate://crates.io/anstyle-parse/0.2.3 \
|
||||
crate://crates.io/anstyle-query/1.0.2 \
|
||||
crate://crates.io/anstyle-wincon/3.0.2 \
|
||||
crate://crates.io/anyhow/1.0.75 \
|
||||
crate://crates.io/approx/0.5.1 \
|
||||
crate://crates.io/assert_cmd/2.0.12 \
|
||||
crate://crates.io/autocfg/1.1.0 \
|
||||
crate://crates.io/bit-set/0.5.3 \
|
||||
crate://crates.io/bit-vec/0.6.3 \
|
||||
crate://crates.io/bitflags/1.3.2 \
|
||||
crate://crates.io/bitflags/2.4.1 \
|
||||
crate://crates.io/block/0.1.6 \
|
||||
crate://crates.io/bstr/1.8.0 \
|
||||
crate://crates.io/bumpalo/3.14.0 \
|
||||
crate://crates.io/bytemuck/1.14.0 \
|
||||
crate://crates.io/byteorder/1.5.0 \
|
||||
crate://crates.io/cairo-rs/0.18.3 \
|
||||
crate://crates.io/cairo-sys-rs/0.18.2 \
|
||||
crate://crates.io/cast/0.3.0 \
|
||||
crate://crates.io/cc/1.0.83 \
|
||||
crate://crates.io/cfg-expr/0.15.5 \
|
||||
crate://crates.io/cfg-if/1.0.0 \
|
||||
crate://crates.io/chrono/0.4.31 \
|
||||
crate://crates.io/ciborium/0.2.1 \
|
||||
crate://crates.io/ciborium-io/0.2.1 \
|
||||
crate://crates.io/ciborium-ll/0.2.1 \
|
||||
crate://crates.io/clap/4.4.11 \
|
||||
crate://crates.io/clap_builder/4.4.11 \
|
||||
crate://crates.io/clap_complete/4.4.4 \
|
||||
crate://crates.io/clap_derive/4.4.7 \
|
||||
crate://crates.io/clap_lex/0.6.0 \
|
||||
crate://crates.io/colorchoice/1.0.0 \
|
||||
crate://crates.io/const-cstr/0.3.0 \
|
||||
crate://crates.io/core-foundation-sys/0.8.6 \
|
||||
crate://crates.io/crc32fast/1.3.2 \
|
||||
crate://crates.io/criterion/0.5.1 \
|
||||
crate://crates.io/criterion-plot/0.5.0 \
|
||||
crate://crates.io/crossbeam-deque/0.8.4 \
|
||||
crate://crates.io/crossbeam-epoch/0.9.16 \
|
||||
crate://crates.io/crossbeam-utils/0.8.17 \
|
||||
crate://crates.io/cssparser/0.31.2 \
|
||||
crate://crates.io/cssparser-macros/0.6.1 \
|
||||
crate://crates.io/cstr/0.2.11 \
|
||||
crate://crates.io/data-url/0.3.1 \
|
||||
crate://crates.io/deranged/0.3.10 \
|
||||
crate://crates.io/derive_more/0.99.17 \
|
||||
crate://crates.io/difflib/0.4.0 \
|
||||
crate://crates.io/dlib/0.5.2 \
|
||||
crate://crates.io/doc-comment/0.3.3 \
|
||||
crate://crates.io/dtoa/1.0.9 \
|
||||
crate://crates.io/dtoa-short/0.3.4 \
|
||||
crate://crates.io/either/1.9.0 \
|
||||
crate://crates.io/encoding_rs/0.8.33 \
|
||||
crate://crates.io/equivalent/1.0.1 \
|
||||
crate://crates.io/errno/0.3.8 \
|
||||
crate://crates.io/fastrand/2.0.1 \
|
||||
crate://crates.io/fdeflate/0.3.1 \
|
||||
crate://crates.io/flate2/1.0.28 \
|
||||
crate://crates.io/float-cmp/0.9.0 \
|
||||
crate://crates.io/fnv/1.0.7 \
|
||||
crate://crates.io/form_urlencoded/1.2.1 \
|
||||
crate://crates.io/futf/0.1.5 \
|
||||
crate://crates.io/futures-channel/0.3.29 \
|
||||
crate://crates.io/futures-core/0.3.29 \
|
||||
crate://crates.io/futures-executor/0.3.29 \
|
||||
crate://crates.io/futures-io/0.3.29 \
|
||||
crate://crates.io/futures-macro/0.3.29 \
|
||||
crate://crates.io/futures-task/0.3.29 \
|
||||
crate://crates.io/futures-util/0.3.29 \
|
||||
crate://crates.io/fxhash/0.2.1 \
|
||||
crate://crates.io/gdk-pixbuf/0.18.3 \
|
||||
crate://crates.io/gdk-pixbuf-sys/0.18.0 \
|
||||
crate://crates.io/getrandom/0.2.11 \
|
||||
crate://crates.io/gio/0.18.4 \
|
||||
crate://crates.io/gio-sys/0.18.1 \
|
||||
crate://crates.io/glib/0.18.4 \
|
||||
crate://crates.io/glib-macros/0.18.3 \
|
||||
crate://crates.io/glib-sys/0.18.1 \
|
||||
crate://crates.io/gobject-sys/0.18.0 \
|
||||
crate://crates.io/half/1.8.2 \
|
||||
crate://crates.io/hashbrown/0.14.3 \
|
||||
crate://crates.io/heck/0.4.1 \
|
||||
crate://crates.io/hermit-abi/0.3.3 \
|
||||
crate://crates.io/iana-time-zone/0.1.58 \
|
||||
crate://crates.io/iana-time-zone-haiku/0.1.2 \
|
||||
crate://crates.io/idna/0.5.0 \
|
||||
crate://crates.io/indexmap/2.1.0 \
|
||||
crate://crates.io/is-terminal/0.4.9 \
|
||||
crate://crates.io/itertools/0.10.5 \
|
||||
crate://crates.io/itertools/0.11.0 \
|
||||
crate://crates.io/itoa/1.0.10 \
|
||||
crate://crates.io/js-sys/0.3.66 \
|
||||
crate://crates.io/language-tags/0.3.2 \
|
||||
crate://crates.io/lazy_static/1.4.0 \
|
||||
crate://crates.io/libc/0.2.151 \
|
||||
crate://crates.io/libloading/0.8.1 \
|
||||
crate://crates.io/libm/0.2.8 \
|
||||
crate://crates.io/linked-hash-map/0.5.6 \
|
||||
crate://crates.io/linux-raw-sys/0.4.12 \
|
||||
crate://crates.io/locale_config/0.3.0 \
|
||||
crate://crates.io/lock_api/0.4.11 \
|
||||
crate://crates.io/log/0.4.20 \
|
||||
crate://crates.io/lopdf/0.31.0 \
|
||||
crate://crates.io/mac/0.1.1 \
|
||||
crate://crates.io/malloc_buf/0.0.6 \
|
||||
crate://crates.io/markup5ever/0.11.0 \
|
||||
crate://crates.io/matches/0.1.10 \
|
||||
crate://crates.io/matrixmultiply/0.3.8 \
|
||||
crate://crates.io/md5/0.7.0 \
|
||||
crate://crates.io/memchr/2.6.4 \
|
||||
crate://crates.io/memoffset/0.9.0 \
|
||||
crate://crates.io/minimal-lexical/0.2.1 \
|
||||
crate://crates.io/miniz_oxide/0.7.1 \
|
||||
crate://crates.io/nalgebra/0.32.3 \
|
||||
crate://crates.io/nalgebra-macros/0.2.1 \
|
||||
crate://crates.io/new_debug_unreachable/1.0.4 \
|
||||
crate://crates.io/nom/7.1.3 \
|
||||
crate://crates.io/normalize-line-endings/0.3.0 \
|
||||
crate://crates.io/num-complex/0.4.4 \
|
||||
crate://crates.io/num-integer/0.1.45 \
|
||||
crate://crates.io/num-rational/0.4.1 \
|
||||
crate://crates.io/num-traits/0.2.17 \
|
||||
crate://crates.io/objc/0.2.7 \
|
||||
crate://crates.io/objc-foundation/0.1.1 \
|
||||
crate://crates.io/objc_id/0.1.1 \
|
||||
crate://crates.io/once_cell/1.19.0 \
|
||||
crate://crates.io/oorandom/11.1.3 \
|
||||
crate://crates.io/pango/0.18.3 \
|
||||
crate://crates.io/pango-sys/0.18.0 \
|
||||
crate://crates.io/pangocairo/0.18.0 \
|
||||
crate://crates.io/pangocairo-sys/0.18.0 \
|
||||
crate://crates.io/parking_lot/0.12.1 \
|
||||
crate://crates.io/parking_lot_core/0.9.9 \
|
||||
crate://crates.io/paste/1.0.14 \
|
||||
crate://crates.io/percent-encoding/2.3.1 \
|
||||
crate://crates.io/phf/0.10.1 \
|
||||
crate://crates.io/phf/0.11.2 \
|
||||
crate://crates.io/phf_codegen/0.10.0 \
|
||||
crate://crates.io/phf_generator/0.10.0 \
|
||||
crate://crates.io/phf_generator/0.11.2 \
|
||||
crate://crates.io/phf_macros/0.11.2 \
|
||||
crate://crates.io/phf_shared/0.10.0 \
|
||||
crate://crates.io/phf_shared/0.11.2 \
|
||||
crate://crates.io/pin-project-lite/0.2.13 \
|
||||
crate://crates.io/pin-utils/0.1.0 \
|
||||
crate://crates.io/pkg-config/0.3.27 \
|
||||
crate://crates.io/plotters/0.3.5 \
|
||||
crate://crates.io/plotters-backend/0.3.5 \
|
||||
crate://crates.io/plotters-svg/0.3.5 \
|
||||
crate://crates.io/png/0.17.10 \
|
||||
crate://crates.io/powerfmt/0.2.0 \
|
||||
crate://crates.io/ppv-lite86/0.2.17 \
|
||||
crate://crates.io/precomputed-hash/0.1.1 \
|
||||
crate://crates.io/predicates/3.0.4 \
|
||||
crate://crates.io/predicates-core/1.0.6 \
|
||||
crate://crates.io/predicates-tree/1.0.9 \
|
||||
crate://crates.io/proc-macro-crate/2.0.1 \
|
||||
crate://crates.io/proc-macro-error/1.0.4 \
|
||||
crate://crates.io/proc-macro-error-attr/1.0.4 \
|
||||
crate://crates.io/proc-macro2/1.0.70 \
|
||||
crate://crates.io/proptest/1.4.0 \
|
||||
crate://crates.io/quick-error/1.2.3 \
|
||||
crate://crates.io/quick-error/2.0.1 \
|
||||
crate://crates.io/quote/1.0.33 \
|
||||
crate://crates.io/rand/0.8.5 \
|
||||
crate://crates.io/rand_chacha/0.3.1 \
|
||||
crate://crates.io/rand_core/0.6.4 \
|
||||
crate://crates.io/rand_xorshift/0.3.0 \
|
||||
crate://crates.io/rawpointer/0.2.1 \
|
||||
crate://crates.io/rayon/1.8.0 \
|
||||
crate://crates.io/rayon-core/1.12.0 \
|
||||
crate://crates.io/rctree/0.5.0 \
|
||||
crate://crates.io/redox_syscall/0.4.1 \
|
||||
crate://crates.io/regex/1.10.2 \
|
||||
crate://crates.io/regex-automata/0.4.3 \
|
||||
crate://crates.io/regex-syntax/0.8.2 \
|
||||
crate://crates.io/rgb/0.8.37 \
|
||||
crate://crates.io/rustix/0.38.28 \
|
||||
crate://crates.io/rusty-fork/0.3.0 \
|
||||
crate://crates.io/ryu/1.0.16 \
|
||||
crate://crates.io/safe_arch/0.7.1 \
|
||||
crate://crates.io/same-file/1.0.6 \
|
||||
crate://crates.io/scopeguard/1.2.0 \
|
||||
crate://crates.io/selectors/0.25.0 \
|
||||
crate://crates.io/serde/1.0.193 \
|
||||
crate://crates.io/serde_derive/1.0.193 \
|
||||
crate://crates.io/serde_json/1.0.108 \
|
||||
crate://crates.io/serde_spanned/0.6.4 \
|
||||
crate://crates.io/servo_arc/0.3.0 \
|
||||
crate://crates.io/simba/0.8.1 \
|
||||
crate://crates.io/simd-adler32/0.3.7 \
|
||||
crate://crates.io/siphasher/0.3.11 \
|
||||
crate://crates.io/slab/0.4.9 \
|
||||
crate://crates.io/smallvec/1.11.2 \
|
||||
crate://crates.io/stable_deref_trait/1.2.0 \
|
||||
crate://crates.io/string_cache/0.8.7 \
|
||||
crate://crates.io/string_cache_codegen/0.5.2 \
|
||||
crate://crates.io/strsim/0.10.0 \
|
||||
crate://crates.io/syn/1.0.109 \
|
||||
crate://crates.io/syn/2.0.41 \
|
||||
crate://crates.io/system-deps/6.2.0 \
|
||||
crate://crates.io/target-lexicon/0.12.12 \
|
||||
crate://crates.io/tempfile/3.8.1 \
|
||||
crate://crates.io/tendril/0.4.3 \
|
||||
crate://crates.io/termtree/0.4.1 \
|
||||
crate://crates.io/thiserror/1.0.50 \
|
||||
crate://crates.io/thiserror-impl/1.0.50 \
|
||||
crate://crates.io/time/0.3.30 \
|
||||
crate://crates.io/time-core/0.1.2 \
|
||||
crate://crates.io/time-macros/0.2.15 \
|
||||
crate://crates.io/tinytemplate/1.2.1 \
|
||||
crate://crates.io/tinyvec/1.6.0 \
|
||||
crate://crates.io/tinyvec_macros/0.1.1 \
|
||||
crate://crates.io/toml/0.8.2 \
|
||||
crate://crates.io/toml_datetime/0.6.3 \
|
||||
crate://crates.io/toml_edit/0.20.2 \
|
||||
crate://crates.io/typenum/1.17.0 \
|
||||
crate://crates.io/unarray/0.1.4 \
|
||||
crate://crates.io/unicode-bidi/0.3.14 \
|
||||
crate://crates.io/unicode-ident/1.0.12 \
|
||||
crate://crates.io/unicode-normalization/0.1.22 \
|
||||
crate://crates.io/url/2.5.0 \
|
||||
crate://crates.io/utf-8/0.7.6 \
|
||||
crate://crates.io/utf8parse/0.2.1 \
|
||||
crate://crates.io/version-compare/0.1.1 \
|
||||
crate://crates.io/version_check/0.9.4 \
|
||||
crate://crates.io/wait-timeout/0.2.0 \
|
||||
crate://crates.io/walkdir/2.4.0 \
|
||||
crate://crates.io/wasi/0.11.0+wasi-snapshot-preview1 \
|
||||
crate://crates.io/wasm-bindgen/0.2.89 \
|
||||
crate://crates.io/wasm-bindgen-backend/0.2.89 \
|
||||
crate://crates.io/wasm-bindgen-macro/0.2.89 \
|
||||
crate://crates.io/wasm-bindgen-macro-support/0.2.89 \
|
||||
crate://crates.io/wasm-bindgen-shared/0.2.89 \
|
||||
crate://crates.io/web-sys/0.3.66 \
|
||||
crate://crates.io/weezl/0.1.7 \
|
||||
crate://crates.io/wide/0.7.13 \
|
||||
crate://crates.io/winapi/0.3.9 \
|
||||
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
|
||||
crate://crates.io/winapi-util/0.1.6 \
|
||||
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
|
||||
crate://crates.io/windows-core/0.51.1 \
|
||||
crate://crates.io/windows-sys/0.48.0 \
|
||||
crate://crates.io/windows-sys/0.52.0 \
|
||||
crate://crates.io/windows-targets/0.48.5 \
|
||||
crate://crates.io/windows-targets/0.52.0 \
|
||||
crate://crates.io/windows_aarch64_gnullvm/0.48.5 \
|
||||
crate://crates.io/windows_aarch64_gnullvm/0.52.0 \
|
||||
crate://crates.io/windows_aarch64_msvc/0.48.5 \
|
||||
crate://crates.io/windows_aarch64_msvc/0.52.0 \
|
||||
crate://crates.io/windows_i686_gnu/0.48.5 \
|
||||
crate://crates.io/windows_i686_gnu/0.52.0 \
|
||||
crate://crates.io/windows_i686_msvc/0.48.5 \
|
||||
crate://crates.io/windows_i686_msvc/0.52.0 \
|
||||
crate://crates.io/windows_x86_64_gnu/0.48.5 \
|
||||
crate://crates.io/windows_x86_64_gnu/0.52.0 \
|
||||
crate://crates.io/windows_x86_64_gnullvm/0.48.5 \
|
||||
crate://crates.io/windows_x86_64_gnullvm/0.52.0 \
|
||||
crate://crates.io/windows_x86_64_msvc/0.48.5 \
|
||||
crate://crates.io/windows_x86_64_msvc/0.52.0 \
|
||||
crate://crates.io/winnow/0.5.28 \
|
||||
crate://crates.io/xml5ever/0.17.0 \
|
||||
crate://crates.io/yeslogic-fontconfig-sys/4.0.1 \
|
||||
"
|
||||
|
||||
SRC_URI[adler-1.0.2.sha256sum] = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
||||
SRC_URI[aho-corasick-1.1.2.sha256sum] = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
|
||||
SRC_URI[android-tzdata-0.1.1.sha256sum] = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
|
||||
SRC_URI[android_system_properties-0.1.5.sha256sum] = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
|
||||
SRC_URI[anes-0.1.6.sha256sum] = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
|
||||
SRC_URI[anstream-0.6.5.sha256sum] = "d664a92ecae85fd0a7392615844904654d1d5f5514837f471ddef4a057aba1b6"
|
||||
SRC_URI[anstyle-1.0.4.sha256sum] = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87"
|
||||
SRC_URI[anstyle-parse-0.2.3.sha256sum] = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
|
||||
SRC_URI[anstyle-query-1.0.2.sha256sum] = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
|
||||
SRC_URI[anstyle-wincon-3.0.2.sha256sum] = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
|
||||
SRC_URI[anyhow-1.0.75.sha256sum] = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
|
||||
SRC_URI[approx-0.5.1.sha256sum] = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
|
||||
SRC_URI[assert_cmd-2.0.12.sha256sum] = "88903cb14723e4d4003335bb7f8a14f27691649105346a0f0957466c096adfe6"
|
||||
SRC_URI[autocfg-1.1.0.sha256sum] = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
|
||||
SRC_URI[bit-set-0.5.3.sha256sum] = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
|
||||
SRC_URI[bit-vec-0.6.3.sha256sum] = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
|
||||
SRC_URI[bitflags-1.3.2.sha256sum] = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
||||
SRC_URI[bitflags-2.4.1.sha256sum] = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
|
||||
SRC_URI[block-0.1.6.sha256sum] = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
|
||||
SRC_URI[bstr-1.8.0.sha256sum] = "542f33a8835a0884b006a0c3df3dadd99c0c3f296ed26c2fdc8028e01ad6230c"
|
||||
SRC_URI[bumpalo-3.14.0.sha256sum] = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
|
||||
SRC_URI[bytemuck-1.14.0.sha256sum] = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
|
||||
SRC_URI[byteorder-1.5.0.sha256sum] = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
|
||||
SRC_URI[cairo-rs-0.18.3.sha256sum] = "f33613627f0dea6a731b0605101fad59ba4f193a52c96c4687728d822605a8a1"
|
||||
SRC_URI[cairo-sys-rs-0.18.2.sha256sum] = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51"
|
||||
SRC_URI[cast-0.3.0.sha256sum] = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
|
||||
SRC_URI[cc-1.0.83.sha256sum] = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
|
||||
SRC_URI[cfg-expr-0.15.5.sha256sum] = "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3"
|
||||
SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
SRC_URI[chrono-0.4.31.sha256sum] = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
|
||||
SRC_URI[ciborium-0.2.1.sha256sum] = "effd91f6c78e5a4ace8a5d3c0b6bfaec9e2baaef55f3efc00e45fb2e477ee926"
|
||||
SRC_URI[ciborium-io-0.2.1.sha256sum] = "cdf919175532b369853f5d5e20b26b43112613fd6fe7aee757e35f7a44642656"
|
||||
SRC_URI[ciborium-ll-0.2.1.sha256sum] = "defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b"
|
||||
SRC_URI[clap-4.4.11.sha256sum] = "bfaff671f6b22ca62406885ece523383b9b64022e341e53e009a62ebc47a45f2"
|
||||
SRC_URI[clap_builder-4.4.11.sha256sum] = "a216b506622bb1d316cd51328dce24e07bdff4a6128a47c7e7fad11878d5adbb"
|
||||
SRC_URI[clap_complete-4.4.4.sha256sum] = "bffe91f06a11b4b9420f62103854e90867812cd5d01557f853c5ee8e791b12ae"
|
||||
SRC_URI[clap_derive-4.4.7.sha256sum] = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442"
|
||||
SRC_URI[clap_lex-0.6.0.sha256sum] = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
|
||||
SRC_URI[colorchoice-1.0.0.sha256sum] = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
|
||||
SRC_URI[const-cstr-0.3.0.sha256sum] = "ed3d0b5ff30645a68f35ece8cea4556ca14ef8a1651455f789a099a0513532a6"
|
||||
SRC_URI[core-foundation-sys-0.8.6.sha256sum] = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
|
||||
SRC_URI[crc32fast-1.3.2.sha256sum] = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
|
||||
SRC_URI[criterion-0.5.1.sha256sum] = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f"
|
||||
SRC_URI[criterion-plot-0.5.0.sha256sum] = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
|
||||
SRC_URI[crossbeam-deque-0.8.4.sha256sum] = "fca89a0e215bab21874660c67903c5f143333cab1da83d041c7ded6053774751"
|
||||
SRC_URI[crossbeam-epoch-0.9.16.sha256sum] = "2d2fe95351b870527a5d09bf563ed3c97c0cffb87cf1c78a591bf48bb218d9aa"
|
||||
SRC_URI[crossbeam-utils-0.8.17.sha256sum] = "c06d96137f14f244c37f989d9fff8f95e6c18b918e71f36638f8c49112e4c78f"
|
||||
SRC_URI[cssparser-0.31.2.sha256sum] = "5b3df4f93e5fbbe73ec01ec8d3f68bba73107993a5b1e7519273c32db9b0d5be"
|
||||
SRC_URI[cssparser-macros-0.6.1.sha256sum] = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
|
||||
SRC_URI[cstr-0.2.11.sha256sum] = "8aa998c33a6d3271e3678950a22134cd7dd27cef86dee1b611b5b14207d1d90b"
|
||||
SRC_URI[data-url-0.3.1.sha256sum] = "5c297a1c74b71ae29df00c3e22dd9534821d60eb9af5a0192823fa2acea70c2a"
|
||||
SRC_URI[deranged-0.3.10.sha256sum] = "8eb30d70a07a3b04884d2677f06bec33509dc67ca60d92949e5535352d3191dc"
|
||||
SRC_URI[derive_more-0.99.17.sha256sum] = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
|
||||
SRC_URI[difflib-0.4.0.sha256sum] = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
|
||||
SRC_URI[dlib-0.5.2.sha256sum] = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
|
||||
SRC_URI[doc-comment-0.3.3.sha256sum] = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
|
||||
SRC_URI[dtoa-1.0.9.sha256sum] = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653"
|
||||
SRC_URI[dtoa-short-0.3.4.sha256sum] = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74"
|
||||
SRC_URI[either-1.9.0.sha256sum] = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
|
||||
SRC_URI[encoding_rs-0.8.33.sha256sum] = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
|
||||
SRC_URI[equivalent-1.0.1.sha256sum] = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
|
||||
SRC_URI[errno-0.3.8.sha256sum] = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
|
||||
SRC_URI[fastrand-2.0.1.sha256sum] = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
|
||||
SRC_URI[fdeflate-0.3.1.sha256sum] = "64d6dafc854908ff5da46ff3f8f473c6984119a2876a383a860246dd7841a868"
|
||||
SRC_URI[flate2-1.0.28.sha256sum] = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
|
||||
SRC_URI[float-cmp-0.9.0.sha256sum] = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4"
|
||||
SRC_URI[fnv-1.0.7.sha256sum] = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
|
||||
SRC_URI[form_urlencoded-1.2.1.sha256sum] = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
|
||||
SRC_URI[futf-0.1.5.sha256sum] = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843"
|
||||
SRC_URI[futures-channel-0.3.29.sha256sum] = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
|
||||
SRC_URI[futures-core-0.3.29.sha256sum] = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
|
||||
SRC_URI[futures-executor-0.3.29.sha256sum] = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc"
|
||||
SRC_URI[futures-io-0.3.29.sha256sum] = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
|
||||
SRC_URI[futures-macro-0.3.29.sha256sum] = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
|
||||
SRC_URI[futures-task-0.3.29.sha256sum] = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
|
||||
SRC_URI[futures-util-0.3.29.sha256sum] = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
|
||||
SRC_URI[fxhash-0.2.1.sha256sum] = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
|
||||
SRC_URI[gdk-pixbuf-0.18.3.sha256sum] = "446f32b74d22c33b7b258d4af4ffde53c2bf96ca2e29abdf1a785fe59bd6c82c"
|
||||
SRC_URI[gdk-pixbuf-sys-0.18.0.sha256sum] = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7"
|
||||
SRC_URI[getrandom-0.2.11.sha256sum] = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
|
||||
SRC_URI[gio-0.18.4.sha256sum] = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73"
|
||||
SRC_URI[gio-sys-0.18.1.sha256sum] = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2"
|
||||
SRC_URI[glib-0.18.4.sha256sum] = "951bbd7fdc5c044ede9f05170f05a3ae9479239c3afdfe2d22d537a3add15c4e"
|
||||
SRC_URI[glib-macros-0.18.3.sha256sum] = "72793962ceece3863c2965d7f10c8786323b17c7adea75a515809fa20ab799a5"
|
||||
SRC_URI[glib-sys-0.18.1.sha256sum] = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898"
|
||||
SRC_URI[gobject-sys-0.18.0.sha256sum] = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44"
|
||||
SRC_URI[half-1.8.2.sha256sum] = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
|
||||
SRC_URI[hashbrown-0.14.3.sha256sum] = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
|
||||
SRC_URI[heck-0.4.1.sha256sum] = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
|
||||
SRC_URI[hermit-abi-0.3.3.sha256sum] = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
|
||||
SRC_URI[iana-time-zone-0.1.58.sha256sum] = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20"
|
||||
SRC_URI[iana-time-zone-haiku-0.1.2.sha256sum] = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
|
||||
SRC_URI[idna-0.5.0.sha256sum] = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
|
||||
SRC_URI[indexmap-2.1.0.sha256sum] = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
|
||||
SRC_URI[is-terminal-0.4.9.sha256sum] = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
|
||||
SRC_URI[itertools-0.10.5.sha256sum] = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
|
||||
SRC_URI[itertools-0.11.0.sha256sum] = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
|
||||
SRC_URI[itoa-1.0.10.sha256sum] = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
|
||||
SRC_URI[js-sys-0.3.66.sha256sum] = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca"
|
||||
SRC_URI[language-tags-0.3.2.sha256sum] = "d4345964bb142484797b161f473a503a434de77149dd8c7427788c6e13379388"
|
||||
SRC_URI[lazy_static-1.4.0.sha256sum] = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
SRC_URI[libc-0.2.151.sha256sum] = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4"
|
||||
SRC_URI[libloading-0.8.1.sha256sum] = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161"
|
||||
SRC_URI[libm-0.2.8.sha256sum] = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
|
||||
SRC_URI[linked-hash-map-0.5.6.sha256sum] = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
|
||||
SRC_URI[linux-raw-sys-0.4.12.sha256sum] = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
|
||||
SRC_URI[locale_config-0.3.0.sha256sum] = "08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934"
|
||||
SRC_URI[lock_api-0.4.11.sha256sum] = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
|
||||
SRC_URI[log-0.4.20.sha256sum] = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
|
||||
SRC_URI[lopdf-0.31.0.sha256sum] = "07c8e1b6184b1b32ea5f72f572ebdc40e5da1d2921fa469947ff7c480ad1f85a"
|
||||
SRC_URI[mac-0.1.1.sha256sum] = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
|
||||
SRC_URI[malloc_buf-0.0.6.sha256sum] = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
|
||||
SRC_URI[markup5ever-0.11.0.sha256sum] = "7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016"
|
||||
SRC_URI[matches-0.1.10.sha256sum] = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
|
||||
SRC_URI[matrixmultiply-0.3.8.sha256sum] = "7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2"
|
||||
SRC_URI[md5-0.7.0.sha256sum] = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771"
|
||||
SRC_URI[memchr-2.6.4.sha256sum] = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
|
||||
SRC_URI[memoffset-0.9.0.sha256sum] = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
|
||||
SRC_URI[minimal-lexical-0.2.1.sha256sum] = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
|
||||
SRC_URI[miniz_oxide-0.7.1.sha256sum] = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
|
||||
SRC_URI[nalgebra-0.32.3.sha256sum] = "307ed9b18cc2423f29e83f84fd23a8e73628727990181f18641a8b5dc2ab1caa"
|
||||
SRC_URI[nalgebra-macros-0.2.1.sha256sum] = "91761aed67d03ad966ef783ae962ef9bbaca728d2dd7ceb7939ec110fffad998"
|
||||
SRC_URI[new_debug_unreachable-1.0.4.sha256sum] = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
|
||||
SRC_URI[nom-7.1.3.sha256sum] = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
|
||||
SRC_URI[normalize-line-endings-0.3.0.sha256sum] = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
|
||||
SRC_URI[num-complex-0.4.4.sha256sum] = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214"
|
||||
SRC_URI[num-integer-0.1.45.sha256sum] = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
|
||||
SRC_URI[num-rational-0.4.1.sha256sum] = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
|
||||
SRC_URI[num-traits-0.2.17.sha256sum] = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
|
||||
SRC_URI[objc-0.2.7.sha256sum] = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
|
||||
SRC_URI[objc-foundation-0.1.1.sha256sum] = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
|
||||
SRC_URI[objc_id-0.1.1.sha256sum] = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
|
||||
SRC_URI[once_cell-1.19.0.sha256sum] = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
|
||||
SRC_URI[oorandom-11.1.3.sha256sum] = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
|
||||
SRC_URI[pango-0.18.3.sha256sum] = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4"
|
||||
SRC_URI[pango-sys-0.18.0.sha256sum] = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5"
|
||||
SRC_URI[pangocairo-0.18.0.sha256sum] = "57036589a9cfcacf83f9e606d15813fc6bf03f0e9e69aa2b5e3bb85af86b38a5"
|
||||
SRC_URI[pangocairo-sys-0.18.0.sha256sum] = "fc3c8ff676a37e7a72ec1d5fc029f91c407278083d2752784ff9f5188c108833"
|
||||
SRC_URI[parking_lot-0.12.1.sha256sum] = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
|
||||
SRC_URI[parking_lot_core-0.9.9.sha256sum] = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
|
||||
SRC_URI[paste-1.0.14.sha256sum] = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
|
||||
SRC_URI[percent-encoding-2.3.1.sha256sum] = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
|
||||
SRC_URI[phf-0.10.1.sha256sum] = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259"
|
||||
SRC_URI[phf-0.11.2.sha256sum] = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc"
|
||||
SRC_URI[phf_codegen-0.10.0.sha256sum] = "4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd"
|
||||
SRC_URI[phf_generator-0.10.0.sha256sum] = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6"
|
||||
SRC_URI[phf_generator-0.11.2.sha256sum] = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0"
|
||||
SRC_URI[phf_macros-0.11.2.sha256sum] = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b"
|
||||
SRC_URI[phf_shared-0.10.0.sha256sum] = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096"
|
||||
SRC_URI[phf_shared-0.11.2.sha256sum] = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b"
|
||||
SRC_URI[pin-project-lite-0.2.13.sha256sum] = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
|
||||
SRC_URI[pin-utils-0.1.0.sha256sum] = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
|
||||
SRC_URI[pkg-config-0.3.27.sha256sum] = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
|
||||
SRC_URI[plotters-0.3.5.sha256sum] = "d2c224ba00d7cadd4d5c660deaf2098e5e80e07846537c51f9cfa4be50c1fd45"
|
||||
SRC_URI[plotters-backend-0.3.5.sha256sum] = "9e76628b4d3a7581389a35d5b6e2139607ad7c75b17aed325f210aa91f4a9609"
|
||||
SRC_URI[plotters-svg-0.3.5.sha256sum] = "38f6d39893cca0701371e3c27294f09797214b86f1fb951b89ade8ec04e2abab"
|
||||
SRC_URI[png-0.17.10.sha256sum] = "dd75bf2d8dd3702b9707cdbc56a5b9ef42cec752eb8b3bafc01234558442aa64"
|
||||
SRC_URI[powerfmt-0.2.0.sha256sum] = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
|
||||
SRC_URI[ppv-lite86-0.2.17.sha256sum] = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
|
||||
SRC_URI[precomputed-hash-0.1.1.sha256sum] = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
|
||||
SRC_URI[predicates-3.0.4.sha256sum] = "6dfc28575c2e3f19cb3c73b93af36460ae898d426eba6fc15b9bd2a5220758a0"
|
||||
SRC_URI[predicates-core-1.0.6.sha256sum] = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174"
|
||||
SRC_URI[predicates-tree-1.0.9.sha256sum] = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf"
|
||||
SRC_URI[proc-macro-crate-2.0.1.sha256sum] = "97dc5fea232fc28d2f597b37c4876b348a40e33f3b02cc975c8d006d78d94b1a"
|
||||
SRC_URI[proc-macro-error-1.0.4.sha256sum] = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
|
||||
SRC_URI[proc-macro-error-attr-1.0.4.sha256sum] = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
|
||||
SRC_URI[proc-macro2-1.0.70.sha256sum] = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
|
||||
SRC_URI[proptest-1.4.0.sha256sum] = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf"
|
||||
SRC_URI[quick-error-1.2.3.sha256sum] = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
|
||||
SRC_URI[quick-error-2.0.1.sha256sum] = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3"
|
||||
SRC_URI[quote-1.0.33.sha256sum] = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
|
||||
SRC_URI[rand-0.8.5.sha256sum] = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
|
||||
SRC_URI[rand_chacha-0.3.1.sha256sum] = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
|
||||
SRC_URI[rand_core-0.6.4.sha256sum] = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
||||
SRC_URI[rand_xorshift-0.3.0.sha256sum] = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f"
|
||||
SRC_URI[rawpointer-0.2.1.sha256sum] = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
|
||||
SRC_URI[rayon-1.8.0.sha256sum] = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
|
||||
SRC_URI[rayon-core-1.12.0.sha256sum] = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
|
||||
SRC_URI[rctree-0.5.0.sha256sum] = "3b42e27ef78c35d3998403c1d26f3efd9e135d3e5121b0a4845cc5cc27547f4f"
|
||||
SRC_URI[redox_syscall-0.4.1.sha256sum] = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
|
||||
SRC_URI[regex-1.10.2.sha256sum] = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
|
||||
SRC_URI[regex-automata-0.4.3.sha256sum] = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
|
||||
SRC_URI[regex-syntax-0.8.2.sha256sum] = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
|
||||
SRC_URI[rgb-0.8.37.sha256sum] = "05aaa8004b64fd573fc9d002f4e632d51ad4f026c2b5ba95fcb6c2f32c2c47d8"
|
||||
SRC_URI[rustix-0.38.28.sha256sum] = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316"
|
||||
SRC_URI[rusty-fork-0.3.0.sha256sum] = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f"
|
||||
SRC_URI[ryu-1.0.16.sha256sum] = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c"
|
||||
SRC_URI[safe_arch-0.7.1.sha256sum] = "f398075ce1e6a179b46f51bd88d0598b92b00d3551f1a2d4ac49e771b56ac354"
|
||||
SRC_URI[same-file-1.0.6.sha256sum] = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
|
||||
SRC_URI[scopeguard-1.2.0.sha256sum] = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
||||
SRC_URI[selectors-0.25.0.sha256sum] = "4eb30575f3638fc8f6815f448d50cb1a2e255b0897985c8c59f4d37b72a07b06"
|
||||
SRC_URI[serde-1.0.193.sha256sum] = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89"
|
||||
SRC_URI[serde_derive-1.0.193.sha256sum] = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3"
|
||||
SRC_URI[serde_json-1.0.108.sha256sum] = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
|
||||
SRC_URI[serde_spanned-0.6.4.sha256sum] = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80"
|
||||
SRC_URI[servo_arc-0.3.0.sha256sum] = "d036d71a959e00c77a63538b90a6c2390969f9772b096ea837205c6bd0491a44"
|
||||
SRC_URI[simba-0.8.1.sha256sum] = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae"
|
||||
SRC_URI[simd-adler32-0.3.7.sha256sum] = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
|
||||
SRC_URI[siphasher-0.3.11.sha256sum] = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
|
||||
SRC_URI[slab-0.4.9.sha256sum] = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
|
||||
SRC_URI[smallvec-1.11.2.sha256sum] = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
|
||||
SRC_URI[stable_deref_trait-1.2.0.sha256sum] = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
|
||||
SRC_URI[string_cache-0.8.7.sha256sum] = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b"
|
||||
SRC_URI[string_cache_codegen-0.5.2.sha256sum] = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988"
|
||||
SRC_URI[strsim-0.10.0.sha256sum] = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
|
||||
SRC_URI[syn-1.0.109.sha256sum] = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
|
||||
SRC_URI[syn-2.0.41.sha256sum] = "44c8b28c477cc3bf0e7966561e3460130e1255f7a1cf71931075f1c5e7a7e269"
|
||||
SRC_URI[system-deps-6.2.0.sha256sum] = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
|
||||
SRC_URI[target-lexicon-0.12.12.sha256sum] = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a"
|
||||
SRC_URI[tempfile-3.8.1.sha256sum] = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
|
||||
SRC_URI[tendril-0.4.3.sha256sum] = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0"
|
||||
SRC_URI[termtree-0.4.1.sha256sum] = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76"
|
||||
SRC_URI[thiserror-1.0.50.sha256sum] = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
|
||||
SRC_URI[thiserror-impl-1.0.50.sha256sum] = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
|
||||
SRC_URI[time-0.3.30.sha256sum] = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5"
|
||||
SRC_URI[time-core-0.1.2.sha256sum] = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
|
||||
SRC_URI[time-macros-0.2.15.sha256sum] = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20"
|
||||
SRC_URI[tinytemplate-1.2.1.sha256sum] = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
|
||||
SRC_URI[tinyvec-1.6.0.sha256sum] = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
|
||||
SRC_URI[tinyvec_macros-0.1.1.sha256sum] = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
|
||||
SRC_URI[toml-0.8.2.sha256sum] = "185d8ab0dfbb35cf1399a6344d8484209c088f75f8f68230da55d48d95d43e3d"
|
||||
SRC_URI[toml_datetime-0.6.3.sha256sum] = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
|
||||
SRC_URI[toml_edit-0.20.2.sha256sum] = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338"
|
||||
SRC_URI[typenum-1.17.0.sha256sum] = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
|
||||
SRC_URI[unarray-0.1.4.sha256sum] = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94"
|
||||
SRC_URI[unicode-bidi-0.3.14.sha256sum] = "6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416"
|
||||
SRC_URI[unicode-ident-1.0.12.sha256sum] = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
|
||||
SRC_URI[unicode-normalization-0.1.22.sha256sum] = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
|
||||
SRC_URI[url-2.5.0.sha256sum] = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
|
||||
SRC_URI[utf-8-0.7.6.sha256sum] = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
|
||||
SRC_URI[utf8parse-0.2.1.sha256sum] = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
|
||||
SRC_URI[version-compare-0.1.1.sha256sum] = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
|
||||
SRC_URI[version_check-0.9.4.sha256sum] = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
|
||||
SRC_URI[wait-timeout-0.2.0.sha256sum] = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6"
|
||||
SRC_URI[walkdir-2.4.0.sha256sum] = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
|
||||
SRC_URI[wasi-0.11.0+wasi-snapshot-preview1.sha256sum] = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
|
||||
SRC_URI[wasm-bindgen-0.2.89.sha256sum] = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e"
|
||||
SRC_URI[wasm-bindgen-backend-0.2.89.sha256sum] = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826"
|
||||
SRC_URI[wasm-bindgen-macro-0.2.89.sha256sum] = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2"
|
||||
SRC_URI[wasm-bindgen-macro-support-0.2.89.sha256sum] = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283"
|
||||
SRC_URI[wasm-bindgen-shared-0.2.89.sha256sum] = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f"
|
||||
SRC_URI[web-sys-0.3.66.sha256sum] = "50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f"
|
||||
SRC_URI[weezl-0.1.7.sha256sum] = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb"
|
||||
SRC_URI[wide-0.7.13.sha256sum] = "c68938b57b33da363195412cfc5fc37c9ed49aa9cfe2156fde64b8d2c9498242"
|
||||
SRC_URI[winapi-0.3.9.sha256sum] = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
|
||||
SRC_URI[winapi-i686-pc-windows-gnu-0.4.0.sha256sum] = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
||||
SRC_URI[winapi-util-0.1.6.sha256sum] = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
|
||||
SRC_URI[winapi-x86_64-pc-windows-gnu-0.4.0.sha256sum] = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
SRC_URI[windows-core-0.51.1.sha256sum] = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
|
||||
SRC_URI[windows-sys-0.48.0.sha256sum] = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
|
||||
SRC_URI[windows-sys-0.52.0.sha256sum] = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
|
||||
SRC_URI[windows-targets-0.48.5.sha256sum] = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
|
||||
SRC_URI[windows-targets-0.52.0.sha256sum] = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
|
||||
SRC_URI[windows_aarch64_gnullvm-0.48.5.sha256sum] = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
|
||||
SRC_URI[windows_aarch64_gnullvm-0.52.0.sha256sum] = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
|
||||
SRC_URI[windows_aarch64_msvc-0.48.5.sha256sum] = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
|
||||
SRC_URI[windows_aarch64_msvc-0.52.0.sha256sum] = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
|
||||
SRC_URI[windows_i686_gnu-0.48.5.sha256sum] = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
|
||||
SRC_URI[windows_i686_gnu-0.52.0.sha256sum] = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
|
||||
SRC_URI[windows_i686_msvc-0.48.5.sha256sum] = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
|
||||
SRC_URI[windows_i686_msvc-0.52.0.sha256sum] = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
|
||||
SRC_URI[windows_x86_64_gnu-0.48.5.sha256sum] = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
|
||||
SRC_URI[windows_x86_64_gnu-0.52.0.sha256sum] = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
|
||||
SRC_URI[windows_x86_64_gnullvm-0.48.5.sha256sum] = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
|
||||
SRC_URI[windows_x86_64_gnullvm-0.52.0.sha256sum] = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
|
||||
SRC_URI[windows_x86_64_msvc-0.48.5.sha256sum] = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
|
||||
SRC_URI[windows_x86_64_msvc-0.52.0.sha256sum] = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
|
||||
SRC_URI[winnow-0.5.28.sha256sum] = "6c830786f7720c2fd27a1a0e27a709dbd3c4d009b56d098fc742d4f4eab91fe2"
|
||||
SRC_URI[xml5ever-0.17.0.sha256sum] = "4034e1d05af98b51ad7214527730626f019682d797ba38b51689212118d8e650"
|
||||
SRC_URI[yeslogic-fontconfig-sys-4.0.1.sha256sum] = "ec657fd32bbcbeaef5c7bc8e10b3db95b143fab8db0a50079773dbf936fd4f73"
|
||||
@@ -0,0 +1,44 @@
|
||||
From d0f4f5b3ae900b9d092407e29b5372d93910c18c Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex@linutronix.de>
|
||||
Date: Tue, 21 Sep 2021 16:27:14 +0200
|
||||
Subject: [PATCH] Makefile.am: pass rust target to cargo also when not cross
|
||||
compiling
|
||||
|
||||
Otherwise oe-core's native build doesn't work either.
|
||||
|
||||
Upstream-Status: Inappropriate [oe-core specific]
|
||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
||||
---
|
||||
Makefile.am | 2 --
|
||||
configure.ac | 4 +---
|
||||
2 files changed, 1 insertion(+), 5 deletions(-)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 2a89954..4e296d3 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -173,9 +173,7 @@ else
|
||||
CARGO_RELEASE_ARGS=--release
|
||||
endif
|
||||
|
||||
-if CROSS_COMPILING
|
||||
CARGO_TARGET_ARGS=--target=$(RUST_TARGET)
|
||||
-endif
|
||||
|
||||
CARGO_VERBOSE = $(cargo_verbose_$(V))
|
||||
cargo_verbose_ = $(cargo_verbose_$(AM_DEFAULT_VERBOSITY))
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 42215cf..2499c96 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -292,9 +292,7 @@ AC_ARG_VAR(RUST_TARGET, [Set rust target (default=$host)])
|
||||
: ${RUST_TARGET:=$host}
|
||||
|
||||
AM_CONDITIONAL([CROSS_COMPILING], [test "x$cross_compiling" = xyes])
|
||||
-AS_IF([test "x$cross_compiling" = "xyes"], [
|
||||
- RUST_TARGET_SUBDIR="$RUST_TARGET/$RUST_TARGET_SUBDIR"
|
||||
-])
|
||||
+RUST_TARGET_SUBDIR="$RUST_TARGET/$RUST_TARGET_SUBDIR"
|
||||
AC_SUBST([RUST_TARGET_SUBDIR])
|
||||
|
||||
dnl ===========================================================================
|
||||
@@ -0,0 +1,40 @@
|
||||
From df94cfa4a637c229fef32c349b5c2dfee2dca3fc Mon Sep 17 00:00:00 2001
|
||||
From: Ross Burton <ross.burton@arm.com>
|
||||
Date: Thu, 27 Jun 2024 17:09:11 +0100
|
||||
Subject: [PATCH] Don't build rsvg-loader in cross builds
|
||||
|
||||
This binary is a non-installed test binary that isn't any use in cross builds, and
|
||||
causes problems because it generates a gdk-pixbuf loader cache at build time using
|
||||
a mix of host and target libraries.
|
||||
|
||||
As we don't install the binary, we can just not build it.
|
||||
|
||||
Upstream-Status: Inappropriate [upstream has moved to Meson]
|
||||
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
||||
---
|
||||
gdk-pixbuf-loader/Makefile.am | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/gdk-pixbuf-loader/Makefile.am b/gdk-pixbuf-loader/Makefile.am
|
||||
index 44df9c6c..fb417d24 100644
|
||||
--- a/gdk-pixbuf-loader/Makefile.am
|
||||
+++ b/gdk-pixbuf-loader/Makefile.am
|
||||
@@ -30,6 +30,7 @@ if PLATFORM_WIN32
|
||||
libpixbufloader_svg_la_LDFLAGS += -no-undefined
|
||||
endif
|
||||
|
||||
+if !CROSS_COMPILING
|
||||
noinst_PROGRAMS = rsvg-loader
|
||||
|
||||
rsvg_loader_SOURCES = \
|
||||
@@ -52,6 +53,7 @@ EXTRA_rsvg_loader_DEPENDENCIES = libpixbufloader-svg.la gdk-pixbuf-loaders
|
||||
|
||||
gdk-pixbuf-loaders: Makefile
|
||||
$(AM_V_GEN) ( $(GDK_PIXBUF_QUERYLOADERS) ./libpixbufloader-svg.la && GDK_PIXBUF_MODULEDIR=$(gdk_pixbuf_moduledir) $(GDK_PIXBUF_QUERYLOADERS)) > gdk-pixbuf.loaders 2>/dev/null
|
||||
+endif
|
||||
|
||||
if CROSS_COMPILING
|
||||
RUN_QUERY_LOADER_TEST=false
|
||||
--
|
||||
2.34.1
|
||||
|
||||
80
sources/poky/meta/recipes-gnome/librsvg/librsvg_2.57.1.bb
Normal file
80
sources/poky/meta/recipes-gnome/librsvg/librsvg_2.57.1.bb
Normal file
@@ -0,0 +1,80 @@
|
||||
SUMMARY = "Library for rendering SVG files"
|
||||
DESCRIPTION = "A small library to render Scalable Vector Graphics (SVG), \
|
||||
associated with the GNOME Project. It renders SVG files to Cairo surfaces. \
|
||||
Cairo is the 2D, antialiased drawing library that GNOME uses to draw things to \
|
||||
the screen or to generate output for printing."
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/librsvg"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/librsvg/issues"
|
||||
|
||||
LICENSE = "LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
|
||||
"
|
||||
|
||||
SECTION = "x11/utils"
|
||||
DEPENDS = "cairo gdk-pixbuf glib-2.0 libxml2 pango python3-docutils-native"
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "autotools"
|
||||
inherit cargo_common gnomebase pixbufcache gobject-introspection rust vala gi-docgen cargo-update-recipe-crates
|
||||
|
||||
require ${BPN}-crates.inc
|
||||
|
||||
SRC_URI += " \
|
||||
file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch \
|
||||
file://disable-rsvg-loader-test.patch \
|
||||
"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "074671a3ed6fbcd67cae2a40e539107f4f097ca8a4ab1a894c05e2524ff340ef"
|
||||
|
||||
UPSTREAM_CHECK_REGEX = "librsvg-(?P<pver>\d+\.\d+\.(?!9\d+)\d+)"
|
||||
|
||||
# librsvg is still autotools-based, but is calling cargo from its automake-driven makefiles
|
||||
# so we cannot use cargo class directly, but still need bits and pieces from it
|
||||
# for cargo to be happy
|
||||
BASEDEPENDS:append = " cargo-native"
|
||||
|
||||
export RUST_BACKTRACE = "full"
|
||||
export RUSTFLAGS
|
||||
|
||||
export RUST_TARGET = "${RUST_HOST_SYS}"
|
||||
|
||||
RUSTFLAGS:append:mips = " --cfg crossbeam_no_atomic_64"
|
||||
RUSTFLAGS:append:mipsel = " --cfg crossbeam_no_atomic_64"
|
||||
RUSTFLAGS:append:powerpc = " --cfg crossbeam_no_atomic_64"
|
||||
|
||||
do_configure[postfuncs] += "cargo_common_do_configure"
|
||||
|
||||
inherit rust-target-config
|
||||
|
||||
# rust-cross writes the target linker binary into target json definition without any flags.
|
||||
# This breaks here because the linker isn't going to work without at least knowing where
|
||||
# the sysroot is. So copy the json to workdir, and patch in the path to wrapper from rust class
|
||||
# which supplies the needed flags.
|
||||
do_compile:prepend() {
|
||||
sed -ie 's,"linker": ".*","linker": "${RUST_TARGET_CC}",g' ${RUST_TARGETS_DIR}/${RUST_HOST_SYS}.json
|
||||
}
|
||||
|
||||
CVE_STATUS[CVE-2018-1000041] = "not-applicable-platform: Issue only applies on Windows"
|
||||
|
||||
CACHED_CONFIGUREVARS = "ac_cv_path_GDK_PIXBUF_QUERYLOADERS=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders"
|
||||
|
||||
PACKAGECONFIG ??= "gdkpixbuf"
|
||||
PACKAGECONFIG:append:class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'vala', '', d)}"
|
||||
# The gdk-pixbuf loader
|
||||
PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader,gdk-pixbuf-native"
|
||||
PACKAGECONFIG[vala] = "--enable-vala,--disable-vala"
|
||||
|
||||
do_install:append() {
|
||||
# Loadable modules don't need .a or .la on Linux
|
||||
rm -f ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.a ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.la
|
||||
}
|
||||
|
||||
PACKAGES =+ "librsvg-gtk rsvg"
|
||||
FILES:rsvg = "${bindir}/rsvg* \
|
||||
${datadir}/pixmaps/svg-viewer.svg \
|
||||
${datadir}/themes"
|
||||
FILES:librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so \
|
||||
${datadir}/thumbnailers/librsvg.thumbnailer"
|
||||
RRECOMMENDS:librsvg-gtk = "gdk-pixbuf-bin"
|
||||
|
||||
PIXBUF_PACKAGES = "librsvg-gtk"
|
||||
@@ -0,0 +1,25 @@
|
||||
SUMMARY = "libsecret is a library for storing and retrieving passwords and other secrets"
|
||||
DESCRIPTION = "A GObject-based library for accessing the Secret Service API of \
|
||||
the freedesktop.org project, a cross-desktop effort to access passwords, \
|
||||
tokens and other types of secrets. libsecret provides a convenient wrapper \
|
||||
for these methods so consumers do not have to call the low-level DBus methods."
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
HOMEPAGE = "https://github.com/GNOME/libsecret"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/libsecret/issues"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=23c2a5e0106b99d75238986559bb5fc6"
|
||||
|
||||
|
||||
inherit gnomebase gi-docgen vala gobject-introspection manpages
|
||||
|
||||
DEPENDS += "glib-2.0 libgcrypt gettext-native"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "163d08d783be6d4ab9a979ceb5a4fecbc1d9660d3c34168c581301cd53912b20"
|
||||
|
||||
GTKDOC_MESON_OPTION = 'gtk_doc'
|
||||
|
||||
PACKAGECONFIG[manpages] = "-Dmanpage=true,-Dmanpage=false,libxslt-native xmlto-native"
|
||||
|
||||
# http://errors.yoctoproject.org/Errors/Details/20228/
|
||||
ARM_INSTRUCTION_SET:armv4 = "arm"
|
||||
ARM_INSTRUCTION_SET:armv5 = "arm"
|
||||
ARM_INSTRUCTION_SET:armv6 = "arm"
|
||||
@@ -0,0 +1,35 @@
|
||||
From dc208bafc57c1ccaa0ca260f99c8b4c976271ebc Mon Sep 17 00:00:00 2001
|
||||
From: Markus Volk <f_l_k@t-online.de>
|
||||
Date: Sat, 16 Sep 2023 14:02:57 +0200
|
||||
Subject: [PATCH] xb-self-test.c: hardcode G_TEST_SRCDIR
|
||||
|
||||
This avoids:
|
||||
libxmlb-0.3.14-r0 do_package_qa: QA Issue: File
|
||||
/usr/libexec/installed-tests/libxmlb/xb-self-test in package libxmlb-ptest
|
||||
contains reference to TMPDIR [buildpaths]
|
||||
|
||||
and also fixes the runtime for the ptest.
|
||||
|
||||
Upstream-Status: Inappropriate [oe-specific]
|
||||
|
||||
Signed-off-by: Markus Volk <f_l_k@t-online.de>
|
||||
---
|
||||
src/xb-self-test.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/xb-self-test.c b/src/xb-self-test.c
|
||||
index 47d9728..8b3dd0e 100644
|
||||
--- a/src/xb-self-test.c
|
||||
+++ b/src/xb-self-test.c
|
||||
@@ -2870,7 +2870,7 @@ xb_speed_func(void)
|
||||
int
|
||||
main(int argc, char **argv)
|
||||
{
|
||||
- g_setenv("G_TEST_SRCDIR", SRCDIR, FALSE);
|
||||
+ g_setenv("G_TEST_SRCDIR", "/usr/libexec/installed-tests/libxmlb", FALSE);
|
||||
|
||||
g_test_init(&argc, &argv, NULL);
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
#! /bin/sh
|
||||
|
||||
gnome-desktop-testing-runner libxmlb
|
||||
25
sources/poky/meta/recipes-gnome/libxmlb/libxmlb_0.3.15.bb
Normal file
25
sources/poky/meta/recipes-gnome/libxmlb/libxmlb_0.3.15.bb
Normal file
@@ -0,0 +1,25 @@
|
||||
SUMMARY = "A library to help create and query binary XML blobs"
|
||||
HOMEPAGE = "https://github.com/hughsie/libxmlb"
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=1803fa9c2c3ce8cb06b4861d75310742"
|
||||
|
||||
SRC_URI = " \
|
||||
git://github.com/hughsie/libxmlb.git;branch=main;protocol=https \
|
||||
file://0001-xb-selftest.c-hardcode-G_TEST_SRCDIR.patch \
|
||||
file://run-ptest \
|
||||
"
|
||||
SRCREV = "25a6384ad60f7e8550292e6cb4f262cc5da74be4"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
DEPENDS = "glib-2.0 xz zstd"
|
||||
|
||||
inherit gobject-introspection gtk-doc meson ptest-gnome lib_package pkgconfig
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}"
|
||||
PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false"
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtkdoc"
|
||||
|
||||
FILES:${PN} += "${datadir}"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
Reference in New Issue
Block a user