summaryrefslogtreecommitdiff
path: root/net-im/swift
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-10-04 17:52:00 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-10-04 17:52:00 +0100
commitdd851ab76c56a249df7a0ec052acd90940bc014f (patch)
treeb9a0f7262f1fadcf70488c6c3c4dc644b502dc52 /net-im/swift
parent713e25c0c3d1e5434ac60ec0549708ec2f744bb4 (diff)
gentoo auto-resync : 04:10:2023 - 17:51:59
Diffstat (limited to 'net-im/swift')
-rw-r--r--net-im/swift/Manifest5
-rw-r--r--net-im/swift/files/swift-4.0.3-gcc11-compatibility.patch13
-rw-r--r--net-im/swift/files/swift-4.0.3-reproducible-build.patch21
-rw-r--r--net-im/swift/swift-4.0.3.ebuild207
4 files changed, 246 insertions, 0 deletions
diff --git a/net-im/swift/Manifest b/net-im/swift/Manifest
index 4259a0a41ab3..245fd549ca21 100644
--- a/net-im/swift/Manifest
+++ b/net-im/swift/Manifest
@@ -1,7 +1,12 @@
AUX swift-4.0.2-boost-1.69-compatibility.patch 2986 BLAKE2B e81cdaadaa7fe4972df1f65f234f4630cade22e64325734500b24ddbba07a663d75fe6ef570b0dbc1463f6d03bc3db3d272d38c2d17945af923383ce65843eb6 SHA512 5218e5ce0d07826c4ebbcf3ea3d7e2685a3d3a9875301d0656929c19b83c4042a538e308b427d4666c5e6ba39adb9049795a886cf50daa9632cf96648421884a
AUX swift-4.0.2-qt-5.11-compatibility.patch 931 BLAKE2B 9c19851501a5b7bd92cb0cd8e71911ee87dc754f8d7dfe15f7fa3ff9d788f3d698a63cd90f6ff9b2cc4b013a14c92bd704ef0248ea71204645ea4ff90d828881 SHA512 a91d516f682b47573de8949ff5e364505b39d67e6a93441f66000519f8c6d910f7efb67ee510f709d03592446a4fbee0b1f17b0e1b7548ecaa2e3781e8406880
AUX swift-4.0.2-qt-5.15-compatibility.patch 245 BLAKE2B 77facc560f6cea3dedd7c3095b6e5d7a91ff956b80022dc8a27c93edac72884bfd7f484fc84052a47bccb184f4225eb90fcc3d30f925ee15e18d5c97037a0b16 SHA512 9e8adaec0e7b1e727a2f91a675eaea4f62b7f8a53fdbaaf2adf9e13d57a1df15e921f1aa1b876561c7eecd1a4602763a52b3e875cecebe139d6e338df1001b12
+AUX swift-4.0.3-gcc11-compatibility.patch 388 BLAKE2B a8b9d79d05accc9f07ec9db302bdf5a7757c5872a6dd66abc5765a109f6e69358dafc7e7c67208b6e7a15a88befb07b09d4a8629aceda83acc306c4b33899554 SHA512 27b4372eea344c98aaffe02d55550da62130d66d1abb967f3e6d236d58db33cea525448b3ed195c4397446af43d166ec3555b9f1f23637e3edfd73f9acb339e8
+AUX swift-4.0.3-reproducible-build.patch 732 BLAKE2B e40c7e9c5e18aec72c6cd6290e89badbb0d57d15bc30fb06baef1050c4be52f795593f43dc9715a0634d19b9c5a0bb2afbb4025de2b6aa8bd0deb074c748ee2c SHA512 4f90dba4ebbd4ae33b40eeeaa100e647a1ae5cd6e32ed21b6bcbdc52104b57d59bdcc7dbb907a1a751a30f91e1e234d695278d999574f1393d3aaf499484270f
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
+DIST swift-4.0.3-python3-compatibility.patch.gz 14964 BLAKE2B ec98bee12734eb00037433b2791817d24a0a53effa653268a886b59358fb82f8e6c05739165f2518c9c5ad5b7ddfcef90734964eb6de647a24197e69b333ebc9 SHA512 95e1a0c49158cbf1392442103c960e2d458a99b34c3f32cdb47fec2d195b709d6c4b0c2961b4c49d05c19e590f2e2ca836c6f559b960015030bf8375b0604c3f
+DIST swift-4.0.3.tar.bz2 15124142 BLAKE2B 23896b72ffecc5148ade806ec6610c5edfa67ae9000e28383c7cf5a3c8bf275a6fc8208d1d6e7c7715e75bf133869ed404fd35bfb13998849209def3aab46c07 SHA512 59ebf69391f2cbdce538f0ee925f55eec0e8463c2f9b90899cb314f2a036f40ebdc357c4b6a6d3b71ae800ccf6ee6df5ff6011949ea0bb189cdf3e9f231e9733
EBUILD swift-4.0.2-r102.ebuild 4378 BLAKE2B ab3383c06b7a61c6839b8a6fe8977f7b49e7e4f8b341cc97afdd1e88c9bf777956eb288b6da543583a91bf254341d70abc9afb311f8a43427cd5db6119f2a4dd SHA512 defb6b052b8296408690ee8852bf5dd48673ff2286d1dc30bcafae2523b54994544434093f4af6b12336f5620a982f9dc7cbd7e1e56126be59d7de460a8fda1c
+EBUILD swift-4.0.3.ebuild 4502 BLAKE2B 16b72289e5ee13354ae6f833e36b0a1b72a54a814c22a0cb547843e13dd02c05b5c31db102fd7c1947678fd6eb880d884a80303c873510d3fa22247451a50c1e SHA512 c76c86483f6c5188fc00a82a322e1812eb4025e80719f537591f34a6daf7a36e74cafae27aa03383007dd20c4273796203897a4d75ea7dd1e9453badc1fe1a4d
MISC metadata.xml 572 BLAKE2B 844c5b114051f7e2292b7857c991d4c6ea9c52a7e697f5d7f93296f4047179da836519701425c3ac6e9fd9fae99d77565258e08f2493682b8f2629cac493344b SHA512 4ed15787f531624392d9e8489634094c99f32b2c077c1330d79713a662bb22c79bd808aa8c1616b21fb5824ec03908aa54ea1d1cf13aa3f011235ef3756a32c5
diff --git a/net-im/swift/files/swift-4.0.3-gcc11-compatibility.patch b/net-im/swift/files/swift-4.0.3-gcc11-compatibility.patch
new file mode 100644
index 000000000000..4d94c2d10503
--- /dev/null
+++ b/net-im/swift/files/swift-4.0.3-gcc11-compatibility.patch
@@ -0,0 +1,13 @@
+diff --git a/Swift/Controllers/ShowProfileController.h b/Swift/Controllers/ShowProfileController.h
+index 0d01ba1a0..5dc7197ff 100644
+--- a/Swift/Controllers/ShowProfileController.h
++++ b/Swift/Controllers/ShowProfileController.h
+@@ -18,6 +18,8 @@
+
+ #include <Swift/Controllers/UIEvents/UIEvent.h>
+
++#include <map>
++
+ namespace Swift {
+ class VCardManager;
+ class ProfileWindow;
diff --git a/net-im/swift/files/swift-4.0.3-reproducible-build.patch b/net-im/swift/files/swift-4.0.3-reproducible-build.patch
new file mode 100644
index 000000000000..951678f2303f
--- /dev/null
+++ b/net-im/swift/files/swift-4.0.3-reproducible-build.patch
@@ -0,0 +1,21 @@
+commit 39a684108ae5938105498e7744e70962308cde7b
+Author: kpcyrd <git@rxv.cc>
+Date: Wed Aug 25 23:30:17 2021 +0200
+
+ Reproducible Builds: Sort directory contents at build
+
+diff --git a/Swiften/SConscript b/Swiften/SConscript
+index f52637bdb..334f4489e 100644
+--- a/Swiften/SConscript
++++ b/Swiften/SConscript
+@@ -567,7 +567,9 @@ if env["SCONS_STAGE"] == "build" :
+ swiften_includes = []
+ swiften_public_includes = []
+ top_path = env.Dir("..").abspath
+- for root, dirs, files in os.walk(env.Dir(".").abspath) :
++ for root, dirs, files in sorted(os.walk(env.Dir(".").abspath)) :
++ dirs.sort()
++ files.sort()
+ if root.endswith("UnitTest") :
+ continue
+ for file in files :
diff --git a/net-im/swift/swift-4.0.3.ebuild b/net-im/swift/swift-4.0.3.ebuild
new file mode 100644
index 000000000000..36ac7c1ee8ed
--- /dev/null
+++ b/net-im/swift/swift-4.0.3.ebuild
@@ -0,0 +1,207 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1..2} luajit )
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit lua-single python-any-r1 scons-utils toolchain-funcs
+
+DESCRIPTION="An elegant, secure, adaptable and intuitive XMPP Client"
+HOMEPAGE="https://www.swift.im/"
+SRC_URI="
+ https://swift.im/git/${PN}/snapshot/${PN}-${P}.tar.bz2 -> ${P}.tar.bz2
+ https://dev.gentoo.org/~conikost/distfiles/patches/${P}-python3-compatibility.patch.gz
+"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="BSD BSD-1 CC-BY-3.0 GPL-3 OFL-1.1"
+SLOT="4/0"
+KEYWORDS="~amd64"
+IUSE="expat +icu +idn lua test zeroconf"
+REQUIRED_USE="
+ || ( icu idn )
+ lua? ( ${LUA_REQUIRED_USE} )
+"
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/boost:=
+ dev-libs/openssl:0=
+ net-libs/libnatpmp
+ net-libs/miniupnpc:=
+ sys-libs/zlib
+ expat? ( dev-libs/expat )
+ !expat? ( dev-libs/libxml2:2 )
+ icu? ( dev-libs/icu:= )
+ idn? ( net-dns/libidn:= )
+ lua? ( ${LUA_DEPS} )
+"
+
+DEPEND="
+ ${RDEPEND}
+ >=dev-util/scons-3.0.1-r3
+ 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}"/${PN}-4.0.2-boost-1.69-compatibility.patch
+ "${FILESDIR}"/${PN}-4.0.2-qt-5.15-compatibility.patch
+ "${FILESDIR}"/${PN}-4.0.3-gcc11-compatibility.patch
+ "${WORKDIR}"/${PN}-4.0.3-python3-compatibility.patch
+ "${FILESDIR}"/${PN}-4.0.3-reproducible-build.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
+ rm -fr Swift Slimber || die
+ if ! use lua; then rm -fr Sluift || die; fi
+ if ! use zeroconf; then rm -fr Limber || die; 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="no"
+ icu="$(usex icu)"
+ install_git_hooks="no"
+ # Use 'DISABLE' as an invalid lib name, so no editline lib is used,
+ # as current version is not compatible and compilation will fail.
+ editline_libname="DISABLE"
+ libidn_bundled_enable="false"
+ libminiupnpc_force_bundled="false"
+ libnatpmp_force_bundled="false"
+ link="$(tc-getCXX)"
+ linkflags="${LDFLAGS}"
+ max_jobs="no"
+ optimize="no"
+ qt="${T}/qt"
+ qt5="no"
+ swiften_dll="true"
+ swift_mobile="no"
+ target="native"
+ test="none"
+ try_avahi="no"
+ try_expat="$(usex expat)"
+ try_gconf="no"
+ try_libidn="$(usex idn)"
+ try_libxml="$(usex !expat)"
+ tls_backend="openssl"
+ unbound="no"
+ V="1"
+ valgrind="no"
+ zlib_bundled_enable="false"
+ )
+
+ if use lua; then
+ MYSCONS+=(
+ lua_includedir="$(lua_get_include_dir)"
+ lua_libdir="${EPREFIX}/usr/$(get_libdir)"
+ lua_libname="$(basename -s '.so' $(lua_get_shared_lib))"
+ )
+ fi
+}
+
+src_compile() {
+ local myesconsinstall=(
+ Swiften
+ $(usex lua Sluift '')
+ $(usex zeroconf Limber '')
+ )
+
+ 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 lua "SLUIFT_DIR=${ED}/usr" '')
+ $(usex lua "SLUIFT_INSTALLDIR=${ED}/usr" '')
+ "${ED}"
+ )
+
+ escons "${MYSCONS[@]}" "${myesconsinstall[@]}"
+
+ use zeroconf && dobin Limber/limber
+
+ einstalldocs
+}