mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-14 08:54:46 +00:00
304d33e04d
Closes #357432
98 lines
2.2 KiB
Nix
98 lines
2.2 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchFromGitHub,
|
|
autoreconfHook,
|
|
pkg-config,
|
|
zlib,
|
|
readline,
|
|
openssl,
|
|
libiconv,
|
|
pcsclite,
|
|
libassuan,
|
|
libXt,
|
|
docbook_xsl,
|
|
libxslt,
|
|
docbook_xml_dtd_412,
|
|
darwin,
|
|
buildPackages,
|
|
nix-update-script,
|
|
withApplePCSC ? stdenv.hostPlatform.isDarwin,
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "opensc";
|
|
version = "0.26.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "OpenSC";
|
|
repo = "OpenSC";
|
|
rev = version;
|
|
sha256 = "sha256-EIQ9YpIGwckg/JjpK0S2ZYdFf/0YC4KaWcLXRNRMuzA=";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
pkg-config
|
|
autoreconfHook
|
|
];
|
|
buildInputs =
|
|
[
|
|
zlib
|
|
readline
|
|
openssl
|
|
libassuan
|
|
libXt
|
|
libxslt
|
|
libiconv
|
|
docbook_xml_dtd_412
|
|
]
|
|
++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.Carbon
|
|
++ (if withApplePCSC then [ darwin.apple_sdk.frameworks.PCSC ] else [ pcsclite ]);
|
|
|
|
env.NIX_CFLAGS_COMPILE = "-Wno-error";
|
|
|
|
configureFlags = [
|
|
"--enable-zlib"
|
|
"--enable-readline"
|
|
"--enable-openssl"
|
|
"--enable-pcsc"
|
|
"--enable-sm"
|
|
"--enable-man"
|
|
"--enable-doc"
|
|
"--localstatedir=/var"
|
|
"--sysconfdir=/etc"
|
|
"--with-xsl-stylesheetsdir=${docbook_xsl}/xml/xsl/docbook"
|
|
"--with-pcsc-provider=${
|
|
if withApplePCSC then
|
|
"${darwin.apple_sdk.frameworks.PCSC}/Library/Frameworks/PCSC.framework/PCSC"
|
|
else
|
|
"${lib.getLib pcsclite}/lib/libpcsclite${stdenv.hostPlatform.extensions.sharedLibrary}"
|
|
}"
|
|
(lib.optionalString (
|
|
stdenv.hostPlatform != stdenv.buildPlatform
|
|
) "XSLTPROC=${buildPackages.libxslt}/bin/xsltproc")
|
|
];
|
|
|
|
PCSC_CFLAGS = lib.concatStringsSep " " (
|
|
lib.optionals withApplePCSC [
|
|
"-I${darwin.apple_sdk.frameworks.PCSC}/Library/Frameworks/PCSC.framework/Headers"
|
|
"-I${lib.getDev pcsclite}/include/PCSC"
|
|
]
|
|
);
|
|
|
|
installFlags = [
|
|
"sysconfdir=$(out)/etc"
|
|
"completiondir=$(out)/etc"
|
|
];
|
|
|
|
passthru.updateScript = nix-update-script { };
|
|
|
|
meta = with lib; {
|
|
description = "Set of libraries and utilities to access smart cards";
|
|
homepage = "https://github.com/OpenSC/OpenSC/wiki";
|
|
license = licenses.lgpl21Plus;
|
|
platforms = platforms.all;
|
|
maintainers = [ maintainers.michaeladler ];
|
|
};
|
|
}
|