angstrom: prefer the git version of tslib
[openembedded.git] / classes / jni-library.bbclass
blobf484b97dac4d7cfa79cd0956373759a25f9d5092
1 # we need javah
2 DEPENDS += "openjdk-langtools-native zip-native icedtea6-native"
4 JNI_LIB_DIR = "/usr/lib/jni"
6 PACKAGE_ARCH = "${MACHINE_ARCH}"
8 EXTRA_OEMAKE +=" \
9         JAVAH_OUT=${D}${JNI_LIB_DIR} \
10         LIB_DIR=${D}${JNI_LIB_DIR} \
11         JAVAH_CLASSPATH=${S}/build --debug \
12         COMMON_CLASSPATH=${STAGING_LIBDIR}/com.buglabs.bug.jni.common.jar \
13         STAGING_BUG_INCDIR=${STAGING_INCDIR}/bug \
14         BUG_LINUX_SRC=${STAGING_KERNEL_DIR} \
15         STAGING_INCDIR=${STAGING_INCDIR} \
16         CLASSPATH_INCDIR=${STAGING_INCDIR}/classpath \
17         ROOTFS_BUG=${STAGING_LIBDIR}/../../ \
18         JAVAH=${STAGING_LIBDIR_JVM_NATIVE}/icedtea6-native/bin/javah \
21 addtask jni_compile after do_compile before do_install
22 do_jni_compile() {
23         cd ${S}/src/c
24         oe_runmake jni
27 addtask jni_install after do_install before do_package
28 do_jni_install() {
29   install -d ${D}${JNI_LIB_DIR}
30   cd ${S}/src/c
31   oe_runmake libs
34 addtask jni_update_jar after do_jni_install before do_package
35 do_jni_update_jar(){
36   cd ${S}/src/c/
37   install -d lib/
38   cp *.so lib/
39   zip -u ${D}${datadir_java}/${JARFILENAME} lib/*.so
42 addtask jni_staging after do_jni_install before do_package
43 do_jni_staging() {
44   if test -e ${S}/src/c/*.so; then
45         install -d ${STAGING_LIBDIR}/bug
46         cp -r ${S}/src/c/*.so ${STAGING_LIBDIR}/bug
47         cp -r ${S}/src/c/*.so ${STAGING_LIBDIR}/
48   fi
50   if test -e ${S}/src/c/include/*.h; then
51           install -d ${STAGING_INCDIR}/bug
52           cp -r ${S}/src/c/include/*.h ${STAGING_INCDIR}/bug
53           cp -r ${S}/src/c/include/*.h ${STAGING_INCDIR}/
54   fi