Files

117 lines
4.3 KiB
Tcl

# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
PortGroup github 1.0
PortGroup legacysupport 1.1
PortGroup openssl 1.0
# Needed for strnlen and MAP_ANONYMOUS
legacysupport.newest_darwin_requires_legacy 14
name opensc
github.setup OpenSC OpenSC 0.27.1
github.tarball_from releases
revision 0
checksums rmd160 cf970f85cd1c96c01aed6ff6397a061a960ae9e1 \
sha256 976f4a23eaf3397a1a2c3a7aac80bf971a8c3d829c9a79f06145bfaeeae5eca7 \
size 2470990
categories security
license LGPL-2.1
maintainers nomaintainer
description Tools and libraries for smart cards
long_description OpenSC provides a set of libraries and utilities to \
work with smart cards. Its main focus is on cards that \
support cryptographic operations, and facilitate their \
use in security applications such as authentication, \
mail encryption and digital signatures. \
OpenSC implements the PKCS#11 API so applications \
supporting this API (such as Mozilla Firefox and \
Thunderbird) can use it. \
On the card OpenSC implements the PKCS#15 standard and \
aims to be compatible with every software/card that \
does so, too.
distname opensc-${version}
patch.pre_args-replace -p0 -p1
patchfiles-append patch-winscard.diff
#patchfiles-append patch-pgp-and-tools.diff
# https://trac.macports.org/ticket/65709
compiler.blacklist-append *gcc-4.* {clang < 421} *clang-3.*
compiler.c_standard 2011
# Needed to enable C extensions, specifically memset_s
configure.cflags-append \
-D__STDC_WANT_LIB_EXT1__=1
configure.checks.implicit_function_declaration.whitelist-append \
strchr
depends_build-append \
port:docbook-xsl-nons \
port:gengetopt \
port:help2man \
port:libxslt \
port:pkgconfig
depends_lib-append \
port:openpace \
port:zlib
use_autoreconf yes
configure.args-append \
--disable-openpace \
--disable-readline \
--disable-silent-rules \
--disable-static \
--disable-strict \
--enable-doc \
--enable-pcsc \
--enable-sm \
--with-xsl-stylesheetsdir=${prefix}/share/xsl/docbook-xsl-nons
pre-configure {
reinplace -W ${worksrcpath} \
"s|No Git revision info available|OpenSC-${version} (MacPorts)|g" \
configure.ac
set pkcs11_provider opensc-pkcs11.so
if {[variant_isset p11kit]} {
set pkcs11_provider p11-kit-proxy.dylib
}
configure.args-append --with-pkcs11-provider=${prefix}/lib/${pkcs11_provider}
}
post-destroot {
system "${worksrcpath}/MacOSX/libtool-bundle ${destroot}${prefix}/lib/opensc-pkcs11.so ${destroot}${prefix}/lib"
# Install module config so opensc will be auto-discovered by p11-kit.
set p11_module_configs ${prefix}/share/p11-kit/modules
xinstall -d ${destroot}${p11_module_configs}
xinstall -m 644 ${filespath}/p11kit-opensc.module ${destroot}${p11_module_configs}/opensc.module
}
variant eac description {Enable Extended Access Control (EAC) v2 support} {
depends_lib-append port:openpace
configure.args-replace --disable-openpace --enable-openpace
}
variant p11kit description {Use p11-kit as default PKCS#11 module} {
depends_run port:p11-kit
}
variant readline description {Enable readline support} {
depends_lib-append port:readline
configure.args-replace --disable-readline --enable-readline
}
default_variants +readline
# Skip -rc and other pre-release tags
github.livecheck.regex {([\d.]+)}