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

github.setup        lz4 lz4 1.10.0 v
revision            0
checksums           rmd160  f06c82708a470a47316e129b46ba03dcff9c3f31 \
                    sha256  537512904744b35e232912055ccf8ec66d768639ff3abe5788d90d792ec5f48b \
                    size    387114

categories          archivers
maintainers         {ryandesign @ryandesign} openmaintainer
license             BSD GPL-2+

description         Extremely Fast Compression algorithm
long_description    LZ4 is a very fast lossless compression algorithm, \
                    providing compression speed at 400 MB/s per core, \
                    scalable with multi-cores CPU. It also features an \
                    extremely fast decoder, with speed in multiple GB/s per \
                    core, typically reaching RAM speed limits on multi-core \
                    systems.

homepage            http://www.lz4.org/
github.tarball_from archive

patchfiles          gen_manual.patch

use_configure       no

compiler.c_standard 1999

# bench_functions.c: error: ‘for’ loop initial declaration used outside C99 mode
configure.cflags-append     -std=c99

build.args-append           CC=${configure.cc} \
                            CXX=${configure.cxx} \
                            PREFIX=${prefix} \
                            OS=Darwin
destroot.args-append        CC=${configure.cc} \
                            CXX=${configure.cxx} \
                            PREFIX=${prefix} \
                            OS=Darwin

if {!${universal_possible} || ![variant_isset universal]} {
    build.args-append       CFLAGS="${configure.cflags} [get_canonical_archflags cc]" \
                            CXXFLAGS="${configure.cxxflags} [get_canonical_archflags cxx]"
    destroot.args-append    CFLAGS="${configure.cflags} [get_canonical_archflags cc]" \
                            CXXFLAGS="${configure.cxxflags} [get_canonical_archflags cxx]"
} else {
    foreach arch ${configure.universal_archs} {
        lappend merger_build_args(${arch})      CFLAGS="${configure.cflags} -arch ${arch}" \
                                                CXXFLAGS="${configure.cxxflags} -arch ${arch}"
        lappend merger_destroot_args(${arch})   CFLAGS="${configure.cflags} -arch ${arch}" \
                                                CXXFLAGS="${configure.cxxflags} -arch ${arch}"
    }
}
