diff options
| -rw-r--r-- | meta/recipes-support/vte/vte/0001-Add-m4-vapigen.m4.patch | 119 | ||||
| -rw-r--r-- | meta/recipes-support/vte/vte_0.44.2.bb | 25 |
2 files changed, 139 insertions, 5 deletions
diff --git a/meta/recipes-support/vte/vte/0001-Add-m4-vapigen.m4.patch b/meta/recipes-support/vte/vte/0001-Add-m4-vapigen.m4.patch new file mode 100644 index 0000000000..1c5630ed9c --- /dev/null +++ b/meta/recipes-support/vte/vte/0001-Add-m4-vapigen.m4.patch | |||
| @@ -0,0 +1,119 @@ | |||
| 1 | From 08ca1c48b25c332b75bba2a6b5d757da006e955b Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
| 3 | Date: Fri, 7 Oct 2016 16:27:57 +0300 | ||
| 4 | Subject: [PATCH] Add m4/vapigen.m4 | ||
| 5 | |||
| 6 | Building without vala will fail if we don't have a vapigen.m4. | ||
| 7 | |||
| 8 | Upstream-Status: Pending | ||
| 9 | Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
| 10 | --- | ||
| 11 | m4/vapigen.m4 | 96 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
| 12 | 1 file changed, 96 insertions(+) | ||
| 13 | create mode 100644 m4/vapigen.m4 | ||
| 14 | |||
| 15 | diff --git a/m4/vapigen.m4 b/m4/vapigen.m4 | ||
| 16 | new file mode 100644 | ||
| 17 | index 0000000..f2df12f | ||
| 18 | --- /dev/null | ||
| 19 | +++ b/m4/vapigen.m4 | ||
| 20 | @@ -0,0 +1,96 @@ | ||
| 21 | +dnl vapigen.m4 | ||
| 22 | +dnl | ||
| 23 | +dnl Copyright 2012 Evan Nemerson | ||
| 24 | +dnl | ||
| 25 | +dnl This library is free software; you can redistribute it and/or | ||
| 26 | +dnl modify it under the terms of the GNU Lesser General Public | ||
| 27 | +dnl License as published by the Free Software Foundation; either | ||
| 28 | +dnl version 2.1 of the License, or (at your option) any later version. | ||
| 29 | +dnl | ||
| 30 | +dnl This library is distributed in the hope that it will be useful, | ||
| 31 | +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 32 | +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 33 | +dnl Lesser General Public License for more details. | ||
| 34 | +dnl | ||
| 35 | +dnl You should have received a copy of the GNU Lesser General Public | ||
| 36 | +dnl License along with this library; if not, write to the Free Software | ||
| 37 | +dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||
| 38 | + | ||
| 39 | +# VAPIGEN_CHECK([VERSION], [API_VERSION], [FOUND-INTROSPECTION], [DEFAULT]) | ||
| 40 | +# -------------------------------------- | ||
| 41 | +# Check vapigen existence and version | ||
| 42 | +# | ||
| 43 | +# See http://live.gnome.org/Vala/UpstreamGuide for detailed documentation | ||
| 44 | +AC_DEFUN([VAPIGEN_CHECK], | ||
| 45 | +[ | ||
| 46 | + AC_BEFORE([GOBJECT_INTROSPECTION_CHECK],[$0]) | ||
| 47 | + AC_BEFORE([GOBJECT_INTROSPECTION_REQUIRE],[$0]) | ||
| 48 | + | ||
| 49 | + AC_ARG_ENABLE([vala], | ||
| 50 | + [AS_HELP_STRING([--enable-vala[=@<:@no/auto/yes@:>@]],[build Vala bindings @<:@default=]ifelse($4,,auto,$4)[@:>@])],,[ | ||
| 51 | + AS_IF([test "x$4" = "x"], [ | ||
| 52 | + enable_vala=auto | ||
| 53 | + ], [ | ||
| 54 | + enable_vala=$4 | ||
| 55 | + ]) | ||
| 56 | + ]) | ||
| 57 | + | ||
| 58 | + AS_CASE([$enable_vala], [no], [enable_vala=no], | ||
| 59 | + [yes], [ | ||
| 60 | + AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [ | ||
| 61 | + AC_MSG_ERROR([Vala bindings require GObject Introspection]) | ||
| 62 | + ]) | ||
| 63 | + ], [auto], [ | ||
| 64 | + AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [ | ||
| 65 | + enable_vala=no | ||
| 66 | + ]) | ||
| 67 | + ], [ | ||
| 68 | + AC_MSG_ERROR([Invalid argument passed to --enable-vala, should be one of @<:@no/auto/yes@:>@]) | ||
| 69 | + ]) | ||
| 70 | + | ||
| 71 | + AS_IF([test "x$2" = "x"], [ | ||
| 72 | + vapigen_pkg_name=vapigen | ||
| 73 | + ], [ | ||
| 74 | + vapigen_pkg_name=vapigen-$2 | ||
| 75 | + ]) | ||
| 76 | + AS_IF([test "x$1" = "x"], [ | ||
| 77 | + vapigen_pkg="$vapigen_pkg_name" | ||
| 78 | + ], [ | ||
| 79 | + vapigen_pkg="$vapigen_pkg_name >= $1" | ||
| 80 | + ]) | ||
| 81 | + | ||
| 82 | + PKG_PROG_PKG_CONFIG | ||
| 83 | + | ||
| 84 | + PKG_CHECK_EXISTS([$vapigen_pkg], [ | ||
| 85 | + AS_IF([test "$enable_vala" = "auto"], [ | ||
| 86 | + enable_vala=yes | ||
| 87 | + ]) | ||
| 88 | + ], [ | ||
| 89 | + AS_CASE([$enable_vala], [yes], [ | ||
| 90 | + AC_MSG_ERROR([$vapigen_pkg not found]) | ||
| 91 | + ], [auto], [ | ||
| 92 | + enable_vala=no | ||
| 93 | + ]) | ||
| 94 | + ]) | ||
| 95 | + | ||
| 96 | + AC_MSG_CHECKING([for vala]) | ||
| 97 | + | ||
| 98 | + AS_CASE([$enable_vala], | ||
| 99 | + [yes], [ | ||
| 100 | + VAPIGEN=`$PKG_CONFIG --variable=vapigen vapigen` | ||
| 101 | + VAPIGEN_MAKEFILE=`$PKG_CONFIG --variable=datadir vapigen`/vala/Makefile.vapigen | ||
| 102 | + AS_IF([test "x$2" = "x"], [ | ||
| 103 | + VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir vapigen` | ||
| 104 | + ], [ | ||
| 105 | + VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir_versioned vapigen` | ||
| 106 | + ]) | ||
| 107 | + ]) | ||
| 108 | + | ||
| 109 | + AC_MSG_RESULT([$enable_vala]) | ||
| 110 | + | ||
| 111 | + AC_SUBST([VAPIGEN]) | ||
| 112 | + AC_SUBST([VAPIGEN_VAPIDIR]) | ||
| 113 | + AC_SUBST([VAPIGEN_MAKEFILE]) | ||
| 114 | + | ||
| 115 | + AM_CONDITIONAL(ENABLE_VAPIGEN, test "x$enable_vala" = "xyes") | ||
| 116 | +]) | ||
| 117 | -- | ||
| 118 | 2.1.4 | ||
| 119 | |||
diff --git a/meta/recipes-support/vte/vte_0.44.2.bb b/meta/recipes-support/vte/vte_0.44.2.bb index a1204a3c3b..a0b671e05b 100644 --- a/meta/recipes-support/vte/vte_0.44.2.bb +++ b/meta/recipes-support/vte/vte_0.44.2.bb | |||
| @@ -5,24 +5,39 @@ DEPENDS = "glib-2.0 gtk+3 intltool-native" | |||
| 5 | 5 | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" | 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" |
| 7 | 7 | ||
| 8 | inherit gnomebase gtk-doc distro_features_check upstream-version-is-even vala gobject-introspection | 8 | inherit gnomebase gtk-doc distro_features_check upstream-version-is-even gobject-introspection |
| 9 | 9 | ||
| 10 | SRC_URI += "file://0001-Don-t-enable-stack-protection-by-default.patch" | 10 | # vapigen.m4 is required when vala is not present (but the one from vala should be used normally) |
| 11 | SRC_URI += "file://0001-Don-t-enable-stack-protection-by-default.patch \ | ||
| 12 | ${@bb.utils.contains('PACKAGECONFIG', 'vala', '', 'file://0001-Add-m4-vapigen.m4.patch', d) } \ | ||
| 13 | " | ||
| 11 | SRC_URI[archive.md5sum] = "eca8f8a9d9f9bb8e9d592d0acfeec015" | 14 | SRC_URI[archive.md5sum] = "eca8f8a9d9f9bb8e9d592d0acfeec015" |
| 12 | SRC_URI[archive.sha256sum] = "a1ea594814bb136a3a9a6c7656b46240571f6a198825c1111007fe99194b0949" | 15 | SRC_URI[archive.sha256sum] = "a1ea594814bb136a3a9a6c7656b46240571f6a198825c1111007fe99194b0949" |
| 13 | 16 | ||
| 14 | ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" | 17 | ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" |
| 15 | 18 | ||
| 19 | # Instead of "inherit vala" we do the relevant settings here so we can | ||
| 20 | # set DEPENDS based on PACKAGECONFIG. | ||
| 21 | |||
| 22 | # Our patched version of Vala looks in STAGING_DATADIR for .vapi files | ||
| 23 | export STAGING_DATADIR | ||
| 24 | # Upstream Vala >= 0.11 looks in XDG_DATA_DIRS for .vapi files | ||
| 25 | export XDG_DATA_DIRS = "${STAGING_DATADIR}" | ||
| 26 | |||
| 27 | # Package additional files | ||
| 28 | FILES_${PN}-dev += "${datadir}/vala/vapi/*" | ||
| 29 | |||
| 30 | PACKAGECONFIG ??= "" | ||
| 31 | PACKAGECONFIG[vala] = "--enable-vala,--disable-vala,vala-native vala" | ||
| 16 | PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls" | 32 | PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls" |
| 17 | 33 | ||
| 18 | CFLAGS += "-D_GNU_SOURCE" | 34 | CFLAGS += "-D_GNU_SOURCE" |
| 19 | 35 | ||
| 20 | # Enable vala only if gobject-introspection is enabled | 36 | EXTRA_OECONF = "--disable-test-application" |
| 21 | EXTRA_OECONF = "--enable-vala=auto --disable-test-application" | ||
| 22 | 37 | ||
| 23 | # libtool adds "-nostdlib" when g++ is used. This breaks PIE builds. | 38 | # libtool adds "-nostdlib" when g++ is used. This breaks PIE builds. |
| 24 | # Use libtool-cross (which has a hack to prevent that) instead. | 39 | # Use libtool-cross (which has a hack to prevent that) instead. |
| 25 | EXTRA_OEMAKE_class-target = "LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool" | 40 | EXTRA_OEMAKE_class-target = "LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool" |
| 26 | 41 | ||
| 27 | PACKAGES =+ "libvte" | 42 | PACKAGES =+ "libvte" |
| 28 | FILES_libvte = "${libdir}/*.so.*" | 43 | FILES_libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*" |
