summaryrefslogtreecommitdiff
path: root/net-im/swift
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-11-25 22:39:15 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-11-25 22:39:15 +0000
commitd934827bf44b7cfcf6711964418148fa60877668 (patch)
tree0625f358789b5e015e49db139cc1dbc9be00428f /net-im/swift
parent2e34d110f164bf74d55fced27fe0000201b3eec5 (diff)
gentoo resync : 25.11.2020
Diffstat (limited to 'net-im/swift')
-rw-r--r--net-im/swift/Manifest1
-rw-r--r--net-im/swift/swift-4.0.2-r100.ebuild229
2 files changed, 230 insertions, 0 deletions
diff --git a/net-im/swift/Manifest b/net-im/swift/Manifest
index cc2b344310c8..daad845c9f50 100644
--- a/net-im/swift/Manifest
+++ b/net-im/swift/Manifest
@@ -3,5 +3,6 @@ AUX swift-4.0.2-qt-5.11-compatibility.patch 931 BLAKE2B 9c19851501a5b7bd92cb0cd8
AUX swift-4.0.2-qt-5.15-compatibility.patch 245 BLAKE2B 77facc560f6cea3dedd7c3095b6e5d7a91ff956b80022dc8a27c93edac72884bfd7f484fc84052a47bccb184f4225eb90fcc3d30f925ee15e18d5c97037a0b16 SHA512 9e8adaec0e7b1e727a2f91a675eaea4f62b7f8a53fdbaaf2adf9e13d57a1df15e921f1aa1b876561c7eecd1a4602763a52b3e875cecebe139d6e338df1001b12
DIST swift-4.0.2-python3-compatibility.patch.gz 14959 BLAKE2B 17b75950bba9252bb76e30eb9fadb9eaaaad6d693a09f6fa357fe174ade1bd283d00838e87b55059e0601edc5d72c02c952f53ca16dd597010c9f0ffe955662a SHA512 fac9cf0a85b55b1b9bba786cc6456ceaa6257d5f2cdd4d41c4fdee526c301de94bb6f7c71bc00aaec992d0aaf3787e2db3e9c7eed6ec88facea776db66941dba
DIST swift-4.0.2.tar.gz 19083393 BLAKE2B de4ad1c3d68dfc4d693cdebdf4e18809210aa4e83af31b77bf730c7018507877852b5ea634623c037250de4005606108bd0372d39177093769c5dc5f72bd4812 SHA512 b7d4b90f387d5ea4ac3ca31794eabd1f12a64274628d75c7570f40269777b9003182884730a6340c5e0b5b7928a68bda5e49be623b47da9fa64fe4c3f25be167
+EBUILD swift-4.0.2-r100.ebuild 5049 BLAKE2B b07dd02728d4fb65737389776fae9baa58b794d99321743c7a297c75ecd4948939434ced0936b33f83c44d7910b42957d1ef26f2551a2de900d5d8c6aba901ef SHA512 2408c703ec8fee9af7da03a67e7420bce2f3de7548858d5031393b27e1d43e6ce4ba25864f32fc523d956169273e188891eb2ee0477d7808d809cd34671d076c
EBUILD swift-4.0.2-r4.ebuild 4657 BLAKE2B 2b81d9a5b8e7e86a7ead9c154e59f79ccfc63c202ba17dfc567ef3b4e6ee551fa7011ff6d5c5cda21fcdb137736baf0dd16e6544645ed646abc31227474077c0 SHA512 cfd5adc4c6e8252cce2f526afacedb3725223be6dedada6c6e8a89f08143294538036119700ba769977afdbb8944b6e24cb83149432b69a1c78cb886789852bd
MISC metadata.xml 851 BLAKE2B 014ba09099a0971ceb413f590ba7f8e16f661380f15e12a319077886847c14695ab52f10afd7ce165b07cd9852e00397720ccf4465f475effec1cee65ad5b752 SHA512 1dbe2f86f1a0826b3ad0c629493fb0b9f9b1a1e2435e761a4e55afe85c52a7eef1269f25bfa94c4c8fbd5a8c5604d6c0bff6d0cb9d011245c1273df2a162bea7
diff --git a/net-im/swift/swift-4.0.2-r100.ebuild b/net-im/swift/swift-4.0.2-r100.ebuild
new file mode 100644
index 000000000000..c41fea304bf0
--- /dev/null
+++ b/net-im/swift/swift-4.0.2-r100.ebuild
@@ -0,0 +1,229 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1..2} luajit )
+PYTHON_COMPAT=( python3_{6..9} )
+
+inherit lua-single python-any-r1 scons-utils toolchain-funcs xdg-utils
+
+DESCRIPTION="An elegant, secure, adaptable and intuitive XMPP Client"
+HOMEPAGE="https://www.swift.im/"
+SRC_URI="
+ https://swift.im/downloads/releases/${P}/${P}.tar.gz
+ https://dev.gentoo.org/~conikost/distfiles/patches/swift-4.0.2-python3-compatibility.patch.gz"
+
+LICENSE="BSD BSD-1 CC-BY-3.0 GPL-3 OFL-1.1"
+SLOT="4/0"
+KEYWORDS="~amd64"
+IUSE="+client expat gconf +icu +idn lua spell test zeroconf"
+REQUIRED_USE="
+ || ( icu idn )
+ gconf? ( client )
+ lua? ( ${LUA_REQUIRED_USE} )
+ spell? ( client )
+"
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/boost:=
+ dev-libs/openssl:0=
+ net-libs/libnatpmp
+ net-libs/miniupnpc:=
+ sys-libs/zlib
+ client? (
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtmultimedia:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtwebkit:5
+ dev-qt/qtx11extras:5
+ net-dns/avahi
+ )
+ expat? ( dev-libs/expat )
+ !expat? ( dev-libs/libxml2:2 )
+ gconf? ( gnome-base/gconf:2 )
+ icu? ( dev-libs/icu:= )
+ idn? ( net-dns/libidn:= )
+ lua? ( ${LUA_DEPS} )
+ spell? ( app-text/hunspell:= )
+"
+
+DEPEND="
+ ${RDEPEND}
+ >=dev-util/scons-3.0.1-r3
+ client? ( dev-qt/linguist-tools:5 )
+ test? ( net-dns/avahi )
+"
+
+# Tests don't run, as they fail with "[QA/UnitTest/**dummy**] Error -6".
+RESTRICT="test"
+
+DOCS=(
+ "DEVELOPMENT.md"
+ "README.md"
+ "Swiften/ChangeLog.md"
+)
+
+PATCHES=(
+ "${FILESDIR}"/${P}-boost-1.69-compatibility.patch
+ "${WORKDIR}"/${P}-python3-compatibility.patch
+ "${FILESDIR}"/${P}-qt-5.11-compatibility.patch
+ "${FILESDIR}"/${P}-qt-5.15-compatibility.patch
+)
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ use lua && lua-single_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # Don't include '/usr/lib*' in the link command line for `swiften-config`
+ sed -e '/_LIBDIRFLAGS/d' -i Swiften/Config/SConscript || die
+
+ # Use correct LIBDIR for Lua
+ sed -e "s/lib/$(get_libdir)/g" -i Sluift/SConscript.variant || die
+
+ # Hack for finding Qt system libs
+ mkdir "${T}"/qt || die
+ ln -s "${EPREFIX}"/usr/$(get_libdir)/qt5/bin "${T}"/qt/bin || die
+ ln -s "${EPREFIX}"/usr/$(get_libdir)/qt5 "${T}"/qt/lib || die
+ ln -s "${EPREFIX}"/usr/include/qt5 "${T}"/qt/include || die
+
+ # Remove parts of Swift, which a user don't want to compile
+ if ! use client; then rm -fr Swift Slimber || die; fi
+ if ! use lua; then rm -fr Sluift || die; fi
+ if ! use zeroconf; then
+ rm -fr Limber || die
+ if use client; then rm -fr Slimber || die; fi
+ fi
+
+ # Remove '3rdParty', as the system libs should be used
+ # `CppUnit`, `GoogleTest` and `HippoMocks` are needed for tests
+ local my3rdparty=(
+ Boost
+ Breakpad
+ DocBook
+ Expat
+ LCov
+ Ldns
+ LibIDN
+ LibMiniUPnPc
+ LibNATPMP
+ Lua
+ OpenSSL
+ SCons
+ SQLite
+ Unbound
+ ZLib
+ )
+
+ if use test; then
+ cd 3rdParty && rm -fr "${my3rdparty[@]}" || die
+ else
+ rm -fr 3rdParty || die
+ fi
+}
+
+src_configure() {
+ MYSCONS=(
+ ar="$(tc-getAR)"
+ allow_warnings="yes"
+ assertions="no"
+ build_examples="yes"
+ boost_bundled_enable="false"
+ boost_force_bundled="false"
+ cc="$(tc-getCC)"
+ ccache="no"
+ ccflags="${CFLAGS}"
+ coverage="no"
+ cxx="$(tc-getCXX)"
+ cxxflags="${CXXFLAGS}"
+ debug="no"
+ distcc="no"
+ experimental="no"
+ experimental_ft="yes"
+ hunspell_enable="$(usex spell)"
+ icu="$(usex icu)"
+ install_git_hooks="no"
+ libidn_bundled_enable="false"
+ libminiupnpc_force_bundled="false"
+ libnatpmp_force_bundled="false"
+ link="$(tc-getCXX)"
+ linkflags="${LDFLAGS}"
+ lua_includedir="$(lua_get_include_dir)"
+ lua_libdir="${EPREFIX}/usr/$(get_libdir)"
+ lua_libname="$(basename -s '.so' $(lua_get_shared_lib))"
+ max_jobs="no"
+ optimize="no"
+ qt="${T}/qt"
+ qt5="$(usex client)"
+ swiften_dll="true"
+ swift_mobile="no"
+ target="native"
+ test="none"
+ try_avahi="$(usex client)"
+ try_expat="$(usex expat)"
+ try_gconf="$(usex gconf)"
+ try_libidn="$(usex idn)"
+ try_libxml="$(usex !expat)"
+ tls_backend="openssl"
+ unbound="no"
+ V="1"
+ valgrind="no"
+ zlib_bundled_enable="false"
+ )
+}
+
+src_compile() {
+ local myesconsinstall=(
+ Swiften
+ $(usex client Swift '')
+ $(usex lua Sluift '')
+ $(usex zeroconf Limber '')
+ $(usex zeroconf "$(usex client Slimber '')" '')
+ )
+
+ escons "${MYSCONS[@]}" "${myesconsinstall[@]}"
+}
+
+src_test() {
+ MYSCONS=(
+ V="1"
+ )
+
+ escons "${MYSCONS[@]}" test=unit QA
+}
+
+src_install() {
+ local myesconsinstall=(
+ SWIFTEN_INSTALLDIR="${ED}/usr"
+ SWIFTEN_LIBDIR="${ED}/usr/$(get_libdir)"
+ $(usex client "SWIFT_INSTALLDIR=${ED}/usr" '')
+ $(usex lua "SLUIFT_DIR=${ED}/usr" '')
+ $(usex lua "SLUIFT_INSTALLDIR=${ED}/usr" '')
+ "${ED}"
+ )
+
+ escons "${MYSCONS[@]}" "${myesconsinstall[@]}"
+
+ use zeroconf && dobin Limber/limber
+ use zeroconf && use client && newbin Slimber/CLI/slimber slimber-cli
+ use zeroconf && use client && newbin Slimber/Qt/slimber slimber-qt
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ use client && xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ use client && xdg_icon_cache_update
+}