dev-libs/libgit2-glib: EAPI-7 port, gtk-doc support, ebuild touchups
authorMart Raudsepp <leio@gentoo.org>
Sat, 25 Jan 2020 09:00:35 +0000 (11:00 +0200)
committerMart Raudsepp <leio@gentoo.org>
Sun, 26 Jan 2020 18:00:24 +0000 (20:00 +0200)
* Port to EAPI-7
* Add gtk-doc build support - appears to work just fine for me
* Use xdg.eclass for bringing back proper env reset after meson port
* Use meson_use helper instead of usex
* Depend on newer gobject-introspection for working meson support
  (no practical difference as older are gone)

Closes: https://bugs.gentoo.org/670400
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio@gentoo.org>
dev-libs/libgit2-glib/libgit2-glib-0.28.0.1-r1.ebuild [new file with mode: 0644]

diff --git a/dev-libs/libgit2-glib/libgit2-glib-0.28.0.1-r1.ebuild b/dev-libs/libgit2-glib/libgit2-glib-0.28.0.1-r1.ebuild
new file mode 100644 (file)
index 0000000..7c5113f
--- /dev/null
@@ -0,0 +1,62 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python{3_6,3_7} )
+VALA_USE_DEPEND="vapigen"
+
+inherit gnome.org meson python-r1 vala xdg
+
+DESCRIPTION="Git library for GLib"
+HOMEPAGE="https://wiki.gnome.org/Projects/Libgit2-glib"
+
+LICENSE="LGPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gtk-doc python +ssh +vala"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# libgit2-glib is now compatible with SOVERSION 26..28 of libgit2.
+RDEPEND="
+       >=dev-libs/gobject-introspection-1.54:=
+       >=dev-libs/glib-2.44.0:2
+       <dev-libs/libgit2-0.29:0=[ssh?]
+       >=dev-libs/libgit2-0.26.0:0
+       python? (
+               ${PYTHON_DEPS}
+               dev-python/pygobject:3[${PYTHON_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       dev-util/glib-utils
+       virtual/pkgconfig
+       gtk-doc? ( dev-util/gtk-doc
+               app-text/docbook-xml-dtd:4.1.2 )
+       vala? ( $(vala_depend) )
+"
+
+src_prepare() {
+       xdg_src_prepare
+       use vala && vala_src_prepare
+}
+
+src_configure() {
+       local emesonargs=(
+               $(meson_use gtk-doc gtk_doc)
+               -Dintrospection=true
+               -Dpython=false # we install python scripts manually
+               $(meson_use ssh)
+               $(meson_use vala vapi)
+       )
+
+       meson_src_configure
+}
+
+src_install() {
+       meson_src_install
+
+       if use python ; then
+               python_moduleinto gi.overrides
+               python_foreach_impl python_domodule libgit2-glib/Ggit.py
+       fi
+}