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

PortSystem          1.0
PortGroup           muniversal 1.0

name                libvpx
version             1.1.0
categories          multimedia
maintainers         nomaintainer
platforms           darwin
license             BSD

description         VP8 video codec
long_description    VP8 is a highly efficient video compression technology.

homepage            http://webmproject.org
master_sites        googlecode:webm
use_bzip2           yes
distname            ${name}-v${version}

checksums           rmd160  6f462c1421a51af77d3401ea4c1eaf0dbeaf4791 \
                    sha256  9ce074cf4b3bcd9a49ff93e05485b71c273bfc3685a305e55a0e7fa51beb72c5

depends_build       port:yasm

# patches for: 10.6; correct "universal" arch default selection; 'sed' scripts.
patchfiles          patch-build-make-configure.sh.diff

# Use the correct SDK
patchfiles-append   configure.patch

# patch for mountain lion compatibility, see https://gerrit.chromium.org/gerrit/#change,26027 for upstream
patchfiles-append   patch-build-make-gen_asm_deps.sh.diff

# As of 0.9.1: doesn't handle shared libraries or debug properly on darwin;
# doesn't install docs or examples correctly, so disable them.
configure.args      --enable-vp8 \
                    --enable-internal-stats \
                    --enable-pic \
                    --enable-postproc \
                    --enable-multithread \
                    --enable-runtime-cpu-detect \
                    --disable-install-docs \
                    --disable-debug-libs \
                    --disable-examples

configure.env       LD="${configure.cc}"

# add in when docs are installed correctly
#variant docs description {Build documentation} {
#    depends_build-append path:bin/php:php5 port:doxygen
#    configure.args-delete --disable-install-docs
#    configure.args-append --enable-install-docs
#}

platform darwin 8 {
    # Tiger's make 3.80 experiences "virtual memory exhausted" during destroot
    depends_build-append    port:gmake
    build.cmd               ${prefix}/bin/gmake
}

build.target
build.args          verbose=1

# set configure parameters depending on if universal or not
set my_targets(ppc)     ppc32
set my_targets(ppc64)   ppc64
set my_targets(i386)    x86
set my_targets(x86_64)  x86_64
if {[variant_isset universal]} {
    # clear universal flags; configure will determine them.
    configure.universal_cppflags
    configure.universal_cflags
    configure.universal_cxxflags
    configure.universal_ldflags
    configure.universal_args-delete --disable-dependency-tracking
    foreach my_arch ${configure.universal_archs} {
        set merger_host(${my_arch}) ""
        if {[info exists my_targets(${my_arch})]} {
            set merger_configure_args(${my_arch}) --target=$my_targets(${my_arch})-${os.platform}-gcc
        }
    }
} else {
    # specify only the single target, otherwise 'configure' will try
    # for a universal install.
    if {[info exists my_targets(${build_arch})]} {
        configure.args-append --target=$my_targets(${build_arch})-${os.platform}-gcc
    } else {
        configure.args-append --target=${os.arch}-${os.platform}-gcc
    }
}