summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: ecdae1da13c33a367f27ed53c40c7e721854cb29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# Maintainer: Jah Way <jahway603 at protonmail dot com>

# from the official repos:
# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
# Contributor: Simon Legner <Simon.Legner@gmail.com>
# Contributor: Chris Molozian (novabyte) <chris DOT molozian AT gmail DOT com>
# Contributor: Sanjuro Makabe (itti) <vuck AT gmx DOT de>

pkgbase=gradle5
pkgname=('gradle5' 'gradle5-doc' 'gradle5-src')
pkgver=5.6.4
pkgrel=2
pkgdesc='Powerful build system for the JVM'
url='https://gradle.org/'
arch=('any')
license=('Apache')
depends=('java-environment' 'bash')
makedepends=('git' 'asciidoc' 'xmlto' 'kotlin' 'groovy' 'java-environment=11')
source=(https://services.gradle.org/distributions/gradle-${pkgver}-src.zip
        ${pkgbase}.sh)
sha256sums=('0ea3f172357a65a02f2fea03460f80b8b37040276d4e471a60fb739d41c7ede2'
            '5e6512419510e0244ef64c6f0af2b508ca9f1eb55f78c5a5c3e14ad37bd9ad9b')

build() {
  cd gradle-${pkgver}
  # supports upto JDK 11, but not JDK 13
  export PATH="/usr/lib/jvm/java-11-openjdk/bin:${PATH}"
  ./gradlew installAll \
    -PfinalRelease=true \
    -Pgradle_installPath="$(pwd)/dist"
}

package_gradle5() {
  install="${pkgbase}.install"

  cd gradle-${pkgver}/dist

  # install profile.d script
  install -Dm 755 "${srcdir}/${pkgbase}.sh" "${pkgdir}/etc/profile.d/${pkgbase}.sh"

  # create the necessary directory structure
  install -d "${pkgdir}/usr/share/java/${pkgname}/bin"
  install -d "${pkgdir}/usr/share/java/${pkgname}/lib/plugins"
  install -d "${pkgdir}/usr/share/java/${pkgname}/init.d"
  install -d "${pkgdir}/usr/bin"

  # copy across jar files
  install -Dm 644 lib/*.jar "${pkgdir}/usr/share/java/${pkgname}/lib"
  install -Dm 644 lib/plugins/*.jar "${pkgdir}/usr/share/java/${pkgname}/lib/plugins"

  # copy across supporting text documentation and scripts
  install -m 644 NOTICE "${pkgdir}/usr/share/java/${pkgname}"
  install -m 644 *.html "${pkgdir}/usr/share/java/${pkgname}"
  mv bin/gradle bin/${pkgbase}
  install -m 755 bin/${pkgbase} "${pkgdir}/usr/share/java/${pkgname}/bin"
  install -m 644 init.d/*.* "${pkgdir}/usr/share/java/${pkgname}/init.d"

  # link gradle script to /usr/bin
  ln -s /usr/share/java/${pkgname}/bin/${pkgbase} "${pkgdir}/usr/bin"
}

package_gradle5-doc() {
  pkgdesc='Powerful build system for the JVM (documentation and samples)'
  options=('!strip')
  optdepends=('gradle5')

  cd gradle-${pkgver}/dist

  # copy across documentation 
  install -d "${pkgdir}/usr/share/java/${pkgbase}/docs"
  cp -r docs/* "${pkgdir}/usr/share/java/${pkgbase}/docs"
  
  # copy across samples
  install -d "${pkgdir}/usr/share/java/${pkgbase}/samples"
  cp -r samples/* "${pkgdir}/usr/share/java/${pkgbase}/samples"
}

package_gradle5-src() {
  pkgdesc='Powerful build system for the JVM (sources)'
  options=('!strip')
  optdepends=('gradle5')

  cd gradle-${pkgver}/dist
  install -d "${pkgdir}/usr/share/java/${pkgbase}/src"
  cp -r src/* "${pkgdir}/usr/share/java/${pkgbase}/src"
}

# vim: ts=2 sw=2 et: