From db39fc5b247db1a1de751ba79b8ac1bda4a5c050 Mon Sep 17 00:00:00 2001 From: Gluzskiy Alexandr Date: Sun, 24 Jun 2018 19:44:59 +0300 Subject: retrosahre-scm --- packages/net-p2p/retroshare/retroshare.exlib | 131 +++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 packages/net-p2p/retroshare/retroshare.exlib (limited to 'packages/net-p2p/retroshare/retroshare.exlib') diff --git a/packages/net-p2p/retroshare/retroshare.exlib b/packages/net-p2p/retroshare/retroshare.exlib new file mode 100644 index 0000000..3c2d115 --- /dev/null +++ b/packages/net-p2p/retroshare/retroshare.exlib @@ -0,0 +1,131 @@ +# Copyright 2013 Ankur Kothari +# Distributed under the terms of the GNU General Public License v2 + +require flag-o-matic +require github [ user=RetroShare project=RetroShare tag=v${PV} ] +require qmake [ slot=5 ] +require gtk-icon-cache freedesktop-desktop + +export_exlib_phases src_configure src_install pkg_postinst pkg_postrm + +SUMMARY="A decentralized, private and secure commmunication and sharing platform" +DESCRIPTION=" +RetroShare is basically a platform that establishes encrypted connections +between authenticated friends. This connection is used for various +communication services and filesharing. It is independent of any corporate +system or central servers, all data is only sent to friends and in some cases +relayed by them to their friends, making RetroShare a decentralised Social +Sharing Network designed For the People. Encrypted communication ensures that +all shared information is only known to you and your friends. + +Communication services in RetroShare: + * Private chat with friends + * Private or public chat lobbies, that allow chatting with friends + and friends of friends + * Messages to friends + * Forums + * Voice over IP +" +HOMEPAGE="https://retroshare.github.io/" + +LICENCES="GPL-2" +SLOT="0" +MYOPTIONS=" + ( providers: libressl openssl ) [[ number-selected = exactly-one ]] + ( providers: ffmpeg libav ) [[ number-selected = exactly-one ]] + sqlcipher + plugins +" + +DEPENDENCIES=" + build: + virtual/pkg-config + build+run: + sqlcipher? ( app-crypt/sqlcipher ) + dev-libs/libxml2:2.0 + dev-libs/libxslt + dev-libs/protobuf + gnome-desktop/libgnome-keyring:1 + plugins? ( media-libs/opencv + media-libs/speex + media-libs/speexdsp + providers:ffmpeg? ( media/ffmpeg ) + providers:libav? ( media/libav ) + ) + net-libs/libmicrohttpd + net-libs/libssh + net-libs/libupnp + net-misc/curl + x11-libs/libX11 + x11-libs/libXScrnSaver + x11-libs/qtbase:5 + x11-libs/qtmultimedia:5 + x11-libs/qttools:5 + x11-libs/qtx11extras:5 + providers:libressl? ( dev-libs/libressl:= ) + providers:openssl? ( dev-libs/openssl ) +" + +EQMAKE_PARAMS=( + "CONFIG-=debug" + "CONFIG+=release" + "CONFIG-=c++11" +) + +DEFAULT_SRC_PREPARE_PATCHES+=( + "${FILES}"/cflags.patch + "${FILES}"/clang.patch + "${FILES}"/disable_key_array_redraw.patch + "${FILES}"/hidden_service.patch +) + +retroshare_src_configure(){ + # weird speex failures, also see + # https://github.com/RetroShare/RetroShare/issues/393 + append-flags -DHAVE_STDINT_H + + # fix hardcoded extension directory + edo sed -i \ + -e "s|/usr/lib/retroshare/extensions6/|/usr/$(exhost --target)/lib/${PN}/extensions6/|" \ + libretroshare/src/rsserver/rsinit.cc + option sqlcipher || EQMAKE_PARAMS+=( "CONFIG+=no_sqlcipher" ) + option plugins || EQMAKE_PARAMS+=( "CONFIG+=no_retroshare_plugins" ) + + eqmake \ + BIN_DIR="/usr/$(exhost --target)/bin" \ + LIB_DIR="/usr/$(exhost --target)/lib" \ + PLUGIN_DIR="/usr/$(exhost --target)/lib/${PN}/extensions6/" \ + INC_DIR="/usr/$(exhost --target)/include" \ + RetroShare.pro +} + +retroshare_src_install() { + emake INSTALL_ROOT="${IMAGE}" install + + # overwrite desktop file + insinto /usr/share/applications + hereins ${PN}06.desktop <