net-irc/weechat: version bump to 2.1
authorTim Harder <radhermit@gentoo.org>
Sun, 18 Mar 2018 23:59:17 +0000 (19:59 -0400)
committerTim Harder <radhermit@gentoo.org>
Mon, 19 Mar 2018 00:01:14 +0000 (20:01 -0400)
net-irc/weechat/Manifest
net-irc/weechat/files/weechat-2.1-tinfo.patch [new file with mode: 0644]
net-irc/weechat/weechat-2.1.ebuild [new file with mode: 0644]
net-irc/weechat/weechat-9999.ebuild

index 3753813899538c155617d42b5ef8d67f8bc8321a..6fef94b702748f18e0b8fbc24fbb7c714281fc78 100644 (file)
@@ -1,3 +1,4 @@
 DIST weechat-1.9.1.tar.xz 1877428 BLAKE2B e7595735547699cfb20f653bbe515555b5d7e772e1bc1aecb4e95f1f4fd402a315698790e961305daf7d0bd6c5f9f7889c00efdf115f7182287965428b79d469 SHA512 552e9248e86db7fe53cd6539084e6c5e8548b8858b27c02326d04925d81ef09e123225af5c1f5550b262be5a1249fd8750fdda8d9877c3df918cc30b5e0953fa
 DIST weechat-2.0.1.tar.xz 1967336 BLAKE2B 256f4bab45834ed2798490234c9417b8b8e4d06d0ed09f5779ad9d32321ab9aec58c38f4b048de319e4f46809313186462208258ca2d78d1e0470fa2014e7472 SHA512 3947e79a0ac8dce7605905c39039bedf9ba2af4778ee6905f12ca75786b62f3081568ce9426be251e65bad2837ddcf0664cbb08059f898d4ac60171325a94e74
 DIST weechat-2.0.tar.xz 1967636 BLAKE2B b4ee37a7c8da4cd724ada44f454979326ec1186254d197c538de13c148b52988ddeff23d432240404516c8f81d8588347c6ea5313572b4815d716f80e82f85a4 SHA512 771618c09fb24182f86304af8c12e158e3d97afbc51219d1f4c5f9ec102aac15c4511a6301141d47f67e385f41bf0ba91e3df795ffdd78a19d1f6a5b1121e951
+DIST weechat-2.1.tar.xz 1990748 BLAKE2B 5f417e282fe0bc10f1625e16fc173c09781284c27cf321e219c73fcfb3bac4118403598d6e5d06ed9852b1bdb1e645d7f43999a113101aebe6bd626e2278b661 SHA512 4bea8c0c4467b81e2241d68e5c6425274f0fe15d853ddac46ddf3cce481e03549660d6083277719d462ec5d0dea4b31d89f6b3f51f92f12908213232d2d807df
diff --git a/net-irc/weechat/files/weechat-2.1-tinfo.patch b/net-irc/weechat/files/weechat-2.1-tinfo.patch
new file mode 100644 (file)
index 0000000..e44e06e
--- /dev/null
@@ -0,0 +1,28 @@
+Use pkgconfig to find ncurses libs in order to support separate libtinfo.
+
+--- weechat-2.1/src/gui/curses/normal/CMakeLists.txt
++++ weechat-2.1/src/gui/curses/normal/CMakeLists.txt
+@@ -29,7 +29,13 @@
+   ../gui-curses-window.c
+ )
+-find_package(Ncurses)
++find_package(PkgConfig)
++pkg_search_module(NCURSES ncursesw ncurses)
++
++if(NOT NCURSES_FOUND)
++  find_package(Ncurses)
++endif(NOT NCURSES_FOUND)
++
+ if(NCURSES_FOUND)
+   check_include_files(ncursesw/ncurses.h NCURSESW_HEADERS)
+   if(NCURSESW_HEADERS)
+@@ -54,7 +60,7 @@
+ add_dependencies(${EXECUTABLE} weechat_gui_curses_normal)
+-list(APPEND EXTRA_LIBS ${NCURSES_LIBRARY})
++list(APPEND EXTRA_LIBS ${NCURSES_LIBRARY} ${NCURSES_LIBRARIES})
+ # Due to circular references, we must link two times with libweechat_core.a and libweechat_gui_common.a
+ target_link_libraries(${EXECUTABLE} ${STATIC_LIBS} weechat_gui_curses_normal ${EXTRA_LIBS} ${STATIC_LIBS})
diff --git a/net-irc/weechat/weechat-2.1.ebuild b/net-irc/weechat/weechat-2.1.ebuild
new file mode 100644 (file)
index 0000000..0c7c645
--- /dev/null
@@ -0,0 +1,151 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+CMAKE_MAKEFILE_GENERATOR=emake
+inherit python-single-r1 cmake-utils
+
+if [[ ${PV} == "9999" ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/weechat/weechat.git"
+else
+       SRC_URI="https://weechat.org/files/src/${P}.tar.xz"
+       KEYWORDS="~amd64 ~x86 ~x64-macos"
+fi
+
+DESCRIPTION="Portable and multi-interface IRC client"
+HOMEPAGE="https://weechat.org/"
+
+LICENSE="GPL-3"
+SLOT="0"
+
+NETWORKS="+irc"
+PLUGINS="+alias +buflist +charset +exec +fset +fifo +logger +relay +scripts +spell +trigger +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 hu it ja pl pt pt_BR ru tr"
+IUSE="doc nls +ssl test ${SCRIPT_LANGS} ${PLUGINS} ${INTERFACES} ${NETWORKS}"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+       dev-libs/libgcrypt:0=
+       net-misc/curl[ssl]
+       sys-libs/ncurses:0=
+       sys-libs/zlib
+       charset? ( virtual/libiconv )
+       guile? ( >=dev-scheme/guile-2.0 )
+       lua? ( dev-lang/lua:0[deprecated] )
+       nls? ( virtual/libintl )
+       perl? ( dev-lang/perl:= )
+       php? ( >=dev-lang/php-7.0:* )
+       python? ( ${PYTHON_DEPS} )
+       ruby? ( || ( dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 ) )
+       ssl? ( net-libs/gnutls )
+       spell? ( app-text/aspell )
+       tcl? ( >=dev-lang/tcl-8.4.15:0= )
+"
+DEPEND="${RDEPEND}
+       doc? (
+               >=dev-ruby/asciidoctor-1.5.4
+               dev-util/source-highlight
+       )
+       nls? ( >=sys-devel/gettext-0.15 )
+       test? ( dev-util/cpputest )
+"
+
+DOCS="AUTHORS.adoc ChangeLog.adoc Contributing.adoc ReleaseNotes.adoc README.adoc"
+
+# tests need to be fixed to not use system plugins if weechat is already installed
+RESTRICT="test"
+
+PATCHES=( "${FILESDIR}"/${PN}-2.1-tinfo.patch )
+
+pkg_setup() {
+       use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+       cmake-utils_src_prepare
+
+       # fix libdir placement
+       sed -i \
+               -e "s:lib/:$(get_libdir)/:g" \
+               -e "s:lib\":$(get_libdir)\":g" \
+               CMakeLists.txt || die "sed failed"
+
+       # 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=(
+               -DENABLE_NCURSES=ON
+               -DENABLE_NLS=$(usex nls)
+               -DENABLE_GNUTLS=$(usex ssl)
+               -DENABLE_LARGEFILE=ON
+               -DENABLE_ALIAS=$(usex alias)
+               -DENABLE_ASPELL=$(usex spell)
+               -DENABLE_BUFLIST=$(usex buflist)
+               -DENABLE_CHARSET=$(usex charset)
+               -DENABLE_EXEC=$(usex exec)
+               -DENABLE_FSET=$(usex fset)
+               -DENABLE_FIFO=$(usex fifo)
+               -DENABLE_IRC=$(usex irc)
+               -DENABLE_LOGGER=$(usex logger)
+               -DENABLE_RELAY=$(usex relay)
+               -DENABLE_SCRIPT=$(usex scripts)
+               -DENABLE_SCRIPTS=$(usex scripts)
+               -DENABLE_PERL=$(usex perl)
+               -DENABLE_PHP=$(usex php)
+               -DENABLE_PYTHON=$(usex python)
+               -DENABLE_RUBY=$(usex ruby)
+               -DENABLE_LUA=$(usex lua)
+               -DENABLE_TCL=$(usex tcl)
+               -DENABLE_GUILE=$(usex guile)
+               -DENABLE_JAVASCRIPT=OFF
+               -DENABLE_TRIGGER=$(usex trigger)
+               -DENABLE_XFER=$(usex xfer)
+               -DENABLE_DOC=$(usex doc)
+               -DENABLE_TESTS=$(usex test)
+       )
+
+       if use python; then
+               python_export PYTHON_LIBPATH
+               mycmakeargs+=(
+                       -DPYTHON_EXECUTABLE="${PYTHON}"
+                       -DPYTHON_LIBRARY="${PYTHON_LIBPATH}"
+               )
+       fi
+
+       cmake-utils_src_configure
+}
index dd1313a0c7305370021807242ba6997345eadb7e..0c7c645e9a4c12081aa2bb5313f209ed4831bb1a 100644 (file)
@@ -40,7 +40,7 @@ RDEPEND="
        perl? ( dev-lang/perl:= )
        php? ( >=dev-lang/php-7.0:* )
        python? ( ${PYTHON_DEPS} )
-       ruby? ( || ( dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 ) )
+       ruby? ( || ( dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 ) )
        ssl? ( net-libs/gnutls )
        spell? ( app-text/aspell )
        tcl? ( >=dev-lang/tcl-8.4.15:0= )
@@ -59,7 +59,7 @@ DOCS="AUTHORS.adoc ChangeLog.adoc Contributing.adoc ReleaseNotes.adoc README.ado
 # tests need to be fixed to not use system plugins if weechat is already installed
 RESTRICT="test"
 
-PATCHES=( "${FILESDIR}"/${PN}-1.2-tinfo.patch )
+PATCHES=( "${FILESDIR}"/${PN}-2.1-tinfo.patch )
 
 pkg_setup() {
        use python && python-single-r1_pkg_setup