summaryrefslogtreecommitdiff
path: root/java/java-asm2/common.sh
blob: 6a664c9ff1958459f1e1923244a08682c8dc2e83 (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
# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net>

_pkgname=asm
pkgname=java-asm${pkgver%%.*}
pkgdesc="An all purpose Java bytecode manipulation and analysis framework."
url="http://asm.ow2.org/"
license=('custom:BSD3')

arch=('any')
depends=('java-runtime')
makedepends=(
  apache-ant
  java-ow-util-ant-tasks
  jh
)
source=("http://download.forge.objectweb.org/$_pkgname/$_pkgname-$pkgver.tar.gz")

_distdir="$_pkgname-$pkgver/output/dist"
_ow_util_ant_tasks='/usr/share/java/ow_util_ant_tasks.jar'

build() {
  cd "$srcdir/$_pkgname-$pkgver"
  eval `jh mksource ${_checksource_ignore[@]}`

  echo "objectweb.ant.tasks.path $_ow_util_ant_tasks" >> build.properties
  ant dist

  # This will make package() easier:
  cd "$srcdir/$_distdir/lib"
  ln -s all/* .
}

package() {
  # Install license file
  cd "$srcdir/$_pkgname-$pkgver"
  install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE"

  # Install documentation
  cd "$srcdir/$_distdir"
  install -d "$pkgdir/usr/share/doc/$pkgname"
  cp -r doc/javadoc/user "$pkgdir/usr/share/doc/$pkgname/javadoc"
  cp -r examples         "$pkgdir/usr/share/doc/$pkgname/examples"

  # Install the README about the -all files
  cd "$srcdir/$_distdir/lib"
  install -Dm644 README.txt \
      "$pkgdir"/usr/share/java/$_pkgname/README-$pkgver.txt

  # Install Maven artifacts
  export DESTDIR=$pkgdir
  for artifact in $(ls *.jar|sed 's/-[0-9.]*\.jar$//'); do
    jh mvn-install $_pkgname $artifact $pkgver $artifact-$pkgver.{jar,pom}
    # Symlink them to /usr/share/java
    ln -s "$(jh mvn-basename asm $artifact $pkgver).jar" \
	"$pkgdir"/usr/share/java/$_pkgname/
    ln -s $_pkgname/$artifact-$pkgver.jar \
	"$pkgdir"/usr/share/java/$artifact-${pkgver%%.*}.jar
  done
}