Bug 269785 - java/eclipse-ecj: Very much outdated
Summary: java/eclipse-ecj: Very much outdated
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Lorenzo Salvadore
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-02-23 19:00 UTC by Lorenzo Salvadore
Modified: 2024-02-28 18:45 UTC (History)
5 users (show)

See Also:


Attachments
Attempt to update to 4.5.2 (2.19 KB, patch)
2023-02-23 19:00 UTC, Lorenzo Salvadore
no flags Details | Diff
Attempt to update to 4.26 (2.62 KB, patch)
2023-02-23 19:01 UTC, Lorenzo Salvadore
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Lorenzo Salvadore freebsd_committer freebsd_triage 2023-02-23 19:00:50 UTC
Created attachment 240350 [details]
Attempt to update to 4.5.2

As I am attempting to remove old unsupported GCC related ports from our ports tree, I suggested changing the math/scilab dependency on lang/gcc-ecj45 in a dependency on java/eclipse-ecj, which has been done with commit https://cgit.freebsd.org/ports/commit/?id=2d4eee31a5304dec391dcad3a9011ec32f7e912e .

However, the version of devel/eclipse-ecj we have in the ports tree is 4.4.2, which is behind what gcc-ecj45 offered. It would be nice if java/eclipse-ecj could be updated to version 4.5.2 at least. Gerald and I have made an attempt, that I attach to the bug report, but it failed with the following error:

===>  Building for eclipse-ecj-4.5.2
Buildfile: /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/build.xml

build:
   [delete] Deleting directory /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/bin
    [mkdir] Created dir: /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/bin
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/build.xml:27: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 446 source files to /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/bin
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java:21: error: cannot find symbol
    [javac] import org.eclipse.jdt.core.JavaCore;
    [javac]                            ^
    [javac]   symbol:   class JavaCore
    [javac]   location: package org.eclipse.jdt.core
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java:192: error: cannot find symbol
    [javac]                                     new CompilerOptions(JavaCore.getOptions()),
    [javac]                                                         ^
    [javac]   symbol:   variable JavaCore
    [javac]   location: class ClasspathDirectory
    [javac] Note: /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/org/eclipse/jdt/core/JDTCompilerAdapter.java uses or overrides a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 2 errors

BUILD FAILED
/usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.5.2/build.xml:27: Compile failed; see the compiler error output for details.

Total time: 4 seconds
*** Error code 1

Stop.
make: stopped in /usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj

Since version 4.5.2 would still be very outdated and the update to that version is not straightforward, I also made an attempt to update the port to the latest version (4.26), that I also attach to the bug report. But it failed as well, with the following error:

===>  Building for eclipse-ecj-4.26
Buildfile: /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/build.xml

build:
    [mkdir] Created dir: /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/bin
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/build.xml:29: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 541 source files to /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/bin
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:32: error: cannot find symbol
    [javac] import javax.lang.model.element.RecordComponentElement;
    [javac]                                ^
    [javac]   symbol:   class RecordComponentElement
    [javac]   location: package javax.lang.model.element
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:183: error: cannot find symbol
    [javac]     public List<? extends RecordComponentElement> getRecordComponents() {
    [javac]                           ^
    [javac]   symbol:   class RecordComponentElement
    [javac]   location: class TypeElementImpl
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/RecordComponentElementImpl.java:20: error: cannot find symbol
    [javac] import javax.lang.model.element.RecordComponentElement;
    [javac]                                ^
    [javac]   symbol:   class RecordComponentElement
    [javac]   location: package javax.lang.model.element
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/RecordComponentElementImpl.java:28: error: cannot find symbol
    [javac] public class RecordComponentElementImpl extends VariableElementImpl implements RecordComponentElement {
    [javac]                                                                                ^
    [javac]   symbol: class RecordComponentElement
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/Factory.java:331: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 			case RECORD :
    [javac] 			     ^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java:352: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 			case RECORD :
    [javac] 			     ^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java:383: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 			case RECORD_COMPONENT :
    [javac] 			     ^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java:589: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 			case RECORD :
    [javac] 			     ^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java:602: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 			case RECORD_COMPONENT :
    [javac] 			     ^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java:734: error: method does not override or implement a method from a supertype
    [javac] 	@Override
    [javac] 	^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:89: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 				case RECORD :
    [javac] 				     ^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:109: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 				case RECORD_COMPONENT :
    [javac] 				     ^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:170: error: cannot find symbol
    [javac] 				RecordComponentElement rec = new RecordComponentElementImpl(_env, comp);
    [javac] 				^
    [javac]   symbol:   class RecordComponentElement
    [javac]   location: class TypeElementImpl
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:182: error: method does not override or implement a method from a supertype
    [javac] 	@Override
    [javac] 	^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:186: error: cannot find symbol
    [javac] 			List<RecordComponentElement> enclosed = new ArrayList<>();
    [javac] 			     ^
    [javac]   symbol:   class RecordComponentElement
    [javac]   location: class TypeElementImpl
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:188: error: cannot find symbol
    [javac] 				RecordComponentElement variable = new RecordComponentElementImpl(_env, comp);
    [javac] 				^
    [javac]   symbol:   class RecordComponentElement
    [javac]   location: class TypeElementImpl
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:198: error: method does not override or implement a method from a supertype
    [javac] 	@Override
    [javac] 	^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java:264: error: cannot find symbol
    [javac] 			return ElementKind.RECORD;
    [javac] 			                  ^
    [javac]   symbol:   variable RECORD
    [javac]   location: class ElementKind
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/RecordComponentElementImpl.java:36: error: cannot find symbol
    [javac] 		return ElementKind.RECORD_COMPONENT;
    [javac] 		                  ^
    [javac]   symbol:   variable RECORD_COMPONENT
    [javac]   location: class ElementKind
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/RecordComponentElementImpl.java:39: error: method does not override or implement a method from a supertype
    [javac] 	@Override
    [javac] 	^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/RecordComponentElementImpl.java:52: error: cannot find symbol
    [javac] 		return visitor.visitRecordComponent(this, param);
    [javac] 		              ^
    [javac]   symbol:   method visitRecordComponent(RecordComponentElementImpl,P)
    [javac]   location: variable visitor of type ElementVisitor<R,P>
    [javac]   where P,R are type-variables:
    [javac]     P extends Object declared in method <R,P>accept(ElementVisitor<R,P>,P)
    [javac]     R extends Object declared in method <R,P>accept(ElementVisitor<R,P>,P)
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.java:142: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 		case RECORD_COMPONENT:
    [javac] 		     ^
    [javac] /usr/home/lorenzo/FreeBSD/wrkdir/usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj/work/eclipse-ecj-4.26/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.java:164: error: an enum switch case label must be the unqualified name of an enumeration constant
    [javac] 		case RECORD:
    [javac] 		     ^
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 23 errors
*** Error code 1

Stop.
make: stopped in /usr/home/lorenzo/FreeBSD/ports/test/java/eclipse-ecj

Is anyone able to help?
Comment 1 Lorenzo Salvadore freebsd_committer freebsd_triage 2023-02-23 19:01:34 UTC
Created attachment 240351 [details]
Attempt to update to 4.26
Comment 2 Fernando Apesteguía freebsd_committer freebsd_triage 2023-02-24 12:55:33 UTC
^Triage: reporter is committer, assign accordingly.
Comment 3 Kurt Jaeger freebsd_committer freebsd_triage 2024-02-28 18:45:12 UTC
(In reply to Lorenzo Salvadore from comment #1)
fails to build on 14.0 ?

https://people.freebsd.org/~pi/logs/ecf.txt