# Copyright 2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 JAVA_PKG_IUSE="doc source test" JAVA_TESTING_FRAMEWORKS="junit-4" inherit java-pkg-2 java-pkg-simple DESCRIPTION="Object Graph Navigation Library" HOMEPAGE="https://ognl.orphan.software/" SRC_URI="https://github.com/orphan-oss/ognl/archive/OGNL_${PV//./_}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/ognl-OGNL_${PV//./_}" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm64" JAVACC_SLOT="7.0.13" BDEPEND="dev-java/javacc:${JAVACC_SLOT}" DEPEND=" dev-java/javassist:3 >=virtual/jdk-1.8:* test? ( dev-java/easymock:2.5 dev-java/hamcrest-core:1.3 ) " RDEPEND=">=virtual/jre-1.8:*" JAVA_AUTOMATIC_MODULE_NAME="ognl" JAVA_CLASSPATH_EXTRA="javassist-3" JAVA_SRC_DIR="src/java" JAVA_TEST_EXCLUDES=( # junit.framework.AssertionFailedError: No tests found in org.ognl.test.OgnlTestCase # org.junit.runners.model.InvalidTestClassError: Invalid test class 'org.ognl.test.objects.TestModel': # org.junit.runners.model.InvalidTestClassError: Invalid test class 'org.ognl.test.objects.TestInherited2': # org.junit.runners.model.InvalidTestClassError: Invalid test class 'org.ognl.test.objects.TestImpl': # org.junit.runners.model.InvalidTestClassError: Invalid test class 'org.ognl.test.objects.TestClass': # org.junit.runners.model.InvalidTestClassError: Invalid test class 'org.ognl.test.objects.TestInherited1': ognl.Java8Test org.ognl.test.OgnlTestCase org.ognl.test.objects.TestModel org.ognl.test.objects.TestInherited2 org.ognl.test.objects.TestImpl org.ognl.test.objects.TestClass org.ognl.test.objects.TestInherited1 ) JAVA_TEST_GENTOO_CLASSPATH="easymock-2.5 hamcrest-core-1.3 junit-4" JAVA_TEST_RESOURCE_DIRS="src/test/resources" JAVA_TEST_SRC_DIR="src/test/java" src_prepare() { default #780585 java-pkg-2_src_prepare "javacc-${JAVACC_SLOT}" \ -GRAMMAR_ENCODING=UTF-8 \ -LOOKAHEAD=1, -STATIC=false \ -JAVA_UNICODE_ESCAPE=true \ -UNICODE_INPUT=true \ -OUTPUT_DIRECTORY=src/main/java \ src/java/ognl/ognl.jj || die "javacc" } src_test() { local vm_version="$(java-config -g PROVIDES_VERSION)" if ver_test "${vm_version}" -ge 21; then # This file has 30 tets, 5 of which would fail with higher Java versions. eapply "${FILESDIR}/ognl-3.1.24-TestOgnlRuntime.patch" fi if ver_test "${vm_version}" -ge 17; then JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED ) fi java-pkg-simple_src_test }