app-vim/eruby-syntax: amd64 stable wrt bug #646598
[gentoo.git] / net-p2p / eiskaltdcpp / eiskaltdcpp-2.2.10.ebuild
1 # Copyright 1999-2017 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=6
5
6 PLOCALES="be bg cs de el en es eu fr hu it pl pt_BR ru sk sr@latin sr sv_SE uk vi zh_CN"
7
8 inherit cmake-utils gnome2-utils l10n xdg-utils
9 [[ ${PV} = *9999* ]] && inherit git-r3
10
11 DESCRIPTION="Qt/DC++ based client for DirectConnect and ADC protocols"
12 HOMEPAGE="https://github.com/eiskaltdcpp/eiskaltdcpp"
13
14 LICENSE="GPL-2 GPL-3"
15 SLOT="0"
16 IUSE="cli daemon dbus +dht examples idn -javascript json lua +minimal pcre +qt5 spell sqlite upnp -xmlrpc"
17
18 REQUIRED_USE="
19         ?? ( json xmlrpc )
20         cli? ( ^^ ( json xmlrpc ) )
21         dbus? ( qt5 )
22         javascript? ( qt5 )
23         spell? ( qt5 )
24         sqlite? ( qt5 )
25 "
26
27 if [[ ${PV} != *9999* ]]; then
28         SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
29         KEYWORDS="~amd64 ~x86"
30 else
31         EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
32         KEYWORDS=""
33 fi
34
35 RDEPEND="
36         app-arch/bzip2
37         dev-libs/boost:=
38         dev-libs/openssl:0=
39         sys-apps/attr
40         sys-libs/zlib
41         virtual/libiconv
42         virtual/libintl
43         cli? (
44                 dev-lang/perl
45                 dev-perl/Data-Dump
46                 dev-perl/Term-ShellUI
47                 virtual/perl-Getopt-Long
48                 json? ( dev-perl/JSON-RPC )
49                 xmlrpc? ( dev-perl/RPC-XML )
50         )
51         daemon? ( xmlrpc? ( dev-libs/xmlrpc-c[abyss,cxx] ) )
52         idn? ( net-dns/libidn )
53         lua? ( dev-lang/lua:= )
54         pcre? ( dev-libs/libpcre )
55         qt5? (
56                 dev-qt/qtconcurrent:5
57                 dev-qt/qtcore:5
58                 dev-qt/qtgui:5
59                 dev-qt/qtmultimedia:5
60                 dev-qt/qtnetwork:5
61                 dev-qt/qtwidgets:5
62                 dev-qt/qtxml:5
63                 dbus? ( dev-qt/qtdbus:5 )
64                 javascript? (
65                         dev-qt/qtdeclarative:5
66                         dev-qt/qtscript:5
67                 )
68                 spell? ( app-text/aspell )
69                 sqlite? ( dev-qt/qtsql:5[sqlite] )
70         )
71         upnp? ( net-libs/miniupnpc )
72 "
73 DEPEND="${RDEPEND}
74         sys-devel/gettext
75         virtual/pkgconfig
76         qt5? ( dev-qt/linguist-tools:5 )
77 "
78
79 DOCS=( AUTHORS ChangeLog.txt )
80
81 PATCHES=(
82         "${FILESDIR}"/${P}-ipv6_upnp.patch
83         "${FILESDIR}"/${P}-miniupnpc{1,2}.patch
84         "${FILESDIR}"/${P}-openssl-1.1.patch
85         "${FILESDIR}"/${P}-tray-close.patch
86 )
87
88 src_prepare() {
89         cmake-utils_src_prepare
90         l10n_find_plocales_changes 'eiskaltdcpp-qt/translations' '' '.ts'
91 }
92
93 src_configure() {
94         local mycmakeargs=(
95                 -DLIB_INSTALL_DIR="$(get_libdir)"
96                 -Dlinguas="$(l10n_get_locales)"
97                 -DLOCAL_MINIUPNP=OFF
98                 -DUSE_GTK=OFF
99                 -DUSE_GTK3=OFF
100                 -DUSE_LIBGNOME2=OFF
101                 -DUSE_LIBCANBERRA=OFF
102                 -DUSE_LIBNOTIFY=OFF
103                 -DUSE_QT=OFF
104                 -DUSE_QT_QML=OFF
105                 -DNO_UI_DAEMON=$(usex daemon)
106                 -DDBUS_NOTIFY=$(usex dbus)
107                 -DWITH_DHT=$(usex dht)
108                 -DWITH_EXAMPLES=$(usex examples)
109                 -DUSE_IDNA=$(usex idn)
110                 -DUSE_JS=$(usex javascript)
111                 -DLUA_SCRIPT=$(usex lua)
112                 -DWITH_LUASCRIPTS=$(usex lua)
113                 -DWITH_DEV_FILES=$(usex !minimal)
114                 -DPERL_REGEX=$(usex pcre)
115                 -DUSE_QT5=$(usex qt5)
116                 -DWITH_EMOTICONS=$(usex qt5)
117                 -DWITH_SOUNDS=$(usex qt5)
118                 -DUSE_ASPELL=$(usex spell)
119                 -DUSE_QT_SQLITE=$(usex sqlite)
120                 -DUSE_MINIUPNP=$(usex upnp)
121         )
122         if use cli; then
123                 mycmakeargs+=(
124                         -DUSE_CLI_JSONRPC=$(usex json)
125                         -DUSE_CLI_XMLRPC=$(usex xmlrpc)
126                 )
127         fi
128         if use daemon; then
129                 mycmakeargs+=(
130                         -DJSONRPC_DAEMON=$(usex json)
131                         -DXMLRPC_DAEMON=$(usex xmlrpc)
132                 )
133         fi
134         cmake-utils_src_configure
135 }
136
137 pkg_preinst() {
138         gnome2_icon_savelist
139 }
140
141 pkg_postinst() {
142         xdg_desktop_database_update
143         gnome2_icon_cache_update
144 }
145
146 pkg_postrm() {
147         xdg_desktop_database_update
148         gnome2_icon_cache_update
149 }