# -*- 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 105874 2013-05-09 02:05:12Z nicos@macports.org $

PortSystem          1.0
PortGroup           kde4    1.1

name                akonadi
version             1.9.2
categories          devel kde kde4
maintainers         nicos openmaintainer
license             LGPL-2+
description         A personal information management storage service.
long_description    Akonadi is an extensible cross-desktop storage service \
for PIM data and metadata providing concurrent read, write, and query access.
platforms           darwin
homepage            http://community.kde.org/KDE_PIM/Akonadi
master_sites        kde:stable/${name}/src/
use_bzip2           yes

checksums           rmd160  458cbb27de4bd158b9875b5ac72d05ec6cf155eb \
                    sha256  e712f3ee59731d613935df78df1cd65f80680d86d1f6642ff118061cd461bfd9

#Circumvent new parsing errors from moc in boost with boost 1.53
patchfiles          patch-akapplication.diff

depends_lib-append  port:soprano \
                    port:boost \
                    port:shared-mime-info

configure.args-append  -DPOSTGRES_PATH=Off

variant mysql5 \
   conflicts sqlite mysql51 mysql55 mariadb percona \
   description {build with mysql5 port} {

   depends_lib-append      port:qt4-mac-mysql5-plugin
   configure.args-append   -DDATABASE_BACKEND=MYSQL \
                           -DMYSQLD_EXECUTABLE=${prefix}/libexec/mysqld
}

variant mysql51 \
   conflicts sqlite mysql5 mysql55 mariadb percona \
   description {build with mysql51 port} {

   depends_lib-append      port:qt4-mac-mysql51-plugin
   configure.args-append   -DDATABASE_BACKEND=MYSQL \
                           -DMYSQLD_EXECUTABLE=${prefix}/lib/mysql51/bin/mysqld
}

variant mysql55 \
   conflicts sqlite mysql5 mysql51 mariadb percona \
   description {build with mysql55 port} {

   depends_lib-append      port:qt4-mac-mysql55-plugin
   configure.args-append   -DDATABASE_BACKEND=MYSQL \
                           -DMYSQLD_EXECUTABLE=${prefix}/lib/mysql55/bin/mysqld
}

variant mariadb \
   conflicts sqlite mysql5 mysql51 mysql55 percona \
   description {build with mariadb port} {

   depends_lib-append      port:qt4-mac-mariadb-plugin
   configure.args-append   -DDATABASE_BACKEND=MYSQL \
                           -DMYSQLD_EXECUTABLE=${prefix}/lib/mariadb/bin/mysqld
}

variant percona \
   conflicts sqlite mysql5 mysql51 mysql55 mariadb \
   description {build with percona port} {

   depends_lib-append      port:qt4-mac-percona-plugin
   configure.args-append   -DDATABASE_BACKEND=MYSQL \
                           -DMYSQLD_EXECUTABLE=${prefix}/lib/percona/bin/mysqld
}

variant sqlite \
   conflicts mysql5 mysql51 mysql55 mariadb percona \
   description {Use sqlite backend instead of MySQL} {

   depends_lib-append      port:qt4-mac-sqlite3-plugin          
   configure.args-append   -DDATABASE_BACKEND=SQLITE \
                           -DMYSQLD_EXECUTABLE=Off
}

if {![variant_isset mysql5] && ![variant_isset mysql51] && ![variant_isset mysql55] && ![variant_isset mariadb] && ![variant_isset percona] && ![variant_isset sqlite]} {
    default_variants +mysql5
}

post-patch {
    # fix '#include "utils.h"' -> "src/utils.h" to avoid a conflict
    # with the 'utils.h' header installed by the cdparanoia port
    fs-traverse item ${workpath}/${distname} {
        if {[file isfile ${item}]} {
            reinplace "/include/s@\\(utils\\.h\\)@src/\\1@g" ${item}
        }
    }
	reinplace "s|/Applications|${applications_dir}|" ${worksrcpath}/CMakeLists.txt
}

platform darwin 9 {
    if {[info exists universal_target] && ${universal_target} == "10.4"} {
# Needed if compiling for 10.4 universal on 10.5
        post-configure {
            reinplace "s|#define HAVE_EXECINFO_H 1||" ${workpath}/build/config-akonadi.h
        }
    }
}

post-destroot {
	set docdir ${prefix}/share/doc/${name}
	xinstall -d ${destroot}${docdir}
	xinstall -m 0644 -W ${worksrcpath} AUTHORS NEWS README README.sqlite \
        ${destroot}${docdir}
}

livecheck.type      regex
livecheck.url       http://kde.mirrors.hoobly.com/stable/akonadi/src/
livecheck.regex     ${name}-(\\d+(\\.\\d+)+)
