# -*- 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

set my_name         gnupg
name                ${my_name}1
version             1.4.23
revision            3
categories          mail security
license             GPL-3+
installs_libs       no
maintainers         {ionic @Ionic} openmaintainer
description         GNU Privacy Guard version 1.4
long_description    GnuPG is a complete and free replacement for PGP. Because \
                    it does not use the patented IDEA algorithm, it can be used \
                    without any restrictions. GnuPG is a RFC4880 (OpenPGP) \
                    compliant application.
homepage            https://www.gnupg.org
platforms           darwin freebsd sunos
distname            ${my_name}-${version}
master_sites        ${my_name}:${my_name}

use_bzip2           yes

checksums           rmd160  087c494ff78bd1e85873ac383e0c6e236b6a9869 \
                    sha256  c9462f17e651b6507848c08c430c791287cd75491f8b5a8b50c6ed46b12678ba \
                    size    3749353

# C code only
compiler.cxx_standard

configure.args      --infodir=${prefix}/share/info \
                    --docdir=${prefix} \
                    --disable-asm \
                    --with-libiconv-prefix=${prefix} \
                    --with-libintl-prefix=${prefix} \
                    --with-zlib=${prefix} \
                    --with-bzip2=${prefix} \
                    --with-libusb=${prefix} \
                    --with-ldap=${prefix} \
                    --with-libcurl=${prefix} \
                    --program-suffix=1

depends_build       port:gettext
depends_lib         port:libiconv \
                    port:gettext-runtime \
                    port:readline \
                    port:zlib \
                    port:bzip2 \
                    port:libusb-compat \
                    path:lib/libldap.dylib:openldap \
                    port:curl

test.run            yes
test.dir            ${worksrcpath}/checks
test.target         check

# clang defaults to c99, and gnupg doesn't play nicely
if {[string match *clang* ${configure.compiler}]} {
    configure.cflags-append -std=gnu89
}

platform sunos {
    configure.args-delete --disable-asm
}

notes {
    This port is the legacy 1.4 release of GnuPG.

    While this release is still maintained, it is also deprecated\
    and less useful than it was before, since agent and dirmngr\
    support have been removed.

    Basic functionality like signature checking or encryption\
    and decryption might still work, if the algorithms employed\
    are supported, but users are highly recommended to switch to\
    the modern version of GnuPG, provided by the gnupg2 port.

    This port can coexist with the modern version.\
    All binaries are postfixed with "1", and all dependent\
    ports have adapted to the new names.

    Note: This means that this revision is NOT BACKWARDS-COMPATIBLE\
    with gnupg1 @1.4.23_2 or earlier. If you have any local scripts that\
    require GnuPG 1.4 and reference (e.g.) "gpg" or "gpgv", YOU MUST MODIFY\
    those references to (e.g.) "gpg1" or "gpgv1" instead.
}

livecheck.type      regex
livecheck.url       https://www.gnupg.org/ftp/gcrypt/${my_name}/
livecheck.regex     ${my_name}-(1(?:\\.\\d+)+)
