# -*- 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
categories lang textproc devel
maintainers hhhh.org:wiml
description Backtracking LALR(1) parser generator
long_description Kelbt generates backtracking LALR(1) parsers. \
Where traditional LALR(1) parser generators \
require static resolution of shift/reduce \
conflicts, Kelbt generates parsers that handle \
conflicts by backtracking at runtime. Kelbt is \
able to generate a parser for any context-free \
grammar that is free of hidden left recursion.
homepage http://www.complang.org/kelbt/
checksums rmd160 baa8a9d616f2594fe0315c3b059a1286e8ac7ccc \
sha256 000ae8e0906f34de13c3448f2422065e48407b6d85c61bbe51490ffdab0bc565
patchfiles invalid_cxx.patch
# configure does substitution of CXXFLAGS but Makefile uses CFLAGS for some reason
# configure also doesn't substitute LDFLAGS
build.args CFLAGS="${configure.cxxflags} [get_canonical_archflags cxx]" \
LDFLAGS="[get_canonical_archflags ld]"
test.dir ${worksrcpath}/test
destroot.destdir prefix=${destroot}${prefix}
# TODO: Install kelbt.vim as well?
set docdir ${prefix}/share/doc/${name}
xinstall -d ${destroot}${docdir}
xinstall -m 644 -W ${worksrcpath} \
livecheck.regex ${name}-(\[0-9.\]+)${extract.suffix}