]> pilppa.org Git - familiar-h63xx-build.git/blob - org.handhelds.familiar/packages/classpath/cp-tools_0.00-cvs20050701.bb
Add support for building java apps and libraries
[familiar-h63xx-build.git] / org.handhelds.familiar / packages / classpath / cp-tools_0.00-cvs20050701.bb
1 # cp-tools OE build file
2 # Copyright (C) 2006, Rene Wagner. All Rights Reserved
3 # Released under the MIT license (see org.handhelds.familiar/COPYING.MIT)
4
5 DESCRIPTION = "GNU Classpath tools (javah, javap, etc.)"
6 HOMEPAGE = "http://www.gnu.org/software/classpath/cp-tools/"
7 LICENSE = "GPLv2"
8 PRIORITY = "optional"
9 MAINTAINER = "Rene Wagner <rw@handhelds.org>"
10 SECTION = "utils"
11
12 inherit autotools java
13
14 FIXEDCVSDATE = "${@bb.data.getVar('PV', d, 1).split('cvs')[-1]}"
15 SRC_URI = "cvs://anonymous@cvs.sv.gnu.org/cvsroot/classpath;module=cp-tools;date=${FIXEDCVSDATE} \
16         file://bytecodejar-workaround.patch;patch=1 \
17         file://destdir.patch;patch=1 \
18         ${GNU_MIRROR}/kawa/kawa-1.7.tar.gz"
19 S = "${WORKDIR}/cp-tools"
20
21 export CLASSPATH = ".:${STAGING_DATADIR}/classpath/glibj.zip:${WORKDIR}/bytecode.jar"
22
23 EXTRA_OECONF = "--disable-native --with-gnu-bytecode-jar=${WORKDIR}/bytecode.jar"
24
25 FILES_${PN} += "${datadir}/java"
26
27 do_configure () {
28         cd ${WORKDIR}/kawa-1.7
29         javac gnu/bytecode/*.java
30         zip bytecode.jar gnu/bytecode/*.class || die
31         mv bytecode.jar ..
32
33         cd ${S}
34         autotools_do_configure
35 }
36
37 binprograms="currencygen \
38         javah \
39         javap \
40         localegen \
41         native2ascii \
42         rmic \
43         rmiregistry \
44         serialver"
45
46 do_install () {
47         install -d ${D}${datadir}
48         install -d ${D}${datadir}/java
49
50         install -m 0644 cptools-0.00-cvs.jar ${D}${datadir}/java/cptools-${PV}.jar
51         (cd ${D}${datadir}/java && ln -sf cptools-${PV}.jar cptools-0.00-cvs.jar)
52         (cd ${D}${datadir}/java && ln -sf cptools-${PV}.jar cptools.jar)
53
54         install -m 0644 ${WORKDIR}/bytecode.jar ${D}${datadir}/java/
55
56         install -d ${D}${bindir}
57         for i in ${binprograms}; do
58                 sed -e 's,java,java -cp .:${datadir}/java/bytecode.jar:${datadir}/java/cptools.jar,' bin/$i > bin/$i-cp
59                 install -m 0755 bin/$i-cp ${D}${bindir}/$i-cp
60         done
61 }
62
63 pkg_postinst () {
64         for i in ${binprograms}; do
65                 update-alternatives --install ${bindir}/$i $i ${bindir}/$i-cp 350
66         done
67 }
68
69 pkg_postrm_append () {
70         for i in ${binprograms}; do
71                 update-alternatives --remove $i ${bindir}/$i-cp
72         done
73 }
74