# -*- 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.7.7 v
revision        0

checksums       rmd160  012b5c6e4b772b59d41402ac09a5e807ed0a5b8f \
                sha256  879acd83c3399c7caaee73fe5f7418e06087ab2aaf40af3e99b9e29beb29faee \
                size    5480580

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
