# Maintainer: Luke Shumaker # Contributor: Omar Vega Ramos pkgname=closure-compiler pkgver=20160517 pkgrel=1 pkgdesc="Performs checking, instrumentation and optimizations on Javascript code." arch=('any') url="https://developers.google.com/closure/compiler/" license=('APACHE') depends=('java-runtime') makedepends=( 'apache-ant' 'args4j' 'java-guava' #'java-jarjar' 'java-gson' 'jsr305' 'junit' 'protobuf-java' #'java-mockito-core' # does not exist #'objenesis' # does not exist 'jh' ) source=("https://repo.parabola.nu/other/$pkgname/$pkgname-$pkgver.tar.gz" 'closure-compiler.sh') sha256sums=('72cbbf6c52bfbdd8a5b35f888f942feea74bf13984c7d2e6fdfc6737bd67f294' '10b0d74a305548b029f05bd4fb0ffabec2ff782f9e3c054c2f5236f1bf4c6630') mkdepends=(git) mksource=("$pkgname-$pkgver::git+https://github.com/google/closure-compiler.git#tag=v${pkgver}") mkmd5sums=('SKIP') mksource() { cd "$srcdir/$pkgname-$pkgver" rm -rv lib/*.jar sed -i " //,/<\/target>/ { s/executable=\"git\"/executable=\"echo\"/ //i }" \ build.xml sed -i "s/1\.0-SNAPSHOT/v${pkgver}/g" \ externs/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/gson.jar lib/gson.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 javadoc } package() { cd "$srcdir/$pkgname-$pkgver" # Install license file install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" # Install documentation install -d "${pkgdir}/usr/share/doc/${pkgname}" cp -r "build/javadoc" "${pkgdir}/usr/share/doc/${pkgname}" # Install Maven artifacts export DESTDIR="${pkgdir}" jh mvn-install com.google.javascript "${pkgname}-parent" "v${pkgver}" pom.xml jh mvn-install com.google.javascript "${pkgname}-externs" "v${pkgver}" externs/pom.xml jh mvn-install com.google.javascript "${pkgname}" "v${pkgver}" pom-main.xml \ build/compiler.jar "${pkgname}-${pkgver}.jar" ln -s "/usr/share/java/${pkgname}-${pkgver}.jar" \ "${pkgdir}/usr/share/java/${pkgname}.jar" install -Dm755 "${srcdir}/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" }