GTK+ 3.8 and Wayland integration
cover GTK+ 3.8 and Wayland integration
Hi,
This series contains plenty of goodness. It upgrades gdk-pixbuf to the latest stable, adds ATK 2.8 and at-spi2 for GTK+ 3.8, and then GTK+ 3.8. GTK+ 3.8 has good support for Wayland so this is enabled and numerous bugs fixed in the process.
Finally, the recipe is split into a .inc/.bb as I've another branch that adds a git recipe for testing (which so far has found a bug in glib master).
Ross
The following changes since commit d0861b7a12113c6626c6206faf3a9389fb8ef5cb:
bitbake: bitbake: xmlrpc remote server (2013-05-30 10:44:00 +0100)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib ross/gtk
for you to fetch changes up to 7f6817c212b8cb777b9117990c238f2a75ae8750:
gtk+3: clean up libtool link creation to avoid errors in configure log (2013-05-30 14:49:02 +0100)
----------------------------------------------------------------
Ross Burton (14):
test-utils: handle import bb failing and skip the test
test_utils: import functions directly for conciseness
utils: add trim_version() function
gdk-pixbuf: upgrade to 2.28.1
atk: upgrade to 2.8
at-spi2: add -core and -atk, for GTK+ 3.8
gtk+3: update to 3.8.2
gtk+3: explicitly disable introspection
gtk+3: respect x11 and wayland DISTRO_FEATURES
gtk+3: add dependencies for gtk+3-demo
gtk+: remove spurious libgcrypt dependency
gtk+3: register GSetting schemas
gtk+3: split into .bb/.inc
gtk+3: clean up libtool link creation to avoid errors in configure log
meta/lib/oe/tests/test_utils.py | 34 ++-
meta/lib/oe/utils.py | 15 +
.../gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch | 23 --
.../configure_fix.patch | 0
.../extending-libinstall-dependencies.patch | 0
.../hardcoded_libtool.patch | 0
.../{gdk-pixbuf_2.26.5.bb => gdk-pixbuf_2.28.1.bb} | 11 +-
meta/recipes-gnome/gtk+/gtk+.inc | 2 +-
.../gtk+/{gtk+3_3.4.4.bb => gtk+3.inc} | 33 ++-
meta/recipes-gnome/gtk+/gtk+3/cross.patch | 293 --------------------
.../gtk+/gtk+3/no-x11-in-wayland.patch | 32 +++
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb | 16 ++
meta/recipes-support/atk/at-spi2-atk_2.8.1.bb | 19 ++
meta/recipes-support/atk/at-spi2-core_2.8.0.bb | 17 ++
.../atk/{atk_2.6.0.bb => atk_2.8.0.bb} | 9 +-
15 files changed, 155 insertions(+), 349 deletions(-)
delete mode 100644 meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/configure_fix.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/extending-libinstall-dependencies.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/hardcoded_libtool.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf_2.26.5.bb => gdk-pixbuf_2.28.1.bb} (89%)
rename meta/recipes-gnome/gtk+/{gtk+3_3.4.4.bb => gtk+3.inc} (79%)
delete mode 100644 meta/recipes-gnome/gtk+/gtk+3/cross.patch
create mode 100644 meta/recipes-gnome/gtk+/gtk+3/no-x11-in-wayland.patch
create mode 100644 meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb
create mode 100644 meta/recipes-support/atk/at-spi2-atk_2.8.1.bb
create mode 100644 meta/recipes-support/atk/at-spi2-core_2.8.0.bb
rename meta/recipes-support/atk/{atk_2.6.0.bb => atk_2.8.0.bb} (70%)Ross Burton (14):
test-utils: handle import bb failing and skip the test
test_utils: import functions directly for conciseness
utils: add trim_version() function
gdk-pixbuf: upgrade to 2.28.1
atk: upgrade to 2.8
at-spi2: add -core and -atk, for GTK+ 3.8
gtk+3: update to 3.8.2
gtk+3: explicitly disable introspection
gtk+3: respect x11 and wayland DISTRO_FEATURES
gtk+3: add dependencies for gtk+3-demo
gtk+: remove spurious libgcrypt dependency
gtk+3: register GSetting schemas
gtk+3: split into .bb/.inc
gtk+3: clean up libtool link creation to avoid errors in configure
log
meta/lib/oe/tests/test_utils.py | 34 ++-
meta/lib/oe/utils.py | 15 +
.../gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch | 23 --
.../configure_fix.patch | 0
.../extending-libinstall-dependencies.patch | 0
.../hardcoded_libtool.patch | 0
.../{gdk-pixbuf_2.26.5.bb => gdk-pixbuf_2.28.1.bb} | 11 +-
meta/recipes-gnome/gtk+/gtk+.inc | 2 +-
.../gtk+/{gtk+3_3.4.4.bb => gtk+3.inc} | 33 ++-
meta/recipes-gnome/gtk+/gtk+3/cross.patch | 293 --------------------
.../gtk+/gtk+3/no-x11-in-wayland.patch | 32 +++
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb | 16 ++
meta/recipes-support/atk/at-spi2-atk_2.8.1.bb | 19 ++
meta/recipes-support/atk/at-spi2-core_2.8.0.bb | 17 ++
.../atk/{atk_2.6.0.bb => atk_2.8.0.bb} | 9 +-
15 files changed, 155 insertions(+), 349 deletions(-)
delete mode 100644 meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/configure_fix.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/extending-libinstall-dependencies.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/hardcoded_libtool.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf_2.26.5.bb => gdk-pixbuf_2.28.1.bb} (89%)
rename meta/recipes-gnome/gtk+/{gtk+3_3.4.4.bb => gtk+3.inc} (79%)
delete mode 100644 meta/recipes-gnome/gtk+/gtk+3/cross.patch
create mode 100644 meta/recipes-gnome/gtk+/gtk+3/no-x11-in-wayland.patch
create mode 100644 meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb
create mode 100644 meta/recipes-support/atk/at-spi2-atk_2.8.1.bb
create mode 100644 meta/recipes-support/atk/at-spi2-core_2.8.0.bb
rename meta/recipes-support/atk/{atk_2.6.0.bb => atk_2.8.0.bb} (70%)Signature · 1 line
1.7.10.4
PATCH 1/14 test-utils: handle import bb failing and skip the test
Instead of reporting an error when bb cannot be imported, skip the test instead. This makes it a lot easier to iterate a test suite when we don't care about this particular test.
--- meta/lib/oe/tests/test_utils.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
meta/lib/oe/tests/test_utils.py +5 -1
@@ -1,11 +1,15 @@ import unittest -import bb, oe.utils +import oe.utils class TestPackagesFilterOutSystem(unittest.TestCase): def test_filter(self): """ Test that oe.utils.packages_filter_out_system works. """ + try: + import bb + except ImportError: + self.skipTest("Cannot import bb") d = bb.data_smart.DataSmart() d.setVar("PN", "foo")
Signature · 1 line
1.7.10.4
PATCH 2/14 test_utils: import functions directly for conciseness
In reply to Ross Burton--- meta/lib/oe/tests/test_utils.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
meta/lib/oe/tests/test_utils.py +5 -5
@@ -1,5 +1,5 @@ import unittest -import oe.utils +from oe.utils import packages_filter_out_system class TestPackagesFilterOutSystem(unittest.TestCase): def test_filter(self):
@@ -15,17 +15,17 @@ class TestPackagesFilterOutSystem(unittest.TestCase): d.setVar("PN", "foo") d.setVar("PACKAGES", "foo foo-doc foo-dev") - pkgs = oe.utils.packages_filter_out_system(d) + pkgs = packages_filter_out_system(d) self.assertEqual(pkgs, []) d.setVar("PACKAGES", "foo foo-doc foo-data foo-dev") - pkgs = oe.utils.packages_filter_out_system(d) + pkgs = packages_filter_out_system(d) self.assertEqual(pkgs, ["foo-data"]) d.setVar("PACKAGES", "foo foo-locale-en-gb") - pkgs = oe.utils.packages_filter_out_system(d) + pkgs = packages_filter_out_system(d) self.assertEqual(pkgs, []) d.setVar("PACKAGES", "foo foo-data foo-locale-en-gb") - pkgs = oe.utils.packages_filter_out_system(d) + pkgs = packages_filter_out_system(d) self.assertEqual(pkgs, ["foo-data"])
Signature · 1 line
1.7.10.4
PATCH 3/14 utils: add trim_version() function
In reply to Ross BurtonAdd a helper function that returns just the first <num_parts> of <version>, split by periods. For example, trim_version("1.2.3", 2) will return "1.2".
This should help reduce the spread of numerous copies of this idea across classes and recipes.
--- meta/lib/oe/tests/test_utils.py | 20 ++++++++++++++++++++ meta/lib/oe/utils.py | 15 +++++++++++++++ 2 files changed, 35 insertions(+)
meta/lib/oe/tests/test_utils.py +20 -0
@@ -29,3 +29,23 @@ class TestPackagesFilterOutSystem(unittest.TestCase): d.setVar("PACKAGES", "foo foo-data foo-locale-en-gb") pkgs = packages_filter_out_system(d) self.assertEqual(pkgs, ["foo-data"]) + + +class TestTrimVersion(unittest.TestCase): + def test_version_exception(self): + with self.assertRaises(TypeError): + trim_version(None, 2) + with self.assertRaises(TypeError): + trim_version((1, 2, 3), 2) + + def test_num_exception(self): + with self.assertRaises(ValueError): + trim_version("1.2.3", 0) + with self.assertRaises(ValueError): + trim_version("1.2.3", -1) + + def test_valid(self): + self.assertEqual(trim_version("1.2.3", 1), "1") + self.assertEqual(trim_version("1.2.3", 2), "1.2") + self.assertEqual(trim_version("1.2.3", 3), "1.2.3") + self.assertEqual(trim_version("1.2.3", 4), "1.2.3")
meta/lib/oe/utils.py +15 -0
@@ -135,3 +135,18 @@ def packages_filter_out_system(d): def getstatusoutput(cmd): return cmdstatus.getstatusoutput(cmd) + + +def trim_version(version, num_parts=2): + """ + Return just the first <num_parts> of <version>, split by periods. For + example, trim_version("1.2.3", 2) will return "1.2". + """ + if type(version) is not str: + raise TypeError("Version should be a string") + if num_parts < 1: + raise ValueError("Cannot split to parts < 1") + + parts = version.split(".") + trimmed = ".".join(parts[:num_parts]) + return trimmed
Signature · 1 line
1.7.10.4
PATCH 4/14 gdk-pixbuf: upgrade to 2.28.1
In reply to Ross BurtonSomething along the lines of pngversion.patch was merged upstream, so drop that patch.
Also use the new trim_version() function for a future-proof SRC_URI.
---
.../gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch | 23 --------------------
.../configure_fix.patch | 0
.../extending-libinstall-dependencies.patch | 0
.../hardcoded_libtool.patch | 0
.../{gdk-pixbuf_2.26.5.bb => gdk-pixbuf_2.28.1.bb} | 11 +++++-----
5 files changed, 5 insertions(+), 29 deletions(-)
delete mode 100644 meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/configure_fix.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/extending-libinstall-dependencies.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/hardcoded_libtool.patch (100%)
rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf_2.26.5.bb => gdk-pixbuf_2.28.1.bb} (89%)meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch deleted +0 -23
@@ -1,23 +0,0 @@ -We now have libpng 1.6. If we build libpng12 as well as libpng 1.6, the 1.2 version gets -preferred which is not desirable and does not give deterministic builds. - -We really do want to use libpng since the item in DEPENDS will provide this so -manipulate the search list so the one we DEPEND on gets chosen. - -RP 2013/4/13 - -Upstream-Status: Pending [worth discussing at least] - -Index: gdk-pixbuf-2.26.5/configure.ac -=================================================================== ---- gdk-pixbuf-2.26.5.orig/configure.ac 2013-03-26 15:45:16.594820303 +0000 -+++ gdk-pixbuf-2.26.5/configure.ac 2013-04-13 10:15:19.241433789 +0000 -@@ -588,7 +588,7 @@ - - dnl Test for libpng - if test x$with_libpng != xno && test -z "$LIBPNG"; then -- for l in libpng15 libpng14 libpng12 libpng13 libpng10 libpng ; do -+ for l in libpng libpng15 libpng14 libpng12 libpng13 libpng10 ; do - AC_MSG_CHECKING(for $l) - if $PKG_CONFIG --exists $l ; then - AC_MSG_RESULT(yes)
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/configure_fix.patch renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/configure_fix.patch +0 -0
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/extending-libinstall-dependencies.patch +0 -0
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/hardcoded_libtool.patch +0 -0
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.28.1.bb renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.26.5.bb +5 -6
@@ -11,17 +11,16 @@ SECTION = "libs" DEPENDS = "libpng glib-2.0 jpeg" DEPENDS_append_linuxstdbase = " virtual/libx11" -SRC_URI = "http://ftp.acc.umu.se/pub/GNOME/sources/gdk-pixbuf/2.26/gdk-pixbuf-${PV}.tar.xz \ +MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" + +SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ file://hardcoded_libtool.patch \ file://configure_fix.patch \ file://extending-libinstall-dependencies.patch \ - file://pngversion.patch \ " -SRC_URI[md5sum] = "339329e6d619ee3e1cb93979111b04c0" -SRC_URI[sha256sum] = "77696fd163bca95a130a1883dbd78d0ae4d782de2fc85a9a38556d13681f5c84" - -PR = "r1" +SRC_URI[md5sum] = "5c71cce316d08c559fc5970aa60754ab" +SRC_URI[sha256sum] = "bea0b743fdb5c3c8e23210f73623ec5f18f9ead2522942897fe739d80b50c2bb" inherit autotools pkgconfig gettext pixbufcache
Signature · 1 line
1.7.10.4
Re: [PATCH 04/14] gdk-pixbuf: upgrade to 2.28.1
Quoted 68 lines · Ross Burton
Something along the lines of pngversion.patch was merged upstream, so drop that patch.
Also use the new
trim_version()function for a future-proofSRC_URI.Signed-off-by Ross Burton <[email protected]>--- .../gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch | 23 -------------------- .../configure_fix.patch | 0 .../extending-libinstall-dependencies.patch | 0 .../hardcoded_libtool.patch | 0 .../{gdk-pixbuf_2.26.5.bb => gdk-pixbuf_2.28.1.bb} | 11 +++++----- 5 files changed, 5 insertions(+), 29 deletions(-) delete mode 100644 meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/configure_fix.patch (100%) rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/extending-libinstall-dependencies.patch (100%) rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf-2.26.5 => gdk-pixbuf}/hardcoded_libtool.patch (100%) rename meta/recipes-gnome/gdk-pixbuf/{gdk-pixbuf_2.26.5.bb => gdk-pixbuf_2.28.1.bb} (89%)meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/pngversion.patch deleted +0
-23@@ -1,23 +0,0 @@ -We now have libpng 1.6. If we build libpng12 as well as libpng 1.6, the 1.2 version gets -preferred which is not desirable and does not give deterministic builds. - -We really do want to use libpng since the item in DEPENDS will provide this so -manipulate the search list so the one we DEPEND on gets chosen. - -RP 2013/4/13 - -Upstream-Status: Pending [worth discussing at least] - -Index: gdk-pixbuf-2.26.5/configure.ac -=================================================================== ---- gdk-pixbuf-2.26.5.orig/configure.ac 2013-03-26 15:45:16.594820303 +0000 -+++ gdk-pixbuf-2.26.5/configure.ac 2013-04-13 10:15:19.241433789 +0000 -@@ -588,7 +588,7 @@ - - dnl Test for libpng - if test x$with_libpng != xno && test -z "$LIBPNG"; then -- for l in libpng15 libpng14 libpng12 libpng13 libpng10 libpng ; do -+ for l in libpng libpng15 libpng14 libpng12 libpng13 libpng10 ; do - AC_MSG_CHECKING(for $l) - if $PKG_CONFIG --exists $l ; then - AC_MSG_RESULT(yes)meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/configure_fix.patch renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/configure_fix.patch +0
-0meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/extending-libinstall-dependencies.patch +0
-0meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf-2.26.5/hardcoded_libtool.patch +0
-0meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.28.1.bb renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.26.5.bb +0
-0
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.28.1.bb SECTION = "libs" · line 14
Quoted 5 lines
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.28.1.bb renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.26.5.bb +1
-1@@ -11,17 +11,16 @@ SECTION = "libs" DEPENDS = "libpng glib-2.0 jpeg" DEPENDS_append_linuxstdbase = " virtual/libx11" -SRC_URI = "http://ftp.acc.umu.se/pub/GNOME/sources/gdk-pixbuf/2.26/gdk-pixbuf-${PV}.tar.xz \ +MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
Just for sake of consistency, in many recipes this variable is called SHRT_VER.
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.28.1.bb SECTION = "libs" · line 16
Quoted 1 line
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.28.1.bb renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.26.5.bb +1
-0+SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
^ why not ${BP}?Quoted 22 lines
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.28.1.bb renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.26.5.bb +2
-5file://hardcoded_libtool.patch \ file://configure_fix.patch \ file://extending-libinstall-dependencies.patch \ - file://pngversion.patch \ " -SRC_URI[md5sum] = "339329e6d619ee3e1cb93979111b04c0" -SRC_URI[sha256sum] = "77696fd163bca95a130a1883dbd78d0ae4d782de2fc85a9a38556d13681f5c84" - -PR = "r1" +SRC_URI[md5sum] = "5c71cce316d08c559fc5970aa60754ab" +SRC_URI[sha256sum] = "bea0b743fdb5c3c8e23210f73623ec5f18f9ead2522942897fe739d80b50c2bb" inherit autotools pkgconfig gettext pixbufcacheSignature · 6 lines
1.7.10.4 _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
Signature · 1 line
Martin 'JaMa' Jansa jabber: [email protected]
Re: [PATCH 04/14] gdk-pixbuf: upgrade to 2.28.1
Quoted 1 line · Martin Jansa
^ why not ${BP}?Mainly because I keep on forgetting that $BP exists.
Ross
PATCH 5/14 atk: upgrade to 2.8
In reply to Ross BurtonUpgrade to the latest upstream, and future-proof the SRC_URI using trim_version().
---
meta/recipes-support/atk/{atk_2.6.0.bb => atk_2.8.0.bb} | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
rename meta/recipes-support/atk/{atk_2.6.0.bb => atk_2.8.0.bb} (70%)meta/recipes-support/atk/atk_2.8.0.bb renamed from meta/recipes-support/atk/atk_2.6.0.bb +5 -4
@@ -7,15 +7,16 @@ LICENSE = "GPLv2+ & LGPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ file://atk/atkutil.c;endline=20;md5=db21b0bdbef9da4dc6eb122debc9f9bc \ file://atk/atk.h;endline=20;md5=c58238d688c24387376d6c69d06248a7" -PR = "r0" DEPENDS = "glib-2.0" inherit autotools gtk-doc pkgconfig -SRC_URI = "http://download.gnome.org/sources/atk/2.6/${BPN}-${PV}.tar.xz" -SRC_URI[md5sum] = "6b34e2a63dda4429b5692be7ca3aa5bf" -SRC_URI[sha256sum] = "eff663f90847620bb68c9c2cbaaf7f45e2ff44163b9ab3f10d15be763680491f" +MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" + +SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz" +SRC_URI[md5sum] = "c652bd25530825d604dae1c1ebd2da02" +SRC_URI[sha256sum] = "b22519176226f3e07cf6d932b77852e6b6be4780977770704b32d0f4e0686df4" BBCLASSEXTEND = "native"
Signature · 1 line
1.7.10.4
PATCH 6/14 at-spi2: add -core and -atk, for GTK+ 3.8
In reply to Ross Burton--- meta/recipes-support/atk/at-spi2-atk_2.8.1.bb | 19 +++++++++++++++++++ meta/recipes-support/atk/at-spi2-core_2.8.0.bb | 17 +++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 meta/recipes-support/atk/at-spi2-atk_2.8.1.bb create mode 100644 meta/recipes-support/atk/at-spi2-core_2.8.0.bb
meta/recipes-support/atk/at-spi2-atk_2.8.1.bb new file +19 -0
@@ -0,0 +1,19 @@ +SUMMARY = "AT-SPI 2 Toolkit Bridge" +LICENSE = "LGPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=e9f288ba982d60518f375b5898283886" + +MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" + +SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz" +SRC_URI[md5sum] = "854e36a2538bea50bc08d33aa9499bb2" +SRC_URI[sha256sum] = "eb659b94fde6dc0a2f584c9121a5e6d39a4c8aa297d21d8f9032f7a8a775fd06" + +DEPENDS = "dbus glib-2.0 atk at-spi2-core" + +inherit autotools + +PACKAGES =+ "${PN}-gnome ${PN}-gtk2" + +FILES_${PN}-gnome = "${libdir}/gnome-settings-daemon-3.0/gtk-modules" +FILES_${PN}-gtk2 = "${libdir}/gtk-2.0/modules/libatk-bridge.*" +FILES_${PN}-dbg += "${libdir}/gtk-2.0/modules/.debug"
meta/recipes-support/atk/at-spi2-core_2.8.0.bb new file +17 -0
@@ -0,0 +1,17 @@ +SUMMARY = "Assistive Technology Service Provider Interface (dbus core)" +LICENSE = "LGPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=e9f288ba982d60518f375b5898283886" + +MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" + +SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz" +SRC_URI[md5sum] = "93b57d5d56d15d1222ddf2386e2f869f" +SRC_URI[sha256sum] = "1861a30fc7f583d5a567a0ba547db67ce9bd294f0d1c9f7403c96a10a481c458" + +DEPENDS = "dbus glib-2.0 virtual/libx11 libxi" + +inherit autotools gtk-doc + +EXTRA_OECONF = "--disable-introspection --disable-xevie" + +FILES_${PN} += "${datadir}/dbus-1/services/*.service"
Signature · 1 line
1.7.10.4
PATCH 7/14 gtk+3: update to 3.8.2
In reply to Ross BurtonDrop cross.patch as it was a backport and is integrated upstream.
---
meta/recipes-gnome/gtk+/gtk+3/cross.patch | 293 --------------------
.../gtk+/{gtk+3_3.4.4.bb => gtk+3_3.8.2.bb} | 9 +-
2 files changed, 5 insertions(+), 297 deletions(-)
delete mode 100644 meta/recipes-gnome/gtk+/gtk+3/cross.patch
rename meta/recipes-gnome/gtk+/{gtk+3_3.4.4.bb => gtk+3_3.8.2.bb} (93%)meta/recipes-gnome/gtk+/gtk+3/cross.patch deleted +0 -293
@@ -1,293 +0,0 @@ -Upstream-Status: Backport [SHA 53083ea7b423482b203372f02d097edbef894a7d] -Signed-off-by: Ross Burton <[email protected]> - -From b670abe861e8dde067f544b9131edc28575d63ab Mon Sep 17 00:00:00 2001 -From: Ross Burton <[email protected]> -Date: Mon, 7 Jan 2013 12:49:27 +0000 -Subject: [PATCH] build: support cross-compilation by natively building - gtk-update-icon-cache - -When cross-compiling, instead of depending on a natively built GTK+ (which means -building Glib, ATK, Pango, gdk-pixbuf, libX11...) for gtk-update-icon-cache, -find the host compiler and gdk-pixbuf, and build another gtk-update-icon-cache -with that. - -This uses AX_PROG_CC_FOR_BUILD from autostars to find the host compiler, and -assumes that you'd set PKG_CONFIG_FOR_BUILD to a host pkg-config binary. - -https://bugzilla.gnome.org/show_bug.cgi?id=691301 ---- - configure.ac | 39 ++++++++++---- - gtk/Makefile.am | 12 ++++- - gtk/native/Makefile.am | 12 +++++ - m4/ax_prog_cc_for_build.m4 | 125 ++++++++++++++++++++++++++++++++++++++++++++ - 4 files changed, 177 insertions(+), 11 deletions(-) - create mode 100644 gtk/native/Makefile.am - create mode 100644 m4/ax_prog_cc_for_build.m4 - -diff --git a/configure.ac b/configure.ac -index 0069a9f..f502e06 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -29,6 +29,9 @@ AC_CONFIG_SRCDIR([gdk/gdktypes.h]) - AC_CONFIG_MACRO_DIR([m4]) - AC_CONFIG_AUX_DIR([build-aux]) - -+AC_CANONICAL_HOST -+AC_CANONICAL_TARGET -+ - # Define a string for the earliest version that this release has - # backwards binary compatibility with for all interfaces a module - # might. Unless we add module-only API with lower stability -@@ -123,6 +126,7 @@ AC_SUBST([GAIL_LT_CURRENT_MINUS_AGE],[gail_lt_current_minus_age]) - - # Checks for programs. - AC_PROG_CC -+AX_PROG_CC_FOR_BUILD - AC_PROG_CC_C_O - AC_PROG_CC_STDC - AC_PROG_MKDIR_P -@@ -135,8 +139,6 @@ AC_SUBST(GETTEXT_PACKAGE) - AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", - [The prefix for our gettext translation domains.]) - --AC_CANONICAL_HOST -- - MATH_LIB=-lm - AC_MSG_CHECKING([for native Win32]) - LIB_EXE_MACHINE_FLAG=X86 -@@ -868,14 +870,32 @@ dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling - - AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes) - --if test "x$cross_compiling" = xyes || test "x$enable_gtk2_dependency" = xyes; then -- AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no) -- if test x$GTK_UPDATE_ICON_CACHE = xno; then -- REBUILD_PNGS=# -- fi --fi -+AS_IF([test "x$enable_gtk2_dependency" = xyes], -+ [AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no) -+ if test x$GTK_UPDATE_ICON_CACHE = xno; then -+ REBUILD_PNGS=# -+ fi], -+ -+ [test "x$cross_compiling" = xyes], -+ [# If no GTK+2 dependency and cross compiling, we need to find a host gdk-pixbuf. -+ # pkg.m4 blocks all variable starting with PKG, so allow this one -+ m4_pattern_allow([PKG_CONFIG_FOR_BUILD]) -+ -+ AS_IF([test x$PKG_CONFIG_FOR_BUILD = x], -+ [AC_MSG_ERROR([You must define PKG_CONFIG_FOR_BUILD when cross compiling])]) -+ -+ AC_MSG_CHECKING([for native gdk-pixbuf]) -+ AS_IF([AC_RUN_LOG([$PKG_CONFIG_FOR_BUILD --exists --print-errors gdk-pixbuf-2.0])], -+ [AC_MSG_RESULT([yes])], -+ [AC_MSG_ERROR([native gdk-pixbuf not found])]) -+ -+ NATIVE_GDKPIXBUF_CFLAGS=`$PKG_CONFIG_FOR_BUILD --cflags gdk-pixbuf-2.0` -+ NATIVE_GDKPIXBUF_LIBS=`$PKG_CONFIG_FOR_BUILD --libs gdk-pixbuf-2.0` -+ AC_SUBST(NATIVE_GDKPIXBUF_CFLAGS) -+ AC_SUBST(NATIVE_GDKPIXBUF_LIBS)] -+) - --AM_CONDITIONAL(USE_EXTERNAL_ICON_CACHE, [test "x$cross_compiling" = xyes || test "x$enable_gtk2_dependency" = xyes]) -+AM_CONDITIONAL(USE_EXTERNAL_ICON_CACHE, [test "x$enable_gtk2_dependency" = xyes]) - - AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no) - -@@ -1742,6 +1762,7 @@ gtk/makefile.msc - gtk/gtkversion.h - gtk/gtk-win32.rc - gtk/a11y/Makefile -+gtk/native/Makefile - gtk/tests/Makefile - libgail-util/Makefile - modules/Makefile -diff --git a/gtk/Makefile.am b/gtk/Makefile.am -index e763ca8..6b1ec65 100644 ---- a/gtk/Makefile.am -+++ b/gtk/Makefile.am -@@ -16,7 +16,7 @@ else - GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview --print-settings %s %f" - endif - --SUBDIRS = a11y . tests -+SUBDIRS = a11y native . tests - - if HAVE_PAPI_CUPS - GTK_PRINT_BACKENDS=file,papi,cups -@@ -1569,12 +1569,20 @@ stamp-icons: $(STOCK_ICONS) - if USE_EXTERNAL_ICON_CACHE - gtk_update_icon_cache_program = $(GTK_UPDATE_ICON_CACHE) - else -+if CROSS_COMPILING -+gtk_update_icon_cache_program = ./native/native-update-icon-cache -+else - gtk_update_icon_cache_program = ./gtk-update-icon-cache - endif -+endif - - gtkbuiltincache.h: @REBUILD@ stamp-icons - if !USE_EXTERNAL_ICON_CACHE -- $(AM_V_at) $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT) $(GTK_UPDATE_ICON_CACHE_MANIFEST) -+if CROSS_COMPILING -+ $(AM_V_at) $(MAKE) $(AM_MAKEFLAGS) -C native/ -+else -+ $(AM_V_at) $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT) -+endif - endif - $(AM_V_GEN) $(gtk_update_icon_cache_program) --quiet --force --ignore-theme-index \ - --source builtin_icons stock-icons > gtkbuiltincache.h.tmp && \ -diff --git a/gtk/native/Makefile.am b/gtk/native/Makefile.am -new file mode 100644 -index 0000000..4f029f6 ---- /dev/null -+++ b/gtk/native/Makefile.am -@@ -0,0 +1,12 @@ -+CC = @CC_FOR_BUILD@ -+CFLAGS = @CFLAGS_FOR_BUILD@ -+CPP = @CPP_FOR_BUILD@ -+CPPFLAGS = @CPPFLAGS_FOR_BUILD@ -+LDFLAGS = @LDFLAGS_FOR_BUILD@ -+ -+if CROSS_COMPILING -+noinst_PROGRAMS = native-update-icon-cache -+native_update_icon_cache_CFLAGS = $(NATIVE_GDKPIXBUF_CFLAGS) -+native_update_icon_cache_LDADD = $(NATIVE_GDKPIXBUF_LIBS) -+native_update_icon_cache_SOURCES = $(srcdir)/../updateiconcache.c -+endif -diff --git a/m4/ax_prog_cc_for_build.m4 b/m4/ax_prog_cc_for_build.m4 -new file mode 100644 -index 0000000..96cd98a ---- /dev/null -+++ b/m4/ax_prog_cc_for_build.m4 -@@ -0,0 +1,125 @@ -+# =========================================================================== -+# http://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html -+# =========================================================================== -+# -+# SYNOPSIS -+# -+# AX_PROG_CC_FOR_BUILD -+# -+# DESCRIPTION -+# -+# This macro searches for a C compiler that generates native executables, -+# that is a C compiler that surely is not a cross-compiler. This can be -+# useful if you have to generate source code at compile-time like for -+# example GCC does. -+# -+# The macro sets the CC_FOR_BUILD and CPP_FOR_BUILD macros to anything -+# needed to compile or link (CC_FOR_BUILD) and preprocess (CPP_FOR_BUILD). -+# The value of these variables can be overridden by the user by specifying -+# a compiler with an environment variable (like you do for standard CC). -+# -+# It also sets BUILD_EXEEXT and BUILD_OBJEXT to the executable and object -+# file extensions for the build platform, and GCC_FOR_BUILD to `yes' if -+# the compiler we found is GCC. All these variables but GCC_FOR_BUILD are -+# substituted in the Makefile. -+# -+# LICENSE -+# -+# Copyright (c) 2008 Paolo Bonzini <[email protected]> -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 7 -+ -+AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD]) -+AC_DEFUN([AX_PROG_CC_FOR_BUILD], [dnl -+AC_REQUIRE([AC_PROG_CC])dnl -+AC_REQUIRE([AC_PROG_CPP])dnl -+AC_REQUIRE([AC_EXEEXT])dnl -+AC_REQUIRE([AC_CANONICAL_SYSTEM])dnl -+ -+dnl Use the standard macros, but make them use other variable names -+dnl -+pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl -+pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl -+pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl -+pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl -+pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl -+pushdef([ac_cv_exeext], ac_cv_build_exeext)dnl -+pushdef([ac_cv_objext], ac_cv_build_objext)dnl -+pushdef([ac_exeext], ac_build_exeext)dnl -+pushdef([ac_objext], ac_build_objext)dnl -+pushdef([CC], CC_FOR_BUILD)dnl -+pushdef([CPP], CPP_FOR_BUILD)dnl -+pushdef([CFLAGS], CFLAGS_FOR_BUILD)dnl -+pushdef([CPPFLAGS], CPPFLAGS_FOR_BUILD)dnl -+pushdef([LDFLAGS], LDFLAGS_FOR_BUILD)dnl -+pushdef([host], build)dnl -+pushdef([host_alias], build_alias)dnl -+pushdef([host_cpu], build_cpu)dnl -+pushdef([host_vendor], build_vendor)dnl -+pushdef([host_os], build_os)dnl -+pushdef([ac_cv_host], ac_cv_build)dnl -+pushdef([ac_cv_host_alias], ac_cv_build_alias)dnl -+pushdef([ac_cv_host_cpu], ac_cv_build_cpu)dnl -+pushdef([ac_cv_host_vendor], ac_cv_build_vendor)dnl -+pushdef([ac_cv_host_os], ac_cv_build_os)dnl -+pushdef([ac_cpp], ac_build_cpp)dnl -+pushdef([ac_compile], ac_build_compile)dnl -+pushdef([ac_link], ac_build_link)dnl -+ -+save_cross_compiling=$cross_compiling -+save_ac_tool_prefix=$ac_tool_prefix -+cross_compiling=no -+ac_tool_prefix= -+ -+AC_PROG_CC -+AC_PROG_CPP -+AC_EXEEXT -+ -+ac_tool_prefix=$save_ac_tool_prefix -+cross_compiling=$save_cross_compiling -+ -+dnl Restore the old definitions -+dnl -+popdef([ac_link])dnl -+popdef([ac_compile])dnl -+popdef([ac_cpp])dnl -+popdef([ac_cv_host_os])dnl -+popdef([ac_cv_host_vendor])dnl -+popdef([ac_cv_host_cpu])dnl -+popdef([ac_cv_host_alias])dnl -+popdef([ac_cv_host])dnl -+popdef([host_os])dnl -+popdef([host_vendor])dnl -+popdef([host_cpu])dnl -+popdef([host_alias])dnl -+popdef([host])dnl -+popdef([LDFLAGS])dnl -+popdef([CPPFLAGS])dnl -+popdef([CFLAGS])dnl -+popdef([CPP])dnl -+popdef([CC])dnl -+popdef([ac_objext])dnl -+popdef([ac_exeext])dnl -+popdef([ac_cv_objext])dnl -+popdef([ac_cv_exeext])dnl -+popdef([ac_cv_prog_cc_g])dnl -+popdef([ac_cv_prog_cc_cross])dnl -+popdef([ac_cv_prog_cc_works])dnl -+popdef([ac_cv_prog_gcc])dnl -+popdef([ac_cv_prog_CPP])dnl -+ -+dnl Finally, set Makefile variables -+dnl -+BUILD_EXEEXT=$ac_build_exeext -+BUILD_OBJEXT=$ac_build_objext -+AC_SUBST(BUILD_EXEEXT)dnl -+AC_SUBST(BUILD_OBJEXT)dnl -+AC_SUBST([CFLAGS_FOR_BUILD])dnl -+AC_SUBST([CPPFLAGS_FOR_BUILD])dnl -+AC_SUBST([LDFLAGS_FOR_BUILD])dnl -+]) --- -1.7.10.4 -
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb renamed from meta/recipes-gnome/gtk+/gtk+3_3.4.4.bb +5 -4
@@ -16,10 +16,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \ file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \ file://tests/testgtk.c;endline=25;md5=cb732daee1d82af7a2bf953cf3cf26f1" -SRC_URI = "http://download.gnome.org/sources/gtk+/3.4/gtk+-${PV}.tar.xz \ - file://cross.patch" -SRC_URI[md5sum] = "1b2cf29502a6394e8d4b30f7f5bb9131" -SRC_URI[sha256sum] = "f154e460075034da4c0ce89c320025dcd459da2a1fdf32d92a09522eaca242c7" +MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" + +SRC_URI = "http://download.gnome.org/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz" +SRC_URI[md5sum] = "8e878e18fc385f2b813419dc7b40a968" +SRC_URI[sha256sum] = "1ca80c9c15a1df95d74cefb8c2afe4682ba272a4b489106f04877be2a7aff297" inherit autotools pkgconfig gtk-doc update-alternatives gtk-immodules-cache
Signature · 1 line
1.7.10.4
PATCH 8/14 gtk+3: explicitly disable introspection
In reply to Ross BurtonIf someone is/has been using meta-gir then it's possible for this floating option to become enabled.
--- meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb | 1 + 1 file changed, 1 insertion(+)
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb +1 -0
@@ -43,6 +43,7 @@ EXTRA_OECONF += " \ --disable-xinerama \ --enable-modules \ --disable-cups \ + --disable-introspection \ " do_install_append() {
Signature · 1 line
1.7.10.4
PATCH 9/14 gtk+3: respect x11 and wayland DISTRO_FEATURES
In reply to Ross Burton--- .../gtk+/gtk+3/no-x11-in-wayland.patch | 32 ++++++++++++++++++++ meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb | 15 ++++++--- 2 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 meta/recipes-gnome/gtk+/gtk+3/no-x11-in-wayland.patch
meta/recipes-gnome/gtk+/gtk+3/no-x11-in-wayland.patch new file +32 -0
@@ -0,0 +1,32 @@ +The Wayland backend was including X11 headers, which won't work in a no-X11 +distro. + +Upstream-Status: Backport +Signed-off-by: Ross Burton <[email protected]> + +From 875b1d07ded377b20acbf1a10cae847f56de05b4 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen <[email protected]> +Date: Thu, 23 May 2013 12:26:26 -0400 +Subject: [PATCH] Don't include X11 headers in wayland + +The include of X11/keysyms.h in gdkdevice-wayland.c was just +a leftover. +--- + gdk/wayland/gdkdevice-wayland.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c +index c258be3..cd4a695 100644 +--- a/gdk/wayland/gdkdevice-wayland.c ++++ b/gdk/wayland/gdkdevice-wayland.c +@@ -32,7 +32,6 @@ + #include "gdkdevicemanagerprivate.h" + + #include <xkbcommon/xkbcommon.h> +-#include <X11/keysym.h> + + #include <sys/time.h> + #include <sys/mman.h> +-- +1.7.10.4 +
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb +11 -4
@@ -5,9 +5,8 @@ HOMEPAGE = "http://www.gtk.org" BUGTRACKER = "https://bugzilla.gnome.org/" SECTION = "libs" -DEPENDS = "glib-2.0 pango atk jpeg libpng libxext libxcursor \ - docbook-utils-native libxrandr libgcrypt \ - libxdamage libxrender libxcomposite libxi cairo gdk-pixbuf gdk-pixbuf-native" +DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf libgcrypt \ + docbook-utils-native gdk-pixbuf-native" LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
@@ -18,7 +17,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \ MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" -SRC_URI = "http://download.gnome.org/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz" +SRC_URI = "http://download.gnome.org/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \ + file://no-x11-in-wayland.patch" + SRC_URI[md5sum] = "8e878e18fc385f2b813419dc7b40a968" SRC_URI[sha256sum] = "1ca80c9c15a1df95d74cefb8c2afe4682ba272a4b489106f04877be2a7aff297"
@@ -46,6 +47,12 @@ EXTRA_OECONF += " \ --disable-introspection \ " +PACKAGECONFIG ??= "${@base_contains("DISTRO_FEATURES", "x11", "x11", "", d)} \ + ${@base_contains("DISTRO_FEATURES", "wayland", "wayland", "", d)}" + +PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes" +PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon" + do_install_append() { mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0 }
Signature · 1 line
1.7.10.4
PATCH 10/14 gtk+3: add dependencies for gtk+3-demo
In reply to Ross BurtonThe demo loads PNG files and sniffs mime types, so ensure that these dependencies are present so the demo actually works.
--- meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb | 4 ++++ 1 file changed, 4 insertions(+)
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb +4 -0
@@ -65,6 +65,10 @@ FILES_${PN}-demo = "${bindir}/gtk3-demo \ ${bindir}/gtk3-widget-factory \ ${datadir}/gtk-3.0/demo" +# The demo uses PNG files and mime type sniffing, so ensure that these +# dependencies are present. +RDEPENDS_${PN}-demo += "gdk-pixbuf-loader-png shared-mime-info" + FILES_${PN} = "${bindir}/gtk-update-icon-cache-3.0 \ ${bindir}/gtk-query-immodules-3.0 \ ${bindir}/gtk-launch \
Signature · 1 line
1.7.10.4
PATCH 11/14 gtk+: remove spurious libgcrypt dependency
In reply to Ross BurtonThis dependency was for the display migration patch set, which was finally dropped entirely in 2007.
--- meta/recipes-gnome/gtk+/gtk+.inc | 2 +- meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-gnome/gtk+/gtk+.inc +1 -1
@@ -12,7 +12,7 @@ SECTION = "libs" X11DEPENDS = "virtual/libx11 libxext libxcursor libxrandr libxdamage libxrender libxcomposite" DEPENDS = "glib-2.0 pango atk jpeg libpng gdk-pixbuf-native docbook-utils-native \ - libgcrypt cairo gdk-pixbuf" + cairo gdk-pixbuf" PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb +1 -1
@@ -5,7 +5,7 @@ HOMEPAGE = "http://www.gtk.org" BUGTRACKER = "https://bugzilla.gnome.org/" SECTION = "libs" -DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf libgcrypt \ +DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf \ docbook-utils-native gdk-pixbuf-native" LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
Signature · 1 line
1.7.10.4
PATCH 12/14 gtk+3: register GSetting schemas
In reply to Ross BurtonThe schemas were not being registered, which resulted in a crash when using the file chooser or colour picker widgets.
--- meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb +1 -1
@@ -23,7 +23,7 @@ SRC_URI = "http://download.gnome.org/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \ SRC_URI[md5sum] = "8e878e18fc385f2b813419dc7b40a968" SRC_URI[sha256sum] = "1ca80c9c15a1df95d74cefb8c2afe4682ba272a4b489106f04877be2a7aff297" -inherit autotools pkgconfig gtk-doc update-alternatives gtk-immodules-cache +inherit autotools pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings S = "${WORKDIR}/gtk+-${PV}"
Signature · 1 line
1.7.10.4
PATCH 13/14 gtk+3: split into .bb/.inc
In reply to Ross BurtonI plan on introducing a git master version for automatically testing upstream development, so this split makes things a lot easier.
--- meta/recipes-gnome/gtk+/gtk+3.inc | 102 +++++++++++++++++++++++++++++ meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb | 111 ++------------------------------ 2 files changed, 107 insertions(+), 106 deletions(-) create mode 100644 meta/recipes-gnome/gtk+/gtk+3.inc
meta/recipes-gnome/gtk+/gtk+3.inc new file +102 -0
@@ -0,0 +1,102 @@ +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 \ + docbook-utils-native gdk-pixbuf-native" + +LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+" + +inherit autotools pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings + +# This should be in autotools.bbclass, but until something elses uses it putting +# it here avoids rebuilding everything. +export PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native" + +do_configure_prepend() { + # Do this because the configure script is running ./libtool directly + ln -s ${TARGET_PREFIX}libtool libtool || true +} + +# Forcibly disable the GTK+ 2 dependency as we don't want to natively build the +# entire GTK+ stack, or need GTK+ 2 for gtk-update-icon-cache. +EXTRA_OECONF += " \ + --disable-gtk2-dependency \ + --disable-glibtest \ + --disable-xinerama \ + --enable-modules \ + --disable-cups \ + --disable-introspection \ +" + +PACKAGECONFIG ??= "${@base_contains("DISTRO_FEATURES", "x11", "x11", "", d)} \ + ${@base_contains("DISTRO_FEATURES", "wayland", "wayland", "", d)}" + +PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes" +PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon" + +do_install_append() { + mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0 +} + +PACKAGES =+ "${PN}-demo" +LIBV = "3.0.0" + +FILES_${PN}-demo = "${bindir}/gtk3-demo \ + ${bindir}/gtk3-demo-application \ + ${bindir}/gtk3-widget-factory \ + ${datadir}/gtk-3.0/demo" + +# The demo uses PNG files and mime type sniffing, so ensure that these +# dependencies are present. +RDEPENDS_${PN}-demo += "gdk-pixbuf-loader-png shared-mime-info" + +FILES_${PN} = "${bindir}/gtk-update-icon-cache-3.0 \ + ${bindir}/gtk-query-immodules-3.0 \ + ${bindir}/gtk-launch \ + ${libdir}/lib*${SOLIBS} \ + ${datadir}/themes ${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 \ + ${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" + +FILES_${PN}-dbg += " \ + ${libdir}/gtk-3.0/${LIBV}/loaders/.debug \ + ${libdir}/gtk-3.0/${LIBV}/immodules/.debug \ + ${libdir}/gtk-3.0/${LIBV}/engines/.debug \ + ${libdir}/gtk-3.0/${LIBV}/printbackends/.debug \ + ${libdir}/gtk-3.0/modules/.debug" + + +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" + +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'); + + d.setVar('GTKIMMODULES_PACKAGES', ' '.join(do_split_packages(d, immodules_root, '^im-(.*)\.so$', 'gtk3-immodule-%s', 'GTK input module for %s'))) + do_split_packages(d, printmodules_root, '^libprintbackend-(.*)\.so$', 'gtk3-printbackend-%s', 'GTK printbackend module for %s') + + if (d.getVar('DEBIAN_NAMES', 1)): + d.setVar('PKG_${PN}', 'libgtk-3.0') +} +
meta/recipes-gnome/gtk+/gtk+3_3.8.2.bb +5 -106
119 lines not on this page · raw message
Signature · 1 line
1.7.10.4
PATCH 14/14 gtk+3: clean up libtool link creation to avoid errors in configure log
In reply to Ross Burton--- meta/recipes-gnome/gtk+/gtk+3.inc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
meta/recipes-gnome/gtk+/gtk+3.inc +2 -1
@@ -18,7 +18,8 @@ export PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native" do_configure_prepend() { # Do this because the configure script is running ./libtool directly - ln -s ${TARGET_PREFIX}libtool libtool || true + rm -f libtool + ln -s ${TARGET_PREFIX}libtool libtool } # Forcibly disable the GTK+ 2 dependency as we don't want to natively build the
Signature · 1 line
1.7.10.4