-
Jonas Witschel authoredJonas Witschel authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
PKGBUILD 1.67 KiB
# Maintainer: Jonas Witschel <diabonas@archlinux.org>
pkgname=pdftk
pkgver=3.2.2
pkgrel=1
pkgdesc='Command-line tool for working with PDFs'
arch=('any')
url='https://gitlab.com/pdftk-java/pdftk'
license=('GPL')
depends=('java-runtime-headless' 'sh')
makedepends=('ant' 'bcprov' 'java-commons-lang' 'strip-nondeterminism')
checkdepends=('java-hamcrest' 'junit' 'junit-system-rules' 'poppler')
optdepends=('bcprov: support for signed PDF documents'
'java-commons-lang: burst, dump_data, dump_data_fields and update_info operation support')
source=("$url/-/archive/v$pkgver/$pkgname-v$pkgver.tar.bz2" 'pdftk.sh')
sha512sums=('03220ac3036098768dd4250bbfeb6675561e9126697b99703ab5788b2cee7551256c301d9191745c5fdedf429056b46641351d1fb92631ef17673d7e740c5431'
'439c397472012d71c8e782a75819a7a950474c387b7050bbd5aa2f849d1dbe29423accf3f8e17d18436ba32eb4f76072df5b4f85caebd853df1e75c131631988')
prepare() {
cd "$pkgname-v$pkgver"
mkdir lib
ln -s /usr/share/java/{bcprov,commons-lang/commons-lang,hamcrest-core,junit,junit-system-rules/system-rules}.jar lib
# No need for code coverage reports during tests
sed -ri '/<\/?jacoco:coverage>/d' build.xml
}
build() {
cd "$pkgname-v$pkgver"
ant clean jar
# Timestamps in JAR files generated by Ant do not honour SOURCE_DATE_EPOCH
# (https://bz.apache.org/bugzilla/show_bug.cgi?id=61269)
strip-nondeterminism --timestamp "$SOURCE_DATE_EPOCH" build/jar/pdftk.jar
}
check() {
cd "$pkgname-v$pkgver"
ant test-run
}
package() {
cd "$pkgname-v$pkgver"
install -Dm644 build/jar/pdftk.jar -t "$pkgdir/usr/share/java/$pkgname"
install -Dm644 pdftk.1 -t "$pkgdir/usr/share/man/man1"
install -Dm755 "$srcdir/pdftk.sh" "$pkgdir/usr/bin/pdftk"
}