# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net> # Maintainer (Arch): Andrea Scarpino <andrea@archlinux.org> # Contributor: George Giorgidze <giorgidze (at) gmail.com> # Contributor: Stefan Husmann <stefan-husmann@t-online.de> pkgbase=antlr2 pkgname=(antlr2 antlr2-{java,python2,cxx,sharp}) pkgver=2.7.7 pkgdesc="Another Tool for Language Recognition" url="http://www.antlr2.org/" license=('custom:Public Domain') pkgrel=6 arch=('i686' 'x86_64') options=('staticlibs') makedepends=('java-environment' 'python2' 'sh' 'nant' 'jh') source=("http://www.antlr2.org/download/antlr-${pkgver}.tar.gz" "http://repo.maven.apache.org/maven2/antlr/antlr/$pkgver/antlr-$pkgver.pom" 'runantlr2.sh' 'gcc4.4.patch' 'mono.patch') md5sums=('01cc9a2a454dd33dcd8c856ec89af090' '78af3de823003f6d8dded39c70bc30ae' '78e9bf86bd44722f232f80bc7b04dcfe' '158677e4c0f357afbb56656231a54815' '0d1960d27ff81f2fea0dd35a8290216f') prepare() { cd "${srcdir}/antlr-${pkgver}" patch -Np1 -i "${srcdir}"/gcc4.4.patch patch -Np1 -i "${srcdir}"/mono.patch } build() { cd "${srcdir}/antlr-${pkgver}" ./configure --prefix=/usr --disable-examples make -j1 cd lib/csharp nant release } _install_license() { install -Dm644 "$srcdir"/antlr-${pkgver}/LICENSE.txt \ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } package_antlr2() { depends=('sh' 'antlr2-java') install -Dm755 "$srcdir"/runantlr2.sh "$pkgdir"/usr/bin/runantlr2 _install_license } package_antlr2-java() { pkgdesc+=" (Java version)" depends=('java-runtime') provides=("java-antlr2=$pkgver") conflicts=("java-antlr2") replaces=("java-antlr2") DESTDIR="$pkgdir" jh mvn-install antlr antlr $pkgver \ "$srcdir"/antlr-${pkgver}.pom \ "$srcdir"/antlr-${pkgver}/antlr/antlr.jar \ antlr2.jar _install_license } package_antlr2-python2() { pkgdesc+=" (Python version)" depends=('python2') provides=("python2-antlr2=$pkgver") conflicts=("python2-antlr2") replaces=("python2-antlr2") cd "$srcdir"/antlr-${pkgver}/lib/python python2 setup.py install --root="${pkgdir}" --optimize=1 _install_license } package_antlr2-cxx() { pkgdesc+=" (C++ version)" cd "$srcdir"/antlr-${pkgver}/lib/cpp make -j1 prefix="${pkgdir}/usr" install _install_license } package_antlr2-sharp() { pkgdesc+=" (C Sharp version)" depends=('mono') cd "$srcdir"/antlr-${pkgver}/lib/csharp install -d "$pkgdir"/usr/share make -j1 prefix="${pkgdir}/usr" install _install_license }