summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Schmaus <flow@gentoo.org>2023-07-27 21:21:24 +0200
committerFlorian Schmaus <flow@gentoo.org>2023-07-27 21:26:39 +0200
commit8ceab3b3a44fa6368dde2f3238182bba294699fb (patch)
treed7281e4f30c3345ea979e4fd70246330aa9f91c3 /net-irc/weechat
parentdev-util/gitlab-runner: drop 15.11.1 (diff)
downloadgentoo-8ceab3b3a44fa6368dde2f3238182bba294699fb.tar.gz
gentoo-8ceab3b3a44fa6368dde2f3238182bba294699fb.tar.bz2
gentoo-8ceab3b3a44fa6368dde2f3238182bba294699fb.zip
net-irc/weechat: add 4.0.2
Thanks to Bo Osterud for providing a patch [1] upon which this is based. 1: https://bugs.gentoo.org/909565#c1 Closes: https://bugs.gentoo.org/909565 Signed-off-by: Florian Schmaus <flow@gentoo.org> Co-authored-by: Bo Osterud <git@conjuro.net> Signed-off-by: Bo Osterud <git@conjuro.net>
Diffstat (limited to 'net-irc/weechat')
-rw-r--r--net-irc/weechat/Manifest2
-rw-r--r--net-irc/weechat/weechat-4.0.2.ebuild195
2 files changed, 197 insertions, 0 deletions
diff --git a/net-irc/weechat/Manifest b/net-irc/weechat/Manifest
index 9b6a788cb511..1d9b8daf0749 100644
--- a/net-irc/weechat/Manifest
+++ b/net-irc/weechat/Manifest
@@ -1,2 +1,4 @@
DIST weechat-3.8.tar.xz 2777420 BLAKE2B 46a2c2c5f14f1c47c0ef2c7591549e4568c1777a70c571ab6d0e5938685262a0806c1fd301eb0d840245b7df2c42a69b089d6eac82706ae5b2a8e590a910080a SHA512 f2fe125d03e9c8f8b5b03e2cdd340c6cd65c463187bd213c9128a3df19da56ae38f1a6d20a47c09606d1504448e3d554de042e33cc57b73753ce8491595ef516
DIST weechat-3.8.tar.xz.asc 833 BLAKE2B 3db6467d5a47b86df7eca237bf2def812666fed42b9c1b968760e4999f785ba65fe84be61ae152ac5d5a3fa85953b5442f515afc244249fbc15ff94ca2a06147 SHA512 61154ef33aeb1155004975ee6688d5dcb427e0670e7463549ed0157de7be61309abb5dbad419bceb596e11f494e41a00b72e6f908ed9f02525660f7155dcc2ec
+DIST weechat-4.0.2.tar.xz 2573044 BLAKE2B 17da7769dc40885565d4932910920a4d3b23736fc244063d548e50109dc101ae63287e5467368b40ef3b835b3ef7d55f901bc7d2dfcbad59772afdd340532001 SHA512 271c22cba68fdb5efd14c4111ea9b7f44f2c95282cb7cac10a42432b195aadf5a081831853243ed09535df25d95b30c0d57b23c84d24c3665ae8393bc76db4d5
+DIST weechat-4.0.2.tar.xz.asc 833 BLAKE2B 92e1a2efb9a7e5cd94a0266d5980c88ed1d93ab7e6003c2d9f28b460e805505d6094d461534782fc6e80a366cb5fb6f12ddf8fc41d29fa7ffad5b343ccc06ac3 SHA512 c2ab90223d5bac8551a0b95480b0ccecfbb7c199f4d8a6f8dc4e6b21c78fadb22a7feb7c53c052d3a67ba34cbaf4e7faea83cdd2df5f0dd325aee0d3e4375139
diff --git a/net-irc/weechat/weechat-4.0.2.ebuild b/net-irc/weechat/weechat-4.0.2.ebuild
new file mode 100644
index 000000000000..f7ec70d248a7
--- /dev/null
+++ b/net-irc/weechat/weechat-4.0.2.ebuild
@@ -0,0 +1,195 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} )
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit cmake lua-single python-single-r1 xdg-utils
+
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/weechat/weechat.git"
+else
+ inherit verify-sig
+ SRC_URI="https://weechat.org/files/src/${P}.tar.xz
+ verify-sig? ( https://weechat.org/files/src/${P}.tar.xz.asc )"
+ VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/weechat.org.asc
+ BDEPEND+="verify-sig? ( sec-keys/openpgp-keys-weechat )"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos"
+fi
+
+DESCRIPTION="Portable and multi-interface IRC client"
+HOMEPAGE="https://weechat.org/"
+
+LICENSE="GPL-3"
+SLOT="0/${PV}"
+
+NETWORKS="+irc"
+PLUGINS="+alias +buflist +charset +exec +fifo +fset +logger +relay +scripts +spell +trigger +typing +xfer"
+# dev-lang/v8 was dropped from Gentoo so we can't enable javascript support
+# dev-lang/php eclass support is lacking, php plugins don't work. bug #705702
+SCRIPT_LANGS="guile lua +perl +python ruby tcl"
+LANGS=" cs de es fr it ja pl ru"
+IUSE="doc enchant man nls selinux test ${SCRIPT_LANGS} ${PLUGINS} ${INTERFACES} ${NETWORKS}"
+
+REQUIRED_USE="
+ enchant? ( spell )
+ lua? ( ${LUA_REQUIRED_USE} )
+ python? ( ${PYTHON_REQUIRED_USE} )
+ test? ( nls )
+"
+
+RDEPEND="
+ app-arch/zstd:=
+ dev-libs/libgcrypt:0=
+ net-libs/gnutls:=
+ sys-libs/ncurses:0=
+ sys-libs/zlib:=
+ net-misc/curl[ssl]
+ charset? ( virtual/libiconv )
+ guile? ( >=dev-scheme/guile-2.0:12= )
+ lua? ( ${LUA_DEPS} )
+ nls? ( virtual/libintl )
+ perl? ( dev-lang/perl:= )
+ python? ( ${PYTHON_DEPS} )
+ ruby? (
+ || (
+ dev-lang/ruby:3.1
+ dev-lang/ruby:3.0
+ )
+ )
+ selinux? ( sec-policy/selinux-irc )
+ spell? (
+ enchant? ( app-text/enchant:* )
+ !enchant? ( app-text/aspell )
+ )
+ tcl? ( >=dev-lang/tcl-8.4.15:0= )
+"
+
+DEPEND="${RDEPEND}
+ test? ( dev-util/cpputest )
+"
+
+BDEPEND+="
+ virtual/pkgconfig
+ doc? ( >=dev-ruby/asciidoctor-1.5.4 )
+ man? ( >=dev-ruby/asciidoctor-1.5.4 )
+ nls? ( >=sys-devel/gettext-0.15 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.3-cmake_lua_version.patch
+)
+
+DOCS="AUTHORS.adoc ChangeLog.adoc Contributing.adoc ReleaseNotes.adoc README.adoc"
+
+RESTRICT="!test? ( test )"
+
+pkg_setup() {
+ use lua && lua-single_pkg_setup
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ # install only required translations
+ local i
+ for i in ${LANGS} ; do
+ if ! has ${i} ${LINGUAS-${i}} ; then
+ sed -i \
+ -e "/${i}.po/d" \
+ po/CMakeLists.txt || die
+ fi
+ done
+
+ # install only required documentation ; en always
+ local j
+ for i in $(grep -e 'set(.*en.*)$' doc/CMakeLists.txt \
+ | sed -e 's/.*set(\(\w\+\).*/\1/'); do
+ for j in $(grep set.${i} doc/CMakeLists.txt \
+ | sed -e "s/.*${i}\(.*\)).*/\1/" -e 's/ en//'); do
+ if ! has ${j} ${LINGUAS-${j}} ; then
+ sed -i \
+ -e "s/\(set(${i}.*\) ${j}/\1/" \
+ doc/CMakeLists.txt || die
+ fi
+ done
+ done
+
+ # install docs in correct directory
+ sed -i "s#\${DATAROOTDIR}/doc/\${PROJECT_NAME}#\0-${PVR}/html#" doc/CMakeLists.txt || die
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ # fix linking error on Darwin
+ sed -i "s/+ get_config_var('LINKFORSHARED')//" \
+ cmake/FindPython.cmake || die
+ # allow to find the plugins by default
+ sed -i 's/".so,.dll"/".bundle,.so,.dll"/' \
+ src/core/wee-config.c || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DLIBDIR="${EPREFIX}/usr/$(get_libdir)"
+ -DENABLE_JAVASCRIPT=OFF
+ -DENABLE_LARGEFILE=ON
+ -DENABLE_NCURSES=ON
+ -DENABLE_PHP=OFF
+ -DENABLE_ALIAS=$(usex alias)
+ -DENABLE_BUFLIST=$(usex buflist)
+ -DENABLE_CHARSET=$(usex charset)
+ # -DENABLE_DOC requires all plugins (except javascript).
+ # https://github.com/weechat/weechat/blob/v4.0.2/CMakeLists.txt#L144
+ # Impossible since php was dropped in net-irc/weechat-3.5.r1.ebuild. bug #705702
+ -DENABLE_DOC=OFF
+ -DENABLE_DOC_INCOMPLETE=$(usex doc)
+ -DENABLE_ENCHANT=$(usex enchant)
+ -DENABLE_EXEC=$(usex exec)
+ -DENABLE_FIFO=$(usex fifo)
+ -DENABLE_FSET=$(usex fset)
+ -DENABLE_GUILE=$(usex guile)
+ -DENABLE_IRC=$(usex irc)
+ -DENABLE_LOGGER=$(usex logger)
+ -DENABLE_LUA=$(usex lua)
+ -DENABLE_MAN=$(usex man)
+ -DENABLE_NLS=$(usex nls)
+ -DENABLE_PERL=$(usex perl)
+ -DENABLE_PYTHON=$(usex python)
+ -DENABLE_RELAY=$(usex relay)
+ -DENABLE_RUBY=$(usex ruby)
+ -DENABLE_SCRIPT=$(usex scripts)
+ -DENABLE_SCRIPTS=$(usex scripts)
+ -DENABLE_SPELL=$(usex spell)
+ -DENABLE_TCL=$(usex tcl)
+ -DENABLE_TESTS=$(usex test)
+ -DENABLE_TRIGGER=$(usex trigger)
+ -DENABLE_TYPING=$(usex typing)
+ -DENABLE_XFER=$(usex xfer)
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ if $(locale -a | grep -iq "en_US\.utf.*8"); then
+ cmake_src_test -V
+ else
+ eerror "en_US.UTF-8 locale is required to run ${PN}'s ${FUNCNAME}"
+ die "required locale missing"
+ fi
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+}