You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/net-libs/tox/tox-0.2.11-r1.ebuild

120 lines
3.1 KiB

# 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
}