# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ EAPI=5 inherit multilib qt4-r2 DESCRIPTION="Additional Qt APIs for mobile devices and desktop platforms" HOMEPAGE="http://doc-snapshots.qt.io/qt-mobility/index.html" SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${P}.tar.xz" LICENSE="LGPL-2.1" SLOT="0" KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86" QT_MOBILITY_MODULES=(connectivity +contacts feedback gallery location messaging multimedia organizer publishsubscribe sensors serviceframework systeminfo versit) IUSE="bluetooth debug doc networkmanager pulseaudio qml +tools ${QT_MOBILITY_MODULES[@]}" REQUIRED_USE=" || ( ${QT_MOBILITY_MODULES[@]#[+-]} ) versit? ( contacts ) " RDEPEND=" >=dev-qt/qtcore-4.8.0:4 connectivity? ( >=dev-qt/qtdbus-4.8.0:4 bluetooth? ( net-wireless/bluez ) ) contacts? ( >=dev-qt/qtgui-4.8.0:4 ) gallery? ( >=dev-qt/qtdbus-4.8.0:4 ) location? ( >=dev-qt/qtdeclarative-4.8.0:4 >=dev-qt/qtgui-4.8.0:4 >=dev-qt/qtsql-4.8.0:4[sqlite] ) messaging? ( >=net-libs/qmf-4.0 ) multimedia? ( >=dev-qt/qtgui-4.8.0-r4:4[xv] >=dev-qt/qtopengl-4.8.0:4 media-libs/alsa-lib media-libs/gstreamer:0.10 media-libs/gst-plugins-bad:0.10 media-libs/gst-plugins-base:0.10 x11-libs/libX11 x11-libs/libXext x11-libs/libXv pulseaudio? ( media-sound/pulseaudio[alsa] ) ) publishsubscribe? ( tools? ( >=dev-qt/qtgui-4.8.0:4 ) ) qml? ( >=dev-qt/qtdeclarative-4.8.0:4 ) serviceframework? ( >=dev-qt/qtdbus-4.8.0:4 >=dev-qt/qtsql-4.8.0:4[sqlite] tools? ( >=dev-qt/qtgui-4.8.0:4 ) ) systeminfo? ( >=dev-qt/qtdbus-4.8.0:4 >=dev-qt/qtgui-4.8.0:4 sys-apps/util-linux virtual/libudev:= x11-libs/libX11 x11-libs/libXrandr bluetooth? ( net-wireless/bluez ) networkmanager? ( net-misc/networkmanager ) ) versit? ( >=dev-qt/qtgui-4.8.0:4 ) " DEPEND="${RDEPEND} virtual/pkgconfig doc? ( >=dev-qt/qthelp-4.8.0:4 ) multimedia? ( sys-kernel/linux-headers x11-proto/videoproto ) systeminfo? ( sys-kernel/linux-headers ) " src_prepare() { qt4-r2_src_prepare # disable building of code snippets in doc/ # and translations (they aren't actually translated) sed -i -re '/SUBDIRS \+= (doc|translations)/d' qtmobility.pro || die # fix automagic dependency on qt-declarative if ! use qml; then sed -i -e '/SUBDIRS += declarative/d' plugins/plugins.pro || die fi } src_configure() { # figure out which modules to build local modules= for mod in "${QT_MOBILITY_MODULES[@]#[+-]}"; do use ${mod} && modules+="${mod} " done # custom configure script local myconf=( ./configure -prefix "${EPREFIX}/usr" -headerdir "${EPREFIX}/usr/include/qt4" -libdir "${EPREFIX}/usr/$(get_libdir)/qt4" -plugindir "${EPREFIX}/usr/$(get_libdir)/qt4/plugins" $(use debug && echo -debug || echo -release) $(use doc || echo -no-docs) $(use tools || echo -no-tools) -modules "${modules}" ) echo "${myconf[@]}" "${myconf[@]}" || die "configure failed" # fix automagic dependency on bluez if ! use bluetooth; then sed -i -e '/^bluez_enabled =/s:yes:no:' config.pri || die fi # fix automagic dependency on networkmanager if ! use networkmanager; then sed -i -e '/^networkmanager_enabled =/s:yes:no:' config.pri || die fi # fix automagic dependency on pulseaudio if ! use pulseaudio; then sed -i -e '/^pulseaudio_enabled =/s:yes:no:' config.pri || die fi eqmake4 -recursive } src_compile() { qt4-r2_src_compile use doc && emake docs } src_install() { qt4-r2_src_install if use doc; then dodoc -r doc/html dodoc doc/qch/qtmobility.qch docompress -x /usr/share/doc/${PF}/qtmobility.qch fi }