From 752d6256e5204b958b0ef7905675a940b5e9172f Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 12 May 2022 16:42:50 +0300 Subject: gentoo resync : 12.05.2022 --- eclass/java-utils-2.eclass | 94 ++++++++++++++++++++++++---------------------- 1 file changed, 49 insertions(+), 45 deletions(-) (limited to 'eclass/java-utils-2.eclass') diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass index 2a649942550c..5b4783f350f2 100644 --- a/eclass/java-utils-2.eclass +++ b/eclass/java-utils-2.eclass @@ -43,21 +43,6 @@ has test ${JAVA_PKG_IUSE} && RESTRICT+=" !test? ( test )" JAVA_PKG_E_DEPEND=">=dev-java/java-config-2.2.0-r3" has source ${JAVA_PKG_IUSE} && JAVA_PKG_E_DEPEND="${JAVA_PKG_E_DEPEND} source? ( app-arch/zip )" -# @ECLASS_VARIABLE: JAVA_PKG_WANT_BOOTCLASSPATH -# @DEFAULT_UNSET -# @DESCRIPTION: -# The version of bootclasspath the package needs to work. Translates to a proper -# dependency. The bootclasspath can then be obtained by java-ant_rewrite-bootclasspath -if [[ -n "${JAVA_PKG_WANT_BOOTCLASSPATH}" ]]; then - if [[ "${JAVA_PKG_WANT_BOOTCLASSPATH}" == "1.5" ]]; then - JAVA_PKG_E_DEPEND="${JAVA_PKG_E_DEPEND} >=dev-java/gnu-classpath-0.98-r1:0.98" - else - eerror "Unknown value of JAVA_PKG_WANT_BOOTCLASSPATH" - # since die in global scope doesn't work, this will make repoman fail - JAVA_PKG_E_DEPEND="${JAVA_PKG_E_DEPEND} BAD_JAVA_PKG_WANT_BOOTCLASSPATH" - fi -fi - # @ECLASS_VARIABLE: JAVA_PKG_ALLOW_VM_CHANGE # @DESCRIPTION: # Allow this eclass to change the active VM? @@ -76,9 +61,9 @@ JAVA_PKG_ALLOW_VM_CHANGE=${JAVA_PKG_ALLOW_VM_CHANGE:="yes"} # # Should only be used for testing and debugging. # -# Example: use sun-jdk-1.5 to emerge foo: +# Example: use openjdk-11 to emerge foo: # @CODE -# JAVA_PKG_FORCE_VM=sun-jdk-1.5 emerge foo +# JAVA_PKG_FORCE_VM=openjdk-11 emerge foo # @CODE # @ECLASS_VARIABLE: JAVA_PKG_WANT_BUILD_VM @@ -103,9 +88,9 @@ JAVA_PKG_ALLOW_VM_CHANGE=${JAVA_PKG_ALLOW_VM_CHANGE:="yes"} # # Should generally only be used for testing and debugging. # -# Use 1.4 source to emerge baz +# Use 1.8 source to emerge baz # @CODE -# JAVA_PKG_WANT_SOURCE=1.4 emerge baz +# JAVA_PKG_WANT_SOURCE=1.8 emerge baz # @CODE # @ECLASS_VARIABLE: JAVA_PKG_WANT_TARGET @@ -118,9 +103,9 @@ JAVA_PKG_ALLOW_VM_CHANGE=${JAVA_PKG_ALLOW_VM_CHANGE:="yes"} # # Should generally only be used for testing and debugging. # -# emerge bar to be compatible with 1.3 +# emerge bar to be compatible with 1.8 # @CODE -# JAVA_PKG_WANT_TARGET=1.3 emerge bar +# JAVA_PKG_WANT_TARGET=1.8 emerge bar # @CODE # @ECLASS_VARIABLE: JAVA_TEST_EXTRA_ARGS @@ -139,6 +124,20 @@ JAVA_PKG_ALLOW_VM_CHANGE=${JAVA_PKG_ALLOW_VM_CHANGE:="yes"} # ) # @CODE +# @ECLASS-VARIABLE: JAVA_TEST_RUNNER_EXTRA_ARGS +# @DEFAULT_UNSET +# @DESCRIPTION: +# Array of extra arguments that should be passed to the test runner when running tests. +# It is useful when you need to pass an extra argument to the test runner. +# +# It is used only when running tests. +# +# @CODE +# JAVA_TEST_RUNNER_EXTRA_ARGS=( +# -verbose 3 +# ) +# @CODE + # @ECLASS_VARIABLE: JAVA_PKG_DEBUG # @DEFAULT_UNSET # @DESCRIPTION: @@ -1373,7 +1372,7 @@ java-pkg_register-environment-variable() { # @DESCRIPTION: # Returns classpath of a given bootclasspath-providing package version. # -# @param $1 - the version of bootclasspath (e.g. 1.5), 'auto' for bootclasspath +# @param $1 - the version of bootclasspath (e.g. 1.8), 'auto' for bootclasspath # of the current JDK java-pkg_get-bootclasspath() { local version="${1}" @@ -1383,9 +1382,6 @@ java-pkg_get-bootclasspath() { auto) bcp="$(java-config -g BOOTCLASSPATH)" ;; - 1.5) - bcp="$(java-pkg_getjars --build-only gnu-classpath-0.98)" - ;; *) eerror "unknown parameter of java-pkg_get-bootclasspath" die "unknown parameter of java-pkg_get-bootclasspath" @@ -1807,8 +1803,18 @@ ejunit_() { if [[ "${junit}" == "junit-4" ]] ; then runner=org.junit.runner.JUnitCore fi - debug-print "Calling: java -cp \"${cp}\" -Djava.io.tmpdir=\"${T}\" -Djava.awt.headless=true ${JAVA_TEST_EXTRA_ARGS[@]} ${runner} ${@}" - java -cp "${cp}" -Djava.io.tmpdir="${T}/" -Djava.awt.headless=true ${JAVA_TEST_EXTRA_ARGS[@]} ${runner} "${@}" || die "Running junit failed" + + local args=( + -cp ${cp} + -Djava.io.tmpdir="${T}" + -Djava.awt.headless=true + ${JAVA_TEST_EXTRA_ARGS[@]} + ${runner} + ${JAVA_TEST_RUNNER_EXTRA_ARGS[@]} + ${@} + ) + debug-print "Calling: java ${args[@]}" + java "${args[@]}" || die "Running junit failed" } # @FUNCTION: ejunit @@ -1886,12 +1892,21 @@ etestng() { tests+="${test}," done - debug-print "java -cp \"${cp}\" -Djava.io.tmpdir=\"${T}\""\ - "-Djava.awt.headless=true ${JAVA_TEST_EXTRA_ARGS[@]} ${runner}"\ - "-usedefaultlisteners false -testclass ${tests}" - java -cp "${cp}" -Djava.io.tmpdir=\"${T}\" -Djava.awt.headless=true ${JAVA_TEST_EXTRA_ARGS[@]}\ - ${runner} -usedefaultlisteners false -testclass ${tests}\ - || die "Running TestNG failed." + local args=( + -cp ${cp} + -Djava.io.tmpdir="${T}" + -Djava.awt.headless=true + ${JAVA_TEST_EXTRA_ARGS[@]} + ${runner} + ${JAVA_TEST_RUNNER_EXTRA_ARGS[@]} + ) + + [[ ! "${JAVA_TEST_RUNNER_EXTRA_ARGS[@]}" =~ "-usedefaultlisteners" ]] && args+=( -usedefaultlisteners false ) + + args+=( -testclass ${tests} ) + + debug-print "java ${args[@]}" + java ${args[@]} || die "Running TestNG failed." } # @FUNCTION: java-utils-2_src_prepare @@ -2547,20 +2562,9 @@ java-pkg_setup-vm() { debug-print-function ${FUNCNAME} $* local vendor="$(java-pkg_get-vm-vendor)" - if [[ "${vendor}" == "sun" ]] && java-pkg_is-vm-version-ge "1.5" ; then - addpredict "/dev/random" - elif [[ "${vendor}" == "ibm" ]]; then - addpredict "/proc/self/maps" - addpredict "/proc/cpuinfo" - addpredict "/proc/self/coredump_filter" - elif [[ "${vendor}" == "oracle" ]]; then - addpredict "/dev/random" - addpredict "/proc/self/coredump_filter" - elif [[ "${vendor}" == icedtea* ]] && java-pkg_is-vm-version-ge "1.7" ; then + if [[ "${vendor}" == icedtea* ]] && java-pkg_is-vm-version-ge "1.8" ; then addpredict "/dev/random" addpredict "/proc/self/coredump_filter" - elif [[ "${vendor}" == "jrockit" ]]; then - addpredict "/proc/cpuinfo" fi } -- cgit v1.2.3