PKGBUILD 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. # Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
  2. _libname=jsch-agent-proxy
  3. _pkgname=jsch.agentproxy
  4. pkgname=java-${_libname}
  5. pkgver=0.0.8
  6. pkgrel=1
  7. pkgdesc="Proxy to ssh-agent and Pageant in Java"
  8. arch=('any')
  9. url='http://www.jcraft.com/jsch-agent-proxy/'
  10. license=('BSD')
  11. depends=('java-runtime')
  12. makedepends=('java-environment' 'java-jsch' 'jh' 'jna')
  13. source=("https://github.com/ymnk/${_libname}/archive/${pkgver}.tar.gz"
  14. 'jsch-agent-proxy-remove_maven3_prerequisite.patch'
  15. 'jsch-agent-proxy-bundles_to_jars.patch'
  16. 'jsch-agent-proxy-poms.patch')
  17. sha1sums=('811eb8d5ff1524bc1b2f9fa94f5ecda958b5dc41'
  18. '649d1a9fc1eacd125a85d5b9ec42c0ec2f29fa6e'
  19. '4bdb1f5b2c5367ae66d01857b3d7b501edf20835'
  20. 'ee4112801473130951ed7559caeaf9be48a8dd62')
  21. _artifacts=(core jsch sshagent usocket-nc usocket-jna pageant connector-factory)
  22. prepare() {
  23. cd "${srcdir}/${_libname}-${pkgver}"
  24. patch -Np1 -i "${srcdir}/jsch-agent-proxy-remove_maven3_prerequisite.patch"
  25. patch -Np1 -i "${srcdir}/jsch-agent-proxy-bundles_to_jars.patch"
  26. patch -Np1 -i "${srcdir}/jsch-agent-proxy-poms.patch"
  27. mkdir -p {source,dist}
  28. for artifact in ${_artifacts[@]}; do
  29. mkdir -p "build/${artifact}/classes"
  30. cp -rv "${_libname}-${artifact}/src" source
  31. done
  32. }
  33. build() {
  34. cd "${srcdir}/${_libname}-${pkgver}"
  35. CLASSPATH="/usr/share/java/jsch.jar:/usr/share/java/jna.jar:/usr/share/java/jna-platform.jar:dist/*"
  36. for artifact in ${_artifacts[@]}; do
  37. javac -cp $CLASSPATH -d "build/${artifact}/classes" -encoding UTF-8 \
  38. $(find "${_libname}-${artifact}/src/main/java" -name \*.java)
  39. jar -cvf "dist/${_pkgname}.${artifact}.jar" -C "build/${artifact}/classes" .
  40. done
  41. javadoc -classpath $CLASSPATH -d "build/javadoc" -encoding UTF-8 \
  42. -sourcepath source/src/main/java -subpackages com
  43. }
  44. package() {
  45. cd "${srcdir}/${_libname}-${pkgver}"
  46. # Install license file
  47. install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt"
  48. # Install documentation
  49. install -d "${pkgdir}/usr/share/doc/${pkgname}"
  50. cp -r build/javadoc "${pkgdir}/usr/share/doc/${pkgname}"
  51. # Install Maven artifacts
  52. export DESTDIR=${pkgdir}
  53. jh mvn-install com.jcraft jsch.agentproxy ${pkgver} pom.xml
  54. for artifact in ${_artifacts[@]}; do
  55. jh mvn-install com.jcraft "jsch.agentproxy.${artifact}" ${pkgver} \
  56. "${_libname}-${artifact}/pom.xml" \
  57. "dist/${_pkgname}.${artifact}.jar" \
  58. "${_pkgname}.${artifact}-${pkgver}.jar"
  59. ln -s "/usr/share/java/${_pkgname}.${artifact}-${pkgver}.jar" \
  60. "${pkgdir}/usr/share/java/${_pkgname}.${artifact}.jar"
  61. done
  62. }