aboutsummaryrefslogtreecommitdiff
path: root/pkgs/development/libraries/xmlsec
diff options
context:
space:
mode:
authorFabian Möller <fabianm88@gmail.com>2020-07-15 10:56:59 +0200
committerFabian Möller <fabianm88@gmail.com>2020-07-15 10:56:59 +0200
commitde3781374143fe28a5cbdf7e3d15b6b07a645363 (patch)
tree4a724801270f4195814f9609d86b860da3942b4d /pkgs/development/libraries/xmlsec
parentbe4406edeecf6e2225b6c6d96a24f89ed4b314e1 (diff)
xmlsec: add simple libxmlsec1 crypto loading test
Diffstat (limited to 'pkgs/development/libraries/xmlsec')
-rw-r--r--pkgs/development/libraries/xmlsec/default.nix26
1 files changed, 25 insertions, 1 deletions
diff --git a/pkgs/development/libraries/xmlsec/default.nix b/pkgs/development/libraries/xmlsec/default.nix
index 86cc6638fa61..a0b5da31aab0 100644
--- a/pkgs/development/libraries/xmlsec/default.nix
+++ b/pkgs/development/libraries/xmlsec/default.nix
@@ -1,6 +1,7 @@
{ stdenv, fetchurl, libxml2, gnutls, libxslt, pkgconfig, libgcrypt, libtool
-, openssl, nss }:
+, openssl, nss, lib, runCommandCC, writeText }:
+lib.fix (self:
let
version = "1.2.28";
in
@@ -41,6 +42,28 @@ stdenv.mkDerivation {
moveToOutput "lib/xmlsec1Conf.sh" "$dev"
'';
+ passthru.tests.libxmlsec1-crypto = runCommandCC "libxmlsec1-crypto-test"
+ {
+ nativeBuildInputs = [ pkgconfig ];
+ buildInputs = [ self libxml2 libxslt libtool ];
+ } ''
+ $CC $(pkg-config --cflags --libs xmlsec1) -o crypto-test ${writeText "crypto-test.c" ''
+ #include <xmlsec/xmlsec.h>
+ #include <xmlsec/crypto.h>
+
+ int main(int argc, char **argv) {
+ return xmlSecInit() ||
+ xmlSecCryptoDLLoadLibrary(argc > 1 ? argv[1] : 0) ||
+ xmlSecCryptoInit();
+ }
+ ''}
+
+ for crypto in "" gcrypt gnutls nss openssl; do
+ ./crypto-test $crypto
+ done
+ touch $out
+ '';
+
meta = {
homepage = http://www.aleksey.com/xmlsec;
downloadPage = https://www.aleksey.com/xmlsec/download.html;
@@ -50,3 +73,4 @@ stdenv.mkDerivation {
updateWalker = true;
};
}
+)