557644a125
The `swiften` XMPP library was broken as of 2019. This commit fixes it, by copying a patch from the Arch Linux PKGBUILD (https://git.archlinux.org/svntogit/community.git/tree/trunk?h=packages/swift) and by using the same scons flags in that PKGBUILD. Additionally, we use the SWIFTEN_INSTALLDIR env variable to actually put something in the output. Of note is the flag swiften_dll=1, which means that the library is now built dynamically.
42 lines
1.1 KiB
Nix
42 lines
1.1 KiB
Nix
{ stdenv, python, fetchurl, openssl, boost, scons }:
|
|
stdenv.mkDerivation rec {
|
|
pname = "swiften";
|
|
version = "4.0.2";
|
|
|
|
nativeBuildInputs = [ scons.py2 ];
|
|
buildInputs = [ python ];
|
|
propagatedBuildInputs = [ openssl boost ];
|
|
|
|
src = fetchurl {
|
|
url = "https://swift.im/downloads/releases/swift-${version}/swift-${version}.tar.gz";
|
|
sha256 = "0w0aiszjd58ynxpacwcgf052zpmbpcym4dhci64vbfgch6wryz0w";
|
|
};
|
|
|
|
patches = [ ./scons.patch ./build-fix.patch ];
|
|
|
|
sconsFlags = [
|
|
"openssl=${openssl.dev}"
|
|
"boost_includedir=${boost.dev}/include"
|
|
"boost_libdir=${boost.out}/lib"
|
|
"boost_bundled_enable=false"
|
|
"max_jobs=1"
|
|
"optimize=1"
|
|
"debug=0"
|
|
"swiften_dll=1"
|
|
];
|
|
preInstall = ''
|
|
installTargets="$out"
|
|
installFlags+=" SWIFTEN_INSTALLDIR=$out"
|
|
'';
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "An XMPP library for C++, used by the Swift client";
|
|
homepage = "http://swift.im/swiften.html";
|
|
license = licenses.gpl2Plus;
|
|
platforms = platforms.linux;
|
|
maintainers = [ maintainers.twey ];
|
|
};
|
|
}
|