# Maintainer: Luke Shumaker pkgname=closure-compiler pkgver=20140508 pkgdesc="A JavaScript optimizing compiler." url="https://developers.google.com/closure/compiler/" license=('Apache') pkgrel=1 arch=('any') depends=('java-runtime' 'sh') makedepends=( 'apache-ant' #'java-args4j' # does not exist #'java-guava' # does not build 'java-jarjar' 'java-json' #'java-jsr305' # does not exist 'junit' #'java-protobuf' # does not build #'java-mockito-core' # does not exist #'java-objenesis' # does not exist 'jh' ) source=("https://repo.parabolagnulinux.org/other/$pkgname/$pkgname-$pkgver.tar.gz" 'closure-compiler.sh') md5sums=('b5f5d88d0f9e5b314bc9351e9d4289de' 'd4ead4585fcc7039d3c32eb5c4491bb9') mkdepends=(git) mksource=("$pkgname-$pkgver::git+https://github.com/google/closure-compiler.git#tag=v${pkgver}") mkmd5sums=('SKIP') mksource() { cd "$srcdir/$pkgname-$pkgver" sed -i " //,/<\/target>/ { s/executable=\"git\"/executable=\"echo\"/ //i }" \ build.xml sed -i "s/1\.0-SNAPSHOT/v${pkgver}/g" \ externs/pom.xml \ lib/rhino/pom.xml \ pom.xml \ pom-main.xml } prepare() { cd "$srcdir/$pkgname-$pkgver" ln -sf /opt/apache-ant/lib/ant.jar lib/ant.jar ln -sf /opt/apache-ant/lib/ant-launcher.jar lib/ant-launcher.jar #ln -sf /usr/share/java/args4j.jar lib/args4j.jar #ln -sf /usr/share/java/guava.jar lib/guava.jar ln -sf /usr/share/java/jarjar.jar lib/jarjar.jar ln -sf /usr/share/java/json.jar lib/json.jar #ln -sf /usr/share/java/jsr305.jar lib/jsr305.jar ln -sf /usr/share/java/junit.jar lib/junit.jar #ln -sf /usr/share/java/mockito-core.jar lib/mockito-core.jar #ln -sf /usr/share/java/objenesis.jar lib/objenesis.jar #ln -sf /usr/share/java/protobuf.jar lib/protobuf-java.jar } build() { cd "$srcdir/$pkgname-$pkgver" ant jar } package() { cd "$srcdir" install -Dm755 closure-compiler.sh "$pkgdir"/usr/bin/closure-compiler # symlink for compatibility with Arch's [community]/closure-compiler ln -s closure-compiler "$pkgdir"/usr/bin/closure cd "$srcdir/$pkgname-$pkgver" ( export DESTDIR="$pkgdir" jh mvn-install com.google.javascript closure-compiler-parent v${pkgver} pom.xml jh mvn-install com.google.javascript closure-compiler v${pkgver} pom-main.xml \ build/compiler.jar closure-compiler.jar jh mvn-install com.google.javascript closure-compiler-externs v${pkgver} externs/pom.xml jh mvn-install com.google.javascript closure-compiler-rhino v${pkgver} lib/rhino/pom.xml \ build/lib/rhino.jar ) }