# -*- 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 clang_dependency 1.0
PortGroup github 1.0
PortGroup muniversal 1.0

github.setup    libarchive libarchive 3.8.3 v
revision        0

checksums       rmd160  8f1612a12d6b00971c96daec6ecfd1e3bc80e0e2 \
                sha256  90e21f2b89f19391ce7b90f6e48ed9fde5394d23ad30ae256fb8236b38b99788 \
                size    5990552

github.tarball_from releases

categories      archivers
license         BSD
maintainers     {toby @tobypeterson} openmaintainer
description     functions for reading and writing streaming archives
long_description \
    Libarchive is a programming library that can create and \
    read several different streaming archive formats, including \
    most popular tar variants, several cpio formats, 7zip and rar. It can \
    also write shar archives.

use_xz          yes

homepage        https://libarchive.org/

depends_lib     port:bzip2 port:zlib port:libxml2 port:xz \
                port:lzo2 port:libiconv \
                port:lz4 port:zstd \
                port:libb2

patchfiles      fix_pc_file.patch

platform darwin 8 {
    patchfiles-append   patch-libarchive-3.5-fix-tests-tiger.diff
}

depends_build   port:pkgconfig

configure.args  --enable-bsdtar=shared --enable-bsdcpio=shared \
                --disable-silent-rules --without-nettle \
                --without-openssl --with-lzo2 --with-zstd

configure.checks.implicit_function_declaration.whitelist-append strchr

post-destroot {
    xinstall -d ${destroot}${prefix}/libexec/${subport}
    foreach program [glob -tails -directory ${destroot}${prefix}/bin *] {
        ln -s ${prefix}/bin/${program} ${destroot}${prefix}/libexec/${subport}
    }
}

test.run        yes
test.target     check
