RHEL 9.0.0 Alpha bootstrap

The content of this branch was automatically imported from Fedora ELN
with the following as its source:
https://src.fedoraproject.org/rpms/ecj#ef955216db8cb9dfeefff82784af27d16a9afb5f
This commit is contained in:
Petr Šabata 2020-10-14 23:56:20 +02:00
parent 3199ac5d4e
commit 4d39955866
7 changed files with 476 additions and 0 deletions

8
.gitignore vendored
View File

@ -0,0 +1,8 @@
/noarch
/.build-*.log
/*.src.rpm
/ecj-*.pom
/ecj-*/
/ecjsrc-*.jar
/java10api.jar
/java14api.jar

18
.project Normal file
View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>ecj</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.linuxtools.rpm.rpmlint.rpmlintBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.linuxtools.rpm.core.rpmnature</nature>
<nature>org.eclipse.linuxtools.rpm.rpmlint.rpmlintNature</nature>
</natures>
</projectDescription>

28
MANIFEST.MF Normal file
View File

@ -0,0 +1,28 @@
Manifest-Version: 1.0
Bundle-SymbolicName: org.eclipse.jdt.core.compiler.batch
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
.dispatch;x-internal:=true,org.eclipse.jdt.internal.compiler.apt.mode
l;x-internal:=true,org.eclipse.jdt.internal.compiler.apt.util;x-inter
nal:=true,org.eclipse.jdt.internal.compiler.ast;x-internal:=true,org.
eclipse.jdt.internal.compiler.batch;x-internal:=true,org.eclipse.jdt.
internal.compiler.classfmt;x-internal:=true,org.eclipse.jdt.internal.
compiler.codegen;x-internal:=true,org.eclipse.jdt.internal.compiler.e
nv;x-internal:=true,org.eclipse.jdt.internal.compiler.flow;x-internal
:=true,org.eclipse.jdt.internal.compiler.impl;x-internal:=true,org.ec
lipse.jdt.internal.compiler.lookup;x-internal:=true,org.eclipse.jdt.i
nternal.compiler.parser;x-internal:=true,org.eclipse.jdt.internal.com
piler.parser.diagnose;x-internal:=true,org.eclipse.jdt.internal.compi
ler.problem;x-internal:=true,org.eclipse.jdt.internal.compiler.util;x
-internal:=true,org.eclipse.jdt.internal.compiler.tool;x-internal:=tr
ue
Bundle-Name: Eclipse Compiler for Java(TM)
Bundle-Version: 3.22.0.v20200530-2032
Bundle-ClassPath: .
Bundle-ManifestVersion: 2
Bundle-Vendor: Eclipse.org
Build-Jdk-Spec: 11
Created-By: Maven Archiver 3.5.0
Main-Class: org.eclipse.jdt.internal.compiler.batch.Main

39
ecj-rpmdebuginfo.patch Normal file
View File

@ -0,0 +1,39 @@
### 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);
}
+ {
+ // If we're building an RPM, force full debugging info to
+ // be generated, no matter what options have been passed
+ // by Ant. This is something of a kludge, but it is far
+ // better than the alternative, which is having class
+ // files with debug info mysteriously missing.
+
+ String RpmPackageName = System.getenv("RPM_PACKAGE_NAME");
+ String RpmArch = System.getenv("RPM_ARCH");
+ String RpmBuildRoot = System.getenv("RPM_BUILD_ROOT");
+ if (RpmPackageName != null && RpmArch != null && RpmBuildRoot != null) {
+ this.options.put(
+ CompilerOptions.OPTION_LocalVariableAttribute,
+ CompilerOptions.GENERATE);
+ this.options.put(
+ CompilerOptions.OPTION_LineNumberAttribute,
+ CompilerOptions.GENERATE);
+ this.options.put(
+ CompilerOptions.OPTION_SourceFileAttribute,
+ CompilerOptions.GENERATE);
+ }
+ }
+
this.logger.logCommandLineArguments(newCommandLineArgs);
this.logger.logOptions(this.options);

354
ecj.spec Normal file
View File

@ -0,0 +1,354 @@
Epoch: 1
%global qualifier R-4.16-202006040540
Summary: Eclipse Compiler for Java
Name: ecj
Version: 4.16
Release: 4%{?dist}
URL: http://www.eclipse.org
License: EPL-2.0
Source0: http://download.eclipse.org/eclipse/downloads/drops4/%{qualifier}/ecjsrc-%{version}.jar
Source1: https://repo1.maven.org/maven2/org/eclipse/jdt/ecj/3.22.0/ecj-3.22.0.pom
# Extracted from https://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops4/%%{qualifier}/ecj-%%{version}.jar
Source4: MANIFEST.MF
# Java API stubs for newer JDKs to allow us to build on the system default JDK
Source5: java14api.jar
# Always generate debug info when building RPMs (Andrew Haley)
Patch0: %{name}-rpmdebuginfo.patch
# Include java API stubs in build
Patch1: javaAPI.patch
BuildArch: noarch
BuildRequires: ant
BuildRequires: javapackages-local
# Build with Java 11 against bootclasspath of Java 8
BuildRequires: java-11-openjdk-devel
BuildRequires: java-1.8.0-openjdk-devel
%description
ECJ is the Java bytecode compiler of the Eclipse Platform. It is also known as
the JDT Core batch compiler.
%prep
%setup -q -c
%patch0 -p1
%patch1
sed -i -e 's|debuglevel=\"lines,source\"|debug=\"yes\"|g' build.xml
cp %{SOURCE1} pom.xml
mkdir -p scripts/binary/META-INF/
cp %{SOURCE4} scripts/binary/META-INF/MANIFEST.MF
rm ./META-INF/ECLIPSE_.{SF,RSA}
# Aliases
%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
# Make Java API stubs available for other packages
%mvn_artifact "org.eclipse:java14api:jar:14" %{SOURCE5}
%mvn_alias "org.eclipse:java14api:jar:14" "org.eclipse:java10api:jar:10" "org.eclipse:java9api:jar:9"
%build
JAVA_HOME=%{_jvmdir}/java-11 ant -Djavaapi=%{SOURCE5}
%install
%mvn_artifact pom.xml ecj.jar
%mvn_install
# Install the ecj wrapper script
%jpackage_script org.eclipse.jdt.internal.compiler.batch.Main '' '' ecj ecj true
# Install manpage
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
install -m 644 -p ecj.1 $RPM_BUILD_ROOT%{_mandir}/man1/ecj.1
%files -f .mfiles
%license about.html
%{_bindir}/ecj
%{_mandir}/man1/ecj*
%changelog
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.16-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 10 2020 Jiri Vanek <jvanek@redhat.com> - 1:4.16-3
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
* Fri Jun 19 2020 Mat Booth <mat.booth@redhat.com> - 1:4.16-2
- Restore compiler adaptor
* Thu Jun 18 2020 Mat Booth <mat.booth@redhat.com> - 1:4.16-1
- Update to latest upstream release
* Fri Mar 20 2020 Mat Booth <mat.booth@redhat.com> - 1:4.15-1
- Update to latest upstream release
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.14-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Dec 16 2019 Mat Booth <mat.booth@redhat.com> - 1:4.14-2
- Remove upstream code-signatures
* Fri Dec 13 2019 Mat Booth <mat.booth@redhat.com> - 1:4.14-1
- Update to latest upstream version
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.12-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Jun 29 2019 Mat Booth <mat.booth@redhat.com> - 1:4.12-1
- Update to latest upstream release
* Thu Mar 07 2019 Mat Booth <mat.booth@redhat.com> - 1:4.11-0.1
- Update to latest release candidate of 4.11
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.10-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Tue Dec 11 2018 Mat Booth <mat.booth@redhat.com> - 1:4.10-1
- Update to 2018-12 release
* Wed Sep 12 2018 Mat Booth <mat.booth@redhat.com> - 1:4.9-1
- Update to latest release
- Amend license tag
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.7.3a-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon Apr 09 2018 Mat Booth <mat.booth@redhat.com> - 1:4.7.3a-1
- Update to Oxygen.3a release for java 10 support
- Break circular dep on JDT by providing the java API stubs in this package
* Tue Mar 20 2018 Mat Booth <mat.booth@redhat.com> - 1:4.7.3-1
- Update to Oxygen.3
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.7.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Sep 21 2017 Mat Booth <mat.booth@redhat.com> - 1:4.7.1-1
- Update to Oxygen.1 release
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.6.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Thu Jun 15 2017 Michael Simacek <msimacek@redhat.com> - 1:4.6.3-2
- Update aliases for jetty
* Wed Mar 29 2017 Mat Booth <mat.booth@redhat.com> - 1:4.6.3-1
- Update to Neon.3 release
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.6.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Jan 10 2017 Mat Booth <mat.booth@redhat.com> - 1:4.6.2-1
- Update to Neon.2 release
* Fri Jul 01 2016 Mat Booth <mat.booth@redhat.com> - 1:4.6-1
- Update to Neon release
* Tue Apr 26 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.5.2-3
- Re-add alias for org.eclipse.jdt:core
* Fri Apr 22 2016 Mat Booth <mat.booth@redhat.com> - 1:4.5.2-2
- Drop aliases that are now provided by eclipse-jdt
* Mon Feb 29 2016 Mat Booth <mat.booth@redhat.com> - 1:4.5.2-1
- Update to Mars.2 release
* Fri Feb 05 2016 Mat Booth <mat.booth@redhat.com> - 1:4.5.1-3
- Allow any compression man pages
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.5.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Oct 06 2015 Mat Booth <mat.booth@redhat.com> - 1:4.5.1-1
- Update to Mars.1 release
* Thu Jul 2 2015 Alexander Kurtakov <akurtako@redhat.com> 1:4.5-1
- Update to upstream 4.5 release.
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:4.4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Mon Mar 30 2015 Mat Booth <mat.booth@redhat.com> - 1:4.4.2-1
- Update to 4.4.2.
- Install with mvn_install
- Add jetty.orbit alias
- Add compiler.apt aliases
- Drop ancient obsoletes/provides on eclipse-ecj
- Use man page from upstream source
* Thu Jan 8 2015 Alexander Kurtakov <akurtako@redhat.com> 1:4.4.1-1
- Update to 4.4.1.
* Thu Jul 3 2014 Alexander Kurtakov <akurtako@redhat.com> 1:4.4.0-1
- Update to 4.4 final.
- Drop gcj patches as gcj is not in Fedora anymore and ecj now requires 1.6.
* Thu Jun 12 2014 Alexander Kurtakov <akurtako@redhat.com> 1:4.4.0-0.4.git20140430
- Add additional depmap for maven.
* Mon Jun 9 2014 Alexander Kurtakov <akurtako@redhat.com> 1:4.4.0-0.3.git20140430
- Fix FTBFS.
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:4.4.0-0.2.git20140430
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Thu May 1 2014 Alexander Kurtakov <akurtako@redhat.com> 1:4.4.0-0.1.git20140430
- Update to 4.4.0 I-build to make it cope with Java 8.
* Mon Apr 14 2014 Mat Booth <mat.booth@redhat.com> - 1:4.2.1-10
- Drop gcj AOT-compilation support.
- Obsolete -native sub-package.
* Wed Oct 09 2013 gil cattaneo <puntogil@libero.it> 1:4.2.1-9
- enable build of org/eclipse/jdt/internal/compiler/[apt,tool]
(ant build mode only), required by querydsl
- remove some rpmlint problems (invalid date)
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:4.2.1-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Tue May 21 2013 Jon VanAlten <jon.vanalten@redhat.com> - 4.2.1-7
- Add manpage for ecj executable
- Resolves: rhbz#948442
* Tue Apr 9 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.2.1-6
- Add depmap for org.eclipse.jdt.core.compiler:ecj
- Resolves: rhbz#949938
* Wed Mar 06 2013 Karsten Hopp <karsten@redhat.com> 1:4.2.1-5
- add BR java-devel for !with_gcjbootstrap
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:4.2.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Mon Oct 29 2012 Jon VanAlten <jon.vanalten@redhat.com> 1:4.2.1-3
- Patch GCCMain to avoid dummy symbols.
* Wed Oct 10 2012 Krzysztof Daniel <kdaniel@redhat.com> 1:4.2.1-2
- Add depmap satysfying Tycho req.
* Sun Jul 29 2012 Jon VanAlten <jon.vanalten@redhat.com> 1:4.2.1-1
- Update to 4.2.1 upstream version.
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:3.4.2-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Wed Apr 18 2012 Alexander Kurtakov <akurtako@redhat.com> 1:3.4.2-13
- Add missing epoch to native subpackage requires.
* Tue Apr 17 2012 Alexander Kurtakov <akurtako@redhat.com> 1:3.4.2-12
- Separate gcj in subpackage.
* Mon Jan 16 2012 Alexander Kurtakov <akurtako@redhat.com> 1:3.4.2-11
- Patch pom file to better represent ecj and not jdt.core .
- Guidelines fixes.
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:3.4.2-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:3.4.2-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Fri Nov 26 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1:3.4.2-8
- Fix add_to_maven_depmap call (Resolves rhbz#655796)
* Mon Dec 21 2009 Deepak Bhole <dbhole@redhat.com> - 1:3.4.2-7
- Fix RHBZ# 490936. If CLASSPATH is not set, add . to default classpath.
* Wed Sep 9 2009 Alexander Kurtakov <akurtako@redhat.com> 1:3.4.2-6
- Add maven pom and depmaps.
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:3.4.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Wed Mar 11 2009 Deepak Bhole <dbhole@redhat.com> 1:3.4.2-4
- Add patch to generate full debuginfo for ecj itself
* Tue Mar 10 2009 Deepak Bhole <dbhole@redhat.com> 1:3.4.2-3
- Add BR for aot-compile-rpm
* Tue Mar 10 2009 Deepak Bhole <dbhole@redhat.com> 1:3.4.2-2
- Add BR for ant
* Fri Mar 6 2009 Andrew Overholt <overholt@redhat.com> 1:3.4.2-1
- 3.4.2
* Tue Dec 9 2008 Andrew Overholt <overholt@redhat.com> 1:3.4.1-1
- 3.4.1
- Don't conditionalize building of gcj AOT bits (we're only building
this for gcj and IcedTea bootstrapping).
* Mon Jan 22 2007 Andrew Overholt <overholt@redhat.com> 3.2.1-1
- Add eclipse-ecj-gcj.patch.
* Fri Jan 12 2007 Andrew Overholt <overholt@redhat.com> 3.2.1-1
- First version for Fedora 7.
- Add BR: java-devel for jar.
* Thu Nov 02 2006 Andrew Overholt <overholt@redhat.com> 1:3.2.1-1jpp
- First version for JPackage.
* Mon Jul 24 2006 Andrew Overholt <overholt@redhat.com> 1:3.2.0-1
- Add versionless ecj.jar symlink in /usr/share/java.
* Wed Jul 19 2006 Andrew Overholt <overholt@redhat.com> 1:3.2.0-1
- 3.2.0.
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt
* Mon Mar 07 2005 Andrew Overholt <overholt@redhat.com> 1:3.1.0.M4.9
- Don't build for ppc or ia64.
* Sun Feb 20 2005 Andrew Overholt <overholt@redhat.com> 1:3.1.0.M4.6
- Upgrade back to 3.1M4.
- Don't build for i386 and x86_64.
- Provide eclipse-ecj until we can deprecate this package.
* Fri Jan 14 2005 Andrew Overholt <overholt@redhat.com> 3.1.0.M4.4
- build for all but x86
* Thu Jan 13 2005 Andrew Overholt <overholt@redhat.com> 3.1.0.M4.3
- build for ppc exclusively
* Wed Jan 12 2005 Andrew Overholt <overholt@redhat.com> 3.1.0.M4.2
- Add RPM_OPT_FLAGS workaround.
* Tue Jan 11 2005 Andrew Overholt <overholt@redhat.com> 3.1.0.M4.1
- New version.
* Mon Sep 27 2004 Gary Benson <gbenson@redhat.com> 2.1.3-5
- Rebuild with new katana.
* Thu Jul 22 2004 Gary Benson <gbenson@redhat.com> 2.1.3-4
- Build without bootstrap-ant.
- Split out lib-org-eclipse-jdt-internal-compiler.so.
* Tue Jul 6 2004 Gary Benson <gbenson@redhat.com> 2.1.3-3
- Fix ecj-devel's dependencies.
* Wed Jun 9 2004 Gary Benson <gbenson@redhat.com> 2.1.3-2
- Work around an optimiser failure somewhere in ecj or gcj (#125613).
* Fri May 28 2004 Gary Benson <gbenson@redhat.com>
- Build with katana.
* Mon May 24 2004 Gary Benson <gbenson@redhat.com> 2.1.3-1
- Initial Red Hat Linux build.
* Mon May 24 2004 Gary Benson <gbenson@redhat.com>
- Upgraded to latest version.
* Sun Jul 20 2003 Anthony Green <green@redhat.com>
- Add %%doc
* Fri Jul 18 2003 Anthony Green <green@redhat.com>
- Initial RHUG build.

26
javaAPI.patch Normal file
View File

@ -0,0 +1,26 @@
--- build.xml.orig 2018-03-20 15:15:57.063810672 +0000
+++ build.xml 2018-03-20 15:16:26.018700633 +0000
@@ -18,16 +18,20 @@
<property name="output" value="bin" />
<property name="jar_file" value="ecj.jar" />
+ <path id="build.path">
+ <pathelement path="${javaapi}"/>
+ <pathelement path="/usr/lib/jvm/java-1.8.0/jre/lib/rt.jar"/>
+ </path>
<target name="build">
<delete file="${basedir}/${jar_file}" failonerror="no" />
<delete dir="${output}" failonerror="no" />
<mkdir dir="${output}" />
- <javac srcdir="${basedir}" destdir="${output}"
- debuglevel="lines,source"
+ <javac srcdir="${basedir}" destdir="${output}" bootclasspathref="build.path"
+ debug="yes"
source="1.8"
target="1.8">
- <compilerarg line="-Xlint:none"/>
+ <compilerarg line="-Xlint:none -encoding cp1252"/>
</javac>
<delete file="${basedir}/META-INF/MANIFEST.MF" failonerror="false"/>

3
sources Normal file
View File

@ -0,0 +1,3 @@
SHA512 (ecjsrc-4.16.jar) = d835245bf5847ab0fb5412366e483a1951f8c4c7d415f5ee5a036ba4b44905e55b694551cef48511306173ed529f22c16af8c0a4cd560dd6742f08c5bf4d7959
SHA512 (ecj-3.22.0.pom) = a6585521f9a7368574764ce668f5d4d10db2589136d4cf640c6736ebde216c7efd1b83b1d29156a3e1effa47523482bb0aeabbc2597abc96459529ff13a31835
SHA512 (java14api.jar) = 0026513d7783924261b45d575831b562c2b17ba704f38864b385a636a2c348d8746936234a88dc6e04d5560659ca621333909248be92f59ab7d787b7ce4982aa