summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-irc/weechat/Manifest2
-rw-r--r--net-irc/weechat/weechat-3.5.ebuild183
2 files changed, 185 insertions, 0 deletions
diff --git a/net-irc/weechat/Manifest b/net-irc/weechat/Manifest
index b3fdea6f8b1c..e66d209ceb76 100644
--- a/net-irc/weechat/Manifest
+++ b/net-irc/weechat/Manifest
@@ -2,3 +2,5 @@ DIST weechat-3.3.tar.xz 2564280 BLAKE2B 9cb119c2506ff5f9b4844b8016790af34347e300
DIST weechat-3.4.1.tar.xz 2617856 BLAKE2B a1e2e3e50da79041dc1500fb9c368cc3f3f2f799b867e5c6b2cb0742dac680bf3fd5449dcf19296845266f97cf6ee120c71d10cdb8cf4e20badb56fd4b55888c SHA512 3715975d0b8cb5ac1946ceb0fa87fcecffebccf1687cb3b8c3d91429f31e69000808994885bef580a0cfd9c5b1bcf6a51642bd653cf887be981188281901a04e
DIST weechat-3.4.1.tar.xz.asc 833 BLAKE2B 4f4a38307f1f60dd03693761605cbab2a2e8249d11e95826ec6e610e38a0625cec66704d5b62d51e83633dc3c06a98be5487c8a535ae75fdc2d53ba91a71e70f SHA512 8e45ba6f8d96f2dbaa617ee9e5071a31e94cbea418881af6866eecc7402bdff558f221db63c2e708e40119d3c5294b49485823f4e62fbae5e89da7cc380d9d6d
DIST weechat-3.4.tar.xz 2617640 BLAKE2B fb5df8ed7d2b219c60c15f444834017504aebffa0c02c7712f0109216153be97b93560dbbb060e9cb907634856dca2733848222b5f2eea095dcceec623a00397 SHA512 b5e36802bb8b8f0e518da590d675ca63b0fa0b88acd24c2803d4f8468e6bce775691d3994db5090570f1286ad38be31615921b0d3ead697ad51986cddca57330
+DIST weechat-3.5.tar.xz 2693072 BLAKE2B 4645d71a0f2742b0dbf0c905cfe085b6132ac4f1be6ec1056c432b2a1a7c7af2e62bf075a696732801be4fca3c45d7e3721a7fdaa9afac293623443793a27f26 SHA512 493be6219da4fa4b4862064de3d286d99d36018a61ba226f5abdc18c9ff43076d92f0b12fce96e04d31fed5c3931c7bf8615947cd19059dbf2c3aa75deead35f
+DIST weechat-3.5.tar.xz.asc 833 BLAKE2B 539ddb256ebeb4871b8e881358500fe8bda560ae9d2d6690d8184326d22b9bbadd874a3d6fbf1caab76baf509edf8308fbe9e5f13344757c39f421866a0cd8c8 SHA512 51d5d0681cb59cf2bd5c582e9eae475bd844e56157bae7e07102dbd83cde7a052ad53fcd6ce22f7ac13c728adbf3a3eb9e6c317a58d5cfb2b102b1e5c6b32365
diff --git a/net-irc/weechat/weechat-3.5.ebuild b/net-irc/weechat/weechat-3.5.ebuild
new file mode 100644
index 000000000000..6264911b56ad
--- /dev/null
+++ b/net-irc/weechat/weechat-3.5.ebuild
@@ -0,0 +1,183 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1..4} )
+PYTHON_COMPAT=( python3_{8..10} )
+
+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
+SCRIPT_LANGS="guile lua +perl php +python ruby tcl"
+LANGS=" cs de es fr it ja pl ru"
+IUSE="doc man nls selinux test ${SCRIPT_LANGS} ${PLUGINS} ${INTERFACES} ${NETWORKS}"
+
+REQUIRED_USE="
+ 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 )
+ lua? ( ${LUA_DEPS} )
+ nls? ( virtual/libintl )
+ perl? ( dev-lang/perl:= )
+ php? ( >=dev-lang/php-7.0:*[embed] )
+ python? ( ${PYTHON_DEPS} )
+ ruby? (
+ || (
+ dev-lang/ruby:3.0
+ dev-lang/ruby:2.7
+ dev-lang/ruby:2.6
+ )
+ )
+ selinux? ( sec-policy/selinux-irc )
+ spell? ( 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
+ for i in $(grep add_subdirectory doc/CMakeLists.txt \
+ | sed -e 's/.*add_subdirectory(\(..\)).*/\1/' -e '/en/d'); do
+ if ! has ${i} ${LINGUAS-${i}} ; then
+ sed -i \
+ -e '/add_subdirectory('${i}')/d' \
+ doc/CMakeLists.txt || die
+ fi
+ done
+
+ # install docs in correct directory
+ sed -i "s#\${SHAREDIR}/doc/\${PROJECT_NAME}#\0-${PV}/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_ALIAS=$(usex alias)
+ -DENABLE_BUFLIST=$(usex buflist)
+ -DENABLE_CHARSET=$(usex charset)
+ -DENABLE_DOC=$(usex doc)
+ -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_PHP=$(usex php)
+ -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
+}