diff options
Diffstat (limited to 'dev-java/eclipse-ecj/eclipse-ecj-4.38.ebuild')
| -rw-r--r-- | dev-java/eclipse-ecj/eclipse-ecj-4.38.ebuild | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.38.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.38.ebuild new file mode 100644 index 000000000000..31332d5cc401 --- /dev/null +++ b/dev-java/eclipse-ecj/eclipse-ecj-4.38.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source" + +inherit java-pkg-2 java-pkg-simple + +DMF="R-${PV/_rc/RC}-202512010920" + +DESCRIPTION="Eclipse Compiler for Java" +HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt" +SRC_URI="https://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar" +S="${WORKDIR}" + +LICENSE="EPL-1.0" +SLOT="4.38" +KEYWORDS="~amd64 ~arm64" + +BDEPEND="app-arch/unzip" + +# jdk-25 because of compilation errors with jdk-21 +DEPEND=" + >=dev-java/ant-1.10.15:0 + >=virtual/jdk-25:* +" + +# ./org/eclipse/jdt/internal/compiler/env/ICompilationUnit.java:64: +# error: pattern matching in instanceof is not supported in -source 11 +# if (environment.nameEnvironment instanceof IModuleAwareNameEnvironment modEnv) { +# ^ +# (use -source 16 or higher to enable pattern matching in instanceof) +RDEPEND=">=virtual/jre-17:*" + +DOCS=( org/eclipse/jdt/core/README.md ) +JAVA_AUTOMATIC_MODULE_NAME="org.eclipse.jdt.core.compiler.batch" +JAVA_CLASSPATH_EXTRA="ant" +JAVA_JAR_FILENAME="ecj.jar" +JAVA_LAUNCHER_FILENAME="ecj-${SLOT}" +JAVA_MAIN_CLASS="org.eclipse.jdt.internal.compiler.batch.Main" +JAVA_RESOURCE_DIRS="res" + +src_prepare() { + java-pkg-2_src_prepare + + # Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes + rm META-INF/ECLIPSE_* || die + + mkdir "${JAVA_RESOURCE_DIRS}" || die + find -type f \ + ! -name '*.java' \ + ! -name 'package.html' \ + ! -path '*/grammar/*' \ + ! -path '*/OSGI-INF/*' | + xargs cp --parent -t "${JAVA_RESOURCE_DIRS}" || die +} |
