From 0fd34e866bf2ee5ac545e5f10287e0a719d69b30 Mon Sep 17 00:00:00 2001 From: Mat Booth Date: Jun 19 2020 01:07:57 +0000 Subject: Update to latest upstream release --- diff --git a/compiler-release.patch b/compiler-release.patch deleted file mode 100644 index 0d0828d..0000000 --- a/compiler-release.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- rt.equinox.p2/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml.orig 2020-03-23 00:19:02.052686148 +0000 -+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml 2020-03-23 00:19:10.187688146 +0000 -@@ -11,4 +11,7 @@ - org.eclipse.equinox.p2.artifact.repository - 1.3.400-SNAPSHOT - eclipse-plugin -+ -+ 8 -+ - diff --git a/eclipse-feature-plugins-to-category-ius.patch b/eclipse-feature-plugins-to-category-ius.patch index 1b1e5ff..5e797f8 100644 --- a/eclipse-feature-plugins-to-category-ius.patch +++ b/eclipse-feature-plugins-to-category-ius.patch @@ -185,32 +185,6 @@ index 57a58c6d5..a9c3e2c9b 100644 eclipse-plugin - - -- javax.annotation -+ javax.annotation-api - eclipse-plugin - - -diff --git a/eclipse.platform.common/bundles/org.eclipse.pde.doc.user/pom.xml b/eclipse.platform.common/bundles/org.eclipse.pde.doc.user/pom.xml -index 16a7a02dc..23ffa475a 100644 ---- a/eclipse.platform.common/bundles/org.eclipse.pde.doc.user/pom.xml -+++ b/eclipse.platform.common/bundles/org.eclipse.pde.doc.user/pom.xml -@@ -119,7 +119,7 @@ - eclipse-plugin - - -- javax.annotation -+ javax.annotation-api - eclipse-plugin - - diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml index 5b9e03021..1702d4dc6 100644 --- a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml @@ -220,7 +194,7 @@ index 5b9e03021..1702d4dc6 100644 eclipse-plugin - javax.annotation -+ javax.annotation-api ++ javax.annotation 0.0.0 @@ -248,15 +222,6 @@ index 5b9e03021..1702d4dc6 100644 0.0.0 -@@ -287,7 +287,7 @@ - eclipse-plugin - - -- javax.annotation -+ javax.annotation-api - eclipse-plugin - - diff --git a/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml b/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml index 79fa77d7e..5f3d6f6d0 100644 --- a/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml @@ -654,7 +619,7 @@ index 0ce4361be..ac28b73c2 100644 + + + -+ ++ + + + diff --git a/eclipse-fix-tests.patch b/eclipse-fix-tests.patch index 2bfb1d0..620831f 100644 --- a/eclipse-fix-tests.patch +++ b/eclipse-fix-tests.patch @@ -55,7 +55,7 @@ index bc8963d..fbe4da3 100644 @@ -28,3 +28,6 @@ src.includes = about.html compilerArg=-proc:none - jars.extra.classpath = lib/java13api.jar + jars.extra.classpath = lib/java14api.jar +source.lib/apttestprocessors.jar = processors/ +jars.compile.order = lib/apttestprocessors.jar,\ + . diff --git a/eclipse-p2-pick-up-renamed-jars.patch b/eclipse-p2-pick-up-renamed-jars.patch index 78115ea..e3ea0af 100644 --- a/eclipse-p2-pick-up-renamed-jars.patch +++ b/eclipse-p2-pick-up-renamed-jars.patch @@ -1,8 +1,8 @@ ---- rt.equinox.p2/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/BundlesAction.java.orig 2018-04-25 15:35:44.914031196 +0100 -+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/BundlesAction.java 2018-04-25 15:36:17.546856697 +0100 -@@ -884,7 +884,7 @@ - //First check to see if there is already an IU around for this - IInstallableUnit bundleIU = queryForIU(result, bd.getSymbolicName(), PublisherHelper.fromOSGiVersion(bd.getVersion())); +--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/BundlesAction.java.orig 2020-06-18 18:36:53.668369677 +0100 ++++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/BundlesAction.java 2020-06-18 18:37:10.061182586 +0100 +@@ -1010,7 +1010,7 @@ + IInstallableUnit bundleIU = queryForIU(result, bd.getSymbolicName(), + PublisherHelper.fromOSGiVersion(bd.getVersion())); IArtifactKey bundleArtKey = createBundleArtifactKey(bd.getSymbolicName(), bd.getVersion().toString()); - if (bundleIU == null) { + if (bundleIU == null || !bd.getLocation().equals(bundleIU.getProperty("file.name"))) { diff --git a/eclipse.spec b/eclipse.spec index edcbb57..aebce5e 100644 --- a/eclipse.spec +++ b/eclipse.spec @@ -10,9 +10,9 @@ Epoch: 1 %global eb_commit c985e357223668b4bc1fb76ea6b9e0c12829b7e8 %global eclipse_rel %{version} -%global eclipse_tag R-%{eclipse_rel}-202003050155 +%global eclipse_tag R-%{eclipse_rel}-202006040540 -%global _jetty_version 9.4.27 +%global _jetty_version 9.4.30 %global _lucene_version 8.4.1 %global _batik_version 1.11 @@ -39,10 +39,17 @@ Epoch: 1 %global use_wayland 0 %endif +# Glassfish EE APIs that moved to jakarta namespace +%if 0%{?fedora} +%global _jakarta_annotations jakarta.annotation-api +%else +%global _jakarta_annotations javax.annotation-api +%endif + Summary: An open, extensible IDE Name: eclipse -Version: 4.15 -Release: 5%{?dist} +Version: 4.16 +Release: 1%{?dist} License: EPL-2.0 URL: http://www.eclipse.org/ @@ -53,6 +60,9 @@ Source0: https://download.eclipse.org/eclipse/downloads/drops4/%{eclipse_tag}/ec # %%{eb_commit} | xz > org.eclipse.linuxtools.eclipse-build-%%{eb_commit}.tar.xz Source1: http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.eclipse-build.git/snapshot/org.eclipse.linuxtools.eclipse-build-%{eb_commit}.tar.xz +# Toolchain configurations for all EEs needed by Eclipse bundles +Source2: toolchains.xml + # Eclipse should not include source for dependencies that are not supplied by this package # and should not include source for bundles that are not relevant to our platform Patch0: eclipse-no-source-for-dependencies.patch @@ -82,7 +92,6 @@ Patch12: eclipse-fix-dropins.patch # javax.el -> javax.el-api # javax.servlet -> javax.servlet-api # org.apache.jasper.glassfish -> org.glassfish.web.javax.servlet.jsp -# javax.annotation -> javax.annotation-api # org.w3c.dom.smil -> removed Patch13: eclipse-feature-plugins-to-category-ius.patch @@ -119,13 +128,12 @@ Patch25: eclipse-patch-out-fileupload-dep.patch # Force a clean on the restart after p2 operations Patch26: force-clean-after-p2-operations.patch -Patch27: compiler-release.patch - # Upstream no longer supports non-64bit arches ExcludeArch: s390 %{arm} %{ix86} -# Build with Java 11 +# Require both JDKs until Eclipse can fully move onto Java 11 BuildRequires: java-11-openjdk-devel +BuildRequires: java-1.8.0-openjdk-devel BuildRequires: maven-local BuildRequires: tycho @@ -191,8 +199,8 @@ BuildRequires: google-gson BuildRequires: xmlgraphics-commons >= 2.3 BuildRequires: xml-commons-apis BuildRequires: atinject -BuildRequires: eclipse-ecf-core >= 3.14.7 -BuildRequires: eclipse-emf-core >= 1:2.21.0 +BuildRequires: eclipse-ecf-core >= 3.14.8 +BuildRequires: eclipse-emf-core >= 1:2.22.0 BuildRequires: eclipse-license2 BuildRequires: glassfish-annotation-api BuildRequires: glassfish-el-api >= 3.0.1 @@ -273,8 +281,8 @@ Requires: batik-util >= %{_batik_version} Requires: xmlgraphics-commons >= 2.3 Requires: xml-commons-apis Requires: atinject -Requires: eclipse-ecf-core >= 3.14.7 -Requires: eclipse-emf-core >= 1:2.21.0 +Requires: eclipse-ecf-core >= 3.14.8 +Requires: eclipse-emf-core >= 1:2.22.0 Requires: glassfish-annotation-api Requires: glassfish-el-api >= 3.0.1 Requires: glassfish-el >= 3.0.1 @@ -359,7 +367,7 @@ tar --strip-components=1 -xf %{SOURCE0} tar --strip-components=1 -xf %{SOURCE1} # Delete pre-built binary artifacts except some test data that cannot be generated -find . ! -path "*/JCL/*" ! -name "rtstubs*.jar" ! -name "java10api.jar" ! -name "java13api.jar" ! -name "j9stubs.jar" ! -name "annotations.jar" \ +find . ! -path "*/JCL/*" ! -name "rtstubs*.jar" ! -name "java14api.jar" ! -name "j9stubs.jar" ! -name "annotations.jar" \ -type f -name *.jar -delete find . -type f -name *.class -delete find . -type f -name *.so -delete @@ -392,7 +400,6 @@ rm -rf rt.equinox.binaries/org.eclipse.equinox.executable/{bin,contributed}/ %patch24 -p1 %patch25 %patch26 -p1 -%patch27 # Optional (unused) multipart support (see patch 25) rm rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/multipart/MultipartSupport{Impl,FactoryImpl,Part}.java @@ -440,15 +447,22 @@ sed -i -e '/jgit.dirtyWorkingTree>/afalse # Don't need annotations for obsolete JDKs %pom_disable_module org.eclipse.jdt.annotation_v1 eclipse.jdt.core -%pom_xpath_remove "plugin[@version='1.1.400.qualifier']" eclipse.jdt/org.eclipse.jdt-feature/feature.xml +%pom_xpath_remove "plugin[@version='1.1.500.qualifier']" eclipse.jdt/org.eclipse.jdt-feature/feature.xml sed -i -e '/org\.eclipse\.jdt\.annotation;bundle-version="\[1\.1\.0,2\.0\.0)"/d' \ eclipse.jdt.core/org.eclipse.jdt.core.tests.{model,builder,compiler}/META-INF/MANIFEST.MF \ eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/META-INF/MANIFEST.MF \ eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF -sed -i -e 's/javax.annotation/javax.annotation-api/' eclipse-platform-parent/pom.xml \ - eclipse.jdt.core/org.eclipse.jdt.core.tests.compiler/META-INF/MANIFEST.MF + +# javax.annotation -> jakarta.annotation-api +sed -i -e 's/javax.annotation/%{_jakarta_annotations}/' eclipse-platform-parent/pom.xml \ + eclipse.jdt.core/org.eclipse.jdt.core.tests.compiler/META-INF/MANIFEST.MF \ + eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml \ + eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/pom.xml \ + eclipse.platform.common/bundles/org.eclipse.pde.doc.user/pom.xml \ + eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml # Disable examples +%pom_disable_module infocenter-web eclipse.platform.ua %pom_disable_module examples rt.equinox.p2 %pom_disable_module examples eclipse.platform.ui %pom_disable_module org.eclipse.debug.examples.core eclipse.platform.debug @@ -462,6 +476,7 @@ sed -i -e 's/javax.annotation/javax.annotation-api/' eclipse-platform-parent/pom %pom_disable_module examples/org.eclipse.compare.examples.xml eclipse.platform.team %pom_disable_module examples/org.eclipse.team.examples.filesystem eclipse.platform.team %pom_disable_module org.eclipse.jface.text.examples eclipse.platform.text +%pom_disable_module org.eclipse.ui.examples.javaeditor eclipse.platform.text %pom_disable_module org.eclipse.ui.genericeditor.examples eclipse.platform.text %pom_disable_module org.eclipse.ui.intro.quicklinks.examples eclipse.platform.ua %pom_disable_module org.eclipse.ui.intro.solstice.examples eclipse.platform.ua @@ -542,6 +557,7 @@ done %pom_disable_module org.eclipse.e4.ui.workbench.renderers.swt.cocoa eclipse.platform.ui/bundles %pom_disable_module org.eclipse.ui.cocoa eclipse.platform.ui/bundles %pom_disable_module org.eclipse.ui.win32 eclipse.platform.ui/bundles +%pom_disable_module org.eclipse.e4.ui.swt.win32 eclipse.platform.ui/bundles %pom_disable_module bundles/org.eclipse.core.resources.win32.x86_64 eclipse.platform.resources for f in eclipse.jdt/org.eclipse.jdt-feature/feature.xml \ eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml \ @@ -618,6 +634,13 @@ sed -i -e '/org.apache.felix.service.command/s/;status=provisional//' rt.equinox # Pre-compiling JSPs does not currently work %pom_remove_plugin org.eclipse.jetty:jetty-jspc-maven-plugin eclipse.platform.ua/org.eclipse.help.webapp +# Make maven output less noisy due to lack of intenet connection +sed -i -e '/baselineMode/s/warn/disable/' eclipse-platform-parent/pom.xml + +# Remove release parameter not needed when using BREE libs +sed -i -e '/maven.compiler.release/d' \ + eclipse.jdt.debug/org.eclipse.jdt.debug/pom.xml eclipse.jdt.debug/org.eclipse.jdt.launching/pom.xml rt.equinox.p2/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml + # Use system osgi.annotation lib ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi/osgi/ ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi.services/lib/ @@ -626,9 +649,6 @@ ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse. ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.coordinator/lib/ ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.log.stream/osgi/ -# Allow library detector to build on Java 11 -sed -i -e 's/target="1.1" source="1.3"/target="1.6" source="1.6"/' eclipse.jdt.debug/org.eclipse.jdt.launching/scripts/buildLaunchingSupportJAR.xml - # The order of these mvn_package calls is important %mvn_package "::pom::" __noinstall %mvn_package ":org.eclipse.pde.tools.versioning" contributor-tools @@ -662,21 +682,27 @@ export M_ARCH="$LDFLAGS" export MAVEN_OPTS="-Xmx1024m -XX:CompileCommand=exclude,org/eclipse/tycho/core/osgitools/EquinoxResolver,newState ${MAVEN_OPTS}" export JAVA_HOME=%{_jvmdir}/java-11 +# TODO: Fix bug in the tycho installation +xmvn -o install:install-file -Dfile=/usr/share/java/tycho/tycho-lib-detector.jar -DpomFile=/usr/share/maven-poms/tycho/tycho-lib-detector.pom + # Pre-build agent jar needed for AdvancedSourceLookupSupport -sed -i -e '/createSourcesJar/d' -e 's/7\.2/7.0/' eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/pom.xml -sed -i -e 's/V14/V11/' eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/src/main/java/org/eclipse/jdt/launching/internal/weaving/ClassfileTransformer.java +sed -i -e '/createSourcesJar/d' -e 's/8\.0\.1/7.0/' eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/pom.xml +sed -i -e 's/V15/V11/' -e 's/ASM8/ASM7/' eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/src/main/java/org/eclipse/jdt/launching/internal/weaving/ClassfileTransformer.java \ + eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/util/Util.java (cd eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent && xmvn -e -o -B clean verify) mv eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/target/javaagent-shaded.jar \ eclipse.jdt.debug/org.eclipse.jdt.launching/lib # Qualifier generated from last modification time of source tarball QUALIFIER=$(date -u -d"$(stat --format=%y %{SOURCE0})" +v%Y%m%d-%H%M) -%mvn_build -j -f -- -e -DforceContextQualifier=$QUALIFIER \ +%mvn_build -j -f -- -e -DforceContextQualifier=$QUALIFIER -DaggregatorBuild=true \ %if %{with bootstrap} - -P !api-generation,!build-docs \ + -Pbree-libs,!api-generation,!build-docs \ +%else + -Pbree-libs \ %endif -Declipse.javadoc=%{_jvmdir}/java-11/bin/javadoc -Dnative=gtk.linux.%{eclipse_arch} \ - -Dtycho.local.keepTarget \ + -Dtycho.local.keepTarget --global-toolchains %{SOURCE2} \ -Dfedora.p2.repos=$(pwd)/.m2/p2/repo-sdk/plugins -DbuildType=X # Location that the product is materialised @@ -880,6 +906,9 @@ echo "%{version}-%{release}" > %{buildroot}%{_eclipsedir}/.pkgs/Distro%{?dist} %{_eclipsedir}/plugins/com.jcraft.jsch_* %{_eclipsedir}/plugins/com.sun.el.javax.el_* %{_eclipsedir}/plugins/javax.* +%if 0%{?fedora} +%{_eclipsedir}/plugins/jakarta.* +%endif %{_eclipsedir}/plugins/org.apache.* %{_eclipsedir}/plugins/org.eclipse.ant.core_* %{_eclipsedir}/plugins/org.eclipse.compare_* @@ -982,6 +1011,7 @@ echo "%{version}-%{release}" > %{buildroot}%{_eclipsedir}/.pkgs/Distro%{?dist} %{_eclipsedir}/plugins/org.eclipse.jface_* %{_eclipsedir}/plugins/org.eclipse.jface.databinding_* %{_eclipsedir}/plugins/org.eclipse.jface.text_* +%{_eclipsedir}/plugins/org.eclipse.jface.notifications_* %{_eclipsedir}/plugins/org.eclipse.jsch.core_* %{_eclipsedir}/plugins/org.eclipse.jsch.ui_* %{_eclipsedir}/plugins/org.eclipse.ltk.core.refactoring_* @@ -1051,6 +1081,9 @@ echo "%{version}-%{release}" > %{buildroot}%{_eclipsedir}/.pkgs/Distro%{?dist} %{_eclipsedir}/plugins/org.eclipse.osgi.util_* %changelog +* Thu Jun 18 2020 Mat Booth - 1:4.16-1 +- Update to latest upstream release + * Thu Apr 02 2020 Mat Booth - 1:4.15-5 - Make the requirement on felix-scr more strict diff --git a/explicit-hamcrest.patch b/explicit-hamcrest.patch index 7d10d4a..d0574be 100644 --- a/explicit-hamcrest.patch +++ b/explicit-hamcrest.patch @@ -22,7 +22,7 @@ @@ -9,6 +9,7 @@ Require-Bundle: org.eclipse.pde.ui;bundle-version="3.10.0", org.eclipse.pde.ui.templates;bundle-version="3.6.0", - org.junit;bundle-version="4.12.0", + org.junit;bundle-version="4.13.0", + org.hamcrest.core;bundle-version="1.3.0", org.eclipse.core.runtime;bundle-version="3.13.0", org.eclipse.core.resources;bundle-version="3.12.0", diff --git a/sources b/sources index c2124c0..ef130bc 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (org.eclipse.linuxtools.eclipse-build-c985e357223668b4bc1fb76ea6b9e0c12829b7e8.tar.xz) = 79780efe9eed0082ea6de6978c5b65ccf5c65a242bff24f34cd763c0ca19a695e7735442aba20f5d2fca4153f7b59c5804fdcb67fa050480dcad137d664d3ce3 -SHA512 (eclipse-platform-sources-4.15.tar.xz) = 94e4f442e2e172a82a49edd255293ddfbcf4d5172737379eb8570913cc7208d9a4efee41a8a9014474975d49b78178a63bff646d01fa61dec001f8f205fa72cf +SHA512 (eclipse-platform-sources-4.16.tar.xz) = e97d56f4ff7accca82993ebb8edf6cd012f20273f063c764134753dafb38972497521f2a3150c2650655c17149e135eccf781b536d50b382cd1e2fb41ec4a692 diff --git a/toolchains.xml b/toolchains.xml new file mode 100644 index 0000000..a044b1a --- /dev/null +++ b/toolchains.xml @@ -0,0 +1,110 @@ + + + jdk + + CDC-1.0/Foundation-1.0 + + + /usr/lib/jvm/java-1.8.0 + + + + jdk + + CDC-1.1/Foundation-1.1 + + + /usr/lib/jvm/java-1.8.0 + + + + + + jdk + + OSGi/Minimum-1.0 + + + /usr/lib/jvm/java-1.8.0 + + + + jdk + + OSGi/Minimum-1.1 + + + /usr/lib/jvm/java-1.8.0 + + + + jdk + + OSGi/Minimum-1.2 + + + /usr/lib/jvm/java-1.8.0 + + + + + + jdk + + J2SE-1.4 + + + /usr/lib/jvm/java-1.8.0 + + + + jdk + + J2SE-1.5 + + + /usr/lib/jvm/java-1.8.0 + + + + jdk + + JavaSE-1.6 + + + /usr/lib/jvm/java-1.8.0 + + + + jdk + + JavaSE-1.7 + + + /usr/lib/jvm/java-1.8.0 + + + + jdk + + JavaSE-1.8 + + + /usr/lib/jvm/java-1.8.0 + + + + jdk + + JavaSE-11 + + + /usr/lib/jvm/java-11 + + + + + + + +