diff options
Diffstat (limited to 'net-p2p/retroshare/retroshare-0.6.9999.ebuild')
-rw-r--r-- | net-p2p/retroshare/retroshare-0.6.9999.ebuild | 134 |
1 files changed, 52 insertions, 82 deletions
diff --git a/net-p2p/retroshare/retroshare-0.6.9999.ebuild b/net-p2p/retroshare/retroshare-0.6.9999.ebuild index 2a62dc7dc3dc..0db2373b5c22 100644 --- a/net-p2p/retroshare/retroshare-0.6.9999.ebuild +++ b/net-p2p/retroshare/retroshare-0.6.9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -10,135 +10,105 @@ DESCRIPTION="P2P private sharing application" HOMEPAGE="http://retroshare.net" # pegmarkdown can also be used with MIT -LICENSE="GPL-2 GPL-3 Apache-2.0 LGPL-2.1" +LICENSE="AGPL-3 GPL-2 GPL-3 Apache-2.0 LGPL-2.1" SLOT="0" KEYWORDS="" -IUSE="cli feedreader gnome-keyring +gui voip" +IUSE="cli control-socket gnome-keyring +gui settings-api +sqlcipher +webui" REQUIRED_USE=" || ( cli gui ) - feedreader? ( gui ) - voip? ( gui )" + settings-api? ( || ( control-socket webui ) )" RDEPEND=" app-arch/bzip2 - dev-db/sqlcipher - dev-libs/openssl:0 - dev-qt/qtcore:5 - dev-qt/qtmultimedia:5 - dev-qt/qtnetwork:5 - dev-qt/qtprintsupport:5 - dev-qt/qtscript:5 - dev-qt/qtxml:5 - net-libs/libmicrohttpd - net-libs/libupnp:0 + dev-libs/openssl:0= + >=dev-libs/rapidjson-1.1.0 + net-libs/libupnp:0= sys-libs/zlib + control-socket? ( dev-qt/qtnetwork:5 ) gnome-keyring? ( gnome-base/libgnome-keyring ) - feedreader? ( - dev-libs/libxml2 - dev-libs/libxslt - net-misc/curl - ) gui? ( - dev-qt/designer:5 + dev-qt/qtcore:5 + dev-qt/qtmultimedia:5 + dev-qt/qtnetwork:5 + dev-qt/qtprintsupport:5 + dev-qt/qtscript:5 + dev-qt/qtxml:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 dev-qt/qtx11extras:5 x11-libs/libX11 x11-libs/libXScrnSaver ) - voip? ( - media-libs/opencv[-qt4(-)] - media-libs/speex - virtual/ffmpeg[encode] - )" -DEPEND="${RDEPEND} - virtual/pkgconfig" - -src_prepare() { - local dir - - sed -i \ - -e "s|/usr/lib/retroshare/extensions6/|/usr/$(get_libdir)/${PN}/extensions6/|" \ - libretroshare/src/rsserver/rsinit.cc \ - || die "sed on libretroshare/src/rsserver/rsinit.cc failed" + settings-api? ( dev-qt/qtcore:5 ) + sqlcipher? ( dev-db/sqlcipher ) + !sqlcipher? ( dev-db/sqlite:3 ) + webui? ( net-libs/libmicrohttpd )" - rs_src_dirs="libbitdht/src openpgpsdk/src libresapi/src libretroshare/src supportlibs/pegmarkdown" - use cli && rs_src_dirs="${rs_src_dirs} retroshare-nogui/src" - use feedreader && rs_src_dirs="${rs_src_dirs} plugins/FeedReader" - use gui && rs_src_dirs="${rs_src_dirs} retroshare-gui/src" - use voip && rs_src_dirs="${rs_src_dirs} plugins/VOIP" - - # Force linking to sqlcipher ONLY - sed -i \ - -e '/isEmpty(SQLCIPHER_OK) {/aerror(libsqlcipher not found)' \ - retroshare-gui/src/retroshare-gui.pro \ - retroshare-nogui/src/retroshare-nogui.pro || die 'sed on retroshare-gui/src/retroshare-gui.pro failed' - - # Avoid openpgpsdk false dependency on qtgui - sed -i '2iQT -= gui' openpgpsdk/src/openpgpsdk.pro || die - - eapply_user -} +DEPEND="${RDEPEND} + gui? ( dev-qt/designer:5 ) + dev-qt/qtcore:5 + virtual/pkgconfig +" src_configure() { - for dir in ${rs_src_dirs} ; do - pushd "${S}/${dir}" >/dev/null || die - eqmake5 $(use gnome-keyring && echo CONFIG+=rs_autologin) - popd >/dev/null || die - done -} + local qConfigs=() -src_compile() { - local dir - - for dir in ${rs_src_dirs} ; do - emake -C "${dir}" - done + qConfigs+=( $(usex cli '' 'no_')retroshare_nogui ) + qConfigs+=( $(usex control-socket '' 'no_')libresapilocalserver ) + qConfigs+=( $(usex gnome-keyring '' 'no_')rs_autologin ) + qConfigs+=( $(usex gui '' 'no_')retroshare_gui ) + qConfigs+=( $(usex settings-api '' 'no_')libresapi_settings ) + qConfigs+=( $(usex sqlcipher '' 'no_')sqlcipher ) + qConfigs+=( $(usex webui '' 'no_')libresapihttpserver ) - unset rs_src_dirs + eqmake5 CONFIG+="${qConfigs[*]}" } src_install() { - local i - local extension_dir="/usr/$(get_libdir)/${PN}/extensions6/" - use cli && dobin retroshare-nogui/src/retroshare-nogui use gui && dobin retroshare-gui/src/retroshare - exeinto "${extension_dir}" - use feedreader && doexe plugins/FeedReader/*.so* - use voip && doexe plugins/VOIP/*.so* - insinto /usr/share/retroshare doins libbitdht/src/bitdht/bdboot.txt - doins -r libresapi/src/webui + use webui && doins -r libresapi/src/webui dodoc README.md make_desktop_entry retroshare + for i in 24 48 64 128 ; do doicon -s ${i} "data/${i}x${i}/apps/retroshare.png" done } +pkg_pretend() { + if ! use sqlcipher; then + ewarn "You have disabled GXS database encryption, ${PN} will use SQLite" + ewarn "instead of SQLCipher for GXS databases." + ewarn "Builds using SQLite and builds using SQLCipher have incompatible" + ewarn "database format, so you will need to manually delete GXS" + ewarn "database (loosing all your GXS data and identities) when you" + ewarn "toggle sqlcipher USE flag." + fi +} + pkg_preinst() { local ver for ver in ${REPLACING_VERSIONS}; do if ! version_is_at_least 0.5.9999 ${ver}; then - elog "You are upgrading from Retroshare 0.5.* to ${PV}" - elog "Version 0.6.* is backward-incompatible with 0.5 branch" - elog "and clients with 0.6.* can not connect to clients that have 0.5.*" - elog "It's recommended to drop all your configuration and either" - elog "generate a new certificate or import existing from a backup" + ewarn "You are upgrading from Retroshare 0.5.* to ${PV}" + ewarn "Version 0.6.* is backward-incompatible with 0.5 branch" + ewarn "and clients with 0.6.* can not connect to clients that have 0.5.*" + ewarn "It's recommended to drop all your configuration and either" + ewarn "generate a new certificate or import existing from a backup" break fi - if version_is_at_least 0.6.0 ${ver}; then - elog "Main executable was renamed upstream from RetroShare06 to retroshare" + if version_is_at_least 0.6.0 ${ver} && ! version_is_at_least 0.6.4 ${ver}; then + elog "Main executable has been renamed upstream from RetroShare06 to retroshare" break fi done - gnome2_icon_savelist } pkg_postinst() { |