diff --git a/net-im/swift/Manifest b/net-im/swift/Manifest new file mode 100644 index 0000000..14142f8 --- /dev/null +++ b/net-im/swift/Manifest @@ -0,0 +1 @@ +DIST swift-3.0.tar.gz 11084214 SHA256 8aa490431190294e62a9fc18b69ccc63dd0f561858d7d0b05c9c65f4d6ba5397 SHA512 3d635e9a904a48a8553e153627242e44fad5d57c48152d3c698cdf73363bdc1c566a13692c7fb2d70f0f6b773f7ff9c2cd717687501940e3b8a30b6bebc44f63 WHIRLPOOL 6f683c73b4236fa97cb40b282af9210fc427375de8dd5fbf7b5c8f1c549899030e4db2ec40270478d6c61e0e70ad60d4d84d17aaae89c57458e95cf30d5fda87 diff --git a/net-im/swift/swift-3.0.ebuild b/net-im/swift/swift-3.0.ebuild new file mode 100644 index 0000000..5bbfed0 --- /dev/null +++ b/net-im/swift/swift-3.0.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="6" + +inherit scons-utils toolchain-funcs linux-info + +if [[ ${PV} = "9999" ]] ; then + EGIT_REPO_URI="git://swift.im/swift" + inherit git-r3 + KEYWORDS="" +else + RESTRICT="mirror" + SRC_URI="http://swift.im/downloads/releases/${P}/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Your friendly chat client" +HOMEPAGE="http://swift.im/" + +LICENSE="GPL-3" +SLOT="0" +IUSE="debug doc +expat gconf icu static-libs test upnp zeroconf" + +# TODO: Swiften deps: qt, ldns, unbound. Sluift: lua, +RDEPEND="dev-libs/boost:= + dev-libs/openssl:0 + net-dns/libidn + sys-libs/zlib + zeroconf? ( net-dns/avahi ) + expat? ( dev-libs/expat ) + !expat? ( dev-libs/libxml2 ) + gconf? ( gnome-base/gconf dev-libs/glib:2 ) + icu? ( dev-libs/icu:= ) + upnp? ( net-libs/libnatpmp net-libs/miniupnpc:= )" +DEPEND="${RDEPEND} + doc? ( + >=app-text/docbook-xsl-stylesheets-1.75 + >=app-text/docbook-xml-dtd-4.5 + dev-libs/libxslt + )" +LANGS="ca de es fr gl he hu nl pl ru sk sv" +for X in ${LANGS} ; do + IUSE="${IUSE} linguas_${X}" +done + +scons_targets=() +set_scons_targets() { + scons_targets=( Swiften ) + use zeroconf && scons_targets+=( Slimber ) +} + +src_prepare() { + # remove all bundled packages to ensure + # consistency of headers and linked libraries + rm -rf 3rdparty || die + + for x in ${LANGS}; do + if use !linguas_${x}; then + rm -f Swift/Translations/swift_${x}.ts || die + fi + done + + if use !zeroconf; then + rm -rf Slumber || die + fi + + rm -rf Swift || die + + sed -i BuildTools/SCons/Tools/qt4.py \ + -e "s/linux2/linux${KV_MAJOR}/" \ + || die + eapply_user +} + +src_configure() { + MYSCONS=( + cc="$(tc-getCC)" + cxx="$(tc-getCXX)" + ccflags="${CFLAGS}" + cxxflags="${CXXFLAGS}" + link="$(tc-getCXX)" + linkflags="${LDFLAGS}" + ar="$(tc-getAR)" + swiften_dll=$(usex static-libs false true) + zlib_includedir=/usr/include + zlib_libdir=/$(get_libdir) + {boost,libidn,zlib}_bundled_enable=false + icu=$(usex icu true false) + try_avahi=$(usex zeroconf true false) + try_gconf=$(usex gconf true false) + try_expat=$(usex expat true false) + try_libxml=$(usex expat false true) + experimental_ft=$(usex upnp true false) + ) +} + +src_compile() { + set_scons_targets + + escons V=1 "${MYSCONS[@]}" "${scons_targets[@]}" +} + +src_test() { + set_scons_targets + + escons "${MYSCONS[@]}" test=unit QA +} + +src_install() { + set_scons_targets + + escons "${MYSCONS[@]}" SWIFT_INSTALLDIR="${D}/usr" SWIFTEN_INSTALLDIR="${D}/usr" "${D}" "${scons_targets[@]}" + + if use zeroconf ; then + newbin Slimber/Qt/slimber slimber-qt + newbin Slimber/CLI/slimber slimber-cli + fi + + use doc && dohtml "Documentation/SwiftenDevelopersGuide/Swiften Developers Guide.html" +}