summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosiah Mullins <JoMull01@protonmail.com>2024-04-24 19:27:04 -0400
committerPacho Ramos <pacho@gentoo.org>2024-07-30 21:01:43 +0200
commit6669677d2ec2675dd3368ea32b2dd1ded0d6d1d6 (patch)
tree34d64e34c6563a49b2bbf326107b5ab7725fdd54
parentnet-im/toxic: Added python 3.12 to PYTHON_COMPAT (diff)
downloadgentoo-6669677d2ec2675dd3368ea32b2dd1ded0d6d1d6.tar.gz
gentoo-6669677d2ec2675dd3368ea32b2dd1ded0d6d1d6.tar.bz2
gentoo-6669677d2ec2675dd3368ea32b2dd1ded0d6d1d6.zip
net-im/toxic: Bump to version 0.15.1
The biggest change in the ebuild is to modify CFLAGS directly instead of using a patch file to correct some incorrect include statements in some header files. Signed-off-by: Josiah Mullins <JoMull01@protonmail.com> Closes: https://github.com/gentoo/gentoo/pull/36410 Signed-off-by: Pacho Ramos <pacho@gentoo.org>
-rw-r--r--net-im/toxic/Manifest1
-rw-r--r--net-im/toxic/metadata.xml1
-rw-r--r--net-im/toxic/toxic-0.15.1.ebuild120
3 files changed, 122 insertions, 0 deletions
diff --git a/net-im/toxic/Manifest b/net-im/toxic/Manifest
index 96ac83a8f936..b633a197066d 100644
--- a/net-im/toxic/Manifest
+++ b/net-im/toxic/Manifest
@@ -1 +1,2 @@
DIST toxic-0.11.3.tar.gz 1197252 BLAKE2B 4a7a3c4eed270330c6d79ad400778debda1b98b66beed1196cf4e36858d300141c468c4963d012b77d8232f7b3b3b419138505e46098bfac3cde48e9bc0b0e1c SHA512 2c8408004d9644b52cbe9477d7c486622fcef52f1d10a1bcdf7555656a2f2e1bd4c6f0594a7b0b3156fd6908c470c5b41c55e6e0914c3eb2067614013f0f259f
+DIST toxic-0.15.1.tar.gz 1246436 BLAKE2B 5af9d978957f0da687b53440b45cabb29da65ba894238b2b41427c3137b1cb764a9db489af9faa442c2fe057f1660e6c3a4303db434bd04b9dce87c07281b10d SHA512 8bb6eef248413b00124f39b798bdaf029f8c4a13c0faf0be8f061bd0b27369ae1b44e052efd25353e5bf59724a2b02892eb95fdad7a0f8d7540212475f8a17b6
diff --git a/net-im/toxic/metadata.xml b/net-im/toxic/metadata.xml
index cdcd3b5220b7..bcfbe7a46e8b 100644
--- a/net-im/toxic/metadata.xml
+++ b/net-im/toxic/metadata.xml
@@ -21,6 +21,7 @@
</longdescription>
<use>
<flag name="audio-notify">Enables native sound notifications</flag>
+ <flag name="experimental">Use experimental features in net-libs/tox</flag>
<flag name="games">Enables some small mini-games</flag>
<flag name="llvm">Enables support for LLVM Address Sanitizer</flag>
<flag name="notification">Enables desktop notifications with libnotify, with sound support.</flag>
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
+}