added my Recipes
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
SUMMARY = "C++ bindings for the atk"
|
||||
SECTION = "libs"
|
||||
|
||||
LICENSE = "LGPL-2.1-only & GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1 \
|
||||
file://COPYING.tools;md5=751419260aa954499f7abaabaa882bbe"
|
||||
|
||||
DEPENDS = "atk glibmm-2.68"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GNOMEBN = "atkmm"
|
||||
|
||||
inherit gnomebase features_check
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "6f62dd99f746985e573605937577ccfc944368f606a71ca46342d70e1cdae079"
|
||||
|
||||
S = "${WORKDIR}/${GNOMEBN}-${PV}"
|
||||
|
||||
EXTRA_OEMESON = "-Dbuild-documentation=false"
|
||||
|
||||
FILES:${PN}-dev += "${libdir}/*/include ${libdir}/*/proc/m4"
|
||||
20
meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.28.2.bb
Normal file
20
meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.28.2.bb
Normal file
@@ -0,0 +1,20 @@
|
||||
SUMMARY = "C++ bindings for the atk"
|
||||
SECTION = "libs"
|
||||
|
||||
LICENSE = "LGPL-2.1-only & GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1 \
|
||||
file://COPYING.tools;md5=751419260aa954499f7abaabaa882bbe"
|
||||
|
||||
DEPENDS = "atk glibmm"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase features_check
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "a0bb49765ceccc293ab2c6735ba100431807d384ffa14c2ebd30e07993fd2fa4"
|
||||
|
||||
EXTRA_OEMESON = "-Dbuild-documentation=false"
|
||||
|
||||
FILES:${PN}-dev += "${libdir}/*/include ${libdir}/*/proc/m4"
|
||||
@@ -0,0 +1,3 @@
|
||||
#! /bin/sh
|
||||
|
||||
gnome-desktop-testing-runner libgcab
|
||||
24
meta-openembedded/meta-oe/recipes-gnome/gcab/gcab_1.4.bb
Normal file
24
meta-openembedded/meta-oe/recipes-gnome/gcab/gcab_1.4.bb
Normal file
@@ -0,0 +1,24 @@
|
||||
SUMMARY = "A GObject library to create cabinet files"
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcab"
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
DEPENDS = "glib-2.0"
|
||||
|
||||
SRC_URI = "\
|
||||
${GNOME_MIRROR}/gcab/${PV}/gcab-${PV}.tar.xz \
|
||||
file://run-ptest \
|
||||
"
|
||||
SRC_URI[sha256sum] = "67a5fa9be6c923fbc9197de6332f36f69a33dadc9016a2b207859246711c048f"
|
||||
|
||||
inherit gobject-introspection gtk-doc manpages meson ptest-gnome vala
|
||||
|
||||
PACKAGECONFIG ??= "\
|
||||
${@bb.utils.contains('USE_NLS', 'yes', 'nls', '', d)} \
|
||||
${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
|
||||
"
|
||||
PACKAGECONFIG[manpages] = ""
|
||||
PACKAGECONFIG[nls] = "-Dnls=true,-Dnls=false"
|
||||
PACKAGECONFIG[tests] = "-Dtests=true -Dinstalled_tests=true,-Dtests=false -Dinstalled_tests=false"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
@@ -0,0 +1,6 @@
|
||||
/* This is an auto-generated header, DO NOT EDIT! */
|
||||
|
||||
#define ICONV_ISO_INT_FORMAT "iso-%u-%u"
|
||||
#define ICONV_ISO_STR_FORMAT "iso-%u-%s"
|
||||
#define ICONV_10646 "iso-10646"
|
||||
#define ICONV_SHIFT_JIS "shift-jis"
|
||||
@@ -0,0 +1,22 @@
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
|
||||
DESCRIPTION = "Runtime libraries for parsing and creating MIME mail"
|
||||
SECTION = "libs"
|
||||
|
||||
DEPENDS = "glib-2.0 zlib"
|
||||
|
||||
inherit gnomebase gobject-introspection vala
|
||||
|
||||
SRC_URI = "https://github.com/jstedfast/${BPN}/releases/download/${PV}/${BP}.tar.xz \
|
||||
file://iconv-detect.h \
|
||||
"
|
||||
SRC_URI[sha256sum] = "2e10a54d4821daf8b16c019ad5d567e0fb8e766f8ffe5fec3d4c6a37373d6406"
|
||||
|
||||
EXTRA_OECONF += "--enable-largefile"
|
||||
|
||||
export ac_cv_have_iconv_detect_h="yes"
|
||||
export ac_cv_sys_file_offset_bits="64"
|
||||
|
||||
do_configure:append () {
|
||||
cp ${WORKDIR}/iconv-detect.h ${S}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
SUMMARY = "Common macros for building GNOME applications"
|
||||
HOMEPAGE = "http://www.gnome.org/"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/"
|
||||
|
||||
LICENSE = "GPL-2.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
SECTION = "x11/gnome"
|
||||
inherit gnomebase allarch
|
||||
|
||||
SRC_URI[archive.md5sum] = "933258d9c23e218eb6eec9cc1951b053"
|
||||
SRC_URI[archive.sha256sum] = "22569e370ae755e04527b76328befc4c73b62bfd4a572499fde116b8318af8cf"
|
||||
|
||||
EXTRA_AUTORECONF = ""
|
||||
DEPENDS = ""
|
||||
|
||||
# Default to enable autoconf-archive to avoid conflicts
|
||||
PACKAGECONFIG ??= "autoconf-archive"
|
||||
PACKAGECONFIG[autoconf-archive] = "--with-autoconf-archive, --without-autoconf-archive, autoconf-archive"
|
||||
|
||||
FILES:${PN} += "${datadir}/aclocal"
|
||||
FILES:${PN}-dev = ""
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
@@ -0,0 +1,61 @@
|
||||
dnl Do not call GNOME_DOC_DEFINES directly. It is split out from
|
||||
dnl GNOME_DOC_INIT to allow gnome-doc-utils to bootstrap off itself.
|
||||
AC_DEFUN([GNOME_DOC_DEFINES],
|
||||
[
|
||||
AC_ARG_WITH([help-dir],
|
||||
AC_HELP_STRING([--with-help-dir=DIR], [path to help docs]),,
|
||||
[with_help_dir='${datadir}/gnome/help'])
|
||||
HELP_DIR="$with_help_dir"
|
||||
AC_SUBST(HELP_DIR)
|
||||
|
||||
AC_ARG_WITH([omf-dir],
|
||||
AC_HELP_STRING([--with-omf-dir=DIR], [path to OMF files]),,
|
||||
[with_omf_dir='${datadir}/omf'])
|
||||
OMF_DIR="$with_omf_dir"
|
||||
AC_SUBST(OMF_DIR)
|
||||
|
||||
AC_ARG_WITH([help-formats],
|
||||
AC_HELP_STRING([--with-help-formats=FORMATS], [list of formats]),,
|
||||
[with_help_formats=''])
|
||||
DOC_USER_FORMATS="$with_help_formats"
|
||||
AC_SUBST(DOC_USER_FORMATS)
|
||||
|
||||
AC_ARG_ENABLE([scrollkeeper],
|
||||
[AC_HELP_STRING([--disable-scrollkeeper],
|
||||
[do not make updates to the scrollkeeper database])],,
|
||||
enable_scrollkeeper=yes)
|
||||
AM_CONDITIONAL([ENABLE_SK],[test "$gdu_cv_have_gdu" = "yes" -a "$enable_scrollkeeper" = "yes"])
|
||||
|
||||
dnl disable scrollkeeper automatically for distcheck
|
||||
DISTCHECK_CONFIGURE_FLAGS="--disable-scrollkeeper $DISTCHECK_CONFIGURE_FLAGS"
|
||||
AC_SUBST(DISTCHECK_CONFIGURE_FLAGS)
|
||||
|
||||
AM_CONDITIONAL([HAVE_GNOME_DOC_UTILS],[test "$gdu_cv_have_gdu" = "yes"])
|
||||
])
|
||||
|
||||
# GNOME_DOC_INIT ([MINIMUM-VERSION],[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND])
|
||||
#
|
||||
AC_DEFUN([GNOME_DOC_INIT],
|
||||
[AC_REQUIRE([AC_PROG_LN_S])dnl
|
||||
|
||||
if test -z "$AM_DEFAULT_VERBOSITY"; then
|
||||
AM_DEFAULT_VERBOSITY=1
|
||||
fi
|
||||
AC_SUBST([AM_DEFAULT_VERBOSITY])
|
||||
|
||||
ifelse([$1],,[gdu_cv_version_required=0.3.2],[gdu_cv_version_required=$1])
|
||||
|
||||
AC_MSG_CHECKING([gnome-doc-utils >= $gdu_cv_version_required])
|
||||
PKG_CHECK_EXISTS([gnome-doc-utils >= $gdu_cv_version_required],
|
||||
[gdu_cv_have_gdu=yes],[gdu_cv_have_gdu=no])
|
||||
|
||||
if test "$gdu_cv_have_gdu" = "yes"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
ifelse([$2],,[:],[$2])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
ifelse([$3],,[:],[$3])
|
||||
fi
|
||||
|
||||
GNOME_DOC_DEFINES
|
||||
])
|
||||
@@ -0,0 +1,18 @@
|
||||
SUMMARY = "Stub implementation of gnome-doc-utils"
|
||||
DESCRIPTION = "This recipe provides m4 macros from gnome-doc-utils project, so \
|
||||
that dependent recipes can build. Gnome-doc-utils itself is no longer packaged because \
|
||||
it requires libxml2 and python 2 at the same time, which can no longer be satisfied. "
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6 \
|
||||
file://${COREBASE}/meta/files/common-licenses/LGPL-2.1-only;md5=1a6d268fd218675ffea8be556788b780"
|
||||
SRC_URI = "file://gnome-doc-utils.m4"
|
||||
|
||||
PROVIDES = "gnome-doc-utils"
|
||||
|
||||
do_install:append() {
|
||||
install -d ${D}${datadir}/aclocal/
|
||||
install ${WORKDIR}/gnome-doc-utils.m4 ${D}${datadir}/aclocal/
|
||||
}
|
||||
|
||||
FILES:${PN} += "${datadir}"
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
SUMMARY = "GTK+2 standard themes"
|
||||
HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/sources/gnome-themes-standard/"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/"
|
||||
SECTION = "x11/gnome"
|
||||
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1"
|
||||
|
||||
inherit gnomebase gettext gtk-icon-cache upstream-version-is-even features_check
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
|
||||
|
||||
DEPENDS += "intltool-native gtk+"
|
||||
|
||||
# PV is 3.28 not 3.28.0, so the gnomebase SRC_URI isn't right.
|
||||
SRC_URI = "${GNOME_MIRROR}/${BPN}/${PV}/${BPN}-${PV}.tar.xz;name=archive"
|
||||
SRC_URI[archive.md5sum] = "f9f2c6c521948da427f702372e16f826"
|
||||
SRC_URI[archive.sha256sum] = "7c4ba0bff001f06d8983cfc105adaac42df1d1267a2591798a780bac557a5819"
|
||||
|
||||
EXTRA_OECONF = "--disable-gtk3-engine"
|
||||
|
||||
do_install:append() {
|
||||
# Only building Adwaita, remove highcontrast files
|
||||
rm -rf ${D}${prefix}/share/themes/HighContrast \
|
||||
${D}${prefix}/share/icons
|
||||
|
||||
# The libtool archive file is unneeded with shared libs on modern Linux
|
||||
rm -rf ${D}${libdir}/gtk-2.0/2.10.0/engines/libadwaita.la
|
||||
}
|
||||
|
||||
# There could be gnome-theme-highcontrast as well but that requires
|
||||
# gtk+3 and includes lots of icons (is also broken with B != S).
|
||||
PACKAGES += "gnome-theme-adwaita \
|
||||
gnome-theme-adwaita-dark \
|
||||
"
|
||||
|
||||
FILES:gnome-theme-adwaita = "${prefix}/share/themes/Adwaita \
|
||||
${libdir}/gtk-2.0/2.10.0/engines/libadwaita.so"
|
||||
|
||||
FILES:gnome-theme-adwaita-dark = "${prefix}/share/themes/Adwaita-dark"
|
||||
RDEPENDS:gnome-theme-adwaita-dark = "gnome-theme-adwaita"
|
||||
|
||||
# gnome-themes-standard is empty and doesn't exist
|
||||
RDEPENDS:${PN}-dev = ""
|
||||
107
meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+.inc
Normal file
107
meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+.inc
Normal file
@@ -0,0 +1,107 @@
|
||||
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/"
|
||||
|
||||
LICENSE = "LGPL-2.0-only & LGPL-2.0-or-later & LGPL-2.1-or-later"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
|
||||
|
||||
SECTION = "libs"
|
||||
|
||||
inherit features_check
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
|
||||
|
||||
# This picks stable releases in the 2.x series (but not 2.90 onwards,
|
||||
# which were GNOME 3 betas).
|
||||
UPSTREAM_CHECK_REGEX = "(?P<pver>2\.([0-8]*[02468])+(\.\d+)+)"
|
||||
|
||||
X11DEPENDS = "virtual/libx11 libxext libxcursor libxrandr libxdamage libxrender libxcomposite"
|
||||
DEPENDS = "glib-2.0 pango atk jpeg libpng gdk-pixbuf-native \
|
||||
cairo gdk-pixbuf"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'directfb x11', d)}"
|
||||
|
||||
PACKAGECONFIG[x11] = "--with-x=yes --with-gdktarget=x11,--with-x=no,${X11DEPENDS}"
|
||||
# without --with-gdktarget=directfb it will check for cairo-xlib which isn't available without X11 DISTRO_FEATURE
|
||||
PACKAGECONFIG[directfb] = "--with-gdktarget=directfb,,directfb"
|
||||
PACKAGECONFIG[manpages] = "--enable-man --with-xml-catalog=${STAGING_ETCDIR_NATIVE}/xml/catalog, --disable-man, libxslt-native xmlto-native"
|
||||
|
||||
inherit autotools gtk-doc pkgconfig update-alternatives gtk-immodules-cache gobject-introspection manpages
|
||||
|
||||
PACKAGES += "libgail gtk-demo"
|
||||
|
||||
FILES:${PN} += "${bindir}/gtk-update-icon-cache-2.0 \
|
||||
${bindir}/gtk-query-immodules-2.0 \
|
||||
${datadir}/themes ${sysconfdir} \
|
||||
${libdir}/gtk-2.0/${LIBV}/engines/libpixmap.so"
|
||||
|
||||
FILES:${PN}-dev += " \
|
||||
${datadir}/gtk-2.0/include \
|
||||
${libdir}/gtk-2.0/include \
|
||||
${libdir}/gtk-2.0/modules/*.la \
|
||||
${libdir}/gtk-2.0/${LIBV}/loaders/*.la \
|
||||
${libdir}/gtk-2.0/${LIBV}/immodules/*.la \
|
||||
${libdir}/gtk-2.0/${LIBV}/printbackends/*.la \
|
||||
${libdir}/gtk-2.0/${LIBV}/engines/*.la \
|
||||
${bindir}/gtk-builder-convert"
|
||||
|
||||
FILES:gtk-demo = " \
|
||||
${datadir}/gtk-2.0/demo/* \
|
||||
${bindir}/gtk-demo \
|
||||
"
|
||||
|
||||
FILES:libgail = " \
|
||||
${libdir}/gtk-2.0/modules/libgail.so \
|
||||
${libdir}/gtk-2.0/modules/libferret.so \
|
||||
"
|
||||
|
||||
GTKBASE_RRECOMMENDS ?= "liberation-fonts \
|
||||
gdk-pixbuf-loader-png \
|
||||
gdk-pixbuf-loader-jpeg \
|
||||
gdk-pixbuf-loader-gif \
|
||||
gdk-pixbuf-loader-xpm \
|
||||
shared-mime-info \
|
||||
gnome-theme-adwaita \
|
||||
"
|
||||
GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1"
|
||||
|
||||
RRECOMMENDS:${PN} = "${GTKBASE_RRECOMMENDS}"
|
||||
RRECOMMENDS:${PN}:libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
|
||||
|
||||
ALTERNATIVE:${PN} = "gtk-update-icon-cache"
|
||||
ALTERNATIVE_TARGET[gtk-update-icon-cache] = "${bindir}/gtk-update-icon-cache-2.0"
|
||||
|
||||
do_compile:prepend() {
|
||||
export GIR_EXTRA_LIBS_PATH="${B}/gdk/.libs"
|
||||
}
|
||||
|
||||
do_install () {
|
||||
autotools_do_install
|
||||
|
||||
install -d ${D}${sysconfdir}/gtk-2.0
|
||||
|
||||
mkdir -p ${D}${libdir}/gtk-2.0/include
|
||||
install -m 0644 gdk/gdkconfig.h ${D}${libdir}/gtk-2.0/include/gdkconfig.h
|
||||
|
||||
install -m 0644 ${S}/gtk/gtkfilechooserprivate.h ${D}${includedir}/gtk-2.0/gtk/
|
||||
install -m 0644 ${S}/gtk/gtkfilechooserutils.h ${D}${includedir}/gtk-2.0/gtk/
|
||||
install -m 0644 ${S}/gtk/gtkfilesystemmodel.h ${D}${includedir}/gtk-2.0/gtk/
|
||||
|
||||
mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-2.0
|
||||
|
||||
# duplicate gtk-query-immodules for post install script update_gtk_immodules_cache
|
||||
mkdir -p ${D}${libexecdir}
|
||||
ln ${D}${bindir}/gtk-query-immodules-2.0 ${D}${libexecdir}/${MLPREFIX}gtk-query-immodules-2.0
|
||||
}
|
||||
|
||||
SYSROOT_PREPROCESS_FUNCS += "gtk_sysroot_preprocess"
|
||||
|
||||
gtk_sysroot_preprocess () {
|
||||
if [ -e ${D}${bindir}/gtk-builder-convert ]; then
|
||||
install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
|
||||
install -m 755 ${D}${bindir}/gtk-builder-convert ${SYSROOT_DESTDIR}${bindir_crossscripts}/
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
From 34ce93e1c50bfb88f92a687d4f82de55584f3f6a Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Wed, 11 Apr 2018 14:20:39 +0300
|
||||
Subject: [PATCH] Do not look into $HOME when looking for gtk modules
|
||||
|
||||
On the host it causes host contamination, on the target it's a
|
||||
potential security issue. Gtk+3 has already removed this.
|
||||
|
||||
Upstream-Status: Inappropriate [gtk2 is in maintenance mode]
|
||||
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
---
|
||||
gtk/gtkmodules.c | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/gtk/gtkmodules.c b/gtk/gtkmodules.c
|
||||
index 50729b6..e09b583 100644
|
||||
--- a/gtk/gtkmodules.c
|
||||
+++ b/gtk/gtkmodules.c
|
||||
@@ -65,10 +65,6 @@ get_module_path (void)
|
||||
if (result)
|
||||
return result;
|
||||
|
||||
- home_dir = g_get_home_dir();
|
||||
- if (home_dir)
|
||||
- home_gtk_dir = g_build_filename (home_dir, ".gtk-2.0", NULL);
|
||||
-
|
||||
module_path_env = g_getenv ("GTK_PATH");
|
||||
exe_prefix = g_getenv ("GTK_EXE_PREFIX");
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
From a703e2406fda3dc150574ae2f90cb5f4810d0601 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 29 Aug 2022 00:25:19 -0700
|
||||
Subject: [PATCH] Fix signature of create_menu() function
|
||||
|
||||
Upstream-Status: Inappropriate [EOL]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
tests/testmenubars.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/tests/testmenubars.c b/tests/testmenubars.c
|
||||
index 416a939..7f247f8 100644
|
||||
--- a/tests/testmenubars.c
|
||||
+++ b/tests/testmenubars.c
|
||||
@@ -21,7 +21,7 @@
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
static GtkWidget *
|
||||
-create_menu (depth)
|
||||
+create_menu (int depth)
|
||||
{
|
||||
GtkWidget *menu;
|
||||
GtkWidget *menuitem;
|
||||
@@ -70,19 +70,19 @@ create_menubar (GtkPackDirection pack_dir,
|
||||
menuitem = gtk_image_menu_item_new_from_stock (GTK_STOCK_HOME, NULL);
|
||||
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
|
||||
gtk_label_set_angle (GTK_LABEL (GTK_BIN (menuitem)->child), angle);
|
||||
- menu = create_menu (2, TRUE);
|
||||
+ menu = create_menu (2);
|
||||
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu);
|
||||
|
||||
menuitem = gtk_menu_item_new_with_label ("foo");
|
||||
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
|
||||
gtk_label_set_angle (GTK_LABEL (GTK_BIN (menuitem)->child), angle);
|
||||
- menu = create_menu (2, TRUE);
|
||||
+ menu = create_menu (2);
|
||||
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu);
|
||||
|
||||
menuitem = gtk_menu_item_new_with_label ("bar");
|
||||
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
|
||||
gtk_label_set_angle (GTK_LABEL (GTK_BIN (menuitem)->child), angle);
|
||||
- menu = create_menu (2, TRUE);
|
||||
+ menu = create_menu (2);
|
||||
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu);
|
||||
|
||||
return menubar;
|
||||
--
|
||||
2.37.2
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
There are issues building the gtk+ tutorial and faq documentation.
|
||||
Since they were removed in gtk+ upstream and are superfluous in
|
||||
embedded applications, just don't build them.
|
||||
|
||||
Thanks to Joshua Lock for suggesting this approach.
|
||||
|
||||
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
|
||||
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
|
||||
diff -urN gtk+-2.22.1.orig/docs/Makefile.am gtk+-2.22.1/docs/Makefile.am
|
||||
--- gtk+-2.22.1.orig/docs/Makefile.am 2010-11-15 04:13:09.000000000 -0800
|
||||
+++ gtk+-2.22.1/docs/Makefile.am 2011-02-23 19:25:16.914815097 -0800
|
||||
@@ -1,7 +1,7 @@
|
||||
## Process this file with automake to produce Makefile.in
|
||||
include $(top_srcdir)/Makefile.decl
|
||||
|
||||
-SUBDIRS = tutorial faq reference tools
|
||||
+SUBDIRS = reference tools
|
||||
|
||||
EXTRA_DIST += \
|
||||
defsformat.txt \
|
||||
@@ -0,0 +1,24 @@
|
||||
Fixes
|
||||
|
||||
include/gtk-2.0/gtk/gtkitemfactory.h:47:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
|
||||
typedef void (*GtkItemFactoryCallback) ();
|
||||
|
||||
gcc5 has -Wstrict-prototypes on by default for -Werror so this becomes a build failure for consumers
|
||||
of this header e.g. matchbox-panel-2
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
Index: gtk+-2.24.27/gtk/gtkitemfactory.h
|
||||
===================================================================
|
||||
--- gtk+-2.24.27.orig/gtk/gtkitemfactory.h
|
||||
+++ gtk+-2.24.27/gtk/gtkitemfactory.h
|
||||
@@ -44,7 +44,7 @@ typedef void (*GtkPrintFunc) (gpoint
|
||||
* (Note that if we are included from a C++ program () will mean
|
||||
* (void) so an explicit cast will be needed.)
|
||||
*/
|
||||
-typedef void (*GtkItemFactoryCallback) ();
|
||||
+typedef void (*GtkItemFactoryCallback) (void);
|
||||
typedef void (*GtkItemFactoryCallback1) (gpointer callback_data,
|
||||
guint callback_action,
|
||||
GtkWidget *widget);
|
||||
@@ -0,0 +1,102 @@
|
||||
Upstream-Status: Pending
|
||||
|
||||
Index: gtk/gtkcellrenderertoggle.c
|
||||
===================================================================
|
||||
--- gtk/gtkcellrenderertoggle.c.orig 2010-06-22 18:11:33.000000000 +0800
|
||||
+++ gtk/gtkcellrenderertoggle.c 2010-06-22 18:11:43.000000000 +0800
|
||||
@@ -71,6 +71,8 @@
|
||||
PROP_INDICATOR_SIZE
|
||||
};
|
||||
|
||||
+/* This is a hard-coded default which promptly gets overridden by a size
|
||||
+ calculated from the font size. */
|
||||
#define TOGGLE_WIDTH 13
|
||||
|
||||
static guint toggle_cell_signals[LAST_SIGNAL] = { 0 };
|
||||
@@ -80,8 +82,9 @@
|
||||
typedef struct _GtkCellRendererTogglePrivate GtkCellRendererTogglePrivate;
|
||||
struct _GtkCellRendererTogglePrivate
|
||||
{
|
||||
- gint indicator_size;
|
||||
-
|
||||
+ gint indicator_size; /* This is the real size */
|
||||
+ gint override_size; /* This is the size set from the indicator-size property */
|
||||
+ GtkWidget *cached_widget;
|
||||
guint inconsistent : 1;
|
||||
};
|
||||
|
||||
@@ -104,6 +107,7 @@
|
||||
GTK_CELL_RENDERER (celltoggle)->ypad = 2;
|
||||
|
||||
priv->indicator_size = TOGGLE_WIDTH;
|
||||
+ priv->override_size = 0;
|
||||
priv->inconsistent = FALSE;
|
||||
}
|
||||
|
||||
@@ -210,7 +214,7 @@
|
||||
g_value_set_boolean (value, celltoggle->radio);
|
||||
break;
|
||||
case PROP_INDICATOR_SIZE:
|
||||
- g_value_set_int (value, priv->indicator_size);
|
||||
+ g_value_set_int (value, priv->override_size ? priv->override_size : priv->indicator_size);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
|
||||
@@ -245,7 +249,7 @@
|
||||
celltoggle->radio = g_value_get_boolean (value);
|
||||
break;
|
||||
case PROP_INDICATOR_SIZE:
|
||||
- priv->indicator_size = g_value_get_int (value);
|
||||
+ priv->override_size = g_value_get_int (value);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
|
||||
@@ -273,6 +277,27 @@
|
||||
}
|
||||
|
||||
static void
|
||||
+on_widget_style_set (GtkWidget *widget, GtkStyle *previous, gpointer user_data)
|
||||
+{
|
||||
+ GtkCellRendererTogglePrivate *priv = user_data;
|
||||
+ PangoContext *context;
|
||||
+ PangoFontMetrics *metrics;
|
||||
+ int height;
|
||||
+
|
||||
+ context = gtk_widget_get_pango_context (widget);
|
||||
+ metrics = pango_context_get_metrics (context,
|
||||
+ widget->style->font_desc,
|
||||
+ pango_context_get_language (context));
|
||||
+
|
||||
+ height = pango_font_metrics_get_ascent (metrics) +
|
||||
+ pango_font_metrics_get_descent (metrics);
|
||||
+
|
||||
+ pango_font_metrics_unref (metrics);
|
||||
+
|
||||
+ priv->indicator_size = PANGO_PIXELS (height * 0.85);
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
gtk_cell_renderer_toggle_get_size (GtkCellRenderer *cell,
|
||||
GtkWidget *widget,
|
||||
GdkRectangle *cell_area,
|
||||
@@ -287,6 +312,20 @@
|
||||
|
||||
priv = GTK_CELL_RENDERER_TOGGLE_GET_PRIVATE (cell);
|
||||
|
||||
+ if (priv->override_size) {
|
||||
+ priv->indicator_size = priv->override_size;
|
||||
+ } else if (priv->cached_widget != widget) {
|
||||
+ if (priv->cached_widget) {
|
||||
+ g_object_remove_weak_pointer (widget, &priv->cached_widget);
|
||||
+ g_signal_handlers_disconnect_by_func (priv->cached_widget, on_widget_style_set, priv);
|
||||
+ }
|
||||
+ priv->cached_widget = widget;
|
||||
+ g_object_add_weak_pointer (widget, &priv->cached_widget);
|
||||
+ g_signal_connect (widget, "style-set", on_widget_style_set, priv);
|
||||
+
|
||||
+ on_widget_style_set (widget, NULL, priv);
|
||||
+ }
|
||||
+
|
||||
calc_width = (gint) cell->xpad * 2 + priv->indicator_size;
|
||||
calc_height = (gint) cell->ypad * 2 + priv->indicator_size;
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
Upstream-Status: Pending
|
||||
|
||||
Index: gtk+-2.21.2/gdk/x11/gdkevents-x11.c
|
||||
===================================================================
|
||||
--- gtk+-2.21.2.orig/gdk/x11/gdkevents-x11.c 2010-06-22 17:28:04.000000000 +0800
|
||||
+++ gtk+-2.21.2/gdk/x11/gdkevents-x11.c 2010-06-22 17:28:06.000000000 +0800
|
||||
@@ -3062,10 +3062,9 @@
|
||||
{
|
||||
GdkScreenX11 *screen = data;
|
||||
|
||||
- if (xsettings_client_process_event (screen->xsettings_client, (XEvent *)xevent))
|
||||
- return GDK_FILTER_REMOVE;
|
||||
- else
|
||||
- return GDK_FILTER_CONTINUE;
|
||||
+ xsettings_client_process_event (screen->xsettings_client, (XEvent *)xevent);
|
||||
+
|
||||
+ return GDK_FILTER_CONTINUE;
|
||||
}
|
||||
|
||||
static Bool
|
||||
34
meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+_2.24.33.bb
Normal file
34
meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+_2.24.33.bb
Normal file
@@ -0,0 +1,34 @@
|
||||
require gtk+.inc
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
|
||||
file://gtk/gtk.h;endline=27;md5=c59e0b4490dd135a5726ebf851f9b17f \
|
||||
file://gdk/gdk.h;endline=27;md5=07db285ec208fb3e0bf7d861b0614202 \
|
||||
file://tests/testgtk.c;endline=27;md5=262db5db5f776f9863e56df31423e24c"
|
||||
SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-${PV}.tar.xz \
|
||||
file://xsettings.patch \
|
||||
file://toggle-font.diff;striplevel=0 \
|
||||
file://doc-fixes.patch \
|
||||
file://strict-prototypes.patch \
|
||||
file://0001-Do-not-look-into-HOME-when-looking-for-gtk-modules.patch \
|
||||
file://0001-Fix-signature-of-create_menu-function.patch \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "ac2ac757f5942d318a311a54b0c80b5ef295f299c2a73c632f6bfb1ff49cc6da"
|
||||
|
||||
EXTRA_OECONF = "--enable-xkb --disable-glibtest --disable-cups --disable-xinerama"
|
||||
|
||||
LIBV = "2.10.0"
|
||||
|
||||
PACKAGES_DYNAMIC += "^gtk-immodule-.* ^gtk-printbackend-.*"
|
||||
|
||||
python populate_packages:prepend () {
|
||||
gtk_libdir = d.expand('${libdir}/gtk-2.0/${LIBV}')
|
||||
immodules_root = os.path.join(gtk_libdir, 'immodules')
|
||||
printmodules_root = os.path.join(gtk_libdir, 'printbackends');
|
||||
|
||||
d.setVar('GTKIMMODULES_PACKAGES', ' '.join(do_split_packages(d, immodules_root, r'^im-(.*)\.so$', 'gtk-immodule-%s', 'GTK input module for %s')))
|
||||
do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk-printbackend-%s', 'GTK printbackend module for %s')
|
||||
|
||||
if (d.getVar('DEBIAN_NAMES')):
|
||||
d.setVar(d.expand('PKG:${PN}'), '${MLPREFIX}libgtk-2.0')
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
SUMMARY = "C++ bindings for the GTK+ toolkit V3"
|
||||
HOMEPAGE = "http://www.gtkmm.org/"
|
||||
SECTION = "libs"
|
||||
|
||||
LICENSE = "LGPL-2.1-only & GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
|
||||
file://COPYING.tools;md5=751419260aa954499f7abaabaa882bbe"
|
||||
|
||||
DEPENDS = "glib-2.0-native atkmm pangomm glibmm gtk+3 cairomm gdk-pixbuf-native"
|
||||
|
||||
BPN = "gtkmm"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase features_check
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "1d7a35af9c5ceccacb244ee3c2deb9b245720d8510ac5c7e6f4b6f9947e6789c"
|
||||
|
||||
EXTRA_OEMESON = "-Dbuild-demos=false"
|
||||
|
||||
FILES:${PN}-dev += "${libdir}/*/include ${libdir}/*/proc/m4"
|
||||
20
meta-openembedded/meta-oe/recipes-gnome/gtk+/gtkmm_2.24.5.bb
Normal file
20
meta-openembedded/meta-oe/recipes-gnome/gtk+/gtkmm_2.24.5.bb
Normal file
@@ -0,0 +1,20 @@
|
||||
SUMMARY = "C++ bindings for the GTK+ toolkit"
|
||||
HOMEPAGE = "http://www.gtkmm.org/"
|
||||
SECTION = "libs"
|
||||
|
||||
LICENSE = "LGPL-2.1-only & GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
|
||||
file://COPYING.tools;md5=751419260aa954499f7abaabaa882bbe"
|
||||
|
||||
DEPENDS = "atkmm pangomm glibmm gtk+ cairomm"
|
||||
|
||||
inherit gnomebase features_check
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
|
||||
SRC_URI[archive.md5sum] = "6c59ae8bbff48fad9132f23af347acf1"
|
||||
SRC_URI[archive.sha256sum] = "0680a53b7bf90b4e4bf444d1d89e6df41c777e0bacc96e9c09fc4dd2f5fe6b72"
|
||||
|
||||
EXTRA_OECONF = " --disable-documentation "
|
||||
|
||||
FILES:${PN}-dev += "${libdir}/*/include ${libdir}/*/proc/m4"
|
||||
@@ -0,0 +1,3 @@
|
||||
#! /bin/sh
|
||||
|
||||
gnome-desktop-testing-runner libjcat
|
||||
@@ -0,0 +1,34 @@
|
||||
SUMMARY = "Library for reading and writing Jcat files"
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=1803fa9c2c3ce8cb06b4861d75310742"
|
||||
|
||||
DEPENDS = "\
|
||||
glib-2.0 \
|
||||
json-glib \
|
||||
"
|
||||
|
||||
SRC_URI = "\
|
||||
git://github.com/hughsie/libjcat.git;branch=main;protocol=https \
|
||||
file://run-ptest \
|
||||
"
|
||||
SRCREV = "f089d7ff9081bb6f211cdd712cddd159f8f63199"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit gobject-introspection gtk-doc meson ptest-gnome vala lib_package
|
||||
|
||||
PACKAGECONFIG ??= "\
|
||||
gpg \
|
||||
pkcs7 \
|
||||
${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
|
||||
"
|
||||
PACKAGECONFIG[gpg] = "-Dgpg=true,-Dgpg=false,gpgme"
|
||||
PACKAGECONFIG[pkcs7] = "-Dpkcs7=true,-Dpkcs7=false,gnutls gnutls-native"
|
||||
PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false"
|
||||
|
||||
# manpage generation is broken because help2man needs to run the target binary on the host...
|
||||
EXTRA_OEMESON = "-Dman=false"
|
||||
GTKDOC_MESON_OPTION = "gtkdoc"
|
||||
|
||||
RDEPENDS:${PN}:class-target = "\
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'gpg', 'gnupg', '', d)} \
|
||||
"
|
||||
@@ -0,0 +1,82 @@
|
||||
From d798af685e9e1166400acbdab082c17b02dad85b Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Thu, 18 May 2023 23:28:10 -0700
|
||||
Subject: [PATCH] Remove builddir and srcdir paths from test binaries
|
||||
|
||||
Encoding buildtime paths is not needed since if these tests are to be
|
||||
run they will be run on target where builddir structure most certainly
|
||||
wont be available.
|
||||
|
||||
Fixes
|
||||
WARNING: libpeas-1.36.0-r0 do_package_qa: QA Issue: File /usr/bin/peas-demo in package libpeas-demo contains reference to TMPDIR [buildpaths]
|
||||
|
||||
Upstream-Status: Inappropriate [Cross-compile specific]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
peas-demo/meson.build | 2 +-
|
||||
tests/libpeas-gtk/testing/meson.build | 4 ++--
|
||||
tests/libpeas/testing/meson.build | 4 ++--
|
||||
tests/testing-util/meson.build | 4 ++--
|
||||
4 files changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/peas-demo/meson.build b/peas-demo/meson.build
|
||||
index a3ec53b..855ebf2 100644
|
||||
--- a/peas-demo/meson.build
|
||||
+++ b/peas-demo/meson.build
|
||||
@@ -9,7 +9,7 @@ peas_demo_c = [
|
||||
|
||||
peas_demo_c_args = [
|
||||
'-DHAVE_CONFIG_H',
|
||||
- '-DPEAS_BUILDDIR="@0@"'.format(builddir),
|
||||
+ '-DPEAS_BUILDDIR="/usr/src/debug/libpeas"',
|
||||
'-DPEAS_PREFIX="@0@"'.format(prefix),
|
||||
'-DPEAS_LIBDIR="@0@"'.format(libdir),
|
||||
]
|
||||
diff --git a/tests/libpeas-gtk/testing/meson.build b/tests/libpeas-gtk/testing/meson.build
|
||||
index 646f42d..fd9a692 100644
|
||||
--- a/tests/libpeas-gtk/testing/meson.build
|
||||
+++ b/tests/libpeas-gtk/testing/meson.build
|
||||
@@ -19,8 +19,8 @@ libpeas_gtk_testing_deps = [
|
||||
|
||||
libpeas_gtk_testing_c_args = [
|
||||
'-DHAVE_CONFIG_H',
|
||||
- '-DBUILDDIR="@0@"'.format(builddir),
|
||||
- '-DSRCDIR="@0@"'.format(srcdir),
|
||||
+ '-DBUILDDIR="/usr/src/debug/libpeas"',
|
||||
+ '-DSRCDIR="/usr/src/debug/libpeas"',
|
||||
]
|
||||
|
||||
libpeas_gtk_testing_lib = library(
|
||||
diff --git a/tests/libpeas/testing/meson.build b/tests/libpeas/testing/meson.build
|
||||
index 74ba7b1..084daa9 100644
|
||||
--- a/tests/libpeas/testing/meson.build
|
||||
+++ b/tests/libpeas/testing/meson.build
|
||||
@@ -21,8 +21,8 @@ libpeas_testing_deps = [
|
||||
|
||||
libpeas_testing_c_args = [
|
||||
'-DHAVE_CONFIG_H',
|
||||
- '-DBUILDDIR="@0@"'.format(builddir),
|
||||
- '-DSRCDIR="@0@"'.format(srcdir),
|
||||
+ '-DBUILDDIR="/usr/src/debug/libpeas"',
|
||||
+ '-DSRCDIR="/usr/src/debug/libpeas"',
|
||||
]
|
||||
|
||||
libpeas_testing_lib = library(
|
||||
diff --git a/tests/testing-util/meson.build b/tests/testing-util/meson.build
|
||||
index 1c40740..83ad059 100644
|
||||
--- a/tests/testing-util/meson.build
|
||||
+++ b/tests/testing-util/meson.build
|
||||
@@ -17,8 +17,8 @@ libtesting_util_deps = [
|
||||
|
||||
libtesting_util_c_args = [
|
||||
'-DHAVE_CONFIG_H',
|
||||
- '-DBUILDDIR="@0@"'.format(builddir),
|
||||
- '-DSRCDIR="@0@"'.format(srcdir),
|
||||
+ '-DBUILDDIR="/usr/src/debug/libpeas"',
|
||||
+ '-DSRCDIR="/usr/src/debug/libpeas"',
|
||||
'-UG_DISABLE_ASSERT',
|
||||
'-UG_DISABLE_CAST_CHECKS',
|
||||
]
|
||||
--
|
||||
2.40.1
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
SUMMARY = "libpeas is a gobject-based plugins engine"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/Libpeas"
|
||||
LICENSE = "LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4b54a1fd55a448865a0b32d41598759d"
|
||||
|
||||
DEPENDS = "gtk+3"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
inherit gnomebase gobject-introspection gtk-doc gtk-icon-cache features_check
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
|
||||
SRC_URI += "file://0001-Remove-builddir-and-srcdir-paths-from-test-binaries.patch"
|
||||
SRC_URI[archive.sha256sum] = "297cb9c2cccd8e8617623d1a3e8415b4530b8e5a893e3527bbfd1edd13237b4c"
|
||||
|
||||
PACKAGECONFIG[python3] = "-Dpython3=true,-Dpython3=false,python3-pygobject"
|
||||
|
||||
PACKAGES =+ "${PN}-demo ${PN}-python3"
|
||||
FILES:${PN}-demo = " \
|
||||
${bindir}/peas-demo \
|
||||
${libdir}/peas-demo \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN}-python3 = "python3-pygobject"
|
||||
FILES:${PN}-python3 = "${libdir}/libpeas-1.0/loaders/libpython3loader.so"
|
||||
@@ -0,0 +1,3 @@
|
||||
#! /bin/sh
|
||||
|
||||
gnome-desktop-testing-runner libxmlb
|
||||
@@ -0,0 +1,24 @@
|
||||
SUMMARY = "A library to help create and query binary XML blobs"
|
||||
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://run-ptest \
|
||||
"
|
||||
SRCREV = "a6cac6a715d57c393bbddee4d0381ad943341af9"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
DEPENDS = "glib-2.0 xz"
|
||||
|
||||
inherit gobject-introspection gtk-doc meson ptest-gnome lib_package
|
||||
|
||||
PACKAGECONFIG ??= "\
|
||||
${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
|
||||
"
|
||||
PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false"
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtkdoc"
|
||||
|
||||
FILES:${PN}-bin += "${libexecdir}/*"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
12
meta-openembedded/meta-oe/recipes-gnome/pyxdg/pyxdg_0.28.bb
Normal file
12
meta-openembedded/meta-oe/recipes-gnome/pyxdg/pyxdg_0.28.bb
Normal file
@@ -0,0 +1,12 @@
|
||||
DESCRIPTION = "A Python module to deal with freedesktop.org specifications"
|
||||
HOMEPAGE = "http://freedesktop.org/wiki/Software/pyxdg"
|
||||
SECTION = "devel/python"
|
||||
LICENSE = "LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=f30a9716ef3762e3467a2f62bf790f0a"
|
||||
|
||||
SRCREV = "1d23e483ae869ee9532aca43b133cc43f63626a3"
|
||||
SRC_URI = "git://anongit.freedesktop.org/xdg/pyxdg;branch=master"
|
||||
|
||||
inherit setuptools3
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
18
meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc
Normal file
18
meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc
Normal file
@@ -0,0 +1,18 @@
|
||||
SUMMARY = "Virtual terminal emulator GTK+ widget library"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte"
|
||||
LICENSE = "LGPL-2.0-only"
|
||||
DEPENDS = " glib-2.0 gtk+ intltool-native gnome-common-native ncurses"
|
||||
RDEPENDS:libvte = "vte-termcap"
|
||||
|
||||
# help gnomebase get the SRC_URI correct
|
||||
GNOMEBN = "vte"
|
||||
S = "${WORKDIR}/vte-${PV}"
|
||||
|
||||
inherit gnomebase gtk-doc features_check upstream-version-is-even gobject-introspection
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
|
||||
|
||||
EXTRA_OECONF = "--disable-python"
|
||||
|
||||
PACKAGES =+ "libvte9 vte9-termcap"
|
||||
FILES:libvte9 = "${libdir}/*.so.* ${libexecdir}/gnome-pty-helper"
|
||||
FILES:vte9-termcap = "${datadir}/vte/termcap-0.0"
|
||||
@@ -0,0 +1,136 @@
|
||||
Upstream-Status: Backport
|
||||
CVE: CVE-2012-2738
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
From e524b0b3bd8fad844ffa73927c199545b892cdbd Mon Sep 17 00:00:00 2001
|
||||
From: Christian Persch <chpe@gnome.org>
|
||||
Date: Sat, 19 May 2012 19:36:09 +0200
|
||||
Subject: [PATCH 1/2] emulation: Limit integer arguments to 65535
|
||||
|
||||
To guard against malicious sequences containing excessively big numbers,
|
||||
limit all parsed numbers to 16 bit range. Doing this here in the parsing
|
||||
routine is a catch-all guard; this doesn't preclude enforcing
|
||||
more stringent limits in the handlers themselves.
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=676090
|
||||
---
|
||||
src/table.c | 2 +-
|
||||
src/vteseq.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/table.c b/src/table.c
|
||||
index 140e8c8..85cf631 100644
|
||||
--- a/src/table.c
|
||||
+++ b/src/table.c
|
||||
@@ -550,7 +550,7 @@ _vte_table_extract_numbers(GValueArray **array,
|
||||
if (G_UNLIKELY (*array == NULL)) {
|
||||
*array = g_value_array_new(1);
|
||||
}
|
||||
- g_value_set_long(&value, total);
|
||||
+ g_value_set_long(&value, CLAMP (total, 0, G_MAXUSHORT));
|
||||
g_value_array_append(*array, &value);
|
||||
} while (i++ < arginfo->length);
|
||||
g_value_unset(&value);
|
||||
diff --git a/src/vteseq.c b/src/vteseq.c
|
||||
index 7ef4c8c..10991db 100644
|
||||
--- a/src/vteseq.c
|
||||
+++ b/src/vteseq.c
|
||||
@@ -557,7 +557,7 @@ vte_sequence_handler_multiple(VteTerminal *terminal,
|
||||
GValueArray *params,
|
||||
VteTerminalSequenceHandler handler)
|
||||
{
|
||||
- vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXLONG);
|
||||
+ vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXUSHORT);
|
||||
}
|
||||
|
||||
static void
|
||||
--
|
||||
2.4.9 (Apple Git-60)
|
||||
|
||||
|
||||
From cf1ad453a8def873c49cf6d88162593402f32bb2 Mon Sep 17 00:00:00 2001
|
||||
From: Christian Persch <chpe@gnome.org>
|
||||
Date: Sat, 19 May 2012 20:04:12 +0200
|
||||
Subject: [PATCH 2/2] emulation: Limit repetitions
|
||||
|
||||
Don't allow malicious sequences to cause excessive repetitions.
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=676090
|
||||
---
|
||||
src/vteseq.c | 25 ++++++++++++++++++-------
|
||||
1 file changed, 18 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/src/vteseq.c b/src/vteseq.c
|
||||
index 10991db..209522f 100644
|
||||
--- a/src/vteseq.c
|
||||
+++ b/src/vteseq.c
|
||||
@@ -1392,7 +1392,7 @@ vte_sequence_handler_dc (VteTerminal *terminal, GValueArray *params)
|
||||
static void
|
||||
vte_sequence_handler_DC (VteTerminal *terminal, GValueArray *params)
|
||||
{
|
||||
- vte_sequence_handler_multiple(terminal, params, vte_sequence_handler_dc);
|
||||
+ vte_sequence_handler_multiple_r(terminal, params, vte_sequence_handler_dc);
|
||||
}
|
||||
|
||||
/* Delete a line at the current cursor position. */
|
||||
@@ -1785,7 +1785,7 @@ vte_sequence_handler_reverse_index (VteTerminal *terminal, GValueArray *params)
|
||||
static void
|
||||
vte_sequence_handler_RI (VteTerminal *terminal, GValueArray *params)
|
||||
{
|
||||
- vte_sequence_handler_multiple(terminal, params, vte_sequence_handler_nd);
|
||||
+ vte_sequence_handler_multiple_r(terminal, params, vte_sequence_handler_nd);
|
||||
}
|
||||
|
||||
/* Save cursor (position). */
|
||||
@@ -2777,8 +2777,7 @@ vte_sequence_handler_insert_lines (VteTerminal *terminal, GValueArray *params)
|
||||
{
|
||||
GValue *value;
|
||||
VteScreen *screen;
|
||||
- long param, end, row;
|
||||
- int i;
|
||||
+ long param, end, row, i, limit;
|
||||
screen = terminal->pvt->screen;
|
||||
/* The default is one. */
|
||||
param = 1;
|
||||
@@ -2796,7 +2795,13 @@ vte_sequence_handler_insert_lines (VteTerminal *terminal, GValueArray *params)
|
||||
} else {
|
||||
end = screen->insert_delta + terminal->row_count - 1;
|
||||
}
|
||||
- /* Insert the new lines at the cursor. */
|
||||
+
|
||||
+ /* Only allow to insert as many lines as there are between this row
|
||||
+ * and the end of the scrolling region. See bug #676090.
|
||||
+ */
|
||||
+ limit = end - row + 1;
|
||||
+ param = MIN (param, limit);
|
||||
+
|
||||
for (i = 0; i < param; i++) {
|
||||
/* Clear a line off the end of the region and add one to the
|
||||
* top of the region. */
|
||||
@@ -2817,8 +2822,7 @@ vte_sequence_handler_delete_lines (VteTerminal *terminal, GValueArray *params)
|
||||
{
|
||||
GValue *value;
|
||||
VteScreen *screen;
|
||||
- long param, end, row;
|
||||
- int i;
|
||||
+ long param, end, row, i, limit;
|
||||
|
||||
screen = terminal->pvt->screen;
|
||||
/* The default is one. */
|
||||
@@ -2837,6 +2841,13 @@ vte_sequence_handler_delete_lines (VteTerminal *terminal, GValueArray *params)
|
||||
} else {
|
||||
end = screen->insert_delta + terminal->row_count - 1;
|
||||
}
|
||||
+
|
||||
+ /* Only allow to delete as many lines as there are between this row
|
||||
+ * and the end of the scrolling region. See bug #676090.
|
||||
+ */
|
||||
+ limit = end - row + 1;
|
||||
+ param = MIN (param, limit);
|
||||
+
|
||||
/* Clear them from below the current cursor. */
|
||||
for (i = 0; i < param; i++) {
|
||||
/* Insert a line at the end of the region and remove one from
|
||||
--
|
||||
2.4.9 (Apple Git-60)
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=691545]
|
||||
|
||||
Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
|
||||
diff -Nurd vte-0.28.2/gnome-pty-helper/configure.in vte-0.28.2/gnome-pty-helper/configure.in
|
||||
--- vte-0.28.2/gnome-pty-helper/configure.in 2010-07-15 20:08:44.000000000 +0300
|
||||
+++ vte-0.28.2/gnome-pty-helper/configure.in 2013-01-11 14:50:34.971027440 +0200
|
||||
@@ -8,7 +8,6 @@
|
||||
AC_ISC_POSIX
|
||||
AC_PROG_CC
|
||||
AC_STDC_HEADERS
|
||||
-AM_PROG_CC_STDC
|
||||
|
||||
if test -z "$enable_maintainer_mode"; then
|
||||
enable_maintainer_mode=yes
|
||||
12
meta-openembedded/meta-oe/recipes-gnome/vte9/vte9_0.28.2.bb
Normal file
12
meta-openembedded/meta-oe/recipes-gnome/vte9/vte9_0.28.2.bb
Normal file
@@ -0,0 +1,12 @@
|
||||
require vte9.inc
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
|
||||
|
||||
SRC_URI += "file://obsolete_automake_macros.patch \
|
||||
file://cve-2012-2738.patch \
|
||||
"
|
||||
|
||||
CFLAGS += "-D_GNU_SOURCE"
|
||||
|
||||
SRC_URI[archive.md5sum] = "497f26e457308649e6ece32b3bb142ff"
|
||||
SRC_URI[archive.sha256sum] = "86cf0b81aa023fa93ed415653d51c96767f20b2d7334c893caba71e42654b0ae"
|
||||
Reference in New Issue
Block a user