commit: fe01a87eea0df9b106a7fe8f7854442f216e1d26 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org> AuthorDate: Sat Aug 25 04:56:19 2018 +0000 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org> CommitDate: Sat Aug 25 05:01:02 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fe01a87e
net-irc/weechat: version bump to 2.2 Closes: https://bugs.gentoo.org/663978 Package-Manager: Portage-2.3.48, Repoman-2.3.10 net-irc/weechat/Manifest | 1 + net-irc/weechat/files/weechat-2.2-tinfo.patch | 28 +++++ net-irc/weechat/weechat-2.2.ebuild | 151 ++++++++++++++++++++++++++ 3 files changed, 180 insertions(+) diff --git a/net-irc/weechat/Manifest b/net-irc/weechat/Manifest index 78aeaacb267..6a5129f35d9 100644 --- a/net-irc/weechat/Manifest +++ b/net-irc/weechat/Manifest @@ -1,2 +1,3 @@ DIST weechat-2.0.1.tar.xz 1967336 BLAKE2B 256f4bab45834ed2798490234c9417b8b8e4d06d0ed09f5779ad9d32321ab9aec58c38f4b048de319e4f46809313186462208258ca2d78d1e0470fa2014e7472 SHA512 3947e79a0ac8dce7605905c39039bedf9ba2af4778ee6905f12ca75786b62f3081568ce9426be251e65bad2837ddcf0664cbb08059f898d4ac60171325a94e74 DIST weechat-2.1.tar.xz 1990748 BLAKE2B 5f417e282fe0bc10f1625e16fc173c09781284c27cf321e219c73fcfb3bac4118403598d6e5d06ed9852b1bdb1e645d7f43999a113101aebe6bd626e2278b661 SHA512 4bea8c0c4467b81e2241d68e5c6425274f0fe15d853ddac46ddf3cce481e03549660d6083277719d462ec5d0dea4b31d89f6b3f51f92f12908213232d2d807df +DIST weechat-2.2.tar.xz 2007944 BLAKE2B 2892e50fcccf64fa34e4c7bd476323ad7a98d6b5d483254ffbed659a5997d3077a7347a1a9c006f50d52daf7808fe61cf5b396416d62da7f9260f717191b2a86 SHA512 bb5103c266f6e6850250a5e0602ff26be06289ea1e13511b111f975eb492a0bbe508b2a6088b15e5bfd5278341e9dd5ee0facfb08d23ff7335c5c18bc21e4b02 diff --git a/net-irc/weechat/files/weechat-2.2-tinfo.patch b/net-irc/weechat/files/weechat-2.2-tinfo.patch new file mode 100644 index 00000000000..aee651911ce --- /dev/null +++ b/net-irc/weechat/files/weechat-2.2-tinfo.patch @@ -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 +@@ -32,7 +32,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) +@@ -57,7 +63,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.2.ebuild b/net-irc/weechat/weechat-2.2.ebuild new file mode 100644 index 00000000000..af107a8fe6b --- /dev/null +++ b/net-irc/weechat/weechat-2.2.ebuild @@ -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 ) ) + 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.2-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 +}