[net-im/swift] sync with latest PR changes

This commit is contained in:
Robert Förster 2018-11-12 02:56:39 +01:00
parent 77bc4b8e13
commit a644fb10f6
1 changed files with 56 additions and 48 deletions

View File

@ -1,4 +1,4 @@
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -9,31 +9,34 @@ DESCRIPTION="An elegant, secure, adaptable and intuitive XMPP Client"
HOMEPAGE="https://www.swift.im/"
if [[ ${PV} = "9999" ]] ; then
EGIT_REPO_URI="https://github.com/swift/swift.git"
EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
EGIT_BRANCH="swift-4.x"
inherit git-r3
KEYWORDS=""
else
RESTRICT="mirror"
SRC_URI="https://swift.im/downloads/releases/swift-${PV}/swift-${PV}.tar.gz"
SRC_URI="https://swift.im/downloads/releases/${P}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="BSD BSD-1 CC-BY-3.0 GPL-3 OFL-1.1"
SLOT="0/4"
IUSE="client expat examples experimental ft gconf hunspell lua icu idn test tools unbound zeroconf"
REQUIRED_USE="ft? ( experimental )
SLOT="4/0"
IUSE="client expat gconf +icu +idn lua spell test zeroconf"
REQUIRED_USE="
|| ( icu idn )
gconf? ( client )
hunspell? ( client )"
spell? ( client )
"
RDEPEND="dev-lang/lua:=
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 )
experimental? ( dev-db/sqlite:3 )
client? ( dev-qt/qtcore:5
client? (
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtgui:5
dev-qt/qtmultimedia:5
@ -41,20 +44,27 @@ RDEPEND="dev-lang/lua:=
dev-qt/qtsvg:5
dev-qt/qtwidgets:5
dev-qt/qtwebkit:5
dev-qt/qtx11extras:5 )
ft? ( net-libs/libnatpmp
net-libs/miniupnpc:= )
hunspell? ( app-text/hunspell:= )
icu? ( dev-libs/icu:= )
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:= )
unbound? ( net-dns/unbound
net-libs/ldns )
zeroconf? ( net-dns/avahi )"
lua? ( dev-lang/lua:= )
spell? ( app-text/hunspell:= )
"
DEPEND="${RDEPEND}
DEPEND="
${RDEPEND}
>=dev-util/scons-3.0.1-r3
client? ( dev-qt/linguist-tools:5 )"
client? ( dev-qt/linguist-tools:5 )
test? ( net-dns/avahi )
"
# Tests don't run, as they fail with a "KeyError: 'CPPUNIT_FLAGS'".
RESTRICT="test"
DOCS=(
"DEVELOPMENT.md"
@ -65,24 +75,22 @@ DOCS=(
src_prepare() {
default
# 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
# 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
! use client && rm -fr Swift Slimber
! use lua && rm -fr Sluift
! use tools && rm -fr SwiftTools
! use zeroconf && rm -fr Limber
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; fi
# Remove '3rdParty', as the system libs should be used
rm -fr 3rdParty || die
}
src_configure() {
use client && local QT_SELECT=qt5
MYSCONS=(
ar="$(tc-getAR)"
allow_warnings="yes"
@ -93,14 +101,15 @@ src_configure() {
cc="$(tc-getCC)"
ccache="no"
ccflags="${CFLAGS}"
CPPUNIT_FLAGS="QA"
coverage="no"
cxx="$(tc-getCXX)"
cxxflags="${CXXFLAGS}"
debug="no"
distcc="no"
experimental="$(usex experimental)"
experimental_ft="$(usex ft)"
hunspell_enable="$(usex hunspell)"
experimental="yes"
experimental_ft="yes"
hunspell_enable="$(usex spell)"
icu="$(usex icu)"
install_git_hooks="no"
libidn_bundled_enable="false"
@ -110,18 +119,19 @@ src_configure() {
linkflags="${LDFLAGS}"
max_jobs="no"
optimize="no"
qt="${T}/qt"
qt5="$(usex client)"
swiften_dll="true"
swift_mobile="no"
target="native"
test="none"
try_avahi="$(usex zeroconf)"
try_avahi="$(usex client)"
try_expat="$(usex expat)"
try_gconf="$(usex gconf)"
try_libidn="$(usex idn)"
try_libxml="$(usex !expat)"
tls_backend="openssl"
unbound="$(usex unbound)"
unbound="no"
V="1"
valgrind="no"
zlib_bundled_enable="false"
@ -129,16 +139,15 @@ src_configure() {
}
src_compile() {
local MYSCONSTARGETS=(
local myesconsinstall=(
Swiften
$(usex client Slimber '')
$(usex client Swift '')
$(usex lua Sluift '')
$(usex tools SwifTools '')
$(usex zeroconf Limber '')
$(usex zeroconf "$(usex client Slimber '')" '')
)
escons "${MYSCONS[@]}" "${MYSCONSTARGETS[@]}"
escons "${MYSCONS[@]}" "${myesconsinstall[@]}"
}
src_test() {
@ -146,22 +155,21 @@ src_test() {
}
src_install() {
local mysconsinstall=(
"${MYSCONS[@]}"
SLUIFT_DIR="${ED%/}/usr"
local myesconsinstall=(
SWIFTEN_INSTALLDIR="${ED%/}/usr"
SWIFTEN_LIBDIR="${ED%/}/usr/$(get_libdir)"
"${ED%/}"
$(usex client "SWIFT_INSTALLDIR=${ED%/}/usr" '')
$(usex lua "SLUIFT_DIR=${ED%/}/usr" '')
$(usex lua "SLUIFT_INSTALLDIR=${ED%/}/usr" '')
"${ED}"
)
escons "${mysconsinstall[@]}"
escons "${MYSCONS[@]}" "${myesconsinstall[@]}"
use client && newbin Slimber/CLI/slimber slimber-cli
use client && newbin Slimber/Qt/slimber slimber-qt
use lua && dobin Sluift/exe/sluift
use zeroconf && dobin Limber/limber
local HTML_DOCS=( "Documentation/SwiftenDevelopersGuide/Swiften Developers Guide.xml" )
einstalldocs
}