# $Id: Portfile 100816 2012-12-27 09:39:40Z ryandesign@macports.org $

PortSystem      1.0

name            tk
version         8.6.0
revision        1
categories      x11
license         Tcl/Tk
maintainers     mww openmaintainer
description     Tcl Tool Kit
homepage        http://www.tcl.tk/
long_description \
  This is Tk version ${version}, a GUI toolkit for Tcl. The best way to get \
  started with Tcl is to read ``Tcl and the Tk Toolkit'' by John K.         \
  Ousterhout, Addison-Wesley, ISBN 0-201-63337-X.

platforms       darwin

master_sites    sourceforge:tcl
dist_subdir     tcltk
distname        ${name}${version}-src

# suck in Tcl as well so we can use it internally.
distfiles-append    tcl${version}-src${extract.suffix}

checksums           tk${version}-src.tar.gz \
                    rmd160  c5f94bb01c6cf75a7848a0f031b3f12d44a11e7c \
                    sha256  5c708b2b6f658916df59190b27750fa1ea2bc10992108e10f961c0700f058de6 \
                    tcl${version}-src.tar.gz \
                    rmd160  656d100ad89d3c63596159b43c36f0fbd0507aca \
                    sha256  354422b9c4791685499123b2dfe01faa98b555c08906c010cb4449ddc75dcade

depends_build   port:pkgconfig

# force usage of MacPorts Tcl
depends_lib \
    port:tcl \
    port:Xft2 \
    port:xorg-libXScrnSaver \
    port:fontconfig

worksrcdir      ${name}${version}/unix

patch.dir           ${workpath}/${name}${version}
patchfiles          patch-unix-Makefile.in.diff

post-patch {
    reinplace s|@TCL_SRC_DIR@|${workpath}/tcl${version}/|g ${worksrcpath}/Makefile.in
}

configure.args      --mandir=${prefix}/share/man --with-tcl=${prefix}/lib
configure.cppflags  -I${workpath}/tcl${version}/generic
configure.ldflags   -L${worksrcpath} -L${prefix}/lib -lfontconfig

destroot.destdir    INSTALL_ROOT=${destroot}
post-destroot {
    ln -s wish8.6 ${destroot}${prefix}/bin/wish
    ln -s libtk8.6.dylib ${destroot}${prefix}/lib/libtk.dylib
}

if {${configure.build_arch} == "x86_64" || ${configure.build_arch} == "ppc64"} {
    configure.args-append   --enable-64bit
}

if {${os.platform} == "darwin" && ${os.subplatform} == "macosx" && ${os.major} >= 10} {
    variant quartz conflicts x11 {
        depends_lib-delete port:Xft2 port:xorg-libXScrnSaver port:fontconfig
        # tk.h still includes and uses types from X11/Xlib.h
        depends_lib-append port:xorg-libX11
        configure.ldflags-delete    -lfontconfig
        configure.args-append   --enable-aqua
        post-destroot {
            delete ${destroot}${prefix}/include/X11
        }
    }

    variant x11 conflicts quartz {}

    if {![variant_isset x11]} {
        default_variants +quartz
    }
}

platform darwin {
    configure.args-append   tcl_cv_type_64bit="long long"
}

livecheck.type  regex
livecheck.regex {Tcl/Tk (\d+(?:\.\d+)*)</a>}
