libsForQt5.qtkeychain: add libsecret support

qtkeychain uses pkg-config to detect whether libsecret is available,
otherwise it just builds a stub object file.

We need libsecret support to allow nextcloud-client storing passwords
on Freedesktop platforms.

I also fixed the Darwin dependencies not being used with Qt5,
even though the build did not complain.
This commit is contained in:
Jan Tojnar 2019-04-27 17:15:05 +02:00
parent dfd8f84aef
commit 48316aeec1
No known key found for this signature in database
GPG Key ID: 7FAB2A15F7A607A4

View File

@ -1,6 +1,7 @@
{ stdenv, fetchFromGitHub, cmake, qt4 ? null
{ stdenv, fetchFromGitHub, cmake, pkgconfig, qt4 ? null
, withQt5 ? false, qtbase ? null, qttools ? null
, darwin ? null
, libsecret
}:
assert withQt5 -> qtbase != null;
@ -22,11 +23,14 @@ stdenv.mkDerivation rec {
cmakeFlags = [ "-DQT_TRANSLATIONS_DIR=share/qt/translations" ];
nativeBuildInputs = [ cmake ];
nativeBuildInputs = [ cmake ]
++ stdenv.lib.optional (!stdenv.isDarwin) [ pkgconfig ] # for finding libsecret
;
buildInputs = if withQt5 then [ qtbase qttools ] else [ qt4 ]
buildInputs = stdenv.lib.optional (!stdenv.isDarwin) [ libsecret ]
++ (if withQt5 then [ qtbase qttools ] else [ qt4 ])
++ stdenv.lib.optional stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
CoreFoundation Security
CoreFoundation Security
])
;