# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ EAPI="5" GCONF_DEBUG="no" GNOME2_LA_PUNT="yes" PYTHON_COMPAT=( python2_7 ) VALA_MIN_API_VERSION="0.16" VALA_USE_DEPEND="vapigen" inherit gnome2 python-r1 vala DESCRIPTION="VNC viewer widget for GTK" HOMEPAGE="https://wiki.gnome.org/Projects/gtk-vnc" LICENSE="GPL-2" SLOT="0" KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-fbsd" IUSE="examples +gtk3 +introspection pulseaudio python sasl vala" REQUIRED_USE=" python? ( ${PYTHON_REQUIRED_USE} ) vala? ( gtk3 introspection ) " # libview is used in examples/gvncviewer -- no need # glib-2.30.1 needed to avoid linking failure due to .la files (bug #399129) COMMON_DEPEND=" >=dev-libs/glib-2.30.1:2 >=dev-libs/libgcrypt-1.4.2:0= dev-libs/libgpg-error >=net-libs/gnutls-2.12 >=x11-libs/cairo-1.2 >=x11-libs/gtk+-2.18:2 x11-libs/libX11 gtk3? ( >=x11-libs/gtk+-2.91.3:3 ) introspection? ( >=dev-libs/gobject-introspection-0.9.4 ) pulseaudio? ( media-sound/pulseaudio ) python? ( ${PYTHON_DEPS} >=dev-python/pygtk-2:2[${PYTHON_USEDEP}] ) sasl? ( dev-libs/cyrus-sasl ) " RDEPEND="${COMMON_DEPEND}" DEPEND="${COMMON_DEPEND} >=dev-lang/perl-5 >=dev-util/intltool-0.40 sys-devel/gettext virtual/pkgconfig vala? ( $(vala_depend) >=dev-libs/gobject-introspection-0.9.4 ) " # eautoreconf requires gnome-common GTK2_BUILDDIR="${WORKDIR}/${P}_gtk2" GTK3_BUILDDIR="${WORKDIR}/${P}_gtk3" src_prepare() { mkdir -p "${GTK2_BUILDDIR}" || die mkdir -p "${GTK3_BUILDDIR}" || die prepare_python() { mkdir -p "${BUILD_DIR}" || die } if use python; then python_foreach_impl prepare_python fi # Fix incorrect codegendir check: h2def.py is in pygobject, not pygtk, upstream bug#744393 sed -e 's/codegendir pygtk-2.0/codegendir pygobject-2.0/g' \ -i src/Makefile.* || die # libtool seems unable to find this via VPATH so help it sed -r "s:(gtkvnc_la_LIBADD =) libgtk-vnc-.*\.la:\1 ${GTK2_BUILDDIR}/src/libgtk-vnc-1.0.la:" \ -i src/Makefile.{am,in} || die vala_src_prepare gnome2_src_prepare } src_configure() { local myconf myconf=" $(use_with examples) \ $(use_enable introspection) \ $(use_with pulseaudio) \ $(use_with sasl) \ --with-coroutine=gthread \ --without-libview \ --disable-static \ --disable-vala" cd "${GTK2_BUILDDIR}" || die einfo "Running configure in ${GTK2_BUILDDIR}" ECONF_SOURCE="${S}" gnome2_src_configure ${myconf} \ --with-python=no \ --with-gtk=2.0 configure_python() { ECONF_SOURCE="${S}" gnome2_src_configure ${myconf} \ $(use_with python) \ --with-gtk=2.0 } if use python; then python_foreach_impl run_in_build_dir configure_python fi if use gtk3; then cd "${GTK3_BUILDDIR}" || die einfo "Running configure in ${GTK3_BUILDDIR}" # Python support is via gobject-introspection # Ex: from gi.repository import GtkVnc ECONF_SOURCE="${S}" gnome2_src_configure ${myconf} \ $(use_enable vala) \ --with-python=no \ --with-gtk=3.0 fi } src_compile() { cd "${GTK2_BUILDDIR}" || die einfo "Running make in ${GTK2_BUILDDIR}" gnome2_src_compile compile_python() { cd "${BUILD_DIR}"/src || die # CPPFLAGS set to help find includes for gvnc.override emake gtkvnc.la \ VPATH="${S}/src:${GTK2_BUILDDIR}/src:${BUILD_DIR}/src" \ CPPFLAGS="${CPPFLAGS} -I${GTK2_BUILDDIR}/src" } if use python; then python_foreach_impl run_in_build_dir compile_python fi if use gtk3; then cd "${GTK3_BUILDDIR}" || die einfo "Running make in ${GTK3_BUILDDIR}" gnome2_src_compile fi } src_test() { cd "${GTK2_BUILDDIR}" || die einfo "Running make check in ${GTK2_BUILDDIR}" default if use gtk3; then cd "${GTK3_BUILDDIR}" || die einfo "Running make check in ${GTK3_BUILDDIR}" default fi } src_install() { cd "${GTK2_BUILDDIR}" || die einfo "Running make install in ${GTK2_BUILDDIR}" gnome2_src_install install_python() { cd "${BUILD_DIR}"/src || die emake install-pyexecLTLIBRARIES DESTDIR="${D}" \ VPATH="${S}/src:${GTK2_BUILDDIR}/src:${BUILD_DIR}/src" \ CPPFLAGS="${CPPFLAGS} -I${GTK2_BUILDDIR}/src" } if use python; then python_foreach_impl run_in_build_dir install_python fi if use gtk3; then cd "${GTK3_BUILDDIR}" || die einfo "Running make install in ${GTK3_BUILDDIR}" gnome2_src_install fi }