commit:     6669677d2ec2675dd3368ea32b2dd1ded0d6d1d6
Author:     Josiah Mullins <JoMull01 <AT> protonmail <DOT> com>
AuthorDate: Wed Apr 24 23:27:04 2024 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Tue Jul 30 19:01:43 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6669677d

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 <AT> protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/36410
Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>

 net-im/toxic/Manifest            |   1 +
 net-im/toxic/metadata.xml        |   1 +
 net-im/toxic/toxic-0.15.1.ebuild | 120 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 122 insertions(+)

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

Reply via email to