net-libs/qxmpp: Simplify src_configure
[gentoo.git] / net-libs / qxmpp / qxmpp-9999.ebuild
1 # Copyright 1999-2018 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=6
5
6 EGIT_REPO_URI="https://github.com/qxmpp-project/qxmpp"
7
8 inherit git-r3 qmake-utils
9
10 DESCRIPTION="A cross-platform C++ XMPP client library based on the Qt framework"
11 HOMEPAGE="https://github.com/qxmpp-project/qxmpp/"
12
13 LICENSE="LGPL-2.1"
14 SLOT="0"
15 KEYWORDS=""
16 IUSE="debug doc opus +speex test theora vpx"
17
18 RDEPEND="
19         dev-qt/qtcore:5
20         dev-qt/qtnetwork:5[ssl]
21         dev-qt/qtxml:5
22         opus? ( media-libs/opus )
23         speex? ( media-libs/speex )
24         theora? ( media-libs/libtheora )
25         vpx? ( media-libs/libvpx )
26 "
27 DEPEND="${RDEPEND}
28         test? ( dev-qt/qttest:5 )
29 "
30
31 src_prepare(){
32         if ! use doc; then
33                 sed -i \
34                         -e '/SUBDIRS/s/doc//' \
35                         -e '/INSTALLS/d' \
36                         qxmpp.pro || die "sed for removing docs failed"
37         fi
38         if ! use test; then
39                 sed -i -e '/SUBDIRS/s/tests//' \
40                         qxmpp.pro || die "sed for removing tests failed"
41         fi
42         # There is no point in building examples. Also, they require dev-qt/qtgui
43         sed -i -e '/SUBDIRS/s/examples//' \
44                         qxmpp.pro || die "sed for removing examples failed"
45         default_src_prepare
46 }
47
48 src_configure() {
49         eqmake5 "${S}"/qxmpp.pro \
50                 PREFIX="${EPREFIX}/usr" \
51                 LIBDIR="$(get_libdir)" \
52                 QXMPP_USE_OPUS=$(usex opus 1 0) \
53                 QXMPP_USE_SPEEX=$(usex speex 1 0) \
54                 QXMPP_USE_THEORA=$(usex theora 1 0) \
55                 QXMPP_USE_VPX=$(usex vpx 1 0)
56 }
57
58 src_install() {
59         emake INSTALL_ROOT="${D}" install
60         einstalldocs
61         if use doc; then
62                 # Use proper path for documentation
63                 mv "${ED}"/usr/share/doc/${PN} "${ED}"/usr/share/doc/${PF} || die "doc mv failed"
64         fi
65 }
66
67 src_test() {
68         MAKEOPTS="-j1" # random tests fail otherwise
69         default_src_test
70 }