# -*- 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

PortSystem      1.0

name            cedet
version         1.1
categories      editors
platforms       any
license         GPL-2+
maintainers     nomaintainer
supported_archs noarch

description     Infrastructure for parser based text analysis in Emacs

long_description \
    Semantic is an infrastructure for parser based text analysis in Emacs. \
    It is a lexer, parser-generator, and parser. It is written in Emacs \
    Lisp and is customized to the way Emacs thinks about language files, \
    and is optimized to use Emacs' parsing capabilities.

homepage        http://cedet.sourceforge.net/
master_sites    sourceforge:project/cedet/cedet

checksums       rmd160  4995ba86c3e0516a3391dad6d1c45ca7e80145e3 \
                sha256  42c0650fa1d0c9a428d186b421f0057294bcfaec09c8b7bb4a0128ce2fe54b5c

depends_lib     port:emacs

use_configure   no

use_parallel_build  no

destroot {
    set lispdir ${prefix}/share/emacs/site-lisp

    set packages {
        common
        ede
        speedbar
        eieio
        semantic
        cogre
        contrib
        srecode
    }

    proc destroot_package package_dir {
        global  destroot worksrcpath
        upvar   lispdir lispdir

        xinstall -d ${destroot}${lispdir}/${package_dir}
        foreach f [glob -directory ${worksrcpath}/${package_dir} *] {
            if {[file isdirectory $f]} {
                set p [file tail $f]

                if {$p ne "." && $p ne ".."} {
                    destroot_package ${package_dir}/$p
                }
            } else {
                set ext [file extension $f]

                if {$ext eq ".el" || $ext eq ".elc"} {
                    xinstall -m 644 $f ${destroot}${lispdir}/${package_dir}
                }
            }
        }
    }

    foreach p $packages {
        destroot_package $p
    }
}
