diff options
Diffstat (limited to 'net-libs/tox/tox-0.2.11-r1.ebuild')
-rw-r--r-- | net-libs/tox/tox-0.2.11-r1.ebuild | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/net-libs/tox/tox-0.2.11-r1.ebuild b/net-libs/tox/tox-0.2.11-r1.ebuild new file mode 100644 index 000000000000..e508bc927f6d --- /dev/null +++ b/net-libs/tox/tox-0.2.11-r1.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake systemd + +MY_P="c-toxcore-${PV}" +DESCRIPTION="Encrypted P2P, messaging, and audio/video calling platform" +HOMEPAGE="https://tox.chat" +SRC_URI="https://github.com/TokTok/c-toxcore/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0/0.2" +KEYWORDS="amd64 ~arm x86" +IUSE="+av daemon dht-node ipv6 log-debug +log-error log-info log-trace log-warn static-libs test" + +REQUIRED_USE="?? ( log-debug log-error log-info log-trace log-warn ) + daemon? ( dht-node )" +RESTRICT="!test? ( test )" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + >dev-libs/libsodium-0.6.1:=[asm,urandom,-minimal] + av? ( + media-libs/libvpx:= + media-libs/opus + ) + daemon? ( dev-libs/libconfig:= )" +RDEPEND=" + ${DEPEND} + daemon? ( + acct-group/tox + acct-user/tox + )" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + cmake_src_prepare + #remove faulty tests + for testname in bootstrap lan_discovery save_compatibility; do + sed -i -e "/^auto_test(${testname})$/d" CMakeLists.txt || die + done +} + +src_configure() { + local mycmakeargs=( + -DAUTOTEST=$(usex test) + -DBOOTSTRAP_DAEMON=$(usex daemon) + -DBUILD_MISC_TESTS=$(usex test) + -DBUILD_TOXAV=$(usex av) + -DDHT_BOOTSTRAP=$(usex dht-node) + -DENABLE_SHARED=ON + -DENABLE_STATIC=$(usex static-libs) + -DMUST_BUILD_TOXAV=$(usex av)) + if use test; then + mycmakeargs+=( + -DTEST_TIMEOUT_SECONDS=120 + -DUSE_IPV6=$(usex ipv6)) + else + mycmakeargs+=(-DUSE_IPV6=OFF) + fi + + if use log-trace; then + mycmakeargs+=(-DMIN_LOGGER_LEVEL="TRACE") + elif use log-debug; then + mycmakeargs+=(-DMIN_LOGGER_LEVEL="DEBUG") + elif use log-info; then + mycmakeargs+=(-DMIN_LOGGER_LEVEL="INFO") + elif use log-warn; then + mycmakeargs+=(-DMIN_LOGGER_LEVEL="WARNING") + elif use log-error; then + mycmakeargs+=(-DMIN_LOGGER_LEVEL="ERROR") + else + mycmakeargs+=(-DMIN_LOGGER_LEVEL="") + einfo "Logging disabled" + fi + + cmake_src_configure +} + +src_test() { + cmake_src_test -j1 +} + +src_install() { + cmake_src_install + + if use daemon; then + newinitd "${FILESDIR}"/initd tox-dht-daemon + newconfd "${FILESDIR}"/confd tox-dht-daemon + insinto /etc + doins "${FILESDIR}"/tox-bootstrapd.conf + systemd_dounit "${FILESDIR}"/tox-bootstrapd.service + fi +} + +pkg_postinst() { + if use dht-node; then + ewarn "The QA notice regarding libmisc_tools.so is known by the upstream" + ewarn "developers and is on their TODO list." + ewarn "" + ewarn "There is currently an unresolved issue with tox DHT Bootstrap node" + ewarn "that causes the program to be built with a null library reference." + ewarn "This causes an infinite loop for certain revdep-rebuild commands." + ewarn "If you aren't running a node, please consider disabling the dht-node use flag." + fi + if use daemon; then + if [[ -f ${EROOT}/var/lib/tox-dht-bootstrap/key ]]; then + ewarn "Backwards compatability with the bootstrap daemon might have been" + ewarn "broken a while ago. To resolve this issue, REMOVE the following files:" + ewarn " ${EROOT}/var/lib/tox-dht-bootstrap/key" + ewarn " ${EROOT}/etc/tox-bootstrapd.conf" + ewarn " ${EROOT}/run/tox-dht-bootstrap/tox-dht-bootstrap.pid" + ewarn "Then just re-emerge net-libs/tox" + fi + fi +} |