Index: java-utils-2.eclass =================================================================== RCS file: /var/cvsroot/gentoo-x86/eclass/java-utils-2.eclass,v retrieving revision 1.24 diff -u -r1.24 java-utils-2.eclass --- java-utils-2.eclass 27 Sep 2006 21:35:54 -0000 1.24 +++ java-utils-2.eclass 21 Oct 2006 10:12:55 -0000 @@ -550,7 +550,9 @@ while [[ -n "${1}" && -n "${2}" ]]; do local var=${1} value=${2} if [[ "${var:0:2}" == "--" ]]; then - echo "gjl_${var:2}=\"${value}\"" >> "${var_tmp}" + local var=${var:2} + echo "gjl_${var}=\"${value}\"" >> "${var_tmp}" + local gjl_${var}=${value} elif [[ "${var}" == "-into" ]]; then target_dir="${value}" elif [[ "${var}" == "-pre" ]]; then @@ -559,6 +561,20 @@ shift 2 done + # Test if no --jar and --main arguments were given and + # in that case check if the package only installs one jar + # and use that jar. + if [[ -z "${gjl_jar}" && -z "${gjl_main}" ]]; then + local cp="${JAVA_PKG_CLASSPATH}" + if [[ "${cp/:}" = "${cp}" && "${cp%.jar}" != "${cp}" ]]; then + echo "gjl_jar=\"${JAVA_PKG_CLASSPATH}\"" >> "${var_tmp}" + else + local msg="Not enough information to create a launcher given." + msg="${msg} Please give --jar or --main argument to ${FUNCNAME}." + die "${msg}" + fi + fi + # Write the actual script echo "#!/bin/bash" > "${target}" [[ -n "${pre}" ]] && [[ -f "${pre}" ]] && cat "${pre}" >> "${target}"