# $Id: Portfile 59 2009-02-08 11:50:47Z tatyana $

PortSystem      1.0

name            jslashem
set ver_main    0.0.7E7F3
set ver_patch   J0.2.1
version         ${ver_main}-${ver_patch}
categories      games japanese
maintainers     takanori openmaintainer
description     JSLASH'EM is Japanization of Slash'EM-0.0.7 with JNetHack-3.4.3 patch.
long_description \
                ${description}
platforms       darwin
homepage        http://jslashem.sourceforge.jp/
master_sites    http://jaist.dl.sourceforge.net/sourceforge/slashem/:main \
                sourceforge_jp:${name}/32385/:patch
set fn_slashem  [suffix se[string tolower [string map {"." ""} ${ver_main}]]]
distfiles       ${fn_slashem}:main \
                ${distname}.diff.gz:patch
patchfiles      patch-sys_unix_Makefile.doc.diff \
                patch-sys_unix_Makefile.src.diff \
                patch-sys_unix_Makefile.top.diff \
                patch-sys_unix_Makefile.utl.diff \
                patch-sys_unix_nethack.sh.diff \
                patch-win_tty_termcap.c.diff \
                patch-src_options.c.diff
checksums       ${fn_slashem} md5 54b4534fe85f08722e8b6b38d52c2e9a \
                              sha1 24009b87ec13067647c6d23c80671d99e763e2cb \
                              rmd160 0fd50b31ce952991b194fbf7b59b6e53353ce991 \
                ${distname}.diff.gz md5 d62ac707ec6c682578b49fd1dbb2e435 \
                                    sha1 fa6a2a30b5b682a34597cdb2165b2f46b2dc8445 \
                                    rmd160 17ce5281521b9fa4a687222a731ddd098b335644

depends_lib     port:ncurses
depends_build   port:bison \
                port:flex \
                port:nkf
depends_run     port:cocot

extract.only    ${fn_slashem}
worksrcdir      slashem-${ver_main}
pre-extract {
    if {![file exists ${prefix}/bin/nkf]} {
        return -code error "Before extracting this port, please install port:nkf."
    }
}
post-extract {
    system "cd ${worksrcpath} && gzip -dc ${distpath}/${distname}.diff.gz | nkf -e | patch -p1"
}

post-patch {
    set jn_cflags "${configure.cflags} ${configure.cppflags}"
    set jn_ldflags ${configure.ldflags}

    foreach f {sys/unix/Makefile.doc
               sys/unix/Makefile.src
               sys/unix/Makefile.top
               sys/unix/Makefile.utl
               sys/unix/nethack.sh} {
        reinplace "s|__PREFIX__|${prefix}|" ${worksrcpath}/${f}
        reinplace "s|__CFLAGS__|${jn_cflags}|" ${worksrcpath}/${f}
        reinplace "s|__LDFLAGS__|${jn_ldflags}|" ${worksrcpath}/${f}
    }
}

configure.dir       ${worksrcpath}/sys/unix
configure.cmd       /bin/sh
configure.pre_args  setup.sh

use_parallel_build  no

destroot.target     install manpages
destroot.keepdirs   "${destroot}${prefix}/share/jslashemdir/save/"
pre-destroot {
    addgroup games
    adduser games gid=[existsgroup games]
}
post-destroot {
    reinplace "s|${destroot}||" "${destroot}${prefix}/bin/jslashem"
}

pre-install {
    addgroup games
    adduser games gid=[existsgroup games]
}

universal_variant       no

livecheck.check regex
livecheck.url   ${homepage}
livecheck.regex ${name}-(\[0-9.A-Z\-\]+).diff.gz
