diff options
Diffstat (limited to 'net-im/toxic/toxic-0.15.1.ebuild')
-rw-r--r-- | net-im/toxic/toxic-0.15.1.ebuild | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/net-im/toxic/toxic-0.15.1.ebuild b/net-im/toxic/toxic-0.15.1.ebuild new file mode 100644 index 000000000000..e222cc1b1c47 --- /dev/null +++ b/net-im/toxic/toxic-0.15.1.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10,11,12} ) + +inherit python-single-r1 xdg + +DESCRIPTION="A curses-based client for Tox" +HOMEPAGE="https://github.com/JFreegman/toxic" +SRC_URI="https://github.com/JFreegman/toxic/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+audio-notify debug experimental games llvm notification png python qrcode +sound +video +X" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) + video? ( sound X ) " + +BDEPEND="dev-libs/libconfig:= + virtual/pkgconfig" + +RDEPEND=">=net-libs/tox-0.2.19:= + net-misc/curl + sys-kernel/linux-headers + sys-libs/ncurses:= + audio-notify? ( + media-libs/freealut + media-libs/openal + ) + debug? ( llvm? ( sys-devel/llvm:* ) ) + experimental? ( net-libs/tox[experimental] ) + notification? ( x11-libs/libnotify ) + python? ( ${PYTHON_DEPS} ) + qrcode? ( + media-gfx/qrencode:= + png? ( media-libs/libpng ) + ) + sound? ( + media-libs/openal + net-libs/tox:=[av] + ) + X? ( + x11-base/xorg-proto + x11-libs/libX11 + )" + +DEPEND="${RDEPEND}" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + #prevent man files from being compressed. + sed -i -e "/gzip/d" cfg/targets/install.mk || die "Unable to prevent compression of man pages." + #Fix incorrect linkage of pthread (may be optional) + sed -i -e 's/pthread/lpthread/g' Makefile || die "Unable to fix linking of pthread." + #Makefile sets some required CFLAGS only if CFLAGS variable is undefined, + #This line changes the "lazy set if absent" assignment to a "lazy set" assignment. + #look below in src_configure to see how CFLAGS are passed to the makefile in USER_CFLAGS + sed -i -e 's/?=/=/g' Makefile || die "Unable to change assignment of CFLAGS and LDFLAGS" + #Fix incomplete invocation of python-config + sed -i -e "s/--ldflags/--ldflags --embed/" cfg/checks/python.mk || die "Unable to fix python linking" +} + +src_configure() { + if ! use audio-notify; then + export DISABLE_SOUND_NOTIFY=1 + fi + if use debug; then + export ENABLE_RELEASE=0 + if use llvm; then + export ENABLE_ASAN=1 + fi + fi + if use experimental; then + export ENABLE_TOX_EXPERIMENTAL=1 + fi + if ! use games; then + export DISABLE_GAMES=1 + fi + if ! use notification; then + export DISABLE_DESKTOP_NOTIFY=1 + fi + if ! use png; then + export DISABLE_QRPNG=1 + fi + if use python; then + export ENABLE_PYTHON=1 + fi + if ! use qrcode; then + export DISABLE_QRCODE=1 + fi + if ! use sound; then + export DISABLE_AV=1 + fi + if ! use video; then + export DISABLE_VI=1 + fi + if ! use X; then + export DISABLE_X11=1 + fi + #Including strings.h fixes undefined reference to strcasecmp() + #Including linux/limits.h fixes undefinded reference to NAME_MAX and PATH_MAX macros + #Defining _GNU_SOURCE fixes undefined reference to strcasestr() + export USER_CFLAGS="${CFLAGS} -include strings.h -include linux/limits.h -D _GNU_SOURCE" + export USER_LDFLAGS="${LDFLAGS}" + #set install directory to /usr. + sed -i -e "s,/usr/local,${EPREFIX}/usr,g" cfg/global_vars.mk || die "Failed to set install directory!" +} + +src_install() { + default + if ! use audio-notify; then + rm -r "${ED}"/usr/share/${PN}/sounds || die "Could not remove sounds directory" + fi +} |