diff options
Diffstat (limited to 'import-layers/yocto-poky/meta/recipes-gnome')
49 files changed, 1627 insertions, 1551 deletions
diff --git a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.18.4.bb b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.20.3.bb index 869569c51..eba480b2f 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.18.4.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/epiphany/epiphany_3.20.3.bb @@ -10,13 +10,12 @@ inherit gnomebase gsettings distro_features_check upstream-version-is-even REQUIRED_DISTRO_FEATURES = "x11" SRC_URI += "file://0001-yelp.m4-drop-the-check-for-itstool.patch" -SRC_URI[archive.md5sum] = "172b78256100e8d3c629764abd0e1495" -SRC_URI[archive.sha256sum] = "be699d484371111abae754e669187215df73e21533f461e513b79537d7a1c1c1" +SRC_URI[archive.md5sum] = "31822b6b199f724f212ae9200bc055f1" +SRC_URI[archive.sha256sum] = "4d9de1bdb44c14adf25aa6dc02ea3de60925cff5eb01fe89545e6032c9b424a2" EXTRA_OECONF += " --disable-nss --with-distributor-name=${DISTRO}" do_configure_prepend() { - touch ${S}/gnome-doc-utils.make sed -i -e s:help::g ${S}/Makefile.am } diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gcr/gcr_3.18.0.bb b/import-layers/yocto-poky/meta/recipes-gnome/gcr/gcr_3.20.0.bb index 32523a64a..b32a455e3 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gcr/gcr_3.18.0.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gcr/gcr_3.20.0.bb @@ -5,14 +5,14 @@ BUGTRACKER = "https://bugzilla.gnome.org/" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" -DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt" +DEPENDS = "intltool-native gtk+3 p11-kit glib-2.0 libgcrypt" inherit autotools gnomebase gtk-icon-cache gtk-doc distro_features_check upstream-version-is-even vala gobject-introspection # depends on gtk+3, but also x11 through gtk+-x11 REQUIRED_DISTRO_FEATURES = "x11" -SRC_URI[archive.md5sum] = "b959bac99e17c9bb0990a15c9be11aed" -SRC_URI[archive.sha256sum] = "d4d16da5af55148a694055835ccd07ad34daf0ad03bdad929bf7cad15637ce00" +SRC_URI[archive.md5sum] = "4314bf89eac293dd0a9d806593ff1b35" +SRC_URI[archive.sha256sum] = "90572c626d8a708225560c42b4421f7941315247fa1679d4ef569bde7f4bb379" FILES_${PN} += " \ ${datadir}/dbus-1 \ @@ -33,9 +33,8 @@ ARM_INSTRUCTION_SET = "arm" # gcrypt-Message: select() error: Bad address # # This will be investigated later. -EXTRA_OECONF_append_x86-64 = " --disable-introspection" +EXTRA_OECONF_append_x86-64 = " --disable-introspection --disable-gtk-doc" # Gcr-3.broken: poky/build-mips64/tmp/work/mips64-poky-linux/libgpg-error/1.19-r0/libgpg-error-1.19/src/posix-lock.c:119: get_lock_object: Assertion `!"sizeof lock obj"' failed. # qemu: uncaught target signal 6 (Aborted) - core dumped -EXTRA_OECONF_append_mips64 = " --disable-introspection" - +EXTRA_OECONF_append_mips64 = " --disable-introspection --disable-gtk-doc" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.32.3.bb b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.34.0.bb index ba94eecbd..4f39494cf 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.32.3.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.34.0.bb @@ -19,10 +19,10 @@ SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ file://fatal-loader.patch \ " -SRC_URI[md5sum] = "9275076639baa24a342f3e02c402920e" -SRC_URI[sha256sum] = "2b6771f1ac72f687a8971e59810b8dc658e65e7d3086bd2e676e618fd541d031" +SRC_URI[md5sum] = "63cb19f92cf7709ccf44bbb6fe1ff70c" +SRC_URI[sha256sum] = "d55e5b383ee219bd0e23bf6ed4427d56a7db5379729a6e3e0a0e0eba9a8d8879" -inherit autotools pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection +inherit autotools pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc LIBV = "2.10.0" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.18.2.bb b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.20.2.bb index ee460d988..eb061b20e 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.18.2.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.20.2.bb @@ -7,12 +7,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ BPN = "gnome-desktop" inherit gnome pkgconfig upstream-version-is-even gobject-introspection -SRC_URI[archive.md5sum] = "9a5875247abdb99bad93f1c4230d1d6d" -SRC_URI[archive.sha256sum] = "ddd46d022de137543a71f50c7392b32f9b98d5d3f2b53040b35f5802de2e7b56" +SRC_URI[archive.md5sum] = "8354ed38624f5eb6b5d34267b658a9c9" +SRC_URI[archive.sha256sum] = "492c2da7aa8c3a8b65796e8171fc8f0dfb5d322dd2799c0d76392e1fb061e2b2" -DEPENDS += "gsettings-desktop-schemas gconf libxrandr virtual/libx11 gtk+3 glib-2.0 gnome-doc-utils gnome-common startup-notification xkeyboard-config iso-codes" +DEPENDS += "intltool-native gsettings-desktop-schemas gconf libxrandr virtual/libx11 gtk+3 glib-2.0 startup-notification xkeyboard-config iso-codes" -inherit distro_features_check +inherit distro_features_check gtk-doc REQUIRED_DISTRO_FEATURES = "x11" EXTRA_OECONF = "--disable-desktop-docs" @@ -21,4 +21,3 @@ PACKAGES =+ "libgnome-desktop3" FILES_libgnome-desktop3 = "${libdir}/lib*${SOLIBS} ${datadir}/libgnome-desktop*/pnp.ids ${datadir}/gnome/*xml" RRECOMMENDS_libgnome-desktop3 += "gsettings-desktop-schemas" - diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.18.0.bb b/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.20.bb index 81c88458d..bb0eaebdc 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.18.0.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.20.bb @@ -8,14 +8,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c84cac88e46fc07647ea07e6c24eeb7c" inherit allarch autotools pkgconfig gettext gtk-icon-cache upstream-version-is-even -DEPENDS += "intltool-native" MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ " -SRC_URI[md5sum] = "ec1fa3fde83ad166ae7075a97dc1ec4b" -SRC_URI[sha256sum] = "5e9ce726001fdd8ee93c394fdc3cdb9e1603bbed5b7c62df453ccf521ec50e58" +SRC_URI[md5sum] = "411be2bd68dd8b0a3c86aca2eb351ce4" +SRC_URI[sha256sum] = "7a0a887349f340dd644032f89d81264b694c4b006bd51af1c2c368d431e7ae35" do_install_append() { # Build uses gtk-encode-symbolic-svg to create png versions: @@ -24,14 +23,19 @@ do_install_append() { ${D}${prefix}/share/icons/Adwaita/scalable/*/*-symbolic-rtl.svg } -PACKAGES = "${PN}-cursors ${PN}-symbolic ${PN}-hires ${PN}" +PACKAGES = "${PN}-cursors ${PN}-symbolic-hires ${PN}-symbolic ${PN}-hires ${PN}" RREPLACES_${PN} = "gnome-icon-theme" RCONFLICTS_${PN} = "gnome-icon-theme" RPROVIDES_${PN} = "gnome-icon-theme" FILES_${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/" -FILES_${PN}-symbolic = "${prefix}/share/icons/Adwaita/*/*/*.symbolic.png" +FILES_${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \ + ${prefix}/share/icons/Adwaita/64x64/*/*.symbolic.png \ + ${prefix}/share/icons/Adwaita/48x48/*/*.symbolic.png \ + ${prefix}/share/icons/Adwaita/32x32/*/*.symbolic.png" +FILES_${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \ + ${prefix}/share/icons/Adwaita/24x24/*/*.symbolic.png" FILES_${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/" FILES_${PN} = "${prefix}/share/icons/Adwaita/ \ ${prefix}/share/pkgconfig/adwaita-icon-theme.pc" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils.inc b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils.inc deleted file mode 100644 index 8adfac7d7..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils.inc +++ /dev/null @@ -1,30 +0,0 @@ -SUMMARY = "A collection of documentation utilities for the Gnome project" -DESCRIPTION = "The GNOME Documentation Build Utilities (gnome-doc- \ -utils) were created to make it easier for application developers to \ -include and create documentation in their releases. They include the \ -xml2po tool which makes it easier to translate and keep up to date \ -translations of documentation." -LICENSE = "GPLv2 & LGPLv2.1" -DEPENDS = "libxml2 libxslt libxslt-native gnome-doc-utils-native glib-2.0" -DEPENDS_class-native = "libxml2-native libxslt-native intltool-native glib-2.0-native" - -inherit gnomebase gettext python-dir pythonnative autotools-brokensep - -CLEANBROKEN = "1" - -EXTRA_OECONF += "--disable-scrollkeeper" - -do_install_append() { - chown -R root:root ${D} -} - -do_install_append_class-native () { - sed -i -e 's|^#!.*/usr/bin/env python|#! /usr/bin/env nativepython|' ${D}${bindir}/xml2po -} - -FILES_${PN} += "${datadir}/xml* ${PYTHON_SITEPACKAGES_DIR}/*" - -RDEPENDS_${PN} = "bash" -RDEPENDS_${PN}_class-native = "" - -BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch new file mode 100644 index 000000000..4cfcabd38 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch @@ -0,0 +1,40 @@ +From 426e38468463a4abb495cf6a269b9635b2107519 Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen <jussi.kukkonen@intel.com> +Date: Tue, 17 May 2016 13:51:24 +0300 +Subject: [PATCH] glib-gettext.m4: Update AM_GLIB_GNU_GETTEXT to match glib + +This avoids + error: m4_copy: won't overwrite defined macro: glib_DEFUN + +Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> +Upstream-Status: Inappropriate [No upstream] +--- + m4/glib-gettext.m4 | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/m4/glib-gettext.m4 b/m4/glib-gettext.m4 +index 81f8fd2..e2b142b 100644 +--- a/m4/glib-gettext.m4 ++++ b/m4/glib-gettext.m4 +@@ -310,7 +310,7 @@ msgstr "" + # on various variables needed by the Makefile.in.in installed by + # glib-gettextize. + dnl +-glib_DEFUN([GLIB_GNU_GETTEXT], ++AU_DEFUN([GLIB_GNU_GETTEXT], + [AC_REQUIRE([AC_PROG_CC])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + +@@ -381,7 +381,8 @@ glib_DEFUN([GLIB_GNU_GETTEXT], + rm -f po/POTFILES + sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ + < $srcdir/po/POTFILES.in > po/POTFILES +- ]) ++ ] ++ [[$0: This macro is deprecated. You should use upstream gettext instead.]]) + + # AX_GLIB_DEFINE_LOCALEDIR(VARIABLE) + # ------------------------------- +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch deleted file mode 100644 index 416d69864..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch +++ /dev/null @@ -1,35 +0,0 @@ -In cross environment we have to prepend the sysroot to the path found by -pkgconfig since the path returned from pkgconfig does not have sysroot prefixed -it ends up using the files from host system. Now usually people have gnome installed -so the build succeeds but if you dont have gnome installed on build host then -it wont find the files on host system and packages using gnome-doc-utils wont -compile. - -This should work ok with non sysrooted builds too since in those cases PKG_CONFIG_SYSROOT_DIR -will be empty - -Upstream-Status: Pending -Signed-off-by: Khem Raj <raj.khem@gmail.com> -Signed-off-by: Constantin Musca <constantinx.musca@intel.com> - -Index: gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make -=================================================================== ---- gnome-doc-utils-0.20.10.orig/tools/gnome-doc-utils.make -+++ gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make -@@ -133,11 +133,11 @@ _DOC_ABS_SRCDIR = @abs_srcdir@ - _xml2po ?= `which xml2po` - _xml2po_mode = $(if $(DOC_ID),mallard,docbook) - --_db2html ?= `$(PKG_CONFIG) --variable db2html gnome-doc-utils` --_db2omf ?= `$(PKG_CONFIG) --variable db2omf gnome-doc-utils` --_chunks ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl --_credits ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl --_ids ?= $(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl -+_db2html ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2html gnome-doc-utils` -+_db2omf ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2omf gnome-doc-utils` -+_chunks ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl -+_credits ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl -+_ids ?= ${PKG_CONFIG_SYSROOT_DIR}$(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl - - if ENABLE_SK - _ENABLE_SK = true diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch deleted file mode 100644 index 0e196c063..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch +++ /dev/null @@ -1,30 +0,0 @@ -We can't use #!/full/path/to/python -u as this can be longer than shebang -allows for. In order to be appropraite for upstream more work would be -needed to make sure that the main xml2po code doesn't rely on python -being invoked with -u (force stdin/out/err to be used raw). - -Upstream-Status: Inappropriate [Would break behavior on Windows] -Signed-off-by: Constantin Musca <constantinx.musca@intel.com> - -Index: gnome-doc-utils-0.20.10/xml2po/xml2po/Makefile.am -=================================================================== ---- gnome-doc-utils-0.20.10.orig/xml2po/xml2po/Makefile.am -+++ gnome-doc-utils-0.20.10/xml2po/xml2po/Makefile.am -@@ -7,7 +7,6 @@ CLEANFILES = xml2po - - xml2po: xml2po.py.in - $(AM_V_GEN)sed -e "s/^VERSION =.*/VERSION = \"@VERSION@\"/" \ -- -e "s+^#!.*python.*+#!$(PYTHON)+" \ - < $(srcdir)/xml2po.py.in > xml2po - $(AM_V_at)chmod +x xml2po - -Index: gnome-doc-utils-0.20.10/xml2po/xml2po/xml2po.py.in -=================================================================== ---- gnome-doc-utils-0.20.10.orig/xml2po/xml2po/xml2po.py.in -+++ gnome-doc-utils-0.20.10/xml2po/xml2po/xml2po.py.in -@@ -1,4 +1,4 @@ --#!/usr/bin/python -u -+#!/usr/bin/env python - # -*- encoding: utf-8 -*- - # Copyright (c) 2004, 2005, 2006 Danilo Šegan <danilo@gnome.org>. - # Copyright (c) 2009 Claude Paroz <claude@2xlibre.net>. diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch deleted file mode 100644 index 9346494e9..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch +++ /dev/null @@ -1,95 +0,0 @@ -This adds the -nonet option to xsltproc invocations, which fixes -compile errors when building the gnome-doc-utils docs. - -Upstream-Status: Inappropriate [configuration] -Signed-off-by: Scott Garman <scott.a.garman@intel.com> -Signed-off-by: Constantin Musca <constantinx.musca@intel.com> - -Index: gnome-doc-utils-0.20.10/doc/xslt/Makefile.am -=================================================================== ---- gnome-doc-utils-0.20.10.orig/doc/xslt/Makefile.am -+++ gnome-doc-utils-0.20.10/doc/xslt/Makefile.am -@@ -21,14 +21,14 @@ all: $(xsldoc_docs) $(xsldoc_xmls) - - $(xsldoc_docs): $(xsldoc_xsls) xsldoc.awk xsldoc-fill.xsl - $(AM_V_GEN)$(GDU_AWK) -f "$(srcdir)/xsldoc.awk" "$(filter %/$(basename $(notdir $@)).xsl,$(xsldoc_xsls))" \ -- | xsltproc -o "$@" \ -+ | xsltproc -nonet -o "$@" \ - --stringparam basename "$(basename $(notdir $@))" \ - --stringparam xsl_file "$(filter %/$(basename $(notdir $@)).xsl,$(xsldoc_xsls))" \ - "$(srcdir)/xsldoc-fill.xsl" - - - $(xsldoc_xmls): xsldoc-docbook.xsl - $(xsldoc_xmls): C/%.xml : C/%.xsldoc -- $(AM_V_GEN)xsltproc -o "$@" \ -+ $(AM_V_GEN)xsltproc -nonet -o "$@" \ - --stringparam basename "$(basename $(notdir $@))" \ - --stringparam xsl_file "$(filter %/$(basename $(notdir $@)).xsl,$(xsldoc_xsls))" \ - "$(srcdir)/xsldoc-docbook.xsl" "$<" -@@ -62,7 +62,7 @@ gnome-doc-xslt-check-includes: - gnome-doc-xslt-check-xsldoc: $(xsldoc_docs) - @echo "Running xsldoc checks"; - @(echo "<xsldoc>"; cat $(xsldoc_docs); echo "</xsldoc>") \ -- | xsltproc "$(srcdir)/xsldoc-check.xsl" - 1> /dev/null -+ | xsltproc -nonet "$(srcdir)/xsldoc-check.xsl" - 1> /dev/null - - .PHONY: clean-xsldoc - clean-local: clean_xsldoc -Index: gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make -=================================================================== ---- gnome-doc-utils-0.20.10.orig/tools/gnome-doc-utils.make -+++ gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make -@@ -37,7 +37,7 @@ $(DOC_H_FILE): $(DOC_H_DOCS); - list='$(DOC_H_DOCS)'; for doc in $$list; do \ - xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \ - if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \ -- xsltproc --path "$$xmlpath" $(_credits) $$doc; \ -+ xsltproc -nonet --path "$$xmlpath" $(_credits) $$doc; \ - done | sort | uniq \ - | awk 'BEGIN{s=""}{n=split($$0,w,"<");if(s!=""&&s!=substr(w[1],1,length(w[1])-1)){print s};if(n>1){print $$0;s=""}else{s=$$0}};END{if(s!=""){print s}}' \ - | sed -e 's/\\/\\\\/' -e 's/"/\\"/' -e 's/\(.*\)/\t"\1",/' >> $@.tmp -@@ -50,7 +50,7 @@ $(DOC_H_FILE): $(DOC_H_DOCS); - docid=`echo "$$doc" | sed -e 's/.*\/\([^/]*\)\.xml/\1/' \ - | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`; \ - echo $$xmlpath; \ -- ids=`xsltproc --xinclude --path "$$xmlpath" $(_ids) $$doc`; \ -+ ids=`xsltproc -nonet --xinclude --path "$$xmlpath" $(_ids) $$doc`; \ - for id in $$ids; do \ - echo '#define HELP_'`echo $$docid`'_'`echo $$id \ - | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`' "'$$id'"' >> $@.tmp; \ -@@ -197,7 +197,7 @@ $(_DOC_OMF_DB) : $(DOC_MODULE)-%.omf : % - echo "The file '$(_skcontentslist)' does not exist." >&2; \ - echo "Please check your ScrollKeeper installation." >&2; \ - exit 1; } -- $(GDU_V_DB2OMF)xsltproc -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; } -+ $(GDU_V_DB2OMF)xsltproc -nonet -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; } - - ## @ _DOC_OMF_HTML - ## The OMF files for HTML output -@@ -212,7 +212,7 @@ if ENABLE_SK - echo "Please check your ScrollKeeper installation." >&2; \ - exit 1; } - endif -- $(GDU_V_DB2OMF)xsltproc -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; } -+ $(GDU_V_DB2OMF)xsltproc -nonet -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; } - - ## @ _DOC_OMF_ALL - ## All OMF output files to be built -@@ -267,7 +267,7 @@ _DOC_C_FIGURES = $(if $(DOC_FIGURES), - ## All HTML documentation in the C locale - # FIXME: probably have to shell escape to determine the file names - _DOC_C_HTML = $(foreach f, \ -- $(shell xsltproc --xinclude \ -+ $(shell xsltproc -nonet --xinclude \ - --stringparam db.chunk.basename "$(DOC_MODULE)" \ - $(_chunks) "C/$(DOC_MODULE).xml"), \ - C/$(f).xhtml) -@@ -393,7 +393,7 @@ _DOC_HTML_ALL = $(if $(filter html HTML, - _DOC_HTML_TOPS = $(foreach lc,C $(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xhtml) - - $(_DOC_HTML_TOPS): $(_DOC_C_DOCS) $(_DOC_LC_DOCS) -- $(GDU_V_DB2HTM)xsltproc -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@) -+ $(GDU_V_DB2HTM)xsltproc -nonet -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@) - - - ################################################################################ diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb deleted file mode 100644 index 78cc005f9..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb +++ /dev/null @@ -1,11 +0,0 @@ -require gnome-doc-utils.inc -LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=eb723b61539feef013de476e68b5c50a \ - file://COPYING.LGPL;md5=a6f89e2100d9b6cdffcea4f398e37343" - -SRC_URI += "file://xsltproc_nonet.patch \ - file://use-usr-bin-env-for-python-in-xml2po.patch \ - file://sysrooted-pkg-config.patch \ - " - -SRC_URI[archive.md5sum] = "3c64ad7bacd617b04999e4a168afaac5" -SRC_URI[archive.sha256sum] = "cb0639ffa9550b6ddf3b62f3b1add92fb92ab4690d351f2353cffe668be8c4a6" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-themes-standard_3.20.2.bb b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-themes-standard_3.20.2.bb new file mode 100644 index 000000000..c98d8702c --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gnome/gnome-themes-standard_3.20.2.bb @@ -0,0 +1,39 @@ +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" +LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1" + +inherit autotools pkgconfig gettext gtk-icon-cache upstream-version-is-even distro_features_check + +ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}" + +DEPENDS += "intltool-native gtk+" + +MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" +SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ + " + +SRC_URI[md5sum] = "adc3b1d57330561fea524842d0c0b485" +SRC_URI[sha256sum] = "9d0d9c4b2c9f9008301c3c1878ebb95859a735b7fd4a6a518802b9637e4a7915" + +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 +} + +# 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-dbg \ + gnome-theme-adwaita-dev" + +FILES_gnome-theme-adwaita = "${prefix}/share/themes/Adwaita \ + ${libdir}/gtk-2.0/2.10.0/engines/libadwaita.so" +FILES_gnome-theme-adwaita-dev = "${libdir}/gtk-2.0/2.10.0/engines/libadwaita.la" +FILES_gnome-theme-adwaita-dbg = "${libdir}/gtk-2.0/2.10.0/engines/.debug/libadwaita.so" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch new file mode 100644 index 000000000..9abaea7e7 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch @@ -0,0 +1,50 @@ +From 3a9d1e5ee0aae56fafec0beba2014c19e4ff310c Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Wed, 23 Mar 2016 17:07:28 +0200 +Subject: [PATCH 1/5] Revert an incomplete upstream attempt at cross-compile + support + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + common.mk | 4 ---- + giscanner/gdumpparser.py | 6 ------ + 2 files changed, 10 deletions(-) + +diff --git a/common.mk b/common.mk +index b778f7a..e26c637 100644 +--- a/common.mk ++++ b/common.mk +@@ -24,12 +24,8 @@ INTROSPECTION_SCANNER_ARGS = \ + --add-include-path=$(top_builddir) \ + --add-include-path=$(top_builddir)/gir + +-# GI_CROSS_LAUNCHER is the command to use for executing g-ir-compiler. +-# Normally will be undefined but can be set (e.g. to wine or qemu) +-# when cross-compiling + INTROSPECTION_COMPILER = \ + env PATH=".libs:$(PATH)" \ +- $(GI_CROSS_LAUNCHER) \ + $(top_builddir)/g-ir-compiler$(EXEEXT) + + INTROSPECTION_COMPILER_ARGS = \ +diff --git a/giscanner/gdumpparser.py b/giscanner/gdumpparser.py +index 1134f33..9bdc2bc 100644 +--- a/giscanner/gdumpparser.py ++++ b/giscanner/gdumpparser.py +@@ -162,12 +162,6 @@ blob containing data gleaned from GObject's primitive introspection.""" + out_path = os.path.join(self._binary.tmpdir, 'dump.xml') + + args = [] +- +- # Prepend the launcher command and arguments, if defined +- launcher = os.environ.get('GI_CROSS_LAUNCHER') +- if launcher: +- args.extend(launcher.split()) +- + args.extend(self._binary.args) + args.append('--introspect-dump=%s,%s' % (in_path, out_path)) + +-- +2.7.0 + diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-add-host-gi-gi-cross-wrapper-and-gi-ldd.patch b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch index 6afefabc7..48a0c85f0 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-add-host-gi-gi-cross-wrapper-and-gi-ldd.patch +++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch @@ -1,8 +1,8 @@ -From c6e4f83c373b577166a7e46130ce8ff025ee8515 Mon Sep 17 00:00:00 2001 +From b1503fe2693d602b3e24e4b832dc0934960d5d22 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Mon, 19 Oct 2015 18:29:21 +0300 -Subject: [PATCH] configure.ac: add host-gi, gi-cross-wrapper, gi-ldd-wrapper - and introspection-data options +Subject: [PATCH 2/5] configure.ac: add host-gi, gi-cross-wrapper, + gi-ldd-wrapper and introspection-data options With the first option, gobject-introspection tools (g-ir-doc-tool and g-ir-scanner) that are already installed in the host system will be used for building the source tree. @@ -25,7 +25,6 @@ These options are useful when cross-compiling for a different target architectur Upstream-Status: Pending [review on oe-core list] Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - --- Makefile.am | 2 ++ common.mk | 39 +++++++++++++++++++++++++++++++++++++++ @@ -34,7 +33,7 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 4 files changed, 87 insertions(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am -index 437c673..1eb3545 100644 +index b080a89..ce8d29b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,7 +21,9 @@ include Makefile-cmph.am @@ -132,10 +131,10 @@ index e26c637..9f3a65f 100644 INTROSPECTION_DOCTOOL_ARGS = \ --add-include-path=$(srcdir) \ diff --git a/configure.ac b/configure.ac -index b11596b..d78ae52 100644 +index 6c91fa5..21340a5 100644 --- a/configure.ac +++ b/configure.ac -@@ -347,6 +347,48 @@ fi +@@ -360,6 +360,48 @@ fi AC_SUBST(EXTRA_LINK_FLAGS) @@ -200,5 +199,5 @@ index bdd0fa7..75dd3c9 100644 EXTRA_DIST= BUILT_SOURCES= -- -2.6.2 +2.7.0 diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-use-binary-wrapper-option.patch b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0003-giscanner-add-use-binary-wrapper-option.patch index e1241a949..f21eaca85 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-use-binary-wrapper-option.patch +++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0003-giscanner-add-use-binary-wrapper-option.patch @@ -1,7 +1,7 @@ -From 2322f36056265f809aaffb74fcf5ac0c83129752 Mon Sep 17 00:00:00 2001 +From 704b888d0abfb01067352c40156f49f655691c7c Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Mon, 19 Oct 2015 18:26:40 +0300 -Subject: [PATCH 2/4] giscanner: add --use-binary-wrapper option +Subject: [PATCH 3/5] giscanner: add --use-binary-wrapper option With this option, giscanner will use a wrapper executable to run binaries it's producing, instead of running them directly. This @@ -10,16 +10,15 @@ but they can be run using for example QEMU emulation. Upstream-Status: Pending [review on oe-core list] Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - --- giscanner/scannermain.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py -index b36284d..e37d3e3 100755 +index 633496f..d684cd0 100755 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py -@@ -118,6 +118,9 @@ def _get_option_parser(): +@@ -124,6 +124,9 @@ def _get_option_parser(): parser.add_option("", "--program", action="store", dest="program", default=None, help="program to execute") @@ -29,7 +28,7 @@ index b36284d..e37d3e3 100755 parser.add_option("", "--program-arg", action="append", dest="program_args", default=[], help="extra arguments to program") -@@ -406,6 +409,17 @@ def create_binary(transformer, options, args): +@@ -419,6 +422,17 @@ def create_binary(transformer, options, args): gdump_parser.get_error_quark_functions()) shlibs = resolve_shlibs(options, binary, options.libraries) @@ -37,16 +36,16 @@ index b36284d..e37d3e3 100755 + # The wrapper needs the binary itself, not the libtool wrapper script, + # so we check if libtool has sneaked the binary into .libs subdirectory + # and adjust the path accordingly -+ import os.path ++ import os.path + dir_name, binary_name = os.path.split(binary.args[0]) + libtool_binary = os.path.join(dir_name, '.libs', binary_name) + if os.path.exists(libtool_binary): -+ binary.args[0] = libtool_binary ++ binary.args[0] = libtool_binary + # Then prepend the wrapper to the command line to execute + binary.args = [options.wrapper] + binary.args gdump_parser.set_introspection_binary(binary) gdump_parser.parse() return shlibs -- -2.1.4 +2.7.0 diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-use-ldd-wrapper-option.patch b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0004-giscanner-add-a-use-ldd-wrapper-option.patch index f923dcccf..afb71e767 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-use-ldd-wrapper-option.patch +++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0004-giscanner-add-a-use-ldd-wrapper-option.patch @@ -1,24 +1,23 @@ -From 291a92f200981a772b2d03739dffb5926a82c5a5 Mon Sep 17 00:00:00 2001 +From d4ad57fd4a32c4f0d2f0522a3090ef940746431b Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Fri, 30 Oct 2015 16:28:46 +0200 -Subject: [PATCH 1/2] giscanner: add a --use-ldd-wrapper option +Subject: [PATCH 4/5] giscanner: add a --use-ldd-wrapper option This is useful in cross-compile environments where system's ldd command does not work on binaries built for a different architecture Upstream-Status: Pending [review in oe-core] Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - --- giscanner/scannermain.py | 3 +++ giscanner/shlibs.py | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py -index e37d3e3..b8fff5f 100755 +index d684cd0..1b3b369 100755 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py -@@ -121,6 +121,9 @@ def _get_option_parser(): +@@ -127,6 +127,9 @@ def _get_option_parser(): parser.add_option("", "--use-binary-wrapper", action="store", dest="wrapper", default=None, help="wrapper to use for running programs (useful when cross-compiling)") @@ -29,10 +28,10 @@ index e37d3e3..b8fff5f 100755 action="append", dest="program_args", default=[], help="extra arguments to program") diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py -index 1ad75ee..41117c6 100644 +index c93d20c..c5b5942 100644 --- a/giscanner/shlibs.py +++ b/giscanner/shlibs.py -@@ -100,7 +100,9 @@ def _resolve_non_libtool(options, binary, libraries): +@@ -105,7 +105,9 @@ def _resolve_non_libtool(options, binary, libraries): args.extend(libtool) args.append('--mode=execute') platform_system = platform.system() @@ -44,5 +43,5 @@ index 1ad75ee..41117c6 100644 else: args.extend(['ldd', binary.args[0]]) -- -2.1.4 +2.7.0 diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch index 5026d8177..47a18ec84 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch +++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch @@ -1,7 +1,7 @@ -From a57604e205e6535acd9989444ad1f5f5038f4fba Mon Sep 17 00:00:00 2001 +From e08b3677dd04d6ec407ba8f74f601b2d51310eff Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Thu, 8 Oct 2015 18:30:35 +0300 -Subject: [PATCH 1/4] Prefix pkg-config paths with PKG_CONFIG_SYSROOT_DIR +Subject: [PATCH 5/5] Prefix pkg-config paths with PKG_CONFIG_SYSROOT_DIR environment variable This environment variable sets the location of sysroot directory in cross-compilation @@ -9,14 +9,13 @@ environments; if the variable is not set, the prefix will be empty. Upstream-Status: Pending [review on oe-core list] Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - --- Makefile-gir.am | 18 +++++++++--------- m4/introspection.m4 | 8 ++++---- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/Makefile-gir.am b/Makefile-gir.am -index 9aca664..09b9360 100644 +index a09260a..ba6e89e 100644 --- a/Makefile-gir.am +++ b/Makefile-gir.am @@ -55,8 +55,8 @@ else @@ -64,11 +63,11 @@ index 9aca664..09b9360 100644 GIO_LIBRARY=gio-2.0 if HAVE_GIO_UNIX --GIO_UNIX_HDRS=$(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0/gio/*.h -+GIO_UNIX_HDRS=$(PKG_CONFIG_SYSROOT_DIR)$(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0/gio/*.h +-GIO_UNIX_INCLUDEDIR = $(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0 ++GIO_UNIX_INCLUDEDIR = $(PKG_CONFIG_SYSROOT_DIR)$(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0 + GIO_UNIX_HDRS = $(GIO_UNIX_INCLUDEDIR)/gio/*.h GIO_UNIX_PACKAGES = gio-unix-2.0 else - GIO_UNIX_HDRS= diff --git a/m4/introspection.m4 b/m4/introspection.m4 index d89c3d9..b562266 100644 --- a/m4/introspection.m4 diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.46.0.bb b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.48.0.bb index 9b16147da..abaa48579 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.46.0.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.48.0.bb @@ -1,4 +1,5 @@ -HOMEPAGE = "http://gnome.org" +SUMMARY = "Middleware layer between GObject-using C libraries and language bindings" +HOMEPAGE = "https://wiki.gnome.org/action/show/Projects/GObjectIntrospection" BUGTRACKER = "https://bugzilla.gnome.org/" SECTION = "libs" LICENSE = "LGPLv2+ & GPLv2+" @@ -7,29 +8,24 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=90d577535a3898e1ae5dbf0ae3509a8c \ file://giscanner/sourcescanner.c;endline=22;md5=194d6e0c1d00662f32d030ce44de8d39 \ file://girepository/giregisteredtypeinfo.c;endline=21;md5=661847611ae6979465415f31a759ba27" -SRC_URI = "${GNOME_MIRROR}/${BPN}/1.46/${BPN}-${PV}.tar.xz \ - file://0001-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch \ - file://0001-giscanner-add-use-binary-wrapper-option.patch \ - file://0001-giscanner-add-a-use-ldd-wrapper-option.patch \ - file://0001-configure.ac-add-host-gi-gi-cross-wrapper-and-gi-ldd.patch \ +SRC_URI = "${GNOME_MIRROR}/${BPN}/1.48/${BPN}-${PV}.tar.xz \ + file://0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch \ + file://0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch \ + file://0003-giscanner-add-use-binary-wrapper-option.patch \ + file://0004-giscanner-add-a-use-ldd-wrapper-option.patch \ + file://0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch \ " -SRC_URI[md5sum] = "adb40a31c7c80b65b0f4c8fd71b493dc" -SRC_URI[sha256sum] = "6658bd3c2b8813eb3e2511ee153238d09ace9d309e4574af27443d87423e4233" +SRC_URI[md5sum] = "01301fa9019667d48e927353e08bc218" +SRC_URI[sha256sum] = "fa275aaccdbfc91ec0bc9a6fd0562051acdba731e7d584b64a277fec60e75877" -inherit autotools pkgconfig gtk-doc pythonnative qemu gobject-introspection-data +inherit autotools pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even BBCLASSEXTEND = "native" -# necessary to let the call for python-config from configure.ac succeed -export BUILD_SYS -export HOST_SYS -export STAGING_INCDIR -export STAGING_LIBDIR - # needed for writing out the qemu wrapper script export STAGING_DIR_HOST export B -DEPENDS_append = " libffi zlib glib-2.0 python" +DEPENDS_append = " 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 @@ -44,7 +40,7 @@ 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 nativepython,' ${S}/tools/g-ir-tool-template.in + sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in } do_configure_prepend_class-target() { @@ -97,7 +93,7 @@ EOF # 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 python,' ${S}/tools/g-ir-tool-template.in + sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in } # Configure target build to use native tools of itself and to use a qemu wrapper @@ -108,8 +104,10 @@ EXTRA_OECONF_class-target += "--enable-host-gi \ ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-introspection-data', '--disable-introspection-data', d)} \ " +PACKAGECONFIG ?= "" +PACKAGECONFIG[doctool] = "--enable-doctool,--disable-doctool,python3-mako," -do_compile_prepend_class-target() { +do_compile_prepend() { # This prevents g-ir-scanner from writing cache data to $HOME export GI_SCANNER_DISABLE_CACHE=1 @@ -149,15 +147,27 @@ FILES_${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a" # 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_PREPROCESS_FUNCS_append_class-target += "gi_binaries_sysroot_preprocess" +SYSROOT_DIRS_append_class-target = " ${bindir}" +SYSROOT_PREPROCESS_FUNCS_append_class-target = " gi_binaries_sysroot_preprocess" gi_binaries_sysroot_preprocess() { - sysroot_stage_dir ${D}${bindir} ${SYSROOT_DESTDIR}${bindir} - - # Also, tweak the binary names in introspection pkgconfig file, so that it picks up our - # wrappers which do the cross-compile and qemu magic. + # 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 } + +# Need to ensure ld.so.conf exists so prelink-native works +# both before we build and if we install from sstate +do_configure[prefuncs] += "gobject_introspection_preconfigure" +python gobject_introspection_preconfigure () { + oe.utils.write_ld_so_conf(d) +} + +SSTATEPOSTINSTFUNCS += "gobject_introspection_postinst" +python gobject_introspection_postinst () { + if d.getVar("BB_CURRENTTASK", True).startswith("populate_sysroot"): + oe.utils.write_ld_so_conf(d) +} diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.19.3.bb b/import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.20.0.bb index 25fdabade..bb924ce74 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.19.3.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.20.0.bb @@ -7,8 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" DEPENDS = "glib-2.0 intltool-native" -inherit gnomebase gsettings gettext gobject-introspection - -SRC_URI[archive.md5sum] = "fdc92abcffe46821be423193b275cf8b" -SRC_URI[archive.sha256sum] = "9084989b75ca9b3fc5984c8a0d297a93d3d124f51cadd2bdaaaa75a783c80635" +inherit gnomebase gsettings gettext gobject-introspection upstream-version-is-even +SRC_URI[archive.md5sum] = "c5d87ea480aa9bf66b134ddb5b8ea0f8" +SRC_URI[archive.sha256sum] = "55a41b533c0ab955e0a36a84d73829451c88b027d8d719955d8f695c35c6d9c1" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+.inc b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+.inc index 5bbfe6b8e..c240baa2c 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+.inc +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+.inc @@ -58,7 +58,14 @@ FILES_libgail = " \ ${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" +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}" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3.inc b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3.inc index bd29300d5..83e9b927b 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3.inc +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3.inc @@ -6,7 +6,7 @@ BUGTRACKER = "https://bugzilla.gnome.org/" SECTION = "libs" DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf \ - docbook-utils-native gdk-pixbuf-native libepoxy" + docbook-utils-native gdk-pixbuf-native" LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+" @@ -21,6 +21,8 @@ do_configure_prepend() { # Do this because the configure script is running ./libtool directly rm -f libtool ln -s ${TARGET_PREFIX}libtool libtool + #delete a file that will get confused with generated one in ${B} + rm -f ${S}/gtk/gtktypefuncs.c } EXTRA_OECONF += " \ @@ -29,19 +31,25 @@ EXTRA_OECONF += " \ --enable-modules \ --disable-cups \ --disable-colord \ -" + WAYLAND_PROTOCOLS_SYSROOT_DIR=${STAGING_DIR}/${MACHINE} \ + ${@bb.utils.contains("DISTRO_FEATURES", "x11", "", "--disable-gtk-doc", d)} \ + " +EXTRA_OECONF[vardepsexclude] = "MACHINE" do_compile_prepend() { export GIR_EXTRA_LIBS_PATH="${B}/gdk/.libs" } PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)} \ + ${@bb.utils.contains("DISTRO_FEATURES", "opengl", "opengl", "", d)} \ ${@bb.utils.contains("DISTRO_FEATURES", "opengl x11", "glx", "", d)} \ ${@bb.utils.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" +# this is provided by oe-core patch that removes epoxy/gl dependency from a X11 build +PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,libepoxy" PACKAGECONFIG[glx] = "--enable-glx,--disable-glx,,libgl" -PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon virtual/mesa wayland-native" +PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland wayland-protocols libxkbcommon virtual/mesa wayland-native" do_install_append() { mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0 @@ -61,10 +69,6 @@ FILES_${PN}-demo = "${bindir}/gtk3-demo \ ${datadir}/icons/hicolor/*/apps/gtk3-demo*.png \ ${datadir}/icons/hicolor/*/apps/gtk3-widget-factory*.png" -# 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}_append = " ${bindir}/gtk-update-icon-cache-3.0 \ ${bindir}/gtk-query-immodules-3.0 \ ${bindir}/gtk-launch \ @@ -75,6 +79,7 @@ FILES_${PN}_append = " ${bindir}/gtk-update-icon-cache-3.0 \ FILES_${PN}-dev += " \ ${datadir}/gtk-3.0/gtkbuilder.rng \ ${datadir}/gtk-3.0/include \ + ${datadir}/gettext/its \ ${libdir}/gtk-3.0/include \ ${libdir}/gtk-3.0/${LIBV}/loaders/*.la \ ${libdir}/gtk-3.0/${LIBV}/immodules/*.la \ @@ -84,9 +89,22 @@ FILES_${PN}-dev += " \ ${bindir}/gtk-builder-convert \ ${bindir}/gtk-encode-symbolic-svg \ ${bindir}/gtk-builder-tool \ + ${bindir}/gtk-query-settings \ " -RRECOMMENDS_${PN} = "adwaita-icon-theme-symbolic" +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 \ + " +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-.*" @@ -110,4 +128,3 @@ python populate_packages_prepend () { if (d.getVar('DEBIAN_NAMES', True)): d.setVar(d.expand('PKG_${PN}'), '${MLPREFIX}libgtk-3.0') } - diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0001-Hardcoded-libtool.patch index 3b4beeb71..0bda1f107 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0001-Hardcoded-libtool.patch @@ -1,12 +1,21 @@ +From 5a73a5b92566e314bbc8a1bd40f1ec204837c111 Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen <jussi.kukkonen@intel.com> +Date: Tue, 21 Jun 2016 14:53:56 +0300 +Subject: [PATCH 1/4] Hardcoded libtool + Upstream-Status: Inappropriate [embedded specific] Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> +Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> +--- + configure.ac | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) -Index: gtk+-3.8.2/configure.ac -=================================================================== ---- gtk+-3.8.2.orig/configure.ac -+++ gtk+-3.8.2/configure.ac -@@ -531,7 +531,7 @@ AC_MSG_CHECKING([Whether to write depend +diff --git a/configure.ac b/configure.ac +index 23d3077..b6931d6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -610,7 +610,7 @@ AC_MSG_CHECKING([whether to write dependencies into .pc files]) case $enable_explicit_deps in auto) export SED @@ -15,7 +24,7 @@ Index: gtk+-3.8.2/configure.ac if test "x$deplibs_check_method" != xpass_all || test "x$enable_static" = xyes ; then enable_explicit_deps=yes else -@@ -793,7 +793,7 @@ else +@@ -876,7 +876,7 @@ else dnl Now we check to see if our libtool supports shared lib deps dnl (in a rather ugly way even) if $dynworks; then @@ -24,7 +33,7 @@ Index: gtk+-3.8.2/configure.ac module_deplibs_check=`$module_libtool_config | \ grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \ sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'` -@@ -1528,7 +1528,7 @@ fi +@@ -1630,7 +1630,7 @@ AC_SUBST(GTK_PRINT_BACKENDS) # We are using gmodule-no-export now, but I'm leaving the stripping # code in place for now, since pango and atk still require gmodule. export SED @@ -33,3 +42,6 @@ Index: gtk+-3.8.2/configure.ac if test -n "$export_dynamic"; then GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"` GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"` +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0001-Redo-focus-handling-in-treeview-once-more.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0001-Redo-focus-handling-in-treeview-once-more.patch new file mode 100644 index 000000000..e819add88 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0001-Redo-focus-handling-in-treeview-once-more.patch @@ -0,0 +1,39 @@ +Upstream-Status: Backport [29faa2db] +Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> + + +From 29faa2db44b04b9cf7f4d96e32691f424490c730 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen <mclasen@redhat.com> +Date: Sun, 11 Sep 2016 11:47:55 -0400 +Subject: [PATCH] Redo focus handling in treeview once more + +The fix for bug 767468 had some unintended side-effects. This is +an attempt at doing the same fix (don't grab focus when we are +grab-shadowed), while avoiding the breakage, by using GTK+'s +internal tracking for grab-shadowed-ness. + +https://bugzilla.gnome.org/show_bug.cgi?id=770508 +--- + gtk/gtktreeview.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c +index a7463cc..73d3557 100644 +--- a/gtk/gtktreeview.c ++++ b/gtk/gtktreeview.c +@@ -3050,11 +3050,10 @@ static void + grab_focus_and_unset_draw_keyfocus (GtkTreeView *tree_view) + { + GtkWidget *widget = GTK_WIDGET (tree_view); +- GtkWidget *grab_widget = gtk_grab_get_current (); + + if (gtk_widget_get_can_focus (widget) && + !gtk_widget_has_focus (widget) && +- (!grab_widget || grab_widget == widget)) ++ !_gtk_widget_get_shadowed (widget)) + gtk_widget_grab_focus (widget); + + tree_view->priv->draw_keyfocus = 0; +-- +2.9.3 + diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/Do-not-try-to-initialize-GL-without-libGL.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch index c8c480c5e..989716e51 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/Do-not-try-to-initialize-GL-without-libGL.patch +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0002-Do-not-try-to-initialize-GL-without-libGL.patch @@ -1,7 +1,7 @@ -From fc22058a10db913534f11348f86681fe9e1838e5 Mon Sep 17 00:00:00 2001 +From d63b926f8c8d8b5c9f9ec33d078b775f0409d88a 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 +Subject: [PATCH 2/4] 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 @@ -21,10 +21,10 @@ Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> 2 files changed, 12 insertions(+) diff --git a/configure.ac b/configure.ac -index 729a62e..58cc1ac 100644 +index b6931d6..e27da49 100644 --- a/configure.ac +++ b/configure.ac -@@ -328,6 +328,13 @@ AC_ARG_ENABLE(mir-backend, +@@ -342,6 +342,13 @@ AC_ARG_ENABLE(mir-backend, [enable the Mir gdk backend])], [backend_set=yes]) @@ -39,10 +39,10 @@ index 729a62e..58cc1ac 100644 if test "$platform_win32" = yes; then enable_win32_backend=yes diff --git a/gdk/x11/gdkvisual-x11.c b/gdk/x11/gdkvisual-x11.c -index f3b062d..c8243f4 100644 +index 81479d8..3c8c5c0 100644 --- a/gdk/x11/gdkvisual-x11.c +++ b/gdk/x11/gdkvisual-x11.c -@@ -345,7 +345,12 @@ _gdk_x11_screen_init_visuals (GdkScreen *screen) +@@ -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 */ diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch new file mode 100644 index 000000000..0912c44ff --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0003-Add-disable-opengl-configure-option.patch @@ -0,0 +1,954 @@ +From a8fa547fdc1416b330aced805f5343ad912932ae Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen <jussi.kukkonen@intel.com> +Date: Tue, 21 Jun 2016 15:11:39 +0300 +Subject: [PATCH 3/4] Add --disable-opengl configure option + +--disable-opengl will remove the dependency on libepoxy and on the +OpenGL APIs. This is useful for those who want to keep using gtk+3 +without the "opengl" distro feature. + +GtkGLArea is still part of the API (it just doesn't work) even when +OpenGL is disabled. GdkX11GLContext was removed from the Gtk API +completely: that object exposes GL API elements so it had to be at +the very least modified. + +The patch is _not_ great from a maintenance point of view and +modifying the library API is also a fairly nasty thing to do. +Long-term it would be good to find an alternative solution to this +(maybe a no-op backend for libepoxy?) + +Upstream-Status: Inappropriate [Evil eye expected from upstream] +Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> +--- + configure.ac | 13 +++++++++++-- + demos/gtk-demo/glarea.c | 13 +++++++++++++ + docs/tools/Makefile.am | 9 +++++++-- + docs/tools/widgets.c | 4 +++- + gdk/gdkdisplay.c | 4 +++- + gdk/gdkgl.c | 10 ++++++++++ + gdk/gdkglcontext.c | 6 ++++++ + gdk/gdkwindow.c | 13 +++++++++++++ + gdk/x11/Makefile.am | 30 ++++++++++++++++++++++++++---- + gdk/x11/gdkdisplay-x11.c | 6 +++++- + gdk/x11/gdkscreen-x11.c | 5 +++++ + gdk/x11/gdkwindow-x11.c | 4 ++++ + gdk/x11/gdkx-autocleanups.h | 2 ++ + gdk/x11/gdkx-with-gl-context.h | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + gdk/x11/gdkx-without-gl-context.h | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + gdk/x11/gdkx.h | 59 ----------------------------------------------------------- + gtk/Makefile.am | 3 +-- + gtk/gtkglarea.c | 20 +++++++++++++++++++- + gtk/inspector/general.c | 6 ++++++ + tests/Makefile.am | 10 +++++++--- + testsuite/gtk/objects-finalize.c | 2 ++ + 21 files changed, 260 insertions(+), 76 deletions(-) + +diff --git a/configure.ac b/configure.ac +index a01824e..dde9dc5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -342,6 +342,15 @@ AC_ARG_ENABLE(mir-backend, + [enable the Mir gdk backend])], + [backend_set=yes]) + ++AC_ARG_ENABLE(opengl, ++ [AS_HELP_STRING([--enable-opengl], ++ [When enabled, Gtk+ will use libepoxy and exposes GtkGLArea widget ])]) ++AS_IF([test "x$enable_opengl" != "xno"], [ ++ AC_DEFINE([HAVE_OPENGL], [1], [libepoxy and opengl APIs are available at buildtime]) ++ EPOXY_PACKAGES="epoxy >= epoxy_required_version" ++]) ++AM_CONDITIONAL([HAVE_OPENGL],[test "x$enable_opengl" != "xno"]) ++ + AC_ARG_ENABLE(glx, + [AS_HELP_STRING([--enable-glx], + [When enabled Gdk will try to initialize GLX])]) +@@ -1333,7 +1342,7 @@ CFLAGS="$saved_cflags" + LDFLAGS="$saved_ldflags" + + GDK_PACKAGES="$PANGO_PACKAGES gdk-pixbuf-2.0 >= gdk_pixbuf_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version" +-GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $MIR_PACKAGES $cairo_backends epoxy >= epoxy_required_version" ++GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $MIR_PACKAGES $cairo_backends $EPOXY_PACKAGES" + + PKG_CHECK_MODULES(GDK_DEP, $GDK_PACKAGES $GDK_PRIVATE_PACKAGES) + GDK_DEP_LIBS="$GDK_EXTRA_LIBS $GDK_DEP_LIBS $MATH_LIB" +@@ -1367,7 +1376,7 @@ fi + PKG_CHECK_MODULES(ATK, $ATK_PACKAGES) + + GTK_PACKAGES="atk >= atk_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version gdk-pixbuf-2.0 >= gdk_pixbuf_required_version gio-2.0 >= glib_required_version" +-GTK_PRIVATE_PACKAGES="$ATK_PACKAGES $WAYLAND_PACKAGES $MIR_PACKAGES epoxy >= epoxy_required_version" ++GTK_PRIVATE_PACKAGES="$ATK_PACKAGES $WAYLAND_PACKAGES $MIR_PACKAGES $EPOXY_PACKAGES" + if test "x$enable_x11_backend" = xyes -o "x$enable_wayland_backend" = xyes; then + GTK_PRIVATE_PACKAGES="$GTK_PRIVATE_PACKAGES pangoft2" + fi +diff --git a/demos/gtk-demo/glarea.c b/demos/gtk-demo/glarea.c +index 3aba729..c6c79f7 100644 +--- a/demos/gtk-demo/glarea.c ++++ b/demos/gtk-demo/glarea.c +@@ -5,7 +5,9 @@ + + #include <math.h> + #include <gtk/gtk.h> ++#if HAVE_OPENGL + #include <epoxy/gl.h> ++#endif + + static GtkWidget *demo_window = NULL; + +@@ -23,6 +25,8 @@ enum { + /* Rotation angles on each axis */ + static float rotation_angles[N_AXIS] = { 0.0 }; + ++#ifdef HAVE_OPENGL ++ + /* The object we are drawing */ + static const GLfloat vertex_data[] = { + 0.f, 0.5f, 0.f, 1.f, +@@ -213,6 +217,7 @@ compute_mvp (float *res, + static GLuint position_buffer; + static GLuint program; + static GLuint mvp_location; ++#endif + + /* We need to set up our state when we realize the GtkGLArea widget */ + static void +@@ -223,8 +228,10 @@ realize (GtkWidget *widget) + if (gtk_gl_area_get_error (GTK_GL_AREA (widget)) != NULL) + return; + ++#ifdef HAVE_OPENGL + init_buffers (&position_buffer, NULL); + init_shaders (&program, &mvp_location); ++#endif + } + + /* We should tear down the state when unrealizing */ +@@ -236,10 +243,13 @@ unrealize (GtkWidget *widget) + if (gtk_gl_area_get_error (GTK_GL_AREA (widget)) != NULL) + return; + ++#ifdef HAVE_OPENGL + glDeleteBuffers (1, &position_buffer); + glDeleteProgram (program); ++#endif + } + ++#ifdef HAVE_OPENGL + static void + draw_triangle (void) + { +@@ -272,6 +282,7 @@ draw_triangle (void) + glBindBuffer (GL_ARRAY_BUFFER, 0); + glUseProgram (0); + } ++#endif + + static gboolean + render (GtkGLArea *area, +@@ -280,6 +291,7 @@ render (GtkGLArea *area, + if (gtk_gl_area_get_error (area) != NULL) + return FALSE; + ++#ifdef HAVE_OPENGL + /* Clear the viewport */ + glClearColor (0.5, 0.5, 0.5, 1.0); + glClear (GL_COLOR_BUFFER_BIT); +@@ -289,6 +301,7 @@ render (GtkGLArea *area, + + /* Flush the contents of the pipeline */ + glFlush (); ++#endif + + return TRUE; + } +diff --git a/docs/tools/Makefile.am b/docs/tools/Makefile.am +index 6a6d70f..5cdf312 100644 +--- a/docs/tools/Makefile.am ++++ b/docs/tools/Makefile.am +@@ -9,13 +9,18 @@ AM_CPPFLAGS = \ + $(GTK_DEBUG_FLAGS) \ + $(GTK_DEP_CFLAGS) + ++if HAVE_OPENGL ++GEARS_LDADD = $(top_builddir)/tests/gtkgears.o ++endif ++ + DEPS = \ +- $(top_builddir)/gtk/libgtk-3.la ++ $(top_builddir)/gtk/libgtk-3.la \ ++ $(GEARS_LDADD) + + LDADDS = \ + $(top_builddir)/gtk/libgtk-3.la \ + $(top_builddir)/gdk/libgdk-3.la \ +- $(top_builddir)/tests/gtkgears.o \ ++ $(GEARS_LDADD) \ + $(GTK_DEP_LIBS) \ + $(GDK_DEP_LIBS) \ + -lm +diff --git a/docs/tools/widgets.c b/docs/tools/widgets.c +index 932daf1..54239d6 100644 +--- a/docs/tools/widgets.c ++++ b/docs/tools/widgets.c +@@ -1526,9 +1526,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/gdkdisplay.c b/gdk/gdkdisplay.c +index 6150ef7..2223629 100644 +--- a/gdk/gdkdisplay.c ++++ b/gdk/gdkdisplay.c +@@ -2360,7 +2360,9 @@ gboolean + gdk_display_make_gl_context_current (GdkDisplay *display, + GdkGLContext *context) + { +- return GDK_DISPLAY_GET_CLASS (display)->make_gl_context_current (display, context); ++ if (GDK_DISPLAY_GET_CLASS (display)->make_gl_context_current) ++ return GDK_DISPLAY_GET_CLASS (display)->make_gl_context_current (display, context); ++ return FALSE; + } + + GdkRenderingMode +diff --git a/gdk/gdkgl.c b/gdk/gdkgl.c +index e8ba770..ba7c84b 100644 +--- a/gdk/gdkgl.c ++++ b/gdk/gdkgl.c +@@ -22,7 +22,9 @@ + + #include "gdkinternals.h" + ++#ifdef HAVE_OPENGL + #include <epoxy/gl.h> ++#endif + #include <math.h> + #include <string.h> + +@@ -36,6 +38,7 @@ gdk_cairo_surface_mark_as_direct (cairo_surface_t *surface, + g_object_ref (window), g_object_unref); + } + ++#ifdef HAVE_OPENGL + static const char * + get_vertex_type_name (int type) + { +@@ -254,6 +257,7 @@ use_texture_rect_program (GdkGLContextPaintData *paint_data) + glUseProgram (paint_data->current_program->program); + } + } ++#endif + + void + gdk_gl_texture_quads (GdkGLContext *paint_context, +@@ -261,6 +265,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context, + int n_quads, + GdkTexturedQuad *quads) + { ++#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); +@@ -324,6 +329,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context, + + glDisableVertexAttribArray (program->position_location); + glDisableVertexAttribArray (program->uv_location); ++#endif + } + + /* x,y,width,height describes a rectangle in the gl render buffer +@@ -372,6 +378,7 @@ gdk_cairo_draw_from_gl (cairo_t *cr, + int width, + int height) + { ++#ifdef HAVE_OPENGL + GdkGLContext *paint_context; + cairo_surface_t *image; + cairo_matrix_t matrix; +@@ -692,6 +699,7 @@ gdk_cairo_draw_from_gl (cairo_t *cr, + if (clip_region) + cairo_region_destroy (clip_region); + ++#endif + } + + /* This is always called with the paint context current */ +@@ -699,6 +707,7 @@ void + 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; +@@ -799,4 +808,5 @@ gdk_gl_texture_from_surface (cairo_surface_t *surface, + + glDisable (GL_SCISSOR_TEST); + glDeleteTextures (1, &texture_id); ++#endif + } +diff --git a/gdk/gdkglcontext.c b/gdk/gdkglcontext.c +index 00a33eb..bd8a793 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; +@@ -239,6 +241,7 @@ gdk_gl_context_upload_texture (GdkGLContext *context, + int height, + guint texture_target) + { ++#ifdef HAVE_OPENGL + g_return_if_fail (GDK_IS_GL_CONTEXT (context)); + + glPixelStorei (GL_UNPACK_ALIGNMENT, 4); +@@ -246,6 +249,7 @@ gdk_gl_context_upload_texture (GdkGLContext *context, + glTexImage2D (texture_target, 0, GL_RGBA, width, height, 0, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, + cairo_image_surface_get_data (image_surface)); + glPixelStorei (GL_UNPACK_ROW_LENGTH, 0); ++#endif + } + + static void +@@ -635,6 +639,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; + +@@ -677,6 +682,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 66ebb9d..74a0c3a 100644 +--- a/gdk/gdkwindow.c ++++ b/gdk/gdkwindow.c +@@ -44,7 +44,9 @@ + + #include <math.h> + ++#ifdef HAVE_OPENGL + #include <epoxy/gl.h> ++#endif + + /* for the use of round() */ + #include "fallback-c89.c" +@@ -2759,6 +2761,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, +@@ -2955,6 +2964,7 @@ gdk_window_begin_paint_region (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. */ +@@ -2969,6 +2979,7 @@ gdk_window_begin_paint_region (GdkWindow *window, + glBlendFunc (GL_ONE, GL_ONE_MINUS_SRC_ALPHA); + + glViewport (0, 0, ww, wh); ++#endif + } + } + +@@ -3117,6 +3128,7 @@ gdk_window_end_paint (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); +@@ -3127,6 +3139,7 @@ gdk_window_end_paint (GdkWindow *window) + window->current_paint.need_blend_region); + glDisable(GL_BLEND); + } ++#endif + + cairo_region_destroy (opaque_region); + +diff --git a/gdk/x11/Makefile.am b/gdk/x11/Makefile.am +index c488a31..4ce3c07 100644 +--- a/gdk/x11/Makefile.am ++++ b/gdk/x11/Makefile.am +@@ -39,8 +39,6 @@ libgdk_x11_la_SOURCES = \ + gdkeventtranslator.c \ + gdkeventtranslator.h \ + gdkgeometry-x11.c \ +- gdkglcontext-x11.c \ +- gdkglcontext-x11.h \ + gdkkeys-x11.c \ + gdkmain-x11.c \ + gdkproperty-x11.c \ +@@ -53,14 +51,32 @@ libgdk_x11_la_SOURCES = \ + gdkwindow-x11.h \ + gdkxftdefaults.c \ + gdkxid.c \ +- gdkx.h \ + gdkprivate-x11.h \ + xsettings-client.h \ + xsettings-client.c + ++if HAVE_OPENGL ++libgdk_x11_la_SOURCES += \ ++ gdkglcontext-x11.c \ ++ gdkglcontext-x11.h ++endif ++ + libgdkinclude_HEADERS = \ + gdkx.h + ++if HAVE_OPENGL ++GDKX_HEADER = gdkx-with-gl-context.h ++else ++GDKX_HEADER = gdkx-without-gl-context.h ++endif ++ ++BUILT_SOURCES = gdkx.h ++ ++.PHONY: gdkx.h ++gdkx.h: ++ $(AM_V_GEN) cd $(srcdir) \ ++ && (cmp -s $(GDKX_HEADER) gdkx.h || cp $(GDKX_HEADER) gdkx.h ) ++ + libgdkx11include_HEADERS = \ + gdkx-autocleanups.h \ + gdkx11applaunchcontext.h \ +@@ -74,7 +90,6 @@ libgdkx11include_HEADERS = \ + gdkx11display.h \ + gdkx11displaymanager.h \ + gdkx11dnd.h \ +- gdkx11glcontext.h \ + gdkx11keys.h \ + gdkx11property.h \ + gdkx11screen.h \ +@@ -83,9 +98,16 @@ libgdkx11include_HEADERS = \ + gdkx11visual.h \ + gdkx11window.h + ++if HAVE_OPENGL ++libgdkx11include_HEADERS += gdkx11glcontext.h ++endif ++ + # We need to include all these C files here since the conditionals + # don't seem to be correctly expanded for the dist files. + EXTRA_DIST += \ ++ gdkx.h \ + gdksettings.c + ++MAINTAINERCLEANFILES = gdkx.h ++ + -include $(top_srcdir)/git.mk +diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c +index de91c64..42d50f6 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 <glib.h> +@@ -2959,7 +2961,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/gdkscreen-x11.c b/gdk/x11/gdkscreen-x11.c +index 9d8ed20..bd46b00 100644 +--- a/gdk/x11/gdkscreen-x11.c ++++ b/gdk/x11/gdkscreen-x11.c +@@ -1968,3 +1968,8 @@ gdk_x11_screen_get_current_desktop (GdkScreen *screen) + { + return get_netwm_cardinal_property (screen, "_NET_CURRENT_DESKTOP"); + } ++ ++#ifndef HAVE_OPENGL ++/* Function from in gdk/x11/gdkglcontext-x11.c */ ++void _gdk_x11_screen_update_visuals_for_gl (GdkScreen *screen) {} ++#endif +diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c +index 9ed087a..30d6eb7 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" + +@@ -5782,7 +5784,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 edb0ea7..a317d61 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-with-gl-context.h b/gdk/x11/gdkx-with-gl-context.h +new file mode 100644 +index 0000000..ae05fa6 +--- /dev/null ++++ b/gdk/x11/gdkx-with-gl-context.h +@@ -0,0 +1,59 @@ ++/* GDK - The GIMP Drawing Kit ++ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library. If not, see <http://www.gnu.org/licenses/>. ++ */ ++ ++/* ++ * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS ++ * file for a list of people on the GTK+ Team. See the ChangeLog ++ * files for a list of changes. These files are distributed with ++ * GTK+ at ftp://ftp.gtk.org/pub/gtk/. ++ */ ++ ++#ifndef __GDK_X_H__ ++#define __GDK_X_H__ ++ ++#include <gdk/gdk.h> ++ ++#include <X11/Xlib.h> ++#include <X11/Xutil.h> ++ ++#define __GDKX_H_INSIDE__ ++ ++#include <gdk/x11/gdkx11applaunchcontext.h> ++#include <gdk/x11/gdkx11cursor.h> ++#include <gdk/x11/gdkx11device.h> ++#include <gdk/x11/gdkx11device-core.h> ++#include <gdk/x11/gdkx11device-xi2.h> ++#include <gdk/x11/gdkx11devicemanager.h> ++#include <gdk/x11/gdkx11devicemanager-core.h> ++#include <gdk/x11/gdkx11devicemanager-xi2.h> ++#include <gdk/x11/gdkx11display.h> ++#include <gdk/x11/gdkx11displaymanager.h> ++#include <gdk/x11/gdkx11dnd.h> ++#include <gdk/x11/gdkx11glcontext.h> ++#include <gdk/x11/gdkx11keys.h> ++#include <gdk/x11/gdkx11property.h> ++#include <gdk/x11/gdkx11screen.h> ++#include <gdk/x11/gdkx11selection.h> ++#include <gdk/x11/gdkx11utils.h> ++#include <gdk/x11/gdkx11visual.h> ++#include <gdk/x11/gdkx11window.h> ++ ++#include <gdk/x11/gdkx-autocleanups.h> ++ ++#undef __GDKX_H_INSIDE__ ++ ++#endif /* __GDK_X_H__ */ +diff --git a/gdk/x11/gdkx-without-gl-context.h b/gdk/x11/gdkx-without-gl-context.h +new file mode 100644 +index 0000000..c9e2617 +--- /dev/null ++++ b/gdk/x11/gdkx-without-gl-context.h +@@ -0,0 +1,58 @@ ++/* GDK - The GIMP Drawing Kit ++ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library. If not, see <http://www.gnu.org/licenses/>. ++ */ ++ ++/* ++ * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS ++ * file for a list of people on the GTK+ Team. See the ChangeLog ++ * files for a list of changes. These files are distributed with ++ * GTK+ at ftp://ftp.gtk.org/pub/gtk/. ++ */ ++ ++#ifndef __GDK_X_H__ ++#define __GDK_X_H__ ++ ++#include <gdk/gdk.h> ++ ++#include <X11/Xlib.h> ++#include <X11/Xutil.h> ++ ++#define __GDKX_H_INSIDE__ ++ ++#include <gdk/x11/gdkx11applaunchcontext.h> ++#include <gdk/x11/gdkx11cursor.h> ++#include <gdk/x11/gdkx11device.h> ++#include <gdk/x11/gdkx11device-core.h> ++#include <gdk/x11/gdkx11device-xi2.h> ++#include <gdk/x11/gdkx11devicemanager.h> ++#include <gdk/x11/gdkx11devicemanager-core.h> ++#include <gdk/x11/gdkx11devicemanager-xi2.h> ++#include <gdk/x11/gdkx11display.h> ++#include <gdk/x11/gdkx11displaymanager.h> ++#include <gdk/x11/gdkx11dnd.h> ++#include <gdk/x11/gdkx11keys.h> ++#include <gdk/x11/gdkx11property.h> ++#include <gdk/x11/gdkx11screen.h> ++#include <gdk/x11/gdkx11selection.h> ++#include <gdk/x11/gdkx11utils.h> ++#include <gdk/x11/gdkx11visual.h> ++#include <gdk/x11/gdkx11window.h> ++ ++#include <gdk/x11/gdkx-autocleanups.h> ++ ++#undef __GDKX_H_INSIDE__ ++ ++#endif /* __GDK_X_H__ */ +diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx.h +deleted file mode 100644 +index ae05fa6..0000000 +--- a/gdk/x11/gdkx.h ++++ /dev/null +@@ -1,59 +0,0 @@ +-/* GDK - The GIMP Drawing Kit +- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald +- * +- * This library is free software; you can redistribute it and/or +- * modify it under the terms of the GNU Lesser General Public +- * License as published by the Free Software Foundation; either +- * version 2 of the License, or (at your option) any later version. +- * +- * This library is distributed in the hope that it will be useful, +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- * Lesser General Public License for more details. +- * +- * You should have received a copy of the GNU Lesser General Public +- * License along with this library. If not, see <http://www.gnu.org/licenses/>. +- */ +- +-/* +- * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS +- * file for a list of people on the GTK+ Team. See the ChangeLog +- * files for a list of changes. These files are distributed with +- * GTK+ at ftp://ftp.gtk.org/pub/gtk/. +- */ +- +-#ifndef __GDK_X_H__ +-#define __GDK_X_H__ +- +-#include <gdk/gdk.h> +- +-#include <X11/Xlib.h> +-#include <X11/Xutil.h> +- +-#define __GDKX_H_INSIDE__ +- +-#include <gdk/x11/gdkx11applaunchcontext.h> +-#include <gdk/x11/gdkx11cursor.h> +-#include <gdk/x11/gdkx11device.h> +-#include <gdk/x11/gdkx11device-core.h> +-#include <gdk/x11/gdkx11device-xi2.h> +-#include <gdk/x11/gdkx11devicemanager.h> +-#include <gdk/x11/gdkx11devicemanager-core.h> +-#include <gdk/x11/gdkx11devicemanager-xi2.h> +-#include <gdk/x11/gdkx11display.h> +-#include <gdk/x11/gdkx11displaymanager.h> +-#include <gdk/x11/gdkx11dnd.h> +-#include <gdk/x11/gdkx11glcontext.h> +-#include <gdk/x11/gdkx11keys.h> +-#include <gdk/x11/gdkx11property.h> +-#include <gdk/x11/gdkx11screen.h> +-#include <gdk/x11/gdkx11selection.h> +-#include <gdk/x11/gdkx11utils.h> +-#include <gdk/x11/gdkx11visual.h> +-#include <gdk/x11/gdkx11window.h> +- +-#include <gdk/x11/gdkx-autocleanups.h> +- +-#undef __GDKX_H_INSIDE__ +- +-#endif /* __GDK_X_H__ */ +diff --git a/gtk/Makefile.am b/gtk/Makefile.am +index 6a53a2b..49a35e6 100644 +--- a/gtk/Makefile.am ++++ b/gtk/Makefile.am +@@ -1351,14 +1351,13 @@ gtkprivatetypebuiltins.c: $(gtk_private_type_h_sources) gtkprivatetypebuiltins. + && cp xgen-gptbc gtkprivatetypebuiltins.c \ + && rm -f xgen-gptbc + +- + gtktypefuncs.c: stamp-gtktypebuiltins.h stamp-gtkprivatetypebuiltins.h $(top_srcdir)/gtk/*.h $(top_srcdir)/gtk/a11y/*.h $(top_srcdir)/gtk/deprecated/*.h $(top_srcdir)/gdk/*.h Makefile + $(AM_V_GEN) (echo '#undef GTK_COMPILATION' && echo '#include <gtk/gtkx.h>') > xgen-gtfsrc.c && \ + echo 'G_GNUC_BEGIN_IGNORE_DEPRECATIONS' > xgen-gtf && \ + ${CPP} $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-gtfsrc.c | \ + $(GREP) -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \ + sort | uniq | \ +- $(SED) '{ s/^/*tp++ = /; s/$$/();/; s/^.*\(gdk_x11\|gtk_plug_\|gtk_socket_\).*$$/#ifdef GDK_WINDOWING_X11\n&\n#endif/; }' >> xgen-gtf \ ++ $(SED) '{ s/^/*tp++ = /; s/$$/();/; s/^.*\(gdk_x11\|gtk_plug_\|gtk_socket_\).*$$/#ifdef GDK_WINDOWING_X11\n&\n#endif/; s/^.*gdk_x11_gl.*$$/#ifdef HAVE_OPENGL\n&\n#endif/; }' >> xgen-gtf \ + && cp xgen-gtf $@ && rm -f xgen-gtf + gtktestutils.c: gtktypefuncs.c + +diff --git a/gtk/gtkglarea.c b/gtk/gtkglarea.c +index 245fc6b..4214ad1 100644 +--- a/gtk/gtkglarea.c ++++ b/gtk/gtkglarea.c +@@ -28,7 +28,9 @@ + #include "gtkprivate.h" + #include "gtkrender.h" + ++#ifdef HAVE_OPENGL + #include <epoxy/gl.h> ++#endif + + /** + * SECTION:gtkglarea +@@ -357,9 +359,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 + */ +@@ -467,6 +472,7 @@ gtk_gl_area_allocate_buffers (GtkGLArea *area) + + priv->needs_render = TRUE; + } ++#endif + + /** + * gtk_gl_area_attach_buffers: +@@ -485,6 +491,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)); +@@ -517,11 +524,13 @@ gtk_gl_area_attach_buffers (GtkGLArea *area) + glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_STENCIL_ATTACHMENT_EXT, + GL_RENDERBUFFER_EXT, 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) +@@ -553,6 +562,7 @@ gtk_gl_area_delete_buffers (GtkGLArea *area) + glDeleteFramebuffersEXT (1, &priv->frame_buffer); + priv->frame_buffer = 0; + } ++#endif + } + + static void +@@ -663,6 +673,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; + +@@ -674,7 +685,6 @@ gtk_gl_area_draw (GtkWidget *widget, + gtk_widget_get_allocated_height (widget)); + return FALSE; + } +- + if (priv->context == NULL) + return FALSE; + +@@ -720,6 +730,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 4eab3a7..c4e900e 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" +@@ -147,6 +149,7 @@ append_extension_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, +@@ -156,6 +159,7 @@ append_glx_extension_row (GtkInspectorGeneral *gen, + append_extension_row (gen, ext, epoxy_has_glx_extension (dpy, 0, ext)); + } + #endif ++#endif + + #ifdef GDK_WINDOWING_WAYLAND + static void +@@ -171,6 +175,7 @@ append_egl_extension_row (GtkInspectorGeneral *gen, + static void + init_gl (GtkInspectorGeneral *gen) + { ++#ifdef HAVE_OPENGL + #ifdef GDK_WINDOWING_X11 + if (GDK_IS_X11_DISPLAY (gdk_display_get_default ())) + { +@@ -197,6 +202,7 @@ init_gl (GtkInspectorGeneral *gen) + } + else + #endif ++#endif + #ifdef GDK_WINDOWING_WAYLAND + if (GDK_IS_WAYLAND_DISPLAY (gdk_display_get_default ())) + { +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 681807d..2941a36 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -80,8 +80,6 @@ noinst_PROGRAMS = $(TEST_PROGS) \ + testfullscreen \ + testgeometry \ + testgiconpixbuf \ +- testglarea \ +- testglblending \ + testgrid \ + testgtk \ + testheaderbar \ +@@ -169,11 +167,17 @@ noinst_PROGRAMS = $(TEST_PROGS) \ + testactionbar \ + testwindowsize \ + testpopover \ +- gdkgears \ + listmodel \ + testpopup \ + $(NULL) + ++if HAVE_OPENGL ++noinst_PROGRAMS += ++ testglarea \ ++ testglblending \ ++ gdkgears ++endif ++ + if USE_X11 + noinst_PROGRAMS += testerrors + endif +diff --git a/testsuite/gtk/objects-finalize.c b/testsuite/gtk/objects-finalize.c +index e0ebee0..703643c 100644 +--- a/testsuite/gtk/objects-finalize.c ++++ b/testsuite/gtk/objects-finalize.c +@@ -115,8 +115,10 @@ 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 && + all_types[i] != gdk_pixbuf_simple_anim_iter_get_type()) diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch new file mode 100644 index 000000000..634b3a46f --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/0004-configure.ac-Fix-wayland-protocols-path.patch @@ -0,0 +1,36 @@ +From 97b78e566634579bbae51be914aeaaa921137a8b Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen <jussi.kukkonen@intel.com> +Date: Thu, 9 Jun 2016 11:21:36 +0300 +Subject: [PATCH 4/4] configure.ac: Fix wayland-protocols path + +The wayland-protocols directory is used during build: Fix the path +to point to sysroot specified in recipe. + +Normally PKG_CONFIG_SYSROOT_DIR could be used in configure.ac but that +breaks multilib gtk+ as it would point to multilib sysroot when the +(allarch) wayland-protocols is actually in the machine sysroot. + +Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index a3e9beb..dde9dc5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -461,7 +461,7 @@ fi + if test "$enable_wayland_backend" = "yes"; then + # For the cairo image backend + cairo_backends="$cairo_backends cairo" +- AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, `$PKG_CONFIG --variable=pkgdatadir wayland-protocols`) ++ AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, ${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`) + GDK_BACKENDS="$GDK_BACKENDS wayland" + GDK_WINDOWING="$GDK_WINDOWING + #define GDK_WINDOWING_WAYLAND" +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/Dont-force-csd.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/Dont-force-csd.patch deleted file mode 100644 index 32d8a8479..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3/Dont-force-csd.patch +++ /dev/null @@ -1,118 +0,0 @@ -window: Check if we can use CSD before enabling them - -Upstream-Status: Backport -Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> - - -From c5e5ee67490e7e7af56052d8f8beb75db002c2f1 Mon Sep 17 00:00:00 2001 -From: Emmanuele Bassi <ebassi@gnome.org> -Date: Wed, 3 Jun 2015 14:07:29 +0100 -Subject: window: Check if we can use CSD before enabling them - -The change in 03213b9509fc1df16c66194ea168aed6c15110e9 changed the rules -as to when CSD can be enabled, but it also unconditionally enables CSD -with the implicit assumption that client-side shadows were the real -issue, and that we could work around that by drawing our own borders. -This also means that setting a titlebar for a GtkWindow will enable CSD -unconditionally. - -In reality, some window managers (like Matchbox) *only* support -server-side decorations, and will ignore all hints to the contrary, to -the point of drawing decorations at random locations on top of the -window. - -Since CSD are enabled unconditionally, the GTK_CSD environment variable -is also not a suitable escape hatch. - -In the grand tradition of asking ourselves if we should do something -just because we can, we should split the environment checks from the -checks on what the user requested; by doing that, we can also check -when enabling client-side decorations, and ideally bail out if needed. - -https://bugzilla.gnome.org/show_bug.cgi?id=750343 - -diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c -index 423c6bd..9fe882f 100644 ---- a/gtk/gtkwindow.c -+++ b/gtk/gtkwindow.c -@@ -4056,6 +4056,32 @@ gtk_window_supports_client_shadow (GtkWindow *window) - return TRUE; - } - -+static gboolean -+gtk_window_can_use_csd (GtkWindow *window) -+{ -+ const gchar *csd_env; -+ -+#ifdef GDK_WINDOWING_BROADWAY -+ if (GDK_IS_BROADWAY_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window)))) -+ return TRUE; -+#endif -+ -+#ifdef GDK_WINDOWING_WAYLAND -+ if (GDK_IS_WAYLAND_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window)))) -+ return TRUE; -+#endif -+ -+#ifdef GDK_WINDOWING_MIR -+ if (GDK_IS_MIR_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window)))) -+ return TRUE; -+#endif -+ -+ csd_env = g_getenv ("GTK_CSD"); -+ -+ /* If GTK_CSD is unset we default to CSD support */ -+ return csd_env == NULL || (strcmp (csd_env, "1") == 0); -+} -+ - static void - gtk_window_enable_csd (GtkWindow *window) - { -@@ -4063,6 +4089,10 @@ gtk_window_enable_csd (GtkWindow *window) - GtkWidget *widget = GTK_WIDGET (window); - GdkVisual *visual; - -+ /* If the environment does not support CSD, then there's no point in enabling them */ -+ if (!gtk_window_can_use_csd (window)) -+ return; -+ - /* We need a visual with alpha for client shadows */ - if (priv->use_client_shadow) - { -@@ -5839,7 +5869,6 @@ static gboolean - gtk_window_should_use_csd (GtkWindow *window) - { - GtkWindowPrivate *priv = window->priv; -- const gchar *csd_env; - - if (priv->csd_requested) - return TRUE; -@@ -5850,24 +5879,7 @@ gtk_window_should_use_csd (GtkWindow *window) - if (priv->type == GTK_WINDOW_POPUP) - return FALSE; - --#ifdef GDK_WINDOWING_BROADWAY -- if (GDK_IS_BROADWAY_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window)))) -- return TRUE; --#endif -- --#ifdef GDK_WINDOWING_WAYLAND -- if (GDK_IS_WAYLAND_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window)))) -- return TRUE; --#endif -- --#ifdef GDK_WINDOWING_MIR -- if (GDK_IS_MIR_DISPLAY (gtk_widget_get_display (GTK_WIDGET (window)))) -- return TRUE; --#endif -- -- csd_env = g_getenv ("GTK_CSD"); -- -- return (g_strcmp0 (csd_env, "1") == 0); -+ return gtk_window_can_use_csd (window); - } - - static void --- -cgit v0.10.2 - diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.18.8.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.20.9.bb index b76c0cc1c..38e095ab9 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.18.8.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+3_3.20.9.bb @@ -3,13 +3,14 @@ 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://hardcoded_libtool.patch \ - file://Dont-force-csd.patch \ - file://Do-not-try-to-initialize-GL-without-libGL.patch \ + file://0001-Hardcoded-libtool.patch \ + file://0002-Do-not-try-to-initialize-GL-without-libGL.patch \ + file://0003-Add-disable-opengl-configure-option.patch \ + file://0004-configure.ac-Fix-wayland-protocols-path.patch \ + file://0001-Redo-focus-handling-in-treeview-once-more.patch \ " - -SRC_URI[md5sum] = "9671acb41dc13561d19233f1a75cf184" -SRC_URI[sha256sum] = "1c53ef1bb55364698f7183ecd185b547f92f4a3a7abfafd531400232e2e052f8" +SRC_URI[md5sum] = "cc76cac5e18c772c6784bf19a3dff08b" +SRC_URI[sha256sum] = "83a609ba2f3424b5509e73967c49c67833af466d6f91081b24ee5c64fce6ac17" S = "${WORKDIR}/gtk+-${PV}" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.29.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.30.bb index cf55d2070..4fe990d5c 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.29.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk+_2.24.30.bb @@ -12,8 +12,8 @@ SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-${PV}.tar.xz \ file://strict-prototypes.patch \ " -SRC_URI[md5sum] = "1b7a3689f65617387b5b54520f4439e8" -SRC_URI[sha256sum] = "0741c59600d3d810a223866453dc2bbb18ce4723828681ba24aa6519c37631b8" +SRC_URI[md5sum] = "04568ba5c58b75e3c7543e45628ad789" +SRC_URI[sha256sum] = "0d15cec3b6d55c60eac205b1f3ba81a1ed4eadd9d0f8e7c508bc7065d0c4ca50" EXTRA_OECONF = "--enable-xkb --disable-glibtest --disable-cups --disable-xinerama" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.18.8.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.20.9.bb index 793f14a54..71c1d6280 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.18.8.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk+/gtk-icon-utils-native_3.20.9.bb @@ -10,8 +10,8 @@ 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://Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch" -SRC_URI[md5sum] = "9671acb41dc13561d19233f1a75cf184" -SRC_URI[sha256sum] = "1c53ef1bb55364698f7183ecd185b547f92f4a3a7abfafd531400232e2e052f8" +SRC_URI[md5sum] = "cc76cac5e18c772c6784bf19a3dff08b" +SRC_URI[sha256sum] = "83a609ba2f3424b5509e73967c49c67833af466d6f91081b24ee5c64fce6ac17" LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \ file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \ diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc-stub/files/0001-Revert-Import-introspection-stub-machinery-too.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc-stub/files/0001-Revert-Import-introspection-stub-machinery-too.patch deleted file mode 100644 index 80b0521d4..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc-stub/files/0001-Revert-Import-introspection-stub-machinery-too.patch +++ /dev/null @@ -1,305 +0,0 @@ -From d636be29bf95396b4e27fcd17ff84cb7091cca91 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Thu, 8 Oct 2015 15:37:40 +0300 -Subject: [PATCH] Revert "Import introspection stub machinery too" - -This reverts commit 3dfd0a09de696ec8c544762747f8a0f77153622e. -As we provide the full introspection support, we need to remove -the stubs from this package that conflict with it. - -Upstream-Status: Pending [review on oe-core list] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - Makefile | 4 -- - Makefile.introspection | 163 ------------------------------------------------- - introspection.m4 | 96 ----------------------------- - 3 files changed, 263 deletions(-) - delete mode 100644 Makefile.introspection - delete mode 100644 introspection.m4 - -diff --git a/Makefile b/Makefile -index 7cb6ce5..ad4231a 100644 ---- a/Makefile -+++ b/Makefile -@@ -23,7 +23,3 @@ install: $(bin_programs) - - mkdir -p $(DESTDIR)$(datarootdir)/aclocal/ - install -m 0644 $(srcdir)/gtk-doc.m4 $(DESTDIR)$(datarootdir)/aclocal/gtk-doc.m4 -- -- mkdir -p $(DESTDIR)$(datarootdir)/gobject-introspection-1.0 -- install -m 0644 $(srcdir)/Makefile.introspection $(DESTDIR)$(datarootdir)/gobject-introspection-1.0/Makefile.introspection -- install -m 0644 $(srcdir)/introspection.m4 $(DESTDIR)$(datarootdir)/aclocal/introspection.m4 -diff --git a/Makefile.introspection b/Makefile.introspection -deleted file mode 100644 -index 755dd15..0000000 ---- a/Makefile.introspection -+++ /dev/null -@@ -1,163 +0,0 @@ --# -*- Mode: make -*- --# Copyright 2009-2010 Johan Dahlin --# --# This file is free software; the author(s) gives unlimited --# permission to copy and/or distribute it, with or without --# modifications, as long as this notice is preserved. --# --# * Input variables: --# --# INTROSPECTION_GIRS - List of GIRS that should be generated --# INTROSPECTION_SCANNER - Command to invoke scanner, normally set by --# GOBJECT_INTROSPECTION_REQUIRE/CHECK() in introspection.m4 --# INTROSPECTION_SCANNER_ARGS - Additional args to pass in to the scanner --# INTROSPECTION_SCANNER_ENV - Environment variables to set before running --# the scanner --# INTROSPECTION_COMPILER - Command to invoke compiler, normally set by --# GOBJECT_INTROSPECTION_REQUIRE/CHECK() in introspection.m4 --# INTROSPECTION_COMPILER_ARGS - Additional args to pass in to the compiler --# --# * Simple tutorial --# --# Add this to configure.ac: --# -Wno-portability to AM_INIT_AUTOMAKE --# GOBJECT_INTROSPECTION_CHECK([0.6.7]) --# --# Add this to Makefile.am where your library/program is built: --# include $(INTROSPECTION_MAKEFILE) --# INTROSPECTION_GIRS = YourLib-1.0.gir --# YourLib_1_0_gir_NAMESPACE = YourLib --# YourLib_1_0_gir_VERSION = 1.0 --# YourLib_1_0_gir_LIBS = libyourlib.la --# YourLib_1_0_gir_FILES = $(libyourlib_1_0_SOURCES) --# girdir = $(datadir)/gir-1.0 --# dist_gir_DATA = YourLib-1.0.gir --# typelibdir = $(libdir)/girepository-1.0 --# typelib_DATA = YourLib-1.0.typelib --# CLEANFILES = $(dist_gir_DATA) $(typelib_DATA) --# -- --# Make sure the required variables are set, these should under normal --# circumstances come from introspection.m4 --$(if $(INTROSPECTION_SCANNER),,$(error Need to define INTROSPECTION_SCANNER)) --$(if $(INTROSPECTION_COMPILER),,$(error Need to define INTROSPECTION_COMPILER)) -- --# Private functions -- --## Transform the gir filename to something which can reference through a variable --## without automake/make complaining, eg Gtk-2.0.gir -> Gtk_2_0_gir --_gir_name = $(subst /,_,$(subst -,_,$(subst .,_,$(1)))) -- --# Namespace and Version is either fetched from the gir filename --# or the _NAMESPACE/_VERSION variable combo --_gir_namespace = $(or $($(_gir_name)_NAMESPACE),$(firstword $(subst -, ,$(notdir $(1))))) --_gir_version = $(or $($(_gir_name)_VERSION),$(lastword $(subst -, ,$(1:.gir=)))) -- --# _PROGRAM is an optional variable which needs it's own --program argument --_gir_program = $(if $($(_gir_name)_PROGRAM),--program=$($(_gir_name)_PROGRAM)) -- --# Variables which provides a list of things --_gir_libraries = $(foreach lib,$($(_gir_name)_LIBS),--library=$(lib)) --_gir_packages = $(foreach pkg,$($(_gir_name)_PACKAGES),--pkg=$(pkg)) --_gir_includes = $(foreach include,$($(_gir_name)_INCLUDES),--include=$(include)) --_gir_export_packages = $(foreach pkg,$($(_gir_name)_EXPORT_PACKAGES),--pkg-export=$(pkg)) -- --# Reuse the LIBTOOL variable from automake if it's set, but --# work around MSYS weirdness: When running g-ir-scanner, MSYS changes --# a command-line argument --libtool="/bin/sh ../../libtool" into --# --libtool=c:/opt/msys/1.0/bin/libtool. So just use sh.exe without path --# because we already "know" where the libtool configure produced is. --_gir_libtool = $(if $(findstring MINGW32,$(shell uname -s)),--libtool="$(top_builddir)/libtool",$(if $(LIBTOOL),--libtool="$(LIBTOOL)")) -- --# Macros for AM_SILENT_RULES prettiness --_gir_verbosity = $(if $(AM_DEFAULT_VERBOSITY),$(AM_DEFAULT_VERBOSITY),1) -- --_gir_silent_scanner_prefix = $(_gir_silent_scanner_prefix_$(V)) --_gir_silent_scanner_prefix_ = $(_gir_silent_scanner_prefix_$(_gir_verbosity)) --_gir_silent_scanner_prefix_0 = @echo " GISCAN $(1)"; --_gir_silent_scanner_opts = $(_gir_silent_scanner_opts_$(V)) --_gir_silent_scanner_opts_ = $(_gir_silent_scanner_opts_$(_gir_verbosity)) --_gir_silent_scanner_opts_0 = --quiet -- --_gir_silent_compiler = $(_gir_silent_compiler_$(V)) --_gir_silent_compiler_ = $(_gir_silent_compiler_$(_gir_verbosity)) --_gir_silent_compiler_0 = @echo " GICOMP $(1)"; -- --# --# Creates a GIR by scanning C headers/sources --# $(1) - Name of the gir file (output) --# --# If output is Gtk-2.0.gir then you should name the variables like --# Gtk_2_0_gir_NAMESPACE, Gtk_2_0_gir_VERSION etc. --# Required variables: --# FILES - C sources and headers which should be scanned --# --# One of these variables are required: --# LIBS - Library where the symbol represented in the gir can be found --# PROGRAM - Program where the symbol represented in the gir can be found --# --# Optional variables --# NAMESPACE - Namespace of the gir, first letter capital, --# rest should be lower case, for instance: 'Gtk', 'Clutter', 'ClutterGtk'. --# If not present the namespace will be fetched from the gir filename, --# the part before the first dash. For 'Gtk-2.0', namespace will be 'Gtk'. --# VERSION - Version of the gir, if not present, will be fetched from gir --# filename, the part after the first dash. For 'Gtk-2.0', version will be '2.0'. --# LIBTOOL - Command to invoke libtool, usually set by automake --# SCANNERFLAGS - Flags to pass in to the scanner, see g-ir-scanner(1) for a list --# CFLAGS - Flags to pass in to the parser when scanning headers --# LDFLAGS - Linker flags used by the scanner --# PACKAGES - list of pkg-config names which cflags are required to parse --# the headers of this gir --# INCLUDES - Gir files to include without the .gir suffix, for instance --# GLib-2.0, Gtk-2.0. This is needed for all libraries which you depend on that --# provides introspection information. --# EXPORT_PACKAGES - list of pkg-config names that are provided by this gir. --# By default the names in the PACKAGES variable will be used. --# -- --define introspection-scanner -- --# Basic sanity check, to make sure required variables are set --$(if $($(_gir_name)_FILES),,$(error Need to define $(_gir_name)_FILES)) --$(if $(or $(findstring --header-only,$($(_gir_name)_SCANNERFLAGS)), -- $($(_gir_name)_LIBS), -- $($(_gir_name)_PROGRAM)),, -- $(error Need to define $(_gir_name)_LIBS or $(_gir_name)_PROGRAM)) -- --# Only dependencies we know are actually filenames goes into _FILES, make --# sure these are built before running the scanner. Libraries and programs --# needs to be added manually. --$(1): $$($(_gir_name)_FILES) -- @ $(MKDIR_P) $(dir $(1)) -- $(_gir_silent_scanner_prefix) $(INTROSPECTION_SCANNER_ENV) $(INTROSPECTION_SCANNER) $(_gir_silent_scanner_opts) \ -- $(INTROSPECTION_SCANNER_ARGS) \ -- --namespace=$(_gir_namespace) \ -- --nsversion=$(_gir_version) \ -- $(_gir_libtool) \ -- $(_gir_packages) \ -- $(_gir_includes) \ -- $(_gir_export_packages) \ -- $(_gir_program) \ -- $(_gir_libraries) \ -- $($(_gir_name)_SCANNERFLAGS) \ -- $($(_gir_name)_CFLAGS) \ -- $($(_gir_name)_LDFLAGS) \ -- $$^ \ -- --output $(1) --endef -- --$(foreach gir,$(INTROSPECTION_GIRS),$(eval $(call introspection-scanner,$(gir)))) -- --# --# Compiles a gir into a typelib --# $(1): gir filename (input) --# $(2): typelib filename (output) --# --define introspection-compiler --$(_gir_silent_compiler) $(INTROSPECTION_COMPILER) $(INTROSPECTION_COMPILER_ARGS) --includedir=. $(1) -o $(2) --endef -- --# Simple rule to compile a typelib. --%.typelib: %.gir -- $(call introspection-compiler,$<,$@) -diff --git a/introspection.m4 b/introspection.m4 -deleted file mode 100644 -index d89c3d9..0000000 ---- a/introspection.m4 -+++ /dev/null -@@ -1,96 +0,0 @@ --dnl -*- mode: autoconf -*- --dnl Copyright 2009 Johan Dahlin --dnl --dnl This file is free software; the author(s) gives unlimited --dnl permission to copy and/or distribute it, with or without --dnl modifications, as long as this notice is preserved. --dnl -- --# serial 1 -- --m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL], --[ -- AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first -- AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first -- AC_BEFORE([LT_INIT],[$0])dnl setup libtool first -- -- dnl enable/disable introspection -- m4_if([$2], [require], -- [dnl -- enable_introspection=yes -- ],[dnl -- AC_ARG_ENABLE(introspection, -- AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]], -- [Enable introspection for this build]),, -- [enable_introspection=auto]) -- ])dnl -- -- AC_MSG_CHECKING([for gobject-introspection]) -- -- dnl presence/version checking -- AS_CASE([$enable_introspection], -- [no], [dnl -- found_introspection="no (disabled, use --enable-introspection to enable)" -- ],dnl -- [yes],[dnl -- PKG_CHECK_EXISTS([gobject-introspection-1.0],, -- AC_MSG_ERROR([gobject-introspection-1.0 is not installed])) -- PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], -- found_introspection=yes, -- AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME])) -- ],dnl -- [auto],[dnl -- PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no) -- dnl Canonicalize enable_introspection -- enable_introspection=$found_introspection -- ],dnl -- [dnl -- AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@]) -- ])dnl -- -- AC_MSG_RESULT([$found_introspection]) -- -- INTROSPECTION_SCANNER= -- INTROSPECTION_COMPILER= -- INTROSPECTION_GENERATE= -- INTROSPECTION_GIRDIR= -- INTROSPECTION_TYPELIBDIR= -- if test "x$found_introspection" = "xyes"; then -- INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` -- INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` -- INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` -- INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0` -- INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)" -- INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` -- INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` -- INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection -- fi -- AC_SUBST(INTROSPECTION_SCANNER) -- AC_SUBST(INTROSPECTION_COMPILER) -- AC_SUBST(INTROSPECTION_GENERATE) -- AC_SUBST(INTROSPECTION_GIRDIR) -- AC_SUBST(INTROSPECTION_TYPELIBDIR) -- AC_SUBST(INTROSPECTION_CFLAGS) -- AC_SUBST(INTROSPECTION_LIBS) -- AC_SUBST(INTROSPECTION_MAKEFILE) -- -- AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes") --]) -- -- --dnl Usage: --dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version]) -- --AC_DEFUN([GOBJECT_INTROSPECTION_CHECK], --[ -- _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1]) --]) -- --dnl Usage: --dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version]) -- -- --AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE], --[ -- _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require]) --]) --- -2.1.4 - diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc-stub/gtk-doc-stub_git.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc-stub/gtk-doc-stub_git.bb deleted file mode 100644 index 84e49c13a..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc-stub/gtk-doc-stub_git.bb +++ /dev/null @@ -1,33 +0,0 @@ -SUMMARY = "Stub implementation of gtk-doc" -DESCRIPTION = "Stub implementation of gtk-doc, as we don't want to build the API documentation" -SECTION = "x11/base" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" - -PROVIDES = "gtk-doc" - -SRCREV = "1dea266593edb766d6d898c79451ef193eb17cfa" -PV = "1.1+git${SRCPV}" - -SRC_URI = "git://git.gnome.org/${BPN} \ - file://0001-Revert-Import-introspection-stub-machinery-too.patch \ - " - -S = "${WORKDIR}/git" - -do_configure() { - ./configure --prefix=${prefix} \ - --sysconfdir=${sysconfdir} \ - --bindir=${bindir} \ - --libdir=${libdir} \ - --datadir=${datadir} \ - --datarootdir=${datadir} -} - -do_install() { - oe_runmake install DESTDIR="${D}" -} - -FILES_${PN} += "${datadir}" - -BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-perl-is-not-found-or-its-version.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-perl-is-not-found-or-its-version.patch new file mode 100644 index 000000000..4a9028742 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-perl-is-not-found-or-its-version.patch @@ -0,0 +1,40 @@ +From e733241fb580f032efbbe684ec35d4c9d27f1595 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Thu, 8 Sep 2016 13:38:39 +0300 +Subject: [PATCH] Do not error out if perl is not found or its version is too + old. + +This allows use to avoid depending on perl-native if we're not going +to use it (when api-docs are disabled). + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 2a61d6e..29415bd 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -36,7 +36,7 @@ dnl Check for Perl. + dnl + AC_PATH_PROG([PERL], [perl]) + if test -z "$PERL"; then +- AC_MSG_ERROR([perl not found]) ++ AC_MSG_WARN([perl not found]) + fi + + AC_MSG_CHECKING([if Perl version >= 5.18.0]) +@@ -44,7 +44,7 @@ if "$PERL" -e "require v5.18.0"; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) +- AC_MSG_ERROR([perl >= 5.18.0 is required for gtk-doc]) ++ AC_MSG_WARN([perl >= 5.18.0 is required for gtk-doc]) + fi + + dnl +-- +2.9.3 + diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-xsltproc-is-not-found.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-xsltproc-is-not-found.patch new file mode 100644 index 000000000..99ae4d441 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-error-out-if-xsltproc-is-not-found.patch @@ -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 + diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch new file mode 100644 index 000000000..477fc9ae8 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/0001-Do-not-hardocode-paths-to-perl-python-in-scripts.patch @@ -0,0 +1,139 @@ +From 6fab82b93c7bd301eb42448515b02f7cb3306897 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-common.pl.in | 2 +- + gtkdoc-depscan.in | 2 +- + gtkdoc-fixxref.in | 2 +- + gtkdoc-mkdb.in | 2 +- + gtkdoc-mktmpl.in | 2 +- + gtkdoc-rebase.in | 2 +- + gtkdoc-scan.in | 2 +- + gtkdoc-scangobj.in | 2 +- + tests/tools.sh.in | 4 ++-- + 10 files changed, 11 insertions(+), 11 deletions(-) + +diff --git a/gtkdoc-check.in b/gtkdoc-check.in +index 560d69b..b60857f 100755 +--- a/gtkdoc-check.in ++++ b/gtkdoc-check.in +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!/usr/bin/env perl + # -*- cperl -*- + # + # gtk-doc - GTK DocBook documentation generator. +diff --git a/gtkdoc-common.pl.in b/gtkdoc-common.pl.in +index 4747396..cfadb78 100644 +--- a/gtkdoc-common.pl.in ++++ b/gtkdoc-common.pl.in +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!/usr/bin/env perl + # -*- cperl -*- + # + # gtk-doc - GTK DocBook documentation generator. +diff --git a/gtkdoc-depscan.in b/gtkdoc-depscan.in +index 83af01b..917e247 100644 +--- a/gtkdoc-depscan.in ++++ b/gtkdoc-depscan.in +@@ -1,4 +1,4 @@ +-#!@PYTHON@ ++#!/usr/bin/env python + + import gzip, os.path, re + +diff --git a/gtkdoc-fixxref.in b/gtkdoc-fixxref.in +index 3d9e8d0..d55190b 100755 +--- a/gtkdoc-fixxref.in ++++ b/gtkdoc-fixxref.in +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!/usr/bin/env perl + # -*- cperl -*- + # + # gtk-doc - GTK DocBook documentation generator. +diff --git a/gtkdoc-mkdb.in b/gtkdoc-mkdb.in +index 8dd6d5e..d808750 100755 +--- a/gtkdoc-mkdb.in ++++ b/gtkdoc-mkdb.in +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!/usr/bin/env perl + # -*- cperl -*- + # + # gtk-doc - GTK DocBook documentation generator. +diff --git a/gtkdoc-mktmpl.in b/gtkdoc-mktmpl.in +index c64dfd3..2f46c18 100755 +--- a/gtkdoc-mktmpl.in ++++ b/gtkdoc-mktmpl.in +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!/usr/bin/env perl + # -*- cperl -*- + # + # gtk-doc - GTK DocBook documentation generator. +diff --git a/gtkdoc-rebase.in b/gtkdoc-rebase.in +index 375482d..cf05b45 100644 +--- a/gtkdoc-rebase.in ++++ b/gtkdoc-rebase.in +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!/usr/bin/env perl + # -*- cperl -*- + # + # gtk-doc - GTK DocBook documentation generator. +diff --git a/gtkdoc-scan.in b/gtkdoc-scan.in +index 048e5c9..78c6136 100755 +--- a/gtkdoc-scan.in ++++ b/gtkdoc-scan.in +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!/usr/bin/env perl + # -*- cperl -*- + # + # gtk-doc - GTK DocBook documentation generator. +diff --git a/gtkdoc-scangobj.in b/gtkdoc-scangobj.in +index fb66b76..67ee8f7 100644 +--- a/gtkdoc-scangobj.in ++++ b/gtkdoc-scangobj.in +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!/usr/bin/env perl + # -*- cperl -*- + # + # gtk-doc - GTK DocBook documentation generator. +diff --git a/tests/tools.sh.in b/tests/tools.sh.in +index a114a42..7073883 100644 +--- a/tests/tools.sh.in ++++ b/tests/tools.sh.in +@@ -11,7 +11,7 @@ echo "Running suite(s): gtk-doc-$suite"; + + # test perl scripts + for file in gtkdoc-check gtkdoc-fixxref gtkdoc-mkdb gtkdoc-mktmpl gtkdoc-rebase gtkdoc-scan gtkdoc-scangobj ; do +- @PERL@ -cwT `which $file` ++ perl -cwT `which $file` + if test $? = 1 ; then failed=`expr $failed + 1`; fi + tested=`expr $tested + 1` + done +@@ -34,7 +34,7 @@ done + + + # test python scripts +-@PYTHON@ -m py_compile `which gtkdoc-depscan` ++python -m py_compile `which gtkdoc-depscan` + if test $? != 0 ; then failed=`expr $failed + 1`; fi + tested=`expr $tested + 1` + +-- +2.9.3 + diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch new file mode 100644 index 000000000..c7688704e --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/files/pkg-config-native.patch @@ -0,0 +1,34 @@ +Use native pkg-config when looking for gtk-doc. + +Upstream-Status: Inappropriate +Signed-off-by: Ross Burton <ross.burton@intel.com> + +diff --git a/gtk-doc.m4 b/gtk-doc.m4 +index 3675543..94881ae 100644 +--- a/gtk-doc.m4 ++++ b/gtk-doc.m4 +@@ -1,6 +1,6 @@ + dnl -*- mode: autoconf -*- + +-# serial 2 ++# serial 2.1 + + dnl Usage: + dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) +@@ -10,11 +10,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' diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.25.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.25.bb new file mode 100644 index 000000000..6af996e35 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.25.bb @@ -0,0 +1,52 @@ +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 = "http://www.gtk.org/gtk-doc/" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" + +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] = "--with-highlight=source-highlight,--with-highlight=no,libxslt-native xmlto-native source-highlight-native perl-native" + +# We cannot use host perl, because it may be too old for gtk-doc +EXTRANATIVEPATH += "perl-native" + +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://0001-Do-not-error-out-if-perl-is-not-found-or-its-version.patch \ + " +SRC_URI_append_class-native = " file://pkg-config-native.patch" + +SRC_URI[archive.md5sum] = "0dc6570953112a464a409fb99258ccbc" +SRC_URI[archive.sha256sum] = "1ea46ed400e6501f975acaafea31479cea8f32f911dca4dff036f59e6464fd42" + +BBCLASSEXTEND = "native" + +# 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 +} + +FILES_${PN} += "${datadir}/sgml" +FILES_${PN}-dev += "${libdir}/cmake" +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 +} diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/glib-2.32.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/glib-2.32.patch deleted file mode 100644 index f0b878d37..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/glib-2.32.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 8d49a386f467cbf8e0842d2218126f643e50f834 Mon Sep 17 00:00:00 2001 -From: Dominique Leuenberger <dimstar@opensuse.org> -Date: Sun, 27 Nov 2011 14:24:57 +0000 -Subject: Fix build with glib 2.31: Only glib.h can be #include'd. Fixes bug #664914 - -Upstream-Status: Backport - ---- -diff --git a/engines/clearlooks/src/animation.c b/engines/clearlooks/src/animation.c -index 1f7a41f..56a9286 100644 ---- a/engines/clearlooks/src/animation.c -+++ b/engines/clearlooks/src/animation.c -@@ -28,7 +28,7 @@ - #include "animation.h" - - #ifdef HAVE_WORKING_ANIMATION --#include <glib/gtimer.h> -+#include <glib.h> - - struct _AnimationInfo { - GTimer *timer; --- -cgit v0.9.0.2 diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/substitute-tests.patch b/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/substitute-tests.patch deleted file mode 100644 index 5c557ba68..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/substitute-tests.patch +++ /dev/null @@ -1,37 +0,0 @@ -Upstream-Status: Pending - -Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> -diff -Nurd gtk-engines-2.20.2/configure.ac gtk-engines-2.20.2/configure.ac ---- gtk-engines-2.20.2/configure.ac 2010-10-01 15:42:37.000000000 +0300 -+++ gtk-engines-2.20.2/configure.ac 2013-08-20 02:50:27.930510565 +0300 -@@ -166,6 +166,9 @@ - - AC_SUBST(DEVELOPMENT_CFLAGS) - -+AC_SUBST([exported_symbols_tests], [[$(EXPORTED_SYMBOLS_TESTS)]]) -+AC_SUBST([torture_test_tests], [[$(TORTURE_TEST_TESTS)]]) -+ - AM_CONFIG_HEADER([engines/support/config.h]) - - AC_CONFIG_FILES([ -diff -Nurd gtk-engines-2.20.2/test/Makefile.am gtk-engines-2.20.2/test/Makefile.am ---- gtk-engines-2.20.2/test/Makefile.am 2010-09-19 18:18:21.000000000 +0300 -+++ gtk-engines-2.20.2/test/Makefile.am 2013-08-20 02:50:36.842510865 +0300 -@@ -66,7 +66,7 @@ - # Prefix with exported_ - EXPORTED_SYMBOLS_TESTS = $(patsubst %,exported_%,$(BUILD_ENGINES)) - --TESTS += $(EXPORTED_SYMBOLS_TESTS) -+TESTS += @exported_symbols_tests@ - - - ############################################################# -@@ -88,7 +88,7 @@ - TORTURE_TEST_TESTS = torture_buildin $(patsubst %,torture_%,$(TORTURE_TEST_ENGINES)) - - # Add TORTURE_TEST_ENGINES to list of tests --TESTS += $(TORTURE_TEST_TESTS) -+TESTS += @torture_test_tests@ - - # Possible other tests: - # - An extensive theme switch tests that loads/unloads the engine diff --git a/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines_2.20.2.bb b/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines_2.20.2.bb deleted file mode 100644 index c0ac911a6..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/gtk-engines/gtk-engines_2.20.2.bb +++ /dev/null @@ -1,55 +0,0 @@ -SUMMARY = "GTK+ theme engines" -HOMEPAGE = "http://www.gnome.org/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1" - -SECTION = "x11/base" -DEPENDS = "intltool-native gtk+ gettext-native" - -PR = "r3" - -PACKAGES += "${PN}-schemas" -PACKAGES_DYNAMIC += "^gtk-engine-.* ^gtk-theme-.*" - -RDEPENDS_gtk-theme-redmond = "gtk-engine-redmond95" -RDEPENDS_gtk-theme-metal = "gtk-engine-metal" -RDEPENDS_gtk-theme-mist = "gtk-engine-mist" -RDEPENDS_gtk-theme-crux = "gtk-engine-crux-engine" -RDEPENDS_gtk-theme-lighthouseblue = "gtk-engine-lighthouseblue" -RDEPENDS_gtk-theme-thinice = "gtk-engine-thinice" -RDEPENDS_gtk-theme-industrial = "gtk-engine-industrial" -RDEPENDS_gtk-theme-clearlooks = "gtk-engine-clearlooks" - -FILES_${PN} = "" -FILES_${PN}-dev += "${libdir}/gtk-2.0/*/engines/*.la" -FILES_${PN}-schemas = "${datadir}/gtk-engines/*.xml" - -CFLAGS_prepend = "-DHAVE_ANIMATION " - -RDEPENDS_${PN}-dev = "" - -inherit gnomebase -GNOME_COMPRESS_TYPE="bz2" - -inherit distro_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+)+)" - -python populate_packages_prepend() { - engines_root = os.path.join(d.getVar('libdir', True), "gtk-2.0/2.10.0/engines") - themes_root = os.path.join(d.getVar('datadir', True), "themes") - - do_split_packages(d, engines_root, '^lib(.*)\.so$', 'gtk-engine-%s', 'GTK %s theme engine', extra_depends='') - do_split_packages(d, themes_root, '(.*)', 'gtk-theme-%s', 'GTK theme %s', allow_dirs=True, extra_depends='') - # TODO: mark theme packages as arch all -} - -SRC_URI += "file://glib-2.32.patch \ - file://substitute-tests.patch" -SRC_URI[archive.md5sum] = "5deb287bc6075dc21812130604c7dc4f" -SRC_URI[archive.sha256sum] = "15b680abca6c773ecb85253521fa100dd3b8549befeecc7595b10209d62d66b5" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.0.4.bb b/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.2.2.bb index 3ce38cec5..8df2a42b9 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.0.4.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/json-glib/json-glib_1.2.2.bb @@ -10,9 +10,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" DEPENDS = "glib-2.0" -SRC_URI[archive.md5sum] = "3131b0417ecde3da1ae72acceaa375cf" -SRC_URI[archive.sha256sum] = "80f3593cb6bd13f1465828e46a9f740e2e9bd3cd2257889442b3e62bd6de05cd" +SRC_URI[archive.md5sum] = "c1daefb8d0fb59612af0c072c8aabb58" +SRC_URI[archive.sha256sum] = "ea128ab52a824fcd06e5448fbb2bd8d9a13740d51c66d445828edba71321a621" -inherit gnomebase gettext lib_package gobject-introspection +inherit gnomebase gettext lib_package gobject-introspection gtk-doc BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/glade-cruft.patch b/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/glade-cruft.patch deleted file mode 100644 index c5d586465..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/glade-cruft.patch +++ /dev/null @@ -1,102 +0,0 @@ -Upstream-Status: Pending - -diff -ur libglade-2.4.0~/configure.in libglade-2.4.0/configure.in ---- libglade-2.4.0~/configure.in 2004-05-17 12:38:31.000000000 +0100 -+++ libglade-2.4.0/configure.in 2004-07-28 16:53:09.000000000 +0100 -@@ -147,6 +147,18 @@ - AM_CONDITIONAL(HAVE_PYTHON, $have_python) - AC_SUBST(PYTHON) - -+AC_MSG_CHECKING([for cruft in libgtk]) -+AC_TRY_LINK([ -+#include <gtk/gtk.h> -+#include <stdio.h> -+], [ gtk_tree_get_type (); return 0; ], -+ [ AC_MSG_RESULT(yes) -+ have_cruft=yes ], -+ [ AC_MSG_RESULT(no) -+ AC_DEFINE(DISABLE_CRUFT,,[leave out support for old, broken widgets]) -+ have_cruft=no ]) -+AC_SUBST(DISABLE_CRUFT) -+ - dnl add debugging options ... - changequote(,)dnl - if test "x$GCC" = xyes; then -Only in libglade-2.4.0: configure.in.orig -diff -ur libglade-2.4.0~/glade/glade-gtk.c libglade-2.4.0/glade/glade-gtk.c ---- libglade-2.4.0~/glade/glade-gtk.c 2004-03-13 13:47:35.000000000 +0000 -+++ libglade-2.4.0/glade/glade-gtk.c 2004-07-28 16:53:52.000000000 +0100 -@@ -213,6 +213,8 @@ - gtk_clist_column_titles_hide (GTK_CLIST (w)); - } - -+#ifndef DISABLE_CRUFT -+ - static void - tree_set_selection_mode (GladeXML *xml, GtkWidget *w, - const char *name, const char *value) -@@ -238,6 +240,8 @@ - gtk_tree_set_view_lines (GTK_TREE (w), BOOL (value)); - } - -+#endif -+ - static void - list_set_selection_mode (GladeXML *xml, GtkWidget *w, - const char *name, const char *value) -@@ -254,6 +258,7 @@ - gtk_check_menu_item_set_show_toggle (GTK_CHECK_MENU_ITEM (w), BOOL (value)); - } - -+#ifndef DISABLE_CRUFT - static void - text_set_text (GladeXML *xml, GtkWidget *w, - const char *name, const char *value) -@@ -262,6 +267,7 @@ - - gtk_editable_insert_text (GTK_EDITABLE (w), value, -1, &pos); - } -+#endif - - static void - radio_menu_item_set_group (GladeXML *xml, GtkWidget *w, -@@ -1125,13 +1131,17 @@ - glade_register_custom_prop (GTK_TYPE_CLIST, "selection_mode", clist_set_selection_mode); - glade_register_custom_prop (GTK_TYPE_CLIST, "shadow_type", clist_set_shadow_type); - glade_register_custom_prop (GTK_TYPE_CLIST, "show_titles", clist_set_show_titles); -+#ifndef DISABLE_CRUFT - glade_register_custom_prop (GTK_TYPE_TREE, "selection_mode", tree_set_selection_mode); - glade_register_custom_prop (GTK_TYPE_TREE, "view_mode", tree_set_view_mode); - glade_register_custom_prop (GTK_TYPE_TREE, "view_line", tree_set_view_line); -+#endif - glade_register_custom_prop (GTK_TYPE_LIST, "selection_mode", list_set_selection_mode); - glade_register_custom_prop (GTK_TYPE_CHECK_MENU_ITEM, "always_show_toggle", - check_menu_item_set_always_show_toggle); -+#ifndef DISABLE_CRUFT - glade_register_custom_prop (GTK_TYPE_TEXT, "text", text_set_text); -+#endif - glade_register_custom_prop (GTK_TYPE_RADIO_MENU_ITEM, "group", - radio_menu_item_set_group); - glade_register_custom_prop (GTK_TYPE_TOOLBAR, "tooltips", toolbar_set_tooltips); -@@ -1288,8 +1298,10 @@ - glade_standard_build_children, NULL); - glade_register_widget (GTK_TYPE_TEAROFF_MENU_ITEM, glade_standard_build_widget, - NULL, NULL); -+#ifndef DISABLE_CRUFT - glade_register_widget (GTK_TYPE_TEXT, glade_standard_build_widget, - NULL, NULL); -+#endif - glade_register_widget (GTK_TYPE_TEXT_VIEW, glade_standard_build_widget, - NULL, NULL); - glade_register_widget (GTK_TYPE_TIPS_QUERY, glade_standard_build_widget, -@@ -1304,8 +1316,10 @@ - glade_standard_build_children, NULL); - glade_register_widget (GTK_TYPE_TOOL_BUTTON, glade_standard_build_widget, - NULL, NULL); -+#ifndef DISABLE_CRUFT - glade_register_widget (GTK_TYPE_TREE, glade_standard_build_widget, - NULL, NULL); -+#endif - glade_register_widget (GTK_TYPE_TREE_VIEW, glade_standard_build_widget, - NULL, NULL); - glade_register_widget (GTK_TYPE_VBUTTON_BOX, glade_standard_build_widget, diff --git a/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/no-xml2.patch b/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/no-xml2.patch deleted file mode 100644 index dc4c092fd..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/no-xml2.patch +++ /dev/null @@ -1,501 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - -diff -urN libglade-2.4.2.orig/configure.in libglade-2.4.2/configure.in ---- libglade-2.4.2.orig/configure.in 2005-02-11 12:42:58.000000000 +0100 -+++ libglade-2.4.2/configure.in 2005-03-22 01:22:00.000000000 +0100 -@@ -52,11 +52,33 @@ - AC_PATH_PROG(PKG_CONFIG, pkg-config, no) - - PKG_CHECK_MODULES(LIBGLADE, [dnl -- libxml-2.0 >= required_libxml_version dnl - atk >= required_atk_version dnl - gtk+-2.0 >= required_gtk_version dnl - glib-2.0 >= required_glib_version]) - -+disable_xml2=no -+AC_ARG_WITH([libxml2], -+ AC_HELP_STRING([--without-libxml2], [Don't use libxml2, use Glib's GMarkupParser instead]), -+ [disable_xml2=yes], -+ [disable_xml2=no]) -+ -+AC_MSG_CHECKING([if we are using libxml2]) -+if test "x$disable_xml2" == "xno"; then -+ AC_MSG_RESULT(yes) -+ PKG_CHECK_MODULES(XML2, libxml-2.0 >= 2.4.10) -+ PKGCFG_REQUIRE_LIBXML2="libxml-2.0" -+ LIBGLADE_CFLAGS="$LIBGLADE_CFLAGS $XML2_CFLAGS" -+ LIBGLADE_LIBS="$LIBGLADE_LIBS $XML2_LIBS" -+else -+ LIBGLADE_CFLAGS="$LIBGLADE_CFLAGS -DUSE_GMARKUP_PARSER" -+ PKGCFG_REQUIRE_LIBXML2="" -+ AC_MSG_RESULT(no) -+fi -+ -+AC_SUBST(XML2_LIBS) -+AC_SUBST(XML2_CFLAGS) -+AC_SUBST(PKGCFG_REQUIRE_LIBXML2) -+ - AC_MSG_CHECKING([for native Win32]) - case "$host" in - *-*-mingw*) -@@ -116,6 +138,21 @@ - fi - fi - -+if test "x$disable_xml2" == "xyes"; then -+ echo "*****************************************************" -+ echo " You chose to disable libxml2 and use Glib's" -+ echo " GMarkupParser instead." -+ echo -+ echo " Please bear in mind that using libglade with" -+ echo " GMarkupParser is an experimental feature only." -+ echo -+ echo " Please post problems or success stories to" -+ echo " the glade-devel mailing list. Thank you." -+ echo "*****************************************************" -+fi -+ -+ -+ - GTK_DOC_CHECK(1.0) - - dnl gettext stuff ... there is no message catalog for libglade -- libglade -diff -urN libglade-2.4.2.orig/glade/glade-parser.c libglade-2.4.2/glade/glade-parser.c ---- libglade-2.4.2.orig/glade/glade-parser.c 2004-11-11 11:56:13.000000000 +0100 -+++ libglade-2.4.2/glade/glade-parser.c 2005-03-22 01:20:00.000000000 +0100 -@@ -34,7 +34,15 @@ - # define dgettext(Domain, String) (String) - #endif - --#include <libxml/parser.h> -+#ifdef USE_GMARKUP_PARSER -+# include <zlib.h> -+#else -+# include <libxml/parser.h> -+#endif -+ -+#ifdef USE_GMARKUP_PARSER -+# define xmlChar gchar -+#endif - - #include "glade-parser.h" - #include "glade-private.h" -@@ -508,7 +516,9 @@ - case PARSER_START: - if (!strcmp(name, "glade-interface")) { - state->state = PARSER_GLADE_INTERFACE; --#if 0 -+ -+#ifndef USE_GMARKUP_PARSER -+ #if 0 - /* check for correct XML namespace */ - for (i = 0; attrs && attrs[i] != NULL; i += 2) { - if (!strcmp(attrs[i], "xmlns") && -@@ -518,7 +528,9 @@ - g_warning("unknown attribute `%s' for <glade-interface>", - attrs[i]); - } -+ #endif - #endif -+ - } else { - g_warning("Expected <glade-interface>. Got <%s>.", name); - state->prev_state = state->state; -@@ -1063,12 +1075,18 @@ - } - } - -+#ifndef USE_GMARKUP_PARSER -+ - static xmlEntityPtr - glade_parser_get_entity(GladeParseState *state, const xmlChar *name) - { - return xmlGetPredefinedEntity(name); - } - -+#endif /* !defined(USE_GMARKUP_PARSER) */ -+ -+#ifndef USE_GMARKUP_PARSER -+ - static void - glade_parser_warning(GladeParseState *state, const char *msg, ...) - { -@@ -1079,6 +1097,10 @@ - va_end(args); - } - -+#endif /* !defined(USE_GMARKUP_PARSER) */ -+ -+#ifndef USE_GMARKUP_PARSER -+ - static void - glade_parser_error(GladeParseState *state, const char *msg, ...) - { -@@ -1089,6 +1111,10 @@ - va_end(args); - } - -+#endif /* !defined(USE_GMARKUP_PARSER) */ -+ -+#ifndef USE_GMARKUP_PARSER -+ - static void - glade_parser_fatal_error(GladeParseState *state, const char *msg, ...) - { -@@ -1099,6 +1125,10 @@ - va_end(args); - } - -+#endif /* !defined(USE_GMARKUP_PARSER) */ -+ -+#ifndef USE_GMARKUP_PARSER -+ - static xmlSAXHandler glade_parser = { - (internalSubsetSAXFunc)NULL, /* internalSubset */ - (isStandaloneSAXFunc)NULL, /* isStandalone */ -@@ -1126,6 +1156,82 @@ - (fatalErrorSAXFunc)glade_parser_fatal_error, /* fatalError */ - }; - -+#else /* USE_GMARKUP_PARSER */ -+ -+static void -+glade_parser_start_element_wrapper(GMarkupParseContext *context, -+ const gchar *name, -+ const gchar **attr_names, -+ const gchar **attr_values, -+ gpointer state, -+ GError **error) -+{ -+ guint i = 0; -+ -+ /* Pack attribute names/values from two separate -+ * arrays (GMarkupParser style) into one single -+ * array (libxml SAXParser style). This is not -+ * very efficient, but we do it to make the -+ * GMarkupParser code as little invasive as -+ * possible. */ -+ -+ while (attr_names[i] != NULL) { -+ ++i; -+ } -+ -+ if (1) -+ { -+ const gchar *attr[(i*2)+1]; -+ guint j, k; -+ -+ for (j=0, k=0; k < i; j += 2) -+ { -+ attr[j] = attr_names[k]; -+ attr[j+1] = attr_values[k]; -+ ++k; -+ } -+ attr[i*2] = NULL; -+ -+ glade_parser_start_element((GladeParseState*)state, name, attr); -+ } -+} -+ -+static void -+glade_parser_end_element_wrapper(GMarkupParseContext *context, -+ const gchar *name, -+ gpointer state, -+ GError **err) -+{ -+ glade_parser_end_element((GladeParseState*)state, name); -+} -+ -+static void -+glade_parser_characters_wrapper(GMarkupParseContext *context, -+ const gchar *chars, -+ gsize len, -+ gpointer state, -+ GError **err) -+{ -+ glade_parser_characters((GladeParseState*)state, chars, (int) len); -+} -+ -+static void -+glade_parser_error(GMarkupParseContext *context, GError *err, gpointer data) -+{ -+ g_log("Glade-Parser", G_LOG_LEVEL_CRITICAL, "%s", err->message); -+} -+ -+static const GMarkupParser glade_parser = { -+ glade_parser_start_element_wrapper, /* element open */ -+ glade_parser_end_element_wrapper, /* element close */ -+ glade_parser_characters_wrapper, /* text content */ -+ NULL, /* passthrough */ -+ glade_parser_error, /* parse error */ -+}; -+ -+#endif /* USE_GMARKUP_PARSER */ -+ -+ - static void - widget_info_free(GladeWidgetInfo *info) - { -@@ -1191,6 +1297,9 @@ - * - * Returns: the GladeInterface structure for the XML file. - */ -+ -+#ifndef USE_GMARKUP_PARSER -+ - GladeInterface * - glade_parser_parse_file(const gchar *file, const gchar *domain) - { -@@ -1222,6 +1331,31 @@ - return state.interface; - } - -+#else /* defined(USE_GMARKUP_PARSER) */ -+ -+GladeInterface * -+glade_parser_parse_file(const gchar *file, const gchar *domain) -+{ -+ GladeInterface *interface; -+ GError *err = NULL; -+ gchar *content = NULL; -+ gsize clen; -+ -+ if (!g_file_get_contents(file, &content, &clen, &err)) { -+ g_warning("could not load glade file: %s", err->message); -+ g_error_free(err); -+ return NULL; -+ } -+ -+ interface = glade_parser_parse_buffer(content, (gint) clen, domain); -+ -+ g_free(content); -+ -+ return interface; -+} -+ -+#endif /* USE_GMARKUP_PARSER */ -+ - /** - * glade_parser_parse_buffer - * @buffer: a buffer in memory containing XML data. -@@ -1237,6 +1371,9 @@ - * - * Returns: the GladeInterface structure for the XML buffer. - */ -+ -+#ifndef USE_GMARKUP_PARSER -+ - GladeInterface * - glade_parser_parse_buffer(const gchar *buffer, gint len, const gchar *domain) - { -@@ -1263,6 +1400,161 @@ - return state.interface; - } - -+#else /* defined(USE_GMARKUP_PARSER) */ -+ -+ -+static GladeInterface * -+glade_parser_parse_buffer_internal(const gchar *buffer, gint len, const gchar *domain) -+{ -+ GMarkupParseContext *context; -+ GladeParseState state = { 0 }; -+ GError *err = NULL; -+ -+ state.interface = NULL; -+ if (domain) -+ state.domain = domain; -+ else -+ state.domain = textdomain(NULL); -+ -+ /* FIXME: This strstr() is not safe, as it ignores the len -+ * argument and assumes the buffer is NUL-terminated */ -+ if (strstr(buffer, "<?xml") == NULL) { -+ g_warning("No XML header found in document!"); -+ return NULL; -+ } -+ -+ context = g_markup_parse_context_new(&glade_parser, (GMarkupParseFlags) 0, &state, NULL); -+ -+ glade_parser_start_document(&state); -+ -+ if (!g_markup_parse_context_parse(context, buffer, (gssize) len, &err)) { -+ g_warning("document not well formed: %s", err->message); -+ g_error_free(err); -+ if (state.interface) -+ glade_interface_destroy (state.interface); -+ return NULL; -+ } -+ -+ glade_parser_end_document(&state); -+ -+ if (state.state != PARSER_FINISH) { -+ g_warning("did not finish in PARSER_FINISH state!"); -+ -+ if (state.interface) -+ glade_interface_destroy(state.interface); -+ -+ return NULL; -+ } -+ -+ return state.interface; -+} -+ -+struct _gzip_rfc1952_hdr -+{ -+ guint8 id1, id2, cm, flags; -+ guint32 mtime; -+ guint8 xflags; -+ guint8 os; -+}; -+ -+static GladeInterface * -+glade_parser_parse_gzipped_buffer(const gchar *buffer, gint len, const gchar *domain) -+{ -+ struct _gzip_rfc1952_hdr *hdr = (struct _gzip_rfc1952_hdr*)buffer; -+ struct z_stream_s zstream; -+ GladeInterface *interface; -+ const guint8 *cbuf; /* start of compressed data */ -+ guint8 *decompress_buf; -+ gulong decompress_len = 0; -+ gint ret; -+ -+ g_assert(hdr != NULL && hdr->id1 == 0x1f && hdr->id2 == 0x8b); -+ -+ if (hdr->cm != Z_DEFLATED) { -+ g_warning("Unknown decompression method %u", (guint) hdr->cm); -+ return NULL; -+ } -+ -+ /* Uncompressed size (modulo 2^32) is last -+ * 4 bytes of gzipped file, and little endian. -+ * See RFC 1952 */ -+ decompress_len = GUINT32_FROM_LE(*((guint32*)(((guint8*)buffer) + len - 4))); -+ -+ /* paranoid mode: glade files > 5MB are unlikely */ -+ g_return_val_if_fail(decompress_len < 5*1024*1024, NULL); -+ -+ decompress_buf = g_malloc0(decompress_len + 1); /* +1 for NUL-terminator */ -+ -+ /* find start of compressed data, skipping header stuff */ -+ cbuf = (guint8*)buffer + 10; -+ if (hdr->flags & 0x04) { -+ guint16 xlen = GUINT16_FROM_LE(*((guint16*)cbuf)); -+ cbuf += xlen + 2; -+ } -+ if (hdr->flags & 0x08) { -+ guint16 onamelen = strlen(cbuf); -+ cbuf += onamelen + 1; -+ } -+ if (hdr->flags & 0x10) { -+ guint16 commentlen = strlen(cbuf); -+ cbuf += commentlen + 1; -+ } -+ if (hdr->flags & 0x02) -+ { -+ cbuf += 2; /* skip header CRC16 */ -+ } -+ -+ zstream.next_in = (void*)cbuf; -+ zstream.avail_in = (uLongf) len - ((void*)cbuf-(void*)buffer) - 4 - 4 +1; -+ zstream.next_out = decompress_buf; -+ zstream.avail_out= decompress_len; -+ zstream.zalloc = Z_NULL; -+ zstream.zfree = Z_NULL; -+ zstream.opaque = Z_NULL; -+ -+ ret = inflateInit2(&zstream, -MAX_WBITS); -+ -+ if (ret != Z_OK) { -+ g_warning("inflateInit2() failed. zlib error code: %d", ret); -+ g_free(decompress_buf); -+ return NULL; -+ } -+ -+ ret = inflate(&zstream, Z_FINISH); -+ -+ if (ret != Z_STREAM_END) { -+ g_warning("zlib decompression failed. zlib error code: %d", ret); -+ g_free(decompress_buf); -+ return NULL; -+ } -+ -+ interface = glade_parser_parse_buffer_internal(decompress_buf, decompress_len, domain); -+ -+ g_free(decompress_buf); -+ -+ return interface; -+} -+ -+GladeInterface * -+glade_parser_parse_buffer(const gchar *buffer, gint len, const gchar *domain) -+{ -+ g_return_val_if_fail(buffer != NULL, NULL); -+ g_return_val_if_fail(len > 0, NULL); -+ -+ /* Check if buffer is gzipped */ -+ if (buffer[0] == 0x1f && buffer[1] == (gchar)0x8b) { -+ return glade_parser_parse_gzipped_buffer(buffer, len, domain); -+ } -+ -+ /* Buffer is cleartext. */ -+ return glade_parser_parse_buffer_internal(buffer, len, domain); -+} -+ -+#endif /* USE_GMARKUP_PARSER */ -+ -+ -+#ifndef USE_GMARKUP_PARSER -+ - static void - dump_widget(xmlNode *parent, GladeWidgetInfo *info, gint indent) - { -@@ -1382,6 +1674,8 @@ - xmlNodeAddContent(widget, " "); - } - -+#endif /* !defined(USE_GMARKUP_PARSER) */ -+ - /** - * glade_interface_dump - * @interface: the GladeInterface -@@ -1390,6 +1684,9 @@ - * This function dumps the contents of a GladeInterface into a file as - * XML. It is intended mainly as a debugging tool. - */ -+ -+#ifndef USE_GMARKUP_PARSER -+ - void - glade_interface_dump(GladeInterface *interface, const gchar *filename) - { -@@ -1428,6 +1725,17 @@ - xmlFreeDoc(doc); - } - -+#else /* defined(USE_GMARKUP_PARSER) */ -+ -+void -+glade_interface_dump(GladeInterface *interface, const gchar *filename) -+{ -+ g_warning("glade_interface_dump() is only available with libxml2."); -+} -+ -+#endif /* USE_GMARKUP_PARSER */ -+ -+ - #if 0 - int - main(int argc, char **argv) { -diff -urN libglade-2.4.2.orig/libglade-2.0.pc.in libglade-2.4.2/libglade-2.0.pc.in ---- libglade-2.4.2.orig/libglade-2.0.pc.in 2001-12-12 15:28:23.000000000 +0100 -+++ libglade-2.4.2/libglade-2.0.pc.in 2005-03-22 01:20:00.000000000 +0100 -@@ -11,7 +11,7 @@ - Name: Libglade - Description: a library for dynamically loading GLADE interface files - Version: @VERSION@ --Requires: gtk+-2.0 libxml-2.0 -+Requires: gtk+-2.0 @PKGCFG_REQUIRE_LIBXML2@ - Libs: -L${libdir} -lglade-2.0 - Cflags: -I${includedir}/libglade-2.0 - diff --git a/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/python_environment.patch b/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/python_environment.patch deleted file mode 100644 index b5b2ec453..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade-2.6.4/python_environment.patch +++ /dev/null @@ -1,14 +0,0 @@ -Using @PYTHON@ for this path would result in the build system python being -referred to. Instead we want to locate python from the environment. - -Upstream-Status: Inappropriate [configuration] - -diff -ruN libglade-2.6.4-orig//libglade-convert.in libglade-2.6.4/libglade-convert.in ---- libglade-2.6.4-orig//libglade-convert.in 2011-09-22 10:18:28.991164003 +0800 -+++ libglade-2.6.4/libglade-convert.in 2011-09-22 10:18:55.431164003 +0800 -@@ -1,4 +1,4 @@ --#!@PYTHON@ -+#!/usr/bin/env python - # -*- mode: python -*- - - # yes, this requires python 2.x and an XML parser module (eg. PyExpat) diff --git a/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade_2.6.4.bb b/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade_2.6.4.bb deleted file mode 100644 index 553e19c60..000000000 --- a/import-layers/yocto-poky/meta/recipes-gnome/libglade/libglade_2.6.4.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "Runtime support for the GTK+ interface builder" -HOMEPAGE = "http://library.gnome.org/devel/libglade/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "LGPLv2 & LGPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605 \ - file://glade/glade.h;endline=22;md5=a04f461c964ba4b57a172d1fbcd8f8fc \ - file://glade/glade-gtk.c;endline=22;md5=766f993433e2642fec87936d319990ff" - -SECTION = "libs" -PR = "r5" -DEPENDS = "zlib gdk-pixbuf gtk+" - -inherit autotools pkgconfig gnomebase gtk-doc distro_features_check -ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}" -GNOME_COMPRESS_TYPE="bz2" - -SRC_URI += "file://glade-cruft.patch file://no-xml2.patch file://python_environment.patch" - -SRC_URI[archive.md5sum] = "d1776b40f4e166b5e9c107f1c8fe4139" -SRC_URI[archive.sha256sum] = "64361e7647839d36ed8336d992fd210d3e8139882269bed47dc4674980165dec" - -EXTRA_OECONF += "--without-libxml2" - -CFLAGS += "-lz" - -PACKAGES += " ${PN}-data" -FILES_${PN} = "${libdir}/lib*.so.*" -FILES_${PN}-data = "${datadir}/xml/libglade/glade-2.0.dtd" -FILES_${PN}-dev += "${bindir}/libglade-convert" -#RDEPENDS_${PN} = "${PN}-data" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_230.bb b/import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_230.bb index 6a105023b..709553bd0 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_230.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/libgudev/libgudev_230.bb @@ -10,5 +10,7 @@ RCONFLICTS_${PN} = "systemd (<= 220)" LICENSE = "LGPLv2.1" LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" -inherit gnomebase gobject-introspection +inherit gnomebase gobject-introspection gtk-doc +UPSTREAM_CHECK_URI = "http://ftp.gnome.org/pub/GNOME/sources/libgudev/" +UPSTREAM_CHECK_REGEX = "(?P<pver>(\d+))" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.13.bb b/import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.16.bb index 2ac52f779..49243c8aa 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.13.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/librsvg/librsvg_2.40.16.bb @@ -14,8 +14,8 @@ inherit autotools pkgconfig gnomebase gtk-doc pixbufcache upstream-version-is-ev SRC_URI += "file://gtk-option.patch" -SRC_URI[archive.md5sum] = "ad03780e12c56e52474d8edf86976c73" -SRC_URI[archive.sha256sum] = "4d6ea93ec05f5dabe7262d711d246a0a99b2311e215360dd3dcabd6afe3b9804" +SRC_URI[archive.md5sum] = "f474fe37177a2bf8050787df2046095c" +SRC_URI[archive.sha256sum] = "d48bcf6b03fa98f07df10332fb49d8c010786ddca6ab34cbba217684f533ff2e" CACHED_CONFIGUREVARS = "ac_cv_path_GDK_PIXBUF_QUERYLOADERS=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" @@ -41,5 +41,3 @@ FILES_rsvg = "${bindir}/rsvg* \ FILES_librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so" PIXBUF_PACKAGES = "librsvg-gtk" - -PIXBUFCACHE_SYSROOT_DEPS_append_class-native = " harfbuzz-native:do_populate_sysroot_setscene pango-native:do_populate_sysroot_setscene icu-native:do_populate_sysroot_setscene" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/libsecret/libsecret_0.18.4.bb b/import-layers/yocto-poky/meta/recipes-gnome/libsecret/libsecret_0.18.5.bb index beaaba03e..bcb3046dd 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/libsecret/libsecret_0.18.4.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/libsecret/libsecret_0.18.5.bb @@ -8,8 +8,8 @@ DEPENDS += "glib-2.0 libgcrypt gettext-native intltool-native" EXTRA_OECONF += "--disable-manpages" -SRC_URI[archive.md5sum] = "5190da1ee686437046bc10068f120d1d" -SRC_URI[archive.sha256sum] = "0f29b51698198e6999c91f4adce3119c8c457f546b133a85baea5ea9010a19ed" +SRC_URI[archive.md5sum] = "2d688825921313da8731313b0a7f394c" +SRC_URI[archive.sha256sum] = "9ce7bd8dd5831f2786c935d82638ac428fa085057cc6780aba0e39375887ccb3" # http://errors.yoctoproject.org/Errors/Details/20228/ ARM_INSTRUCTION_SET = "arm" @@ -21,5 +21,5 @@ do_configure_prepend() { # Secret-1: poky/build-mips64/tmp/work/mips64-poky-linux/libgpg-error/1.19-r0/libgpg-error-1.19/src/posix-lock.c:119: get_lock_object: Assertion `!"sizeof lock obj"' failed. # qemu: uncaught target signal 6 (Aborted) - core dumped -EXTRA_OECONF_append_mips64 = " --disable-introspection" +EXTRA_OECONF_append_mips64 = " --disable-introspection --disable-gtk-doc" diff --git a/import-layers/yocto-poky/meta/recipes-gnome/libwnck/libwnck3_3.14.1.bb b/import-layers/yocto-poky/meta/recipes-gnome/libwnck/libwnck3_3.20.1.bb index 495894b89..fd4ef6949 100644 --- a/import-layers/yocto-poky/meta/recipes-gnome/libwnck/libwnck3_3.14.1.bb +++ b/import-layers/yocto-poky/meta/recipes-gnome/libwnck/libwnck3_3.20.1.bb @@ -5,16 +5,15 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2" BPN = "libwnck" SECTION = "x11/libs" -DEPENDS = "gtk+3 gdk-pixbuf-native libxres" +DEPENDS = "intltool-native gtk+3 gdk-pixbuf-native libxres" PACKAGECONFIG ??= "startup-notification" PACKAGECONFIG[startup-notification] = "--enable-startup-notification,--disable-startup-notification,startup-notification" -inherit gnomebase gobject-introspection -SRC_URI[archive.md5sum] = "d96c0b74c4dc5fdae758964098603c90" -SRC_URI[archive.sha256sum] = "bb643c9c423c8aa79c59973ce27ce91d3b180d1e9907902278fb79391f52befa" +inherit gnomebase gobject-introspection gtk-doc +SRC_URI[archive.md5sum] = "487938d65d4bfae1f2501052b1bd7492" +SRC_URI[archive.sha256sum] = "1cb03716bc477058dfdf3ebfa4f534de3b13b1aa067fcd064d0b7813291cba72" inherit distro_features_check # libxres means x11 only REQUIRED_DISTRO_FEATURES = "x11" - |