# -*- 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 91890 2012-04-12 16:26:21Z hum@macports.org $

PortSystem          1.0

name                apache-solr
version             3.6.0
categories          java textproc
maintainers         gmail.com:haya10.ito hum openmaintainer

description         An open source enterprise search platform.
long_description    Solr is the popular, blazing fast open source enterprise \
                    search platform from the Apache Lucene project.

homepage            http://lucene.apache.org/solr/
platforms           darwin
supported_archs     noarch
license             Apache-2.0

master_sites        apache:lucene/solr/${version}/
checksums           rmd160  f54aee9e0d0196e7e96408b40ae025fc69478229 \
                    sha256  3acac4323ba3dbfa153d8ef01f156bab9b0eccf1b1f1f03e91b8b6739d3dc6c6
extract.suffix      .tgz

# set the destination paths.
set java_basepath   ${prefix}/share/java
set solr_destpath   ${java_basepath}/${distname}
set solr_path       ${solr_destpath}/example
set solr_home       ${solr_path}/solr

post-patch {
    # expand relative pathes into abusolute ones.
    reinplace "s|\"\\.\\./\\.\\./|\"${solr_destpath}/|g" \
        ${worksrcpath}/example/solr/conf/solrconfig.xml
}

use_configure       no

build {}

destroot {
    # copy the distribution.
    xinstall -d         ${destroot}${java_basepath}
    copy ${worksrcpath} ${destroot}${java_basepath}
    # install the solr script.
    xinstall -m 755 ${filespath}/solr.in     ${destroot}${prefix}/bin/solr
    reinplace "s|@solr_path@|${solr_path}|g" ${destroot}${prefix}/bin/solr
    reinplace "s|@solr_home@|${solr_home}|g" ${destroot}${prefix}/bin/solr
}

notes "
To try apache-solr, run 'sudo solr' and open http://localhost:8983/solr/browse.
To store sample documents, run 'cd ${solr_path}/exampledocs && ./post.sh *.xml'."

# solr home for Japanese configurations.
set solr_home_ja    ${solr_home}-ja

variant ja description {Add Japanese settings} {
    # create Japanese solr home 'solr-ja'.
    post-extract {
        copy ${worksrcpath}/example/solr ${worksrcpath}/example/solr-ja
    }
    patchfiles-append   patch-solr-ja.diff
    post-patch {
        # expand relative pathes into abusolute ones.
        reinplace "s|\"\\.\\./\\.\\./|\"${solr_destpath}/|g" \
            ${worksrcpath}/example/solr-ja/conf/solrconfig.xml
    }
    post-destroot {
        # install a property file for UTF-8 encoding.
        copy ${filespath}/velocity.properties ${destroot}${solr_home_ja}/conf
        # copy a sample Japanese doc for testing.
        copy ${filespath}/solr-ja.xml ${destroot}${solr_path}/exampledocs
        # install the solr-ja script.
        xinstall -m 755 ${filespath}/solr.in        ${destroot}${prefix}/bin/solr-ja
        reinplace "s|@solr_path@|${solr_path}|g"    ${destroot}${prefix}/bin/solr-ja
        reinplace "s|@solr_home@|${solr_home_ja}|g" ${destroot}${prefix}/bin/solr-ja
    }
    notes-append "

For Japanese texts, please run 'sudo solr-ja' instead of 'sudo solr'.
See ${solr_home_ja}."
}

livecheck.type      regex
livecheck.url       http://www.apache.org/dist/lucene/solr/
livecheck.regex     (\[0-9.\]+)\/
