java.bbclass: stage all JAR files outside of ARCH related directories
authorMarcin Juszkiewicz <marcin@buglabs.net>
Wed, 16 Dec 2009 15:43:32 +0000 (16:43 +0100)
committerMarcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Wed, 16 Dec 2009 15:47:39 +0000 (16:47 +0100)
When Java things are build for more then one architecture strange things
happen:

- first architecture builds fine
- next architectures fails to build

Thats due to lack of JAR files as they were built as PACKAGE_ARCH="all"
but staged as PACKAGE_ARCH="TARGET_ARCH" so BitBake do not build them
again but Java classes are unable to find them.

Solution is to stage JAR files to non-ARCH directory. I used
staging/java for it and build tested with stable/2009 and
org.openembedded.dev branches.

Signed-off-by: Marcin Juszkiewicz <marcin@buglabs.net>
classes/java.bbclass
conf/bitbake.conf

index b68035c..d4cf5aa 100644 (file)
@@ -13,7 +13,7 @@ libdir_jni ?= ${libdir}/jni
 # JVM bundle location on target
 libdir_jvm ?= ${libdir}/jvm
 
-STAGING_DATADIR_JAVA ?= ${STAGING_DATADIR}/java
+STAGING_DATADIR_JAVA ?= ${STAGING_DIR_JAVA}
 STAGING_LIBDIR_JNI ?= ${STAGING_LIBDIR}/jni
 STAGING_LIBDIR_JVM ?= ${STAGING_LIBDIR}/jvm
 
index 48e098d..3a68959 100644 (file)
@@ -297,6 +297,7 @@ B = "${S}"
 
 STAGING_DIR = "${TMPDIR}/staging"
 
+STAGING_DIR_JAVA = "${STAGING_DIR}/java"
 STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}"
 STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${bindir_native}"
 STAGING_BINDIR_CROSS  = "${STAGING_DIR_NATIVE}${bindir_native}/${MULTIMACH_HOST_SYS}"