diff --git a/MANIFEST.MF b/MANIFEST.MF
index fec577b..7d260b6 100644
--- a/MANIFEST.MF
+++ b/MANIFEST.MF
@@ -1,10 +1,5 @@
Manifest-Version: 1.0
Bundle-SymbolicName: org.eclipse.jdt.core.compiler.batch
-Archiver-Version: Plexus Archiver
-Built-By: genie.releng
-Bundle-ManifestVersion: 2
-Bundle-Vendor: Eclipse.org
-Main-Class: org.eclipse.jdt.internal.compiler.batch.Main
Export-Package: org.eclipse.jdt.core,org.eclipse.jdt.core.compiler,org
.eclipse.jdt.internal.antadapter;x-internal:=true,org.eclipse.jdt.int
ernal.compiler;x-internal:=true,org.eclipse.jdt.internal.compiler.apt
@@ -23,8 +18,12 @@ Export-Package: org.eclipse.jdt.core,org.eclipse.jdt.core.compiler,org
-internal:=true,org.eclipse.jdt.internal.compiler.tool;x-internal:=tr
ue
Bundle-Name: Eclipse Compiler for Java(TM)
-Bundle-Version: 3.13.0.v20170516-1929
+Bundle-Version: 3.18.0.v20190522-0428
Bundle-ClassPath: .
-Created-By: Apache Maven
-Build-Jdk: 1.8.0_121
+Built-By: genie.releng
+Bundle-ManifestVersion: 2
+Bundle-Vendor: Eclipse.org
+Created-By: Apache Maven 3.5.4
+Build-Jdk: 1.8.0_192
+Main-Class: org.eclipse.jdt.internal.compiler.batch.Main
diff --git a/ecj-3.29.0.pom b/ecj-3.18.0.pom
similarity index 92%
rename from ecj-3.29.0.pom
rename to ecj-3.18.0.pom
index 537fbeb..b739824 100644
--- a/ecj-3.29.0.pom
+++ b/ecj-3.18.0.pom
@@ -16,7 +16,7 @@
4.0.0
org.eclipse.jdt
ecj
- 3.29.0
+ 3.18.0
Eclipse Compiler for Java(TM)
Eclipse Compiler for Java(TM)
http://www.eclipse.org/jdt
@@ -36,7 +36,7 @@
https://bugs.eclipse.org/
- scm:git:https://git.eclipse.org/r/jdt/eclipse.jdt.core.git
+ scm:git:git://git.eclipse.org/gitroot/jdt/eclipse.jdt.core.git
https://git.eclipse.org/c/jdt/eclipse.jdt.core.git
diff --git a/0001-Always-generate-bytecode-debuginfo.patch b/ecj-rpmdebuginfo.patch
similarity index 61%
rename from 0001-Always-generate-bytecode-debuginfo.patch
rename to ecj-rpmdebuginfo.patch
index 6bc2c92..e2727a1 100644
--- a/0001-Always-generate-bytecode-debuginfo.patch
+++ b/ecj-rpmdebuginfo.patch
@@ -1,18 +1,13 @@
-From e7ff390ef777bd818ccc6e6f8f3a56f36020abfe Mon Sep 17 00:00:00 2001
-From: Mat Booth
-Date: Wed, 15 Sep 2021 10:21:53 +0100
-Subject: [PATCH 1/2] Always generate bytecode debuginfo
-
-When ecj is used to build RPMs
----
- .../jdt/internal/compiler/batch/Main.java | 23 +++++++++++++++++++
- 1 file changed, 23 insertions(+)
-
-diff --git a/org/eclipse/jdt/internal/compiler/batch/Main.java b/org/eclipse/jdt/internal/compiler/batch/Main.java
-index f77372d..73a0d24 100644
---- a/org/eclipse/jdt/internal/compiler/batch/Main.java
-+++ b/org/eclipse/jdt/internal/compiler/batch/Main.java
-@@ -3109,6 +3109,29 @@ public void configure(String[] argv) {
+### Eclipse Workspace Patch 1.0
+#P org.eclipse.jdt.core
+Index: batch/org/eclipse/jdt/internal/compiler/batch/Main.java
+===================================================================
+RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/Main.java,v
+retrieving revision 1.327
+diff -u -r1.327 Main.java
+--- batch/org/eclipse/jdt/internal/compiler/batch/Main.java 21 Apr 2008 15:00:59 -0000 1.327
++++ batch/org/eclipse/jdt/internal/compiler/batch/Main.java 20 Nov 2008 19:26:57 -0000
+@@ -2609,6 +2609,29 @@
this.options.put(CompilerOptions.OPTION_Process_Annotations, CompilerOptions.ENABLED);
}
@@ -42,6 +37,3 @@ index f77372d..73a0d24 100644
this.logger.logCommandLineArguments(newCommandLineArgs);
this.logger.logOptions(this.options);
---
-2.31.1
-
diff --git a/ecj.spec b/ecj.spec
index e817455..b61626b 100644
--- a/ecj.spec
+++ b/ecj.spec
@@ -1,23 +1,24 @@
Epoch: 1
-%global bundle_ver 3.29.0
+%global qualifier R-4.12-201906051800
Name: ecj
-Version: 4.23
+Version: 4.12
Release: 1
Summary: the Eclipse Compiler for Java
License: EPL-2.0
URL: http://www.eclipse.org
-Source0: https://download.eclipse.org/eclipse/downloads/drops4/R-%{version}-202203080310/ecjsrc-%{version}.jar
-Source1: https://repo1.maven.org/maven2/org/eclipse/jdt/ecj/%{bundle_ver}/ecj-%{bundle_ver}.pom
+Source0: http://download.eclipse.org/eclipse/downloads/drops4/%{qualifier}/ecjsrc-%{version}.jar
+Source1: https://repo1.maven.org/maven2/org/eclipse/jdt/ecj/3.18.0/ecj-3.18.0.pom
Source2: MANIFEST.MF
+Source3: java10api.jar
-Patch0: 0001-Always-generate-bytecode-debuginfo.patch
+Patch0: %{name}-rpmdebuginfo.patch
+Patch1: javaAPI.patch
BuildArch: noarch
BuildRequires: ant javapackages-local
-BuildRequires: java-11-openjdk-devel
%description
ECJ is the the Eclipse Compiler for Java. It is also known as the JDT Core batch compiler.
@@ -27,18 +28,21 @@ ECJ is the the Eclipse Compiler for Java. It is also known as the JDT Core batc
%prep
%autosetup -c -n %{name}-%{version} -p1
-sed -i -e "s/Xlint:none/Xlint:none -encoding cp1252/g" build.xml
-rm -f org/eclipse/jdt/core/JDTCompilerAdapter.java
+sed -i -e 's|debuglevel=\"lines,source\"|debug=\"yes\"|g' build.xml
+
cp %{SOURCE1} pom.xml
mkdir -p scripts/binary/META-INF/
cp %{SOURCE2} scripts/binary/META-INF/MANIFEST.MF
+rm -f org/eclipse/jdt/core/JDTCompilerAdapter.java
+
%mvn_alias org.eclipse.jdt:ecj org.eclipse.jdt:core org.eclipse.jdt.core.compiler:ecj \
org.eclipse.tycho:org.eclipse.jdt.core org.eclipse.tycho:org.eclipse.jdt.compiler.apt
+%mvn_artifact "org.eclipse:java10api:jar:10" %{SOURCE3}
+%mvn_alias "org.eclipse:java10api:jar:10" "org.eclipse:java9api:jar:9"
%build
-export JAVA_HOME=/usr/lib/jvm/java-11
-ant
+ant -Djavaapi=%{SOURCE3}
%install
%mvn_artifact pom.xml ecj.jar
@@ -58,6 +62,9 @@ install -m 644 -p ecj.1 %{buildroot}%{_mandir}/man1/ecj.1
%{_mandir}/man1/ecj*
%changelog
+* Mon May 23 2022 chenchen - 1:4.12-1
+- downgrade to 4.12
+
* Wed May 18 2022 chenchen - 1:4.23-1
- update to 4.23
diff --git a/ecjsrc-4.12.jar b/ecjsrc-4.12.jar
new file mode 100644
index 0000000..eacd58a
Binary files /dev/null and b/ecjsrc-4.12.jar differ
diff --git a/ecjsrc-4.23.jar b/ecjsrc-4.23.jar
deleted file mode 100644
index 9b0a8be..0000000
Binary files a/ecjsrc-4.23.jar and /dev/null differ
diff --git a/java10api.jar b/java10api.jar
new file mode 100644
index 0000000..464b691
Binary files /dev/null and b/java10api.jar differ
diff --git a/javaAPI.patch b/javaAPI.patch
new file mode 100644
index 0000000..cd8d1b5
--- /dev/null
+++ b/javaAPI.patch
@@ -0,0 +1,26 @@
+--- a/build.xml.orig 2018-03-20 15:15:57.063810672 +0000
++++ b/build.xml 2018-03-20 15:16:26.018700633 +0000
+@@ -15,16 +15,20 @@
+
+
+
++
++
++
++
+
+
+
+
+
+-
+-
++
+
+
+