summaryrefslogtreecommitdiff
path: root/classes/java.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'classes/java.bbclass')
-rw-r--r--classes/java.bbclass57
1 files changed, 30 insertions, 27 deletions
diff --git a/classes/java.bbclass b/classes/java.bbclass
index 7b67bcd510..d4cf5aa954 100644
--- a/classes/java.bbclass
+++ b/classes/java.bbclass
@@ -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
@@ -68,7 +68,7 @@ oe_jarinstall() {
# Creates symlinks out of the remaining arguments.
while [ "$#" -gt 0 ]; do
- if [ -e $dir/$1 ]; then
+ if [ -e $dir/$1 -o -h $dir/$1 ]; then
oewarn "file was in the way. removing:" $dir/$1
rm $dir/$1
fi
@@ -92,8 +92,12 @@ oe_makeclasspath() {
#
# Provide the -s at the beginning otherwise strange things happen.
# If -s is given the function checks whether the requested jar file exists
- # and exits with an error message if it cannot be found.
+ # and exits with an error message if it cannot be found.
#
+ # Note: In order to encourage usage of the DEPENDS variable, the function
+ # can accept recipe names. If a recipe has no corresponding Jar file it
+ # is ignored. Be careful with recipes where the recipe name is different
+ # from the the Jar file name!
dir=${datadir_java}
classpath=
delimiter=
@@ -102,30 +106,29 @@ oe_makeclasspath() {
shift
while [ "$#" -gt 0 ]; do
- case "$1" in
- -s)
- # take jar files from native staging if this is a -native recipe
- if [ ${PACKAGE_ARCH} = ${BUILD_ARCH} ]; then
- dir=${STAGING_DATADIR_JAVA_NATIVE}
- else
- dir=${STAGING_DATADIR_JAVA}
- fi
- ;;
- -*)
- oefatal "oe_makeclasspath: unknown option: $1"
- ;;
- *)
- file=$dir/$1.jar
-
- if [ -z "$dir" -a ! -f $file ]; then
- oefatal "oe_makeclasspath: Jar file for '$1' not found at $file"
- fi
-
- classpath=$classpath$delimiter$file
- delimiter=":"
- ;;
- esac
- shift
+ case "$1" in
+ -s)
+ # take jar files from native staging if this is a -native recipe
+ if [ ${PACKAGE_ARCH} = ${BUILD_ARCH} ]; then
+ dir=${STAGING_DATADIR_JAVA_NATIVE}
+ else
+ dir=${STAGING_DATADIR_JAVA}
+ fi
+ ;;
+ -*)
+ oefatal "oe_makeclasspath: unknown option: $1"
+ ;;
+ *)
+ file=$dir/$1.jar
+
+ if [ -e $file ]; then
+ classpath=$classpath$delimiter$file
+ delimiter=":"
+ fi
+
+ ;;
+ esac
+ shift
done
eval $retval="$classpath"