# -*- 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: Portfile 117138 2014-02-17 14:58:54Z nicos@macports.org $

PortSystem          1.0
PortGroup           kde4 1.1
PortGroup           muniversal 1.0
PortGroup           compiler_blacklist_versions 1.0

name                kdevplatform
version             1.6.0
categories          kde kde4
platforms           darwin
license             GPL-2+
maintainers         nicos openmaintainer

description         KDE libraries for IDE programs
long_description    KDevPlatform is a free, open source set of libraries \
                    that can be used as a foundation for IDE-like \
                    programs. It is programing-language independent, and \
                    is planned to be used by programs like: KDevelop, \
                    Quanta, Kile, KTechLab ... etc.

set kdevelopversion 4.6.0

homepage            http://www.kdevelop.org/
master_sites        kde:stable/kdevelop/${kdevelopversion}/src/
distname            ${name}-${version}

checksums           rmd160  6c212795effdd3ec0077795e37884edead916f06 \
                    sha256  cdf7c88ca8860258f46e41d2107c826a307212fd041345bee54fbd70c9794f80

use_xz              yes

depends_lib-append  port:kdelibs4 \
                    port:boost \
                    port:grantlee \
                    port:sparsehash

compiler.blacklist-append {clang < 500}
compiler.blacklist-append macports-clang-3.1 macports-clang-3.0
compiler.blacklist-append macports-llvm-gcc-4.2 llvm-gcc-4.2

#Binaries do not link to openssl, nor use the ssl backend of kdelibs4
license_noconflict  openssl

post-extract {
    file delete -force ${worksrcpath}/util/google
}

pre-configure {
    #Suppress these arguments from cmake portgroup 
    #which break compilation for kdevplatform
    configure.args-delete   -DCMAKE_OSX_DEPLOYMENT_TARGET="" \
                            -DCMAKE_OSX_SYSROOT=/
}

#1. Deactivating subversion detection at configure to avoid hidden \
#   use of system one (ticket #35185)
patchfiles-append   patch-pluginsCMakeLists.diff \
                    patch-hash.diff

variant subversion description {Add subversion support for kdevelop} {
    depends_lib-append  port:subversion  
    patchfiles-delete   patch-pluginsCMakeLists.diff
}

if {${configure.compiler} ne "clang"} {
    #Adding -fexceptions, required by gcc compilers
    patchfiles-append   patch-languageCMakeLists.diff
} elseif {${os.platform} eq "darwin" && ${os.major} >= 11} {
    #Using c++0x for Lion and higher in case of clang 64-bit
    lappend merger_configure_args(x86_64)   -DCMAKE_CXX_FLAGS='-stdlib=libc++' -DHAVE_UNORDERED_MAP=1
    if {${build_arch} eq "x86_64" && ![variant_isset universal]} {
        configure.args-append               -DCMAKE_CXX_FLAGS="-stdlib=libc++" -DHAVE_UNORDERED_MAP=1
    }
}

livecheck.url       http://kde.mirrors.hoobly.com/stable/kdevelop/${kdevelopversion}/src
livecheck.regex     ${name}-(\\d+\\.\\d+\\.\\d+)${extract.suffix}
