# -*- Mode: Tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:et:sw=4:ts=4:sts=4
categories devel security
# libs are LGPL, executables and docs are GPL
license {GPL-2+ LGPL-2.1+}
maintainers {mps @Schamschula} openmaintainer
description Crypto library
homepage https://www.gnupg.org/
Libgcrypt is a general purpose cryptographic library originally \
based on code from GnuPG. It provides functions for all \
cryptographic building blocks: symmetric cipher algorithms and \
modes, hash algorithms, MACs, public key algorithms, large integer \
functions, random numbers and a lot of supporting functions.
checksums rmd160 e41614adce71ef149855b3ae97110f24c0ab4bfe \
sha256 3b4a2a94cb637eff5bdebbcaf46f4d95c4f25206f459809339cdada0eb577ac3 \
depends_lib port:libgpg-error
patchfiles yosemite-libtool.patch
configure.args --disable-asm
# Build fix for compilers that default to c99 (clang)
configure.cflags-append "-std=gnu89"
# Some versions of gcc fail to build this for i386 including:
# gcc-4.0 from Xcode 3.1.6 (5493) -- Note that gcc-4.0 from Xcode 2.5 (5370) works
# gcc-4.2 from Xcode 3.1.6 (5577)
# gcc-4.2 from Xcode 3.2.6 (5666.3)
# rijndael.c: In function 'do_aesni_ctr':
# rijndael.c:895: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
# rijndael.c:895: error: 'asm' operand has impossible constraints
if {${build_arch} eq "i386" || ([variant_isset universal] && [lsearch ${universal_archs} i386] != -1)} {
if {[vercmp ${xcodeversion} 3.0] >= 0} {
compiler.blacklist-append gcc-4.0
compiler.blacklist-append gcc-4.2
if {[string match "*clang*" ${configure.compiler}]} {
# libgcrypt-1.5.0 does some ugly stuff with their udiv_qrnnd macro in mpih-div.c
# error: invalid use of a cast in a inline asm context requiring an l-value: remove the cast
configure.cflags-append "-fheinous-gnu-extensions"
if {[variant_isset universal]} {
reinplace "s/@LIBGCRYPT_CONFIG_HOST@/${os.arch}-apple-darwin${os.major}/" ${worksrcpath}/src/libgcrypt-config.in
set docdir ${prefix}/share/doc/${name}
xinstall -d ${destroot}${docdir}
xinstall -m 644 -W ${worksrcpath} AUTHORS COPYING COPYING.LIB ChangeLog \
NEWS README THANKS TODO VERSION ${destroot}${docdir}
livecheck.url https://gnupg.org/ftp/gcrypt/${name}/
livecheck.regex ${name}-(\\d+\\.\\d+\\.\\d+)