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

epoch               1
github.setup        libproxy libproxy 0.5.9
revision            0

categories          net
license             LGPL-2.1+
maintainers         {devans @dbevans} {mascguy @mascguy} openmaintainer

description         A library that provides automatic proxy configuration management.
long_description    Libproxy exists to answer the question: Given \
                    a network resource, how do I reach it? It handles all \
                    the details, enabling you to get back to programming.
homepage            https://libproxy.github.io/libproxy

checksums           rmd160  35c1118e961666ca15726ac9ffa899f30cd7355d \
                    sha256  aed5d3ce5cfbf394595d79c717b04b61a6956540366bcbd0a73e2ae77ccfedea \
                    size    58147

# Disable unexpected download of subprojects
meson.wrap_mode     nodownload

# Ensure manpages are only installed when docs are enabled
patchfiles-append \
                    patch-tools-man.diff

depends_build-append \
                    path:bin/pkg-config:pkgconfig

depends_lib-append  \
                    path:lib/pkgconfig/glib-2.0.pc:glib2 \
                    port:gobject-introspection \
                    port:gsettings-desktop-schemas \
                    path:lib/pkgconfig/icu-uc.pc:icu

# https://trac.macports.org/ticket/63267
compiler.cxx_standard 2011

# Fix an issue with clang-900 (Xcode 9) using the Sierra SDK, <rdar://problem/31263056>
configure.cppflags-append -D_DARWIN_C_SOURCE=1

configure.args-append \
                    -Dcurl=false \
                    -Dconfig-env=false \
                    -Dconfig-gnome=true \
                    -Dconfig-kde=true \
                    -Dconfig-osx=false \
                    -Dconfig-sysconfig=false \
                    -Dconfig-windows=false \
                    -Dconfig-xdp=false \
                    -Ddocs=false \
                    -Dintrospection=true \
                    -Dpacrunner-duktape=false \
                    -Drelease=true \
                    -Dtests=false \
                    -Dvapi=false

subport ${name}-vapi {
    platforms       {darwin any}
    supported_archs noarch

    depends_lib-prepend \
                    port:${name}

    depends_lib-append \
                    path:bin/vala:vala

    configure.args-replace \
                    -Dvapi=false \
                    -Dvapi=true

    # Deconflict with parent port contents
    post-destroot {
        ui_info "${subport}: removing files from parent"

        foreach f [exec port -q contents ${name}] {
            ui_info "${subport}: deleting file: ${f}"
            delete ${destroot}${f}
        }
    }
}

if {${subport} eq ${name}} {
    variant duktape description {Build with support for PAC Runner Duktape} {
        depends_lib-append \
                    port:duktape

        configure.args-replace \
                    -Dpacrunner-duktape=false \
                    -Dpacrunner-duktape=true
    }

    variant curl description {Build with support for curl} {
        depends_lib-append \
                    port:curl

        configure.args-replace \
                    -Dcurl=false \
                    -Dcurl=true
    }

    variant tests description {Enable building tests} {
        configure.args-replace \
                    -Dtests=false \
                    -Dtests=true

        test.run    yes
    }
}
