# $Id: Portfile 91961 2012-04-14 06:23:14Z blair@macports.org $

PortSystem 1.0
PortGroup select 1.0

name            scala29
version         2.9.2
revision        1
set branch      [join [lrange [split ${version} .] 0 1] .]
categories      lang java
maintainers     openmaintainer brett blair
description     The Scala Programming Language
long_description \
                Scala is a modern multi-paradigm programming language \
                designed to express common programming patterns in a \
                concise, elegant, and type-safe way.  It smoothly \
                integrates features of object-oriented and functional \
                languages.  It runs inside a Java Virtual Machine and \
                is fully interoperable with Java.
homepage        http://www.scala-lang.org/
platforms       darwin
supported_archs noarch

master_sites    ${homepage}downloads/distrib/files/
distname        scala-${version}
extract.suffix  .tgz
checksums       md5 bc1f68ce3f989347231f2e23784deee9 \
                sha1 806fc1d91bda82d6a584172d7742531386ae68fb \
                rmd160 bf720870939d7b36ecf4212f8389835ab2817533

depends_lib     port:scala_select

use_configure   no
build           {}

select.group    scala
select.file     ${filespath}/scala[string map {. {}} ${branch}]

destroot {
        set sharedir ${destroot}${prefix}/share
        set man1dir ${sharedir}/man/man1
        set scaladir ${sharedir}/scala-${branch}
        set bindir ${scaladir}/bin
        set docdir ${sharedir}/doc
        set docscaladir ${docdir}/scala-${branch}

        xinstall -d -m 755 ${sharedir}
        file copy ${worksrcpath} ${scaladir}

        foreach f {fsc scala scalac scaladoc scalap} {
                file attributes ${bindir}/${f} -permissions 0755
                ln -s ../share/scala-${branch}/bin/${f} ${destroot}${prefix}/bin/${f}-${branch}
        }

        file delete ${man1dir}
        file rename ${scaladir}/man/man1 ${man1dir}
        foreach f {fsc scala scalac scaladoc scalap} {
                file rename ${man1dir}/${f}.1 ${man1dir}/${f}-${branch}.1
        }
        file delete -force ${scaladir}/man

        xinstall -d -m 755 ${docdir}
        file rename ${scaladir}/doc ${docscaladir}

        xinstall -d -m 755 ${sharedir}/java
        foreach f {scala-compiler.jar
                   scala-dbc.jar
                   scala-library.jar
                   scala-partest.jar
                   scala-swing.jar
                   scalacheck.jar
                   scalap.jar} {
                set g [strsed ${f} "/.jar/-${branch}.jar/"]
                ln -s ../scala-${branch}/lib/${f} ${sharedir}/java/${g}
        }
}
