import eclipse-4.12-6.module+el8.1.1+4657+f90e8085

This commit is contained in:
CentOS Sources 2020-02-06 11:42:59 -05:00 committed by Andrew Lukoshko
commit b73ba61e23
28 changed files with 4397 additions and 0 deletions

2
.eclipse.metadata Normal file
View File

@ -0,0 +1,2 @@
2325a8753ec3e388d5f062a4e7ba3031cace4cfd SOURCES/eclipse-platform-sources-4.12RC2.tar.xz
cc4f1b206f1a5744884558b663b6064987a52a9c SOURCES/org.eclipse.linuxtools.eclipse-build-c985e357223668b4bc1fb76ea6b9e0c12829b7e8.tar.xz

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
SOURCES/eclipse-platform-sources-4.12RC2.tar.xz
SOURCES/org.eclipse.linuxtools.eclipse-build-c985e357223668b4bc1fb76ea6b9e0c12829b7e8.tar.xz

View File

@ -0,0 +1,52 @@
diff --git rt.equinox.p2/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/EngineActivator.java rt.equinox.p2/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/EngineActivator.java
index 5fc0e73..ed7e4fa 100644
--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/EngineActivator.java
+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/EngineActivator.java
@@ -150,7 +150,20 @@ public class EngineActivator implements BundleActivator {
}
continue;
}
- File[] listFiles = extension.listFiles();
+
+ // Support the additional 'eclipse' directory if it exists.
+ File[] extensionFiles = extension.listFiles(new FilenameFilter() {
+ public boolean accept(File dir, String name) {
+ return name.equals("eclipse");
+ }
+ });
+
+ File[] listFiles;
+ if (extensionFiles.length == 1) {
+ listFiles = extensionFiles[0].listFiles();
+ } else {
+ listFiles = extension.listFiles();
+ }
// new magic - multiple info files, f.e.
// egit.info (git feature)
// cdt.link (properties file containing link=path) to other info file
diff --git rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
index 12e4d89..77945ef 100644
--- rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
+++ rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
@@ -160,7 +160,20 @@ public class SimpleConfiguratorUtils {
}
continue;
}
- File[] listFiles = extension.listFiles();
+
+ // Support the additional 'eclipse' directory if it exists.
+ File[] extensionFiles = extension.listFiles(new FilenameFilter() {
+ public boolean accept(File dir, String name) {
+ return name.equals("eclipse");
+ }
+ });
+
+ File[] listFiles;
+ if (extensionFiles.length == 1) {
+ listFiles = extensionFiles[0].listFiles();
+ } else {
+ listFiles = extension.listFiles();
+ }
// new magic - multiple info files, f.e.
// egit.info (git feature)
// cdt.link (properties file containing link=path) to other info file

View File

@ -0,0 +1,63 @@
--- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh.orig 2018-08-19 12:37:52.764590467 +0100
+++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh 2018-08-19 12:38:15.032503913 +0100
@@ -74,7 +74,8 @@
MAKE_TYPE=make
-export CFLAGS='-O -Wall -fPIC'
+export CFLAGS='-O -g -Wall -fPIC'
+export NO_STRIP=1
# Determine which OS we are on
if [ "${OS}" = "" ]; then
--- rt.equinox.framework/features/org.eclipse.equinox.executable.feature/library/gtk/make_linux.mak.orig 2019-03-20 10:22:21.420240101 +0000
+++ rt.equinox.framework/features/org.eclipse.equinox.executable.feature/library/gtk/make_linux.mak 2019-03-20 10:53:53.375471427 +0000
@@ -92,7 +92,7 @@
-DPIXBUF_LIB="\"libgdk_pixbuf-2.0.so.0\"" -DGOBJ_LIB="\"libgobject-2.0.so.0\"" \
-DGIO_LIB="\"libgio-2.0.so.0\"" -DGLIB_LIB="\"libglib-2.0.so.0\""
LFLAGS = ${M_ARCH} -shared -fpic -Wl,--export-dynamic
-CFLAGS = ${M_CFLAGS} ${M_ARCH} -g -s -Wall\
+CFLAGS = ${M_CFLAGS} ${M_ARCH} -g -Wall\
-fpic \
-DLINUX \
-DDEFAULT_OS="\"$(DEFAULT_OS)\"" \
--- rt.equinox.bundles/bundles/org.eclipse.equinox.security.linux.x86_64/keystorelinuxnative/makefile.orig 2019-03-19 22:40:23.145082352 +0000
+++ rt.equinox.bundles/bundles/org.eclipse.equinox.security.linux.x86_64/keystorelinuxnative/makefile 2019-03-20 09:29:20.370457348 +0000
@@ -1,7 +1,8 @@
LIBSECRET_CFLAGS = `pkg-config --cflags libsecret-1`
LIBSECRET_LIBS = `pkg-config --libs libsecret-1`
-CFLAGS = -shared -fPIC -I"${JAVA_HOME}/include" -I"${JAVA_HOME}/include/linux"
+CFLAGS := $(CFLAGS) -fPIC -I"${JAVA_HOME}/include" -I"${JAVA_HOME}/include/linux" $(LIBSECRET_CFLAGS)
+LDFLAGS := $(LDFLAGS) -shared $(LIBSECRET_LIBS)
all: ../libkeystorelinuxnative.so
@@ -9,10 +10,10 @@
rm ../libkeystorelinuxnative.so ../target/keystoreLinuxNative.o
../libkeystorelinuxnative.so: ../target/keystoreLinuxNative.o
- $(CC) $(CFLAGS) -o $@ $< $(LIBSECRET_LIBS)
+ $(CC) $(LDFLAGS) -o $@ $<
../target/keystoreLinuxNative.o: ../target keystoreLinuxNative.c
- $(CC) -c -fPIC -I"${JAVA_HOME}/include" -I"${JAVA_HOME}/include/linux" -o $@ $(TESTFLAGS) $(LIBSECRET_CFLAGS) keystoreLinuxNative.c
+ $(CC) -c $(CFLAGS) -o $@ $(TESTFLAGS) keystoreLinuxNative.c
../target:
mkdir -p ../target
--- eclipse.platform.team/bundles/org.eclipse.core.net/natives/unix/linux/makefile.orig 2019-03-20 09:49:40.694899138 +0000
+++ eclipse.platform.team/bundles/org.eclipse.core.net/natives/unix/linux/makefile 2019-03-20 10:20:21.704664294 +0000
@@ -25,10 +25,10 @@
OS_TYPE = linux
JDK_INCLUDE = -I${JAVA_HOME}/include -I${JAVA_HOME}/include/${OS_TYPE}
INCLUDE = `pkg-config --cflags gio-2.0`
-COMPILER_FLAGS = -O0 -fPIC -g3 -Wall -c -fmessage-length=0 ${TARGET_ENVIRONMENT}
+COMPILER_FLAGS = $(CFLAGS) -fPIC -c ${TARGET_ENVIRONMENT}
LIBS := `pkg-config --libs gio-2.0`
-LINKER_FLAGS= ${TARGET_ENVIRONMENT}
+LINKER_FLAGS = $(LDFLAGS) ${TARGET_ENVIRONMENT}
all: link

View File

@ -0,0 +1,47 @@
From edd5a395dd96699f91c463c0e0409a7488814775 Mon Sep 17 00:00:00 2001
From: Roland Grunberg <rgrunber@redhat.com>
Date: Tue, 16 Aug 2016 17:51:46 -0400
Subject: [PATCH] Skip loading droplets in the configuration during
reconciliation.
The reconciler attempts to load droplets as extended locations, which
seems to be an expensive operation. Avoid doing this for the sake of
efficiency.
Change-Id: Iaf07aacb2d7eaabf3730654e757e69d22f0bc4ab
---
.../internal/p2/reconciler/dropins/PlatformXmlListener.java | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git rt.equinox.p2/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java rt.equinox.p2/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java
index 802ee1b..74023fe 100644
--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java
+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java
@@ -171,11 +171,24 @@ public class PlatformXmlListener extends DirectoryChangeListener {
* Ensure that we have a repository for each site in the given configuration.
*/
protected void synchronizeConfiguration(Configuration config) {
+ String fragments = System.getProperty("p2.fragments");
List<Site> sites = config.getSites();
Set<IMetadataRepository> newRepos = new LinkedHashSet<>();
Set<Site> toBeRemoved = new HashSet<>();
for (Site site : sites) {
String siteURL = site.getUrl();
+ if (fragments != null) {
+ String[] rootPaths = fragments.split(",");
+ boolean skip = false;
+ for (String path : rootPaths) {
+ if (siteURL.startsWith("file:" + path)) {
+ skip = true;
+ }
+ }
+ if (skip) {
+ continue;
+ }
+ }
IMetadataRepository match = getMatchingRepo(Activator.getRepositories(), siteURL);
if (match == null) {
try {
--
2.7.4

View File

@ -0,0 +1,28 @@
From 889543269853e12925ef00a6e76c3dd85ce5b915 Mon Sep 17 00:00:00 2001
From: Roland Grunberg <rgrunber@redhat.com>
Date: Tue, 25 Oct 2016 16:48:28 -0400
Subject: [PATCH] Disable uses by default (osgi.resolver.usesMode=ignore).
set.
---
.../felix/src/org/apache/felix/resolver/ResolverImpl.java | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git rt.equinox.framework/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java rt.equinox.framework/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java
index ded683f..7216865 100755
--- rt.equinox.framework/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java
+++ rt.equinox.framework/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java
@@ -1231,7 +1231,9 @@ public class ResolverImpl implements Resolver
{
public void run()
{
- computeUses(session, allWireCandidates, allPackages, resource);
+ if (! "ignore".equals(System.getProperty("osgi.resolver.usesMode"))) {
+ computeUses(session, allWireCandidates, allPackages, resource);
+ }
}
});
}
--
2.7.4

View File

@ -0,0 +1,28 @@
From ceaa5685fe7f51dae0ce444407d2aea7a49b8896 Mon Sep 17 00:00:00 2001
From: Lakshminarayana Nekkanti
Date: Mon, 3 Jun 2019 15:12:13 +0530
Subject: Bug 542708 - stale JRE shown in Package Explorer after changing it
from 9 or above to 11
Change-Id: Ia9ef62a7e90fb12c9107bfaaf2f47af97fca75fb
Signed-off-by: Lakshminarayana Nekkanti <narayana.nekkanti@gmail.com>
---
.../jdt/internal/ui/packageview/PackageExplorerContentProvider.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerContentProvider.java b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerContentProvider.java
index ff62fa9eda..143364142a 100644
--- a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerContentProvider.java
+++ b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerContentProvider.java
@@ -657,7 +657,7 @@ public class PackageExplorerContentProvider extends StandardJavaElementContentPr
return false;
}
// if the class path has changed we refresh the entire project
- if ((flags & IJavaElementDelta.F_RESOLVED_CLASSPATH_CHANGED) != 0) {
+ if ((flags & (IJavaElementDelta.F_CLASSPATH_CHANGED | IJavaElementDelta.F_RESOLVED_CLASSPATH_CHANGED)) != 0) {
postRefresh(element, ORIGINAL, element, runnables);
return false;
}
--
cgit v1.2.1

View File

@ -0,0 +1,114 @@
From 9ecc34bf838eae50a356b20c76d35fb62a423563 Mon Sep 17 00:00:00 2001
From: Stephan Herrmann
Date: Tue, 18 Jun 2019 16:28:49 +0200
Subject: Bug 548211 - "Remove" in the Module dependencies tab does not remove
system modules
- more fixes, concerning update on Apply and re-open with only java.base
Change-Id: I39a7a1da6c8ae733010009372fd36a88814e4faf
---
.../ui/wizards/buildpaths/BuildPathsBlock.java | 3 +++
.../ui/wizards/buildpaths/CPListElement.java | 24 +++++++++++++++-------
.../wizards/buildpaths/ModuleDependenciesPage.java | 13 ++++++++++++
3 files changed, 33 insertions(+), 7 deletions(-)
diff --git a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/BuildPathsBlock.java b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/BuildPathsBlock.java
index 3fec77d579..37229a834b 100644
--- a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/BuildPathsBlock.java
+++ b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/BuildPathsBlock.java
@@ -395,6 +395,9 @@ public class BuildPathsBlock {
}
protected void doUpdateUI() {
+ if (fModulesPage.needReInit()) {
+ init(fCurrJProject, null, null); // extent of system modules was changed, re-init fClassPathList
+ }
fBuildPathDialogField.refresh();
fClassPathList.refresh();
boolean is9OrHigherAfter= JavaModelUtil.is9OrHigher(fCurrJProject);
diff --git a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/CPListElement.java b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/CPListElement.java
index a3c475e7ea..c670c0770f 100644
--- a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/CPListElement.java
+++ b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/CPListElement.java
@@ -42,6 +42,7 @@ import org.eclipse.jdt.core.IModuleDescription;
import org.eclipse.jdt.core.IPackageFragmentRoot;
import org.eclipse.jdt.core.JavaCore;
import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.jdt.core.provisional.JavaModelAccess;
import org.eclipse.jdt.internal.corext.util.JavaModelUtil;
@@ -207,13 +208,22 @@ public class CPListElement {
boolean modulesAdded= false;
if (containerEntry != null) {
IPackageFragmentRoot[] fragmentRoots= fProject.findPackageFragmentRoots(containerEntry);
- if (fragmentRoots != null && fragmentRoots.length > 1) {
- for (IPackageFragmentRoot fragmentRoot : fragmentRoots) {
- IModuleDescription currModule= fragmentRoot.getModuleDescription();
- if (currModule != null) {
- CPListElement curr= create(this, pseudoEntry, currModule, true, fProject);
- fChildren.add(curr);
- modulesAdded= true;
+ if (fragmentRoots != null) {
+ // detect if system library:
+ boolean addChildren= false;
+ if (fragmentRoots.length > 0) {
+ IModuleDescription module= fragmentRoots[0].getModuleDescription();
+ if (module != null && JavaModelAccess.isSystemModule(module))
+ addChildren= true;
+ }
+ if (addChildren) {
+ for (IPackageFragmentRoot fragmentRoot : fragmentRoots) {
+ IModuleDescription currModule= fragmentRoot.getModuleDescription();
+ if (currModule != null) {
+ CPListElement curr= create(this, pseudoEntry, currModule, true, fProject);
+ fChildren.add(curr);
+ modulesAdded= true;
+ }
}
}
}
diff --git a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ModuleDependenciesPage.java b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ModuleDependenciesPage.java
index b813d22956..e9f1c9feff 100644
--- a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ModuleDependenciesPage.java
+++ b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ModuleDependenciesPage.java
@@ -164,6 +164,7 @@ public class ModuleDependenciesPage extends BuildPathBasePage {
private Collection<String> fAllDefaultSystemModules; // if current is unnamed module: transitive closure of default root modules (names)
public final Map<String,String> fPatchMap= new HashMap<>();
+ private boolean needReInit= false;
public ModuleDependenciesPage(IStatusChangeListener context, CheckedListDialogField<CPListElement> classPathList) {
fClassPathList= classPathList;
@@ -530,6 +531,7 @@ public class ModuleDependenciesPage extends BuildPathBasePage {
}
updateLimitModules(cpListElement.findAttributeElement(CPListElement.MODULE));
fModuleList.refresh();
+ this.needReInit= true;
}
public void addToSystemModules(List<IModuleDescription> modulesToAdd) throws JavaModelException {
@@ -655,8 +657,19 @@ public class ModuleDependenciesPage extends BuildPathBasePage {
}
}
}
+ this.needReInit= true;
}
+ /** Destructively reed the needReInit flag.
+ * @return {@code true} if the classpath needs to be reinitialized due to change of extent of the system library
+ */
+ public boolean needReInit() {
+ try {
+ return this.needReInit;
+ } finally {
+ this.needReInit= false;
+ }
+ }
private Set<String> computeForwardClosure(List<String> seeds) {
Set<String> closure= new HashSet<>();
collectForwardClosure(seeds, closure);
--
cgit v1.2.1

View File

@ -0,0 +1,94 @@
From 5ca45e97b527b5a4d4ed4ce92e32720859911968 Mon Sep 17 00:00:00 2001
From: Stephan Herrmann
Date: Sat, 15 Jun 2019 20:47:45 +0200
Subject: Bug 548211 - "Remove" in the Module dependencies tab does not remove
system modules
Change-Id: I633fa86e5911c50b17a1c7ef188805902942e1db
---
.../jdt/internal/ui/wizards/NewWizardMessages.java | 1 +
.../ui/wizards/NewWizardMessages.properties | 1 +
.../wizards/buildpaths/ModuleDependenciesPage.java | 22 ++++++++++++++++++----
3 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewWizardMessages.java b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewWizardMessages.java
index 3a66ae56ed..961aa63bba 100644
--- a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewWizardMessages.java
+++ b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewWizardMessages.java
@@ -564,6 +564,7 @@ public final class NewWizardMessages extends NLS {
public static String ModuleDependenciesPage_removeCurrentModule_error;
public static String ModuleDependenciesPage_removeModule_error_with_hint;
public static String ModuleDependenciesPage_removeSystemModule_error_hint;
+ public static String ModuleDependenciesPage_moduleIsRequired_error_hint;
public static String ModuleDependenciesAdapter_patchConflict_title;
public static String ModuleDependenciesAdapter_patchConflict_message;
diff --git a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewWizardMessages.properties b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewWizardMessages.properties
index feb30bc627..a3d8a04624 100644
--- a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewWizardMessages.properties
+++ b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewWizardMessages.properties
@@ -605,6 +605,7 @@ ModuleDependenciesPage_removeCurrentModule_error=Cannot remove the current modul
ModuleDependenciesPage_removeModule_error_with_hint=Cannot remove module ''{0}''{1}
ModuleDependenciesPage_removeSystemModule_error_hint=\nOnly system modules can be removed here.\n\
To remove other modules please remove them from the Modulepath (Projects or Libraries tab).
+ModuleDependenciesPage_moduleIsRequired_error_hint=\nIt is required along the path {0}
ModuleDependenciesAdapter_patchConflict_title=Patch module conflict
ModuleDependenciesAdapter_patchConflict_message=The {0} {1} was declared to patch module ''{2}''.\n\
diff --git a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ModuleDependenciesPage.java b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ModuleDependenciesPage.java
index ccc5c3317a..b813d22956 100644
--- a/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ModuleDependenciesPage.java
+++ b/eclipse.jdt.ui/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ModuleDependenciesPage.java
@@ -614,7 +614,16 @@ public class ModuleDependenciesPage extends BuildPathBasePage {
return;
}
selectedModuleNames.add(moduleName);
- collectModulesToRemove(moduleName, allModulesToRemove);
+ String problemModule= collectModulesToRemove(moduleName, allModulesToRemove);
+ if (problemModule != null) {
+ int lastArrow= problemModule.lastIndexOf("->"); //$NON-NLS-1$
+ String leafMod= lastArrow == -1 ? problemModule : problemModule.substring(lastArrow+2);
+ MessageDialog.openError(getShell(), NewWizardMessages.ModuleDependenciesPage_removeModule_dialog_title,
+ MessageFormat.format(NewWizardMessages.ModuleDependenciesPage_removeModule_error_with_hint,
+ leafMod,
+ MessageFormat.format(NewWizardMessages.ModuleDependenciesPage_moduleIsRequired_error_hint, problemModule)));
+ return;
+ }
}
String seedModules= String.join(", ", selectedModuleNames); //$NON-NLS-1$
if (allModulesToRemove.size() == selectedModuleNames.size()) {
@@ -664,15 +673,20 @@ public class ModuleDependenciesPage extends BuildPathBasePage {
}
}
- private void collectModulesToRemove(String mod, Set<String> modulesToRemove) {
+ private String collectModulesToRemove(String mod, Set<String> modulesToRemove) {
if (fModuleList.fNames.contains(mod) && modulesToRemove.add(mod)) {
List<String> requireds= fModuleRequiredByModules.get(mod);
if (requireds != null) {
for (String required : requireds) {
- collectModulesToRemove(required, modulesToRemove);
+ if (fModuleList.getModuleKind(required) == ModuleKind.Focus)
+ return required + "->" + mod; //$NON-NLS-1$
+ String problemModule= collectModulesToRemove(required, modulesToRemove);
+ if (problemModule != null)
+ return problemModule + "->" + mod; //$NON-NLS-1$
}
}
}
+ return null;
}
private boolean confirmRemoveModule(String message) {
@@ -741,7 +755,7 @@ public class ModuleDependenciesPage extends BuildPathBasePage {
List<String> dominators= fModuleRequiredByModules.get(name);
if (dominators != null) {
for (String dominator : dominators) {
- if (names.contains(dominator)) {
+ if (names.contains(dominator) && fModuleList.getModuleKind(dominator) == ModuleKind.System) {
continue outer;
}
}
--
cgit v1.2.1

View File

@ -0,0 +1,810 @@
From 42b1d14319f47d477f057a14aa1e2481729c6b13 Mon Sep 17 00:00:00 2001
From: Mat Booth <mat.booth@redhat.com>
Date: Thu, 6 Dec 2018 11:38:58 +0000
Subject: [PATCH 1/2] Change features bundling third-party modules to feature
requirements
---
.../org.eclipse.jdt-feature/feature.xml | 114 ++-----------
.../org.eclipse.pde-feature/feature.xml | 16 +-
.../org.eclipse.platform.doc.isv/pom.xml | 11 +-
.../org.eclipse.help-feature/feature.xml | 130 +++------------
.../org.eclipse.platform-feature/feature.xml | 18 +--
.../org.eclipse.sdk.tests/feature.xml | 58 ++-----
.../org.eclipse.test-feature/feature.xml | 56 +------
.../org.eclipse.tips.feature/feature.xml | 11 +-
.../features/org.eclipse.e4.rcp/feature.xml | 150 ++----------------
9 files changed, 83 insertions(+), 481 deletions(-)
diff --git a/eclipse.jdt/org.eclipse.jdt-feature/feature.xml b/eclipse.jdt/org.eclipse.jdt-feature/feature.xml
index 06887d901..364cae9d8 100644
--- a/eclipse.jdt/org.eclipse.jdt-feature/feature.xml
+++ b/eclipse.jdt/org.eclipse.jdt-feature/feature.xml
@@ -19,6 +19,23 @@
%license
</license>
+ <requires>
+ <import plugin="org.junit" />
+ <import plugin="org.hamcrest.core" />
+ <import plugin="org.junit.jupiter.api" />
+ <import plugin="org.junit.jupiter.engine" />
+ <import plugin="org.junit.jupiter.migrationsupport" />
+ <import plugin="org.junit.jupiter.params" />
+ <import plugin="org.junit.platform.commons" />
+ <import plugin="org.junit.platform.engine" />
+ <import plugin="org.junit.platform.launcher" />
+ <import plugin="org.junit.platform.runner" />
+ <import plugin="org.junit.platform.suite.api" />
+ <import plugin="org.junit.vintage.engine" />
+ <import plugin="org.opentest4j" />
+ <import plugin="org.apiguardian" />
+ </requires>
+
<plugin
id="org.eclipse.jdt"
download-size="0"
@@ -160,103 +177,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.junit"
- download-size="0"
- install-size="0"
- version="0.0.0"/>
-
- <plugin
- id="org.hamcrest.core"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.jupiter.api"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.jupiter.engine"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.jupiter.migrationsupport"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.jupiter.params"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.platform.commons"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.platform.engine"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.platform.launcher"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.platform.runner"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.platform.suite.api"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.junit.vintage.engine"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.opentest4j"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apiguardian"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.jdt.doc.user"
download-size="0"
diff --git a/eclipse.pde.ui/features/org.eclipse.pde-feature/feature.xml b/eclipse.pde.ui/features/org.eclipse.pde-feature/feature.xml
index 4197cffde..85ab44540 100644
--- a/eclipse.pde.ui/features/org.eclipse.pde-feature/feature.xml
+++ b/eclipse.pde.ui/features/org.eclipse.pde-feature/feature.xml
@@ -21,6 +21,8 @@
<requires>
<import feature="org.eclipse.jdt" version="3.15.0" match="compatible"/>
+ <import plugin="org.objectweb.asm" />
+ <import plugin="org.objectweb.asm.tree" />
</requires>
<plugin
@@ -78,20 +80,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.objectweb.asm"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.objectweb.asm.tree"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.pde.api.tools"
download-size="0"
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 f3432dba5..c70631e90 100644
--- a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml
@@ -78,12 +78,7 @@
</requirement>
<requirement>
<type>eclipse-plugin</type>
- <id>javax.annotation</id>
- <versionRange>0.0.0</versionRange>
- </requirement>
- <requirement>
- <type>eclipse-plugin</type>
- <id>javax.el</id>
+ <id>javax.el-api</id>
<versionRange>0.0.0</versionRange>
</requirement>
<requirement>
@@ -75,7 +70,7 @@
</requirement>
<requirement>
<type>eclipse-plugin</type>
- <id>javax.servlet</id>
+ <id>javax.servlet-api</id>
<versionRange>0.0.0</versionRange>
</requirement>
<requirement>
@@ -95,7 +90,7 @@
</requirement>
<requirement>
<type>eclipse-plugin</type>
- <id>org.apache.jasper.glassfish</id>
+ <id>org.glassfish.web.javax.servlet.jsp</id>
<versionRange>0.0.0</versionRange>
</requirement>
<requirement>
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 853db711d..5195b6d59 100644
--- a/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml
+++ b/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml
@@ -21,69 +21,6 @@
%license
</license>
- <plugin
- id="javax.el"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="javax.servlet"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="javax.servlet.jsp"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="com.sun.el"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.logging"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.jasper.glassfish"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.lucene.analyzers-common"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.lucene.core"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.lucene.analyzers-smartcn"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.equinox.http.jetty"
download-size="0"
@@ -140,55 +77,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.eclipse.jetty.continuation"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jetty.http"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jetty.io"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jetty.security"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jetty.server"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jetty.servlet"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jetty.util"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.core.net"
download-size="0"
@@ -203,4 +91,22 @@
version="0.0.0"
unpack="false"/>
+ <requires>
+ <import plugin="javax.el-api" />
+ <import plugin="javax.servlet-api" />
+ <import plugin="javax.servlet.jsp" />
+ <import plugin="com.sun.el.javax.el" />
+ <import plugin="org.apache.commons.logging" />
+ <import plugin="org.glassfish.web.javax.servlet.jsp" />
+ <import plugin="org.apache.lucene.analyzers-common" />
+ <import plugin="org.apache.lucene.core" />
+ <import plugin="org.apache.lucene.analyzers-smartcn" />
+ <import plugin="org.eclipse.jetty.continuation" />
+ <import plugin="org.eclipse.jetty.http" />
+ <import plugin="org.eclipse.jetty.io" />
+ <import plugin="org.eclipse.jetty.security" />
+ <import plugin="org.eclipse.jetty.server" />
+ <import plugin="org.eclipse.jetty.servlet" />
+ <import plugin="org.eclipse.jetty.util" />
+ </requires>
</feature>
diff --git a/eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml b/eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml
index f825d4539..a9b974ca5 100644
--- a/eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml
+++ b/eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml
@@ -19,6 +19,11 @@
%license
</license>
+ <requires>
+ <import plugin="org.apache.ant" />
+ <import plugin="com.jcraft.jsch" />
+ </requires>
+
<includes
id="org.eclipse.rcp"
version="0.0.0"/>
@@ -32,12 +37,6 @@
id="org.eclipse.help"
version="0.0.0"/>
- <plugin
- id="org.apache.ant"
- download-size="0"
- install-size="0"
- version="0.0.0"/>
-
<plugin
id="org.eclipse.ant.core"
download-size="0"
@@ -45,13 +44,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="com.jcraft.jsch"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.compare.core"
download-size="0"
diff --git a/eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml b/eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml
index a3a7d14a0..f0dab84a3 100644
--- a/eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml
+++ b/eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml
@@ -19,6 +19,15 @@
%license
</license>
+ <requires>
+ <import plugin="org.apache.commons.fileupload" />
+ <import plugin="org.apache.commons.io" />
+ <import plugin="org.hamcrest.core" />
+ <import plugin="org.hamcrest.library" />
+ <import plugin="org.mockito" />
+ <import plugin="org.objenesis" />
+ </requires>
+
<includes
id="org.eclipse.test"
version="0.0.0"/>
@@ -421,20 +430,6 @@
install-size="0"
version="0.0.0"/>
- <plugin
- id="org.apache.commons.fileupload"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.io"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.equinox.p2.installer"
download-size="0"
@@ -484,41 +479,6 @@
install-size="0"
version="0.0.0"/>
- <plugin
- id="org.hamcrest.core"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.hamcrest.integration"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.hamcrest.library"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.mockito"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.objenesis"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.ui.tests.pluginchecks"
download-size="0"
diff --git a/eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml b/eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml
index 1dcc94c1c..2a4871027 100644
--- a/eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml
+++ b/eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml
@@ -19,6 +19,14 @@
%license
</license>
+ <requires>
+ <import plugin="org.junit" />
+ <import plugin="org.easymock" />
+ <import plugin="org.hamcrest.core" />
+ <import plugin="org.hamcrest.library" />
+ <import plugin="org.mockito" />
+ </requires>
+
<plugin
id="org.eclipse.ant.optional.junit"
download-size="0"
@@ -54,58 +62,10 @@
fragment="true"
unpack="false"/>
- <plugin
- id="org.junit"
- download-size="0"
- install-size="0"
- version="0.0.0"/>
-
- <plugin
- id="org.easymock"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.hamcrest.core"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.mockito"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="net.bytebuddy.byte-buddy"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="net.bytebuddy.byte-buddy-agent"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.core.tests.harness"
download-size="0"
install-size="0"
version="0.0.0"/>
- <plugin
- id="org.hamcrest.library"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
diff --git a/eclipse.platform.ua/org.eclipse.tips.feature/feature.xml b/eclipse.platform.ua/org.eclipse.tips.feature/feature.xml
index 88d843b0f..d5b8195bc 100644
--- a/eclipse.platform.ua/org.eclipse.tips.feature/feature.xml
+++ b/eclipse.platform.ua/org.eclipse.tips.feature/feature.xml
@@ -32,6 +32,10 @@
%license
</license>
+ <requires>
+ <import plugin="com.google.gson" />
+ </requires>
+
<plugin
id="org.eclipse.tips.ui"
download-size="0"
@@ -60,11 +64,4 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="com.google.gson"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
diff --git a/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml b/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
index ba217da7b..464451193 100644
--- a/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
+++ b/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
@@ -22,6 +22,23 @@
<requires>
<import feature="org.eclipse.emf.common" version="2.7.0" match="compatible"/>
<import feature="org.eclipse.emf.ecore" version="2.7.0" match="compatible"/>
+ <import plugin="org.apache.batik.css" />
+ <import plugin="org.w3c.css.sac" />
+ <import plugin="org.apache.batik.util" />
+ <import plugin="org.w3c.dom.svg" />
+ <import plugin="javax.inject" />
+ <import plugin="javax.annotation-api" />
+ <import plugin="org.apache.batik.i18n" />
+ <import plugin="org.apache.batik.constants" />
+ <import plugin="org.apache.xmlgraphics" />
+ <import plugin="org.apache.commons.io" />
+ <import plugin="org.apache.commons.logging" />
+ <import plugin="org.apache.felix.scr" />
+ <import plugin="com.ibm.icu" />
+ <import plugin="org.apache.felix.gogo.command" />
+ <import plugin="org.apache.felix.gogo.runtime" />
+ <import plugin="org.apache.felix.gogo.shell" />
+ <import plugin="org.apache.commons.jxpath" />
</requires>
<plugin
@@ -94,62 +111,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.batik.css"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.w3c.css.sac"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.batik.util"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.w3c.dom.svg"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.w3c.dom.smil"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.w3c.dom.events"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="javax.inject"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="javax.annotation"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.e4.core.di"
download-size="0"
@@ -164,41 +125,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.batik.i18n"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.batik.constants"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.xmlgraphics"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.io"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.logging"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.e4.core.di.extensions"
download-size="0"
@@ -244,13 +170,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.felix.scr"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.equinox.event"
download-size="0"
@@ -335,13 +254,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="com.ibm.icu"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.equinox.preferences"
download-size="0"
@@ -511,27 +423,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.felix.gogo.command"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.felix.gogo.runtime"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.felix.gogo.shell"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.equinox.console"
download-size="0"
@@ -560,13 +451,6 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.commons.jxpath"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
<plugin
id="org.eclipse.e4.emf.xpath"
download-size="0"
--
2.19.1

View File

@ -0,0 +1,88 @@
--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/SimpleProfileRegistry.java.orig 2014-03-24 10:49:00.000000000 +0000
+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/SimpleProfileRegistry.java 2014-03-24 15:39:32.122246214 +0000
@@ -44,6 +44,7 @@
public class SimpleProfileRegistry implements IProfileRegistry, IAgentService {
+ private static final String PROP_IGNORE_USER_CONFIGURATION = "eclipse.ignoreUserConfiguration"; //$NON-NLS-1$
private static final String SIMPLE_PROFILE_REGISTRY_INTERNAL = "_simpleProfileRegistry_internal_"; //$NON-NLS-1$
private static final String PROFILE_REGISTRY = "profile registry"; //$NON-NLS-1$
private static final String PROFILE_PROPERTIES_FILE = "state.properties"; //$NON-NLS-1$
@@ -279,6 +280,14 @@
//fragments support - remeber the property
internalSetProfileStateProperty(profile, profile.getTimestamp(), SIMPLE_PROFILE_REGISTRY_INTERNAL + getExtTimeStamp(), getExtTimeStamp());
agent.registerService(SERVICE_SHARED_INSTALL_NEW_TIMESTAMP, Long.toString(profile.getTimestamp()));
+
+ // this looks like a hack, but:
+ // (1) SimpleConfigurationImpl keeps returning master configuration as long as the property is set
+ // (2) SimpleConfigurationImpl sets the propery after it drops user configuration
+ // therefore dropins reconciliation can't load dropins plugins installed into user configuration
+ // after the user configuration has been dropped.
+ // It is necessary to unset this property.
+ //System.setProperty(PROP_IGNORE_USER_CONFIGURATION, "processed_and_unset"); //$NON-NLS-1$ //$NON-NLS-2$
} else {
//This is the first time we create the shared profile. Tag it as such and also remember the timestamp of the base
internalSetProfileStateProperty(profile, profile.getTimestamp(), IProfile.STATE_PROP_SHARED_INSTALL, IProfile.STATE_SHARED_INSTALL_VALUE_INITIAL);
@@ -312,6 +321,13 @@
if (agent.getService(SERVICE_SHARED_INSTALL_NEW_TIMESTAMP) != null)
return false;
+ // if the property is set by OSGI, and there is no new timestamp (because of the previous condition)
+ // ignore current profile. This will happen only once, because SERVICE_SHARED_INSTALL_NEW_TIMESTAMP
+ // is set during profile reset.
+ if ("true".equals(System.getProperty(PROP_IGNORE_USER_CONFIGURATION))) { //$NON-NLS-1$ //$NON-NLS-2$
+ System.setProperty(PROP_IGNORE_USER_CONFIGURATION, "processed_and_unset"); //$NON-NLS-1$ //$NON-NLS-2$
+ return true;
+ }
String baseTimestamp = getBaseTimestamp(profile.getProfileId());
String extTimestamp = getExtTimeStamp();
if (baseTimestamp == null) {
--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/ProfileSynchronizer.java
+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/ProfileSynchronizer.java
@@ -563,6 +563,7 @@
// get all IUs from all our repos
IQueryResult<IInstallableUnit> allIUs = getAllIUsFromRepos();
+ HashSet<IInstallableUnit> removedFromAllIUs = new HashSet<IInstallableUnit>();
for (Iterator<IInstallableUnit> iter = allIUs.iterator(); iter.hasNext();) {
final IInstallableUnit iu = iter.next();
IInstallableUnit existing = profileIUs.get(iu);
@@ -576,6 +577,7 @@
// (and more expensive) way to find this out is to do an IU profile property query.
if (two == null) {
// the IU is already installed so don't mark it as a dropin now - see bug 404619.
+ removedFromAllIUs.add(iu);
iter.remove();
continue;
}
@@ -618,7 +620,7 @@
}
// if the IU from the profile is in the "all available" list, then it is already added
// otherwise if it isn't in the repo then we have to remove it from the profile.
- if (!all.contains(iu))
+ if (!all.contains(iu) && !removedFromAllIUs.contains(iu))
toRemove.add(iu);
}
@@ -792,8 +794,8 @@
IStatus installerPlanStatus = engine.perform(plan.getInstallerPlan(), phaseSet, monitor);
if (!installerPlanStatus.isOK())
return installerPlanStatus;
-
- applyConfiguration(true);
+ if (isReconciliationApplicationRunning())
+ applyConfiguration(true);
}
return engine.perform(plan, phaseSet, monitor);
}
--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/migration/MigrationWizard.java.orig 2018-04-25 20:31:57.931223008 +0100
+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/migration/MigrationWizard.java 2018-04-25 20:32:11.069144336 +0100
@@ -151,7 +151,7 @@
@Override
public boolean performCancel() {
- String[] buttons = new String[] {IDialogConstants.YES_LABEL, ProvUIMessages.MigrationPage_LATER_BUTTON, IDialogConstants.NO_LABEL};
+ String[] buttons = new String[] {IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL};
MessageDialog dialog = new MessageDialog(getShell(), ProvUIMessages.MigrationPage_CONFIRMATION_TITLE, null, ProvUIMessages.MigrationPage_CONFIRMATION_DIALOG, MessageDialog.QUESTION, buttons, 2);
return rememberCancellationDecision(dialog.open());

View File

@ -0,0 +1,268 @@
--- eclipse.pde.ui/ui/org.eclipse.pde.ui.tests/src/org/eclipse/pde/ui/tests/target/MinimalTargetDefinitionPersistenceTests.java.orig 2016-04-19 20:07:36.947017206 +0100
+++ eclipse.pde.ui/ui/org.eclipse.pde.ui.tests/src/org/eclipse/pde/ui/tests/target/MinimalTargetDefinitionPersistenceTests.java 2016-04-19 20:09:59.166077383 +0100
@@ -76,7 +76,7 @@
*/
protected IPath getJdtFeatureLocation() {
IPath path = new Path(TargetPlatform.getDefaultLocation());
- path = path.append("features");
+ path = path.append("droplets").append("eclipse-jdt").append("features");
File dir = path.toFile();
assertTrue("Missing features directory", dir.exists() && !dir.isFile());
String[] files = dir.list();
diff --git rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/reconciler/dropins/AbstractReconcilerTest.java rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/reconciler/dropins/AbstractReconcilerTest.java
index f1f38f0..f9111e6 100644
--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/reconciler/dropins/AbstractReconcilerTest.java
+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/reconciler/dropins/AbstractReconcilerTest.java
@@ -217,7 +217,7 @@
if (parent != null) {
File[] children = parent.listFiles((FileFilter) pathname -> {
String name = pathname.getName();
- return name.startsWith("eclipse-platform-");
+ return name.startsWith("eclipse-SDK-");
});
if (children != null && children.length == 1)
file = children[0];
diff --git eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/build.properties eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/build.properties
index 376daa6..1742a8d 100644
--- eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/build.properties
+++ eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/build.properties
@@ -17,6 +17,7 @@ bin.includes = .,\
resources/,\
lib/
src.includes = about.html
-jars.compile.order = .
+jars.compile.order = .,\
+ lib/annotations.jar
source.. = src/
-output.. = bin/
+source.lib/annotations.jar = src/
diff --git eclipse.jdt.core/org.eclipse.jdt.apt.tests/build.properties eclipse.jdt.core/org.eclipse.jdt.apt.tests/build.properties
index f34ae40..0f9877d 100644
--- eclipse.jdt.core/org.eclipse.jdt.apt.tests/build.properties
+++ eclipse.jdt.core/org.eclipse.jdt.apt.tests/build.properties
@@ -24,4 +24,6 @@ bin.includes = plugin.xml,\
plugin.properties
src.includes = about.html
src.excludes = src-resources/
-jars.compile.order = aptext.jar,apt.jar,.
+jars.compile.order = aptext.jar,apt.jar,.,\
+ resources/question.jar
+source.resources/question.jar = src-resources/
diff --git eclipse.jdt.core/org.eclipse.jdt.compiler.apt.tests/build.properties eclipse.jdt.core/org.eclipse.jdt.compiler.apt.tests/build.properties
index bc8963d..fbe4da3 100644
--- eclipse.jdt.core/org.eclipse.jdt.compiler.apt.tests/build.properties
+++ eclipse.jdt.core/org.eclipse.jdt.compiler.apt.tests/build.properties
@@ -25,3 +25,6 @@
src.includes = about.html
compilerArg=-proc:none
jars.extra.classpath = lib/java10api.jar
+source.lib/apttestprocessors.jar = processors/
+jars.compile.order = lib/apttestprocessors.jar,\
+ .
--- eclipse.platform/ant/org.eclipse.ant.tests.ui/build.properties.orig 2016-03-24 14:25:47.076289150 +0000
+++ eclipse.platform/ant/org.eclipse.ant.tests.ui/build.properties 2016-03-24 14:26:39.528660802 +0000
@@ -25,6 +25,8 @@
Ant Tests/
source.lib/antUITestsSupport.jar = test support/
-jars.compile.order=anttestsui.jar,lib/antUITestsSupport.jar
+source.testbuildfiles/antUITestsSupport.jar = test support/
+jars.compile.order=anttestsui.jar,lib/antUITestsSupport.jar,testbuildfiles/antUITestsSupport.jar
output.lib/antUITestsSupport.jar = test_support_bin/
+output.testbuildfiles/antUITestsSupport.jar = test_support_bin/
output.anttestsui.jar = bin/
--- eclipse.jdt.ui/org.eclipse.jdt.ui.tests/build.properties.orig 2016-03-25 15:09:40.557786910 +0000
+++ eclipse.jdt.ui/org.eclipse.jdt.ui.tests/build.properties 2016-03-25 15:12:08.476059326 +0000
@@ -22,3 +22,5 @@
leaks/,\
performance/
javacWarnings..=-raw,-unchecked
+source.testresources/nls.jar = nls/
+jars.compile.order = .,testresources/nls.jar
--- /dev/null 1970-01-01 01:00:00.000000000 +0100
+++ eclipse.jdt.ui/org.eclipse.jdt.ui.tests/nls/pkg/Client.java 2004-11-12 14:37:36.000000000 +0000
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2004 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Common Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package pkg;
+
+public class Client {
+
+ public String s;
+
+ {
+ s= Messages.getString("test");
+ s= Messages.getString("test_undefined");
+ s= Messages.getString("duplicate");
+ s= Messages.getString("test.long.key");
+ s= Messages.getString("SearchResultView.removed_resource");
+ }
+
+}
--- /dev/null 1970-01-01 01:00:00.000000000 +0100
+++ eclipse.jdt.ui/org.eclipse.jdt.ui.tests/nls/pkg/Messages.java 2004-11-12 14:37:28.000000000 +0000
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2004 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Common Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package pkg;
+
+import java.text.MessageFormat;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+public class Messages extends Object {
+ private static final String RESOURCE_BUNDLE = Messages.class.getName();
+ private static ResourceBundle fgResourceBundle = ResourceBundle.getBundle(RESOURCE_BUNDLE);
+
+ private Messages() {}
+
+ /**
+ * Gets a string from the resource bundle and formats it with the argument
+ *
+ * @param key the string used to get the bundle value, must not be null
+ */
+ public static String getFormattedString(String key, Object arg) {
+ String format = null;
+
+ try {
+ format = fgResourceBundle.getString(key);
+ } catch (MissingResourceException e) {
+ return "!" + key + "!"; //$NON-NLS-2$ //$NON-NLS-1$
+ }
+
+ if (arg == null) {
+ arg = ""; //$NON-NLS-1$
+ }
+
+ return MessageFormat.format(format, new Object[] { arg });
+ }
+
+ /**
+ * Gets a string from the resource bundle and formats it with arguments
+ */
+ public static String getFormattedString(String key, String[] args) {
+ return MessageFormat.format(fgResourceBundle.getString(key), args);
+ }
+
+ public static String getString(String key) {
+ try {
+ return fgResourceBundle.getString(key);
+ } catch (MissingResourceException e) {
+ return "!" + key + "!"; //$NON-NLS-2$ //$NON-NLS-1$
+ }
+ }
+}
--- /dev/null 1970-01-01 01:00:00.000000000 +0100
+++ eclipse.jdt.ui/org.eclipse.jdt.ui.tests/nls/pkg/Messages.properties 2004-11-12 14:38:06.000000000 +0000
@@ -0,0 +1,15 @@
+###############################################################################
+# Copyright (c) 2000, 2004 IBM Corporation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Common Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/cpl-v10.html
+#
+# Contributors:
+# IBM Corporation - initial API and implementation
+###############################################################################
+test= Hello World
+duplicate= Duplicate 1
+test.long.key= Hello World Long
+duplicate= Duplicate 2
+SearchResultView.removed_resource= <removed resource>
--- eclipse.platform/ant/org.eclipse.ant.tests.core/build.properties.orig 2017-03-03 14:20:53.868573338 +0000
+++ eclipse.platform/ant/org.eclipse.ant.tests.core/build.properties 2017-03-06 14:26:42.382365639 +0000
@@ -23,6 +23,8 @@
source.anttestscore.jar = test plugin/,\
tests/
source.lib/antTestsSupport.jar = test support/
-jars.compile.order=anttestscore.jar,lib/antTestsSupport.jar
+source.testlib/classpathOrdering1.jar = testlib_src/classpathOrdering1/
+source.testlib/classpathOrdering2.jar = testlib_src/classpathOrdering2/
+jars.compile.order=anttestscore.jar,lib/antTestsSupport.jar,testlib/classpathOrdering1.jar,testlib/classpathOrdering2.jar
output.lib/antTestsSupport.jar = test_support_bin/
output.anttestscore.jar = bin/
--- /dev/null 2017-02-12 18:27:14.283389371 +0000
+++ eclipse.platform/ant/org.eclipse.ant.tests.core/testlib_src/classpathOrdering1/ClasspathOrdering.java 2017-03-06 14:28:57.742879825 +0000
@@ -0,0 +1,10 @@
+import java.io.PrintStream;
+
+public class ClasspathOrdering
+{
+ public static void main(String[] args)
+ {
+ System.out.println("classpathOrdering1");
+ }
+}
+
--- /dev/null 2017-02-12 18:27:14.283389371 +0000
+++ eclipse.platform/ant/org.eclipse.ant.tests.core/testlib_src/classpathOrdering2/ClasspathOrdering.java 2017-03-06 14:29:45.759352762 +0000
@@ -0,0 +1,10 @@
+import java.io.PrintStream;
+
+public class ClasspathOrdering
+{
+ public static void main(String[] args)
+ {
+ System.out.println("classpathOrdering2");
+ }
+}
+
--- eclipse.pde.build/org.eclipse.pde.build.tests/test.xml.orig 2017-04-28 11:49:47.046123546 +0100
+++ eclipse.pde.build/org.eclipse.pde.build.tests/test.xml 2017-04-28 12:05:11.947521737 +0100
@@ -156,13 +156,6 @@
id="org.eclipse.jdt.source.feature.group"
version="" />
<iu
- id="org.eclipse.rcp.configuration.feature.group"
- version="" />
-
- <iu
- id="org.eclipse.equinox.executable"
- version="" />
- <iu
id="org.eclipse.e4.rcp.feature.group"
version="" />
<iu
--- eclipse.jdt.core/org.eclipse.jdt.core.tests.builder/pom.xml.orig 2019-03-11 12:52:52.879124384 +0000
+++ eclipse.jdt.core/org.eclipse.jdt.core.tests.builder/pom.xml 2019-03-11 12:54:16.445849939 +0000
@@ -39,7 +39,22 @@
</includes>
<argLine>${tycho.surefire.argLine}</argLine>
</configuration>
- </plugin>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <configuration>
+ <dependency-resolution>
+ <extraRequirements>
+ <requirement>
+ <type>eclipse-plugin</type>
+ <id>org.eclipse.jdt.annotation</id>
+ <versionRange>0.0.0</versionRange>
+ </requirement>
+ </extraRequirements>
+ </dependency-resolution>
+ </configuration>
+ </plugin>
</plugins>
</build>

View File

@ -0,0 +1,64 @@
commit 4bfc5a7c6d8c2aaf954c113d805419472de2bcaf
Author: Mat Booth <mat.booth@redhat.com>
Date: Thu May 3 15:58:49 2018 +0100
Bug 534326 - Awkward p2 UI when many droplets are installed
Filter out software site locations where we know that they are p2
droplets in places we show the list to the user.
Change-Id: I12364223850862783cb7cffd32fb7428fbf6b270
Signed-off-by: Mat Booth <mat.booth@redhat.com>
diff --git a/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/dialogs/RepositorySelectionGroup.java b/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/dialogs/RepositorySelectionGroup.java
index e6eef8c39..fe5970e79 100644
--- a/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/dialogs/RepositorySelectionGroup.java
+++ b/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/dialogs/RepositorySelectionGroup.java
@@ -303,6 +303,19 @@ public class RepositorySelectionGroup {
void fillRepoCombo(final String selection) {
RepositoryTracker tracker = ui.getRepositoryTracker();
URI[] sites = tracker.getKnownRepositories(ui.getSession());
+ // Filter out sites that are actually installed p2 droplets
+ String fragments = System.getProperty("p2.fragments"); //$NON-NLS-1$
+ ArrayList<URI> filteredSites = new ArrayList<>(Arrays.asList(sites));
+ if (fragments != null) {
+ for (String root : fragments.split(",")) { //$NON-NLS-1$
+ for (URI uri : sites) {
+ if (uri.getPath() != null && uri.getPath().startsWith(root)) {
+ filteredSites.remove(uri);
+ }
+ }
+ }
+ }
+ sites = filteredSites.toArray(new URI[0]);
boolean hasLocalSites = getLocalSites().length > 0;
final String[] items;
if (hasLocalSites) {
diff --git a/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/RepositoryManipulationPage.java b/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/RepositoryManipulationPage.java
index d796aefd0..c03924f90 100644
--- a/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/RepositoryManipulationPage.java
+++ b/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/RepositoryManipulationPage.java
@@ -133,9 +133,22 @@ public class RepositoryManipulationPage extends PreferencePage implements IWorkb
if (cachedElements == null) {
Object[] children = super.fetchChildren(o, monitor);
cachedElements = new Hashtable<>(children.length);
+ String fragments = System.getProperty("p2.fragments"); //$NON-NLS-1$
for (int i = 0; i < children.length; i++) {
if (children[i] instanceof MetadataRepositoryElement) {
- put((MetadataRepositoryElement) children[i]);
+ // Filter out locations that are actually installed p2 droplets
+ if (fragments != null) {
+ boolean isDroplet = false;
+ for (String root : fragments.split(",")) { //$NON-NLS-1$
+ URI childLoc = ((MetadataRepositoryElement) children[i]).getLocation();
+ if (childLoc.getPath() != null && childLoc.getPath().startsWith(root)) {
+ isDroplet = true;
+ }
+ }
+ if (!isDroplet) {
+ put((MetadataRepositoryElement) children[i]);
+ }
+ }
}
}
}

View File

@ -0,0 +1,22 @@
--- rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java.orig 2014-03-24 12:06:59.530918305 +0000
+++ rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java 2014-03-24 12:07:42.709932098 +0000
@@ -1351,7 +1351,7 @@
String appVersion = props.getProperty(PRODUCT_SITE_VERSION);
if (appVersion == null || appVersion.trim().length() == 0)
appVersion = ""; //$NON-NLS-1$
- appName += File.separator + appId + "_" + appVersion + "_" + installDirHash; //$NON-NLS-1$ //$NON-NLS-2$
+ appName += File.separator + appId + "_" + installDirHash; //$NON-NLS-1$ //$NON-NLS-2$
} catch (IOException e) {
// Do nothing if we get an exception. We will default to a standard location
// in the user's home dir.
--- rt.equinox.framework/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/location/EquinoxLocations.java.orig 2014-03-24 12:05:52.666896971 +0000
+++ rt.equinox.framework/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/location/EquinoxLocations.java 2014-03-24 12:06:46.076914704 +0000
@@ -308,7 +308,7 @@
String appVersion = props.getProperty(PRODUCT_SITE_VERSION);
if (appVersion == null || appVersion.trim().length() == 0)
appVersion = ""; //$NON-NLS-1$
- appName += File.separator + appId + "_" + appVersion + "_" + installDirHash; //$NON-NLS-1$ //$NON-NLS-2$
+ appName += File.separator + appId + "_" + installDirHash; //$NON-NLS-1$ //$NON-NLS-2$
} catch (IOException e) {
// Do nothing if we get an exception. We will default to a standard location
// in the user's home dir.

View File

@ -0,0 +1,47 @@
From decc6ec5f3c5ce87fa50c2cfe932d66e89496810 Mon Sep 17 00:00:00 2001
From: Roland Grunberg <rgrunber@redhat.com>
Date: Wed, 3 Aug 2016 14:57:10 -0400
Subject: [PATCH] p2 Droplets should be recognized as runnable repositories.
Normally, a runnable repository is identified by the 'p2.runnable'
property contained within the artifact repository (artifact.xml).
However, in Fedora we ship p2 Droplets without this file so we need a
way to let methods like getRunnableRepositories in
o.e.equinox.internal.p2.touchpoint.eclipse.Util know that p2 Droplets
are runnable repositories.
Change-Id: I0ad0a7557f998b4d032466f89e6cc76036d1fb38
---
.../ExtensionLocationArtifactRepository.java | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git rt.equinox.p2/bundles/org.eclipse.equinox.p2.extensionlocation/src/org/eclipse/equinox/internal/p2/extensionlocation/ExtensionLocationArtifactRepository.java rt.equinox.p2/bundles/org.eclipse.equinox.p2.extensionlocation/src/org/eclipse/equinox/internal/p2/extensionlocation/ExtensionLocationArtifactRepository.java
index 342e33e..425a166 100644
--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.extensionlocation/src/org/eclipse/equinox/internal/p2/extensionlocation/ExtensionLocationArtifactRepository.java
+++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.extensionlocation/src/org/eclipse/equinox/internal/p2/extensionlocation/ExtensionLocationArtifactRepository.java
@@ -283,6 +283,22 @@ public class ExtensionLocationArtifactRepository extends AbstractRepository<IArt
return artifactRepository.getProperties();
}
+ public String getProperty(String key) {
+ if (IArtifactRepository.PROP_RUNNABLE.equals(key)) {
+ String candidate = getLocation().getPath();
+ String fragments = System.getProperty("p2.fragments");
+ if (fragments != null) {
+ String[] rootPaths = fragments.split(",");
+ for (String root : rootPaths) {
+ if (candidate.startsWith(root)) {
+ return Boolean.TRUE.toString();
+ }
+ }
+ }
+ }
+ return super.getProperty(key);
+ }
+
@Override
public String setProperty(String key, String value, IProgressMonitor monitor) {
try {
--
2.7.4

View File

@ -0,0 +1,318 @@
Submodule eclipse.jdt.debug contains modified content
diff --git a/eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/src/main/java/org/eclipse/jdt/launching/internal/weaving/ClassfileTransformer.java b/eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/src/main/java/org/eclipse/jdt/launching/internal/weaving/ClassfileTransformer.java
index ec9788a9f..d7914d1ac 100644
--- a/eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/src/main/java/org/eclipse/jdt/launching/internal/weaving/ClassfileTransformer.java
+++ b/eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/src/main/java/org/eclipse/jdt/launching/internal/weaving/ClassfileTransformer.java
@@ -25,10 +25,10 @@ public class ClassfileTransformer {
private static final String STRATA_ID = "jdt"; //$NON-NLS-1$
/** max supported java class format major version, must match {@link #ASM_API} below **/
- public static final int MAX_CLASS_MAJOR = Opcodes.V12;
+ public static final int MAX_CLASS_MAJOR = Opcodes.V10;
/** supported ASM API version, must match {@link #MAX_CLASS_MAJOR} above */
- private static final int ASM_API = Opcodes.ASM7;
+ private static final int ASM_API = Opcodes.ASM6;
public byte[] transform(byte[] classfileBuffer, final String location) {
Submodule eclipse.pde.ui contains modified content
diff --git a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/builder/ReferenceExtractor.java b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/builder/ReferenceExtractor.java
index e6d64cf8dc..39b6182e8d 100644
--- a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/builder/ReferenceExtractor.java
+++ b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/builder/ReferenceExtractor.java
@@ -82,7 +82,7 @@ public class ReferenceExtractor extends ClassVisitor {
protected List<Reference> references;
public ClassFileSignatureVisitor() {
- super(Opcodes.ASM7);
+ super(Opcodes.ASM6);
this.references = new ArrayList<>();
}
@@ -250,7 +250,7 @@ public class ReferenceExtractor extends ClassVisitor {
* @param mv
*/
public ClassFileMethodVisitor(MethodVisitor mv, String name, int argumentcount) {
- super(Opcodes.ASM7, mv);
+ super(Opcodes.ASM6, mv);
this.argumentcount = argumentcount;
this.linePositionTracker = new LinePositionTracker();
this.lastLineNumber = -1;
@@ -635,7 +635,7 @@ public class ReferenceExtractor extends ClassVisitor {
class ClassFileFieldVisitor extends FieldVisitor {
ClassFileFieldVisitor() {
- super(Opcodes.ASM7);
+ super(Opcodes.ASM6);
}
@Override
@@ -991,7 +991,7 @@ public class ReferenceExtractor extends ClassVisitor {
* {@link ReferenceModifiers}
*/
public ReferenceExtractor(IApiType type, Set<Reference> collector, int referenceKinds) {
- super(Opcodes.ASM7, new ClassNode());
+ super(Opcodes.ASM6, new ClassNode());
fType = type;
this.collector = collector;
fReferenceKinds = referenceKinds;
@@ -1008,7 +1008,7 @@ public class ReferenceExtractor extends ClassVisitor {
* @param tracker
*/
protected ReferenceExtractor(IApiType type, Set<Reference> collector, int referenceKinds, FieldTracker tracker) {
- super(Opcodes.ASM7, new ClassNode());
+ super(Opcodes.ASM6, new ClassNode());
fType = type;
this.collector = collector;
fReferenceKinds = referenceKinds;
diff --git a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/comparator/SignatureDecoder.java b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/comparator/SignatureDecoder.java
index e6e38604eb..490598b7b9 100644
--- a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/comparator/SignatureDecoder.java
+++ b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/comparator/SignatureDecoder.java
@@ -32,7 +32,7 @@ final class SignatureDecoder extends SignatureVisitor {
SignatureDescriptor signatureDescriptor;
public SignatureDecoder(SignatureDescriptor signatureDescriptor) {
- super(Opcodes.ASM7);
+ super(Opcodes.ASM6);
this.signatureDescriptor = signatureDescriptor;
}
diff --git a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/model/TypeStructureBuilder.java b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/model/TypeStructureBuilder.java
index 4ff1492e86..7dc03b6aa4 100644
--- a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/model/TypeStructureBuilder.java
+++ b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/model/TypeStructureBuilder.java
@@ -57,7 +57,7 @@ public class TypeStructureBuilder extends ClassVisitor {
* unknown
*/
TypeStructureBuilder(ClassVisitor cv, IApiComponent component, IApiTypeRoot file) {
- super(Opcodes.ASM7, cv);
+ super(Opcodes.ASM6, cv);
fComponent = component;
fFile = file;
}
@@ -154,7 +154,7 @@ public class TypeStructureBuilder extends ClassVisitor {
}
}
final ApiMethod method = fType.addMethod(name, desc, signature, laccess, names);
- return new MethodVisitor(Opcodes.ASM7,
+ return new MethodVisitor(Opcodes.ASM6,
super.visitMethod(laccess, name, desc, signature, exceptions)) {
@Override
public AnnotationVisitor visitAnnotation(String sig, boolean visible) {
@@ -190,7 +190,7 @@ public class TypeStructureBuilder extends ClassVisitor {
int traceCount = 0;
public AnnotationDefaultVisitor(ApiMethod method) {
- super(Opcodes.ASM7);
+ super(Opcodes.ASM6);
this.method = method;
}
@@ -308,7 +308,7 @@ public class TypeStructureBuilder extends ClassVisitor {
String typeName;
public EnclosingMethodSetter(ClassVisitor cv, String typeName) {
- super(Opcodes.ASM7, cv);
+ super(Opcodes.ASM6, cv);
this.typeName = typeName.replace('.', '/');
}
@@ -341,7 +341,7 @@ public class TypeStructureBuilder extends ClassVisitor {
protected EnclosingMethodSetter setter;
public TypeNameFinder(MethodVisitor mv, EnclosingMethodSetter enclosingMethodSetter) {
- super(Opcodes.ASM7, mv);
+ super(Opcodes.ASM6, mv);
this.setter = enclosingMethodSetter;
}
Submodule eclipse.platform.ui contains modified content
diff --git a/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF b/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF
index eb08f62a5d..c11656359b 100644
--- a/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF
+++ b/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF
@@ -10,8 +10,9 @@ Require-Bundle: org.junit,
org.w3c.css.sac,
org.eclipse.e4.ui.css.swt.theme;bundle-version="0.9.1",
org.eclipse.ui;bundle-version="3.106.0",
+ org.hamcrest.core;bundle-version="1.3.0",
org.hamcrest.library;bundle-version="1.3.0",
- org.mockito;bundle-version="2.13.0",
+ org.mockito.mockito-core,
org.eclipse.equinox.preferences;bundle-version="3.5.200",
org.eclipse.ui.forms,
org.eclipse.ui.views.properties.tabbed
diff --git a/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF b/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF
index 19458ab029..986226a097 100644
--- a/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF
+++ b/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF
@@ -31,8 +31,9 @@ Require-Bundle: org.eclipse.emf.ecore.xmi;bundle-version="2.4.0",
org.eclipse.core.expressions;bundle-version="3.4.200",
org.eclipse.e4.ui.workbench.addons.swt;bundle-version="0.9.0",
org.eclipse.e4.ui.css.swt;bundle-version="0.11.0",
+ org.hamcrest.core;bundle-version="1.3.0",
org.hamcrest.library;bundle-version="1.3.0",
- org.mockito;bundle-version="2.13.0",
+ org.mockito.mockito-core,
org.eclipse.e4.ui.css.core;bundle-version="0.10.100",
org.eclipse.test.performance;bundle-version="3.13.0"
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
diff --git a/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/ThemeDefinitionChangedHandlerTest.java b/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/ThemeDefinitionChangedHandlerTest.java
index 6d98e184d3..7def31d02c 100644
--- a/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/ThemeDefinitionChangedHandlerTest.java
+++ b/eclipse.platform.ui/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/ThemeDefinitionChangedHandlerTest.java
@@ -16,7 +16,7 @@ package org.eclipse.e4.ui.workbench.renderers.swt;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
-import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
diff --git a/eclipse.platform.ui/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/themes/StylingPreferencesHandlerTest.java b/eclipse.platform.ui/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/themes/StylingPreferencesHandlerTest.java
index 99654e3845..07facbb824 100644
--- a/eclipse.platform.ui/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/themes/StylingPreferencesHandlerTest.java
+++ b/eclipse.platform.ui/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/themes/StylingPreferencesHandlerTest.java
@@ -13,8 +13,8 @@
*******************************************************************************/
package org.eclipse.ui.tests.themes;
-import static org.mockito.ArgumentMatchers.anyBoolean;
-import static org.mockito.ArgumentMatchers.anyObject;
+import static org.mockito.Matchers.anyBoolean;
+import static org.mockito.Matchers.anyObject;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
diff --git a/eclipse.platform.ui/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/themes/WorkbenchThemeChangedHandlerTest.java b/eclipse.platform.ui/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/themes/WorkbenchThemeChangedHandlerTest.java
index 5c6d765a76..fa59d14187 100644
--- a/eclipse.platform.ui/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/themes/WorkbenchThemeChangedHandlerTest.java
+++ b/eclipse.platform.ui/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/themes/WorkbenchThemeChangedHandlerTest.java
@@ -15,10 +15,10 @@
package org.eclipse.ui.tests.themes;
import static org.eclipse.ui.internal.themes.WorkbenchThemeManager.EMPTY_COLOR_VALUE;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyObject;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.ArgumentMatchers.isNull;
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyObject;
+import static org.mockito.Matchers.eq;
+import static org.mockito.Matchers.isNull;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
@@ -102,11 +102,11 @@ public class WorkbenchThemeChangedHandlerTest extends TestCase {
verify(colorRegistry, times(1)).put(eq("colorDefinition"), any(RGB.class));
verify(colorRegistry, times(1)).put(eq("colorDefinition"), eq(EMPTY_COLOR_VALUE));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class),
eq(fontRegistry), eq(fontDefinition1), any(IPreferenceStore.class));
verify(handler, never()).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class),
eq(fontRegistry), eq(fontDefinition2), any(IPreferenceStore.class));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class),
eq(colorRegistry), eq(colorDefinition), any(IPreferenceStore.class));
verify(stylingEngine, times(1)).style(fontDefinition2);
@@ -165,22 +165,22 @@ public class WorkbenchThemeChangedHandlerTest extends TestCase {
//then
verify(stylingEngine, times(1)).style(fontDefinition1);
verify(fontRegistry, times(1)).put("fontDefinition1", null);
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(fontRegistry), eq(fontDefinition1),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(fontRegistry), eq(fontDefinition1),
any(IPreferenceStore.class));
verify(stylingEngine, times(1)).style(fontDefinition2);
verify(fontRegistry, never()).put(eq("fontDefinition2"), any(FontData[].class));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(fontRegistry), eq(fontDefinition2),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(fontRegistry), eq(fontDefinition2),
any(IPreferenceStore.class));
verify(stylingEngine, times(1)).style(colorDefinition1);
verify(colorRegistry, never()).put(eq("colorDefinition1"), any(RGB.class));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(colorRegistry), eq(colorDefinition1),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(colorRegistry), eq(colorDefinition1),
any(IPreferenceStore.class));
verify(stylingEngine, times(1)).style(colorDefinition2);
verify(colorRegistry, times(1)).put("colorDefinition2", null);
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(colorRegistry), eq(colorDefinition2),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(colorRegistry), eq(colorDefinition2),
any(IPreferenceStore.class));
}
@@ -227,9 +227,9 @@ public class WorkbenchThemeChangedHandlerTest extends TestCase {
verify(colorRegistry, times(1)).put("colorDefinition", null);
assertEquals(1, themeRegistry.getColors().length);
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(fontRegistry), eq(fontDefinition),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(fontRegistry), eq(fontDefinition),
any(IPreferenceStore.class));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(colorRegistry), eq(colorDefinition),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(colorRegistry), eq(colorDefinition),
any(IPreferenceStore.class));
verify(handler, times(1)).resetThemeRegistries(themeRegistry, fontRegistry, colorRegistry);
@@ -297,13 +297,13 @@ public class WorkbenchThemeChangedHandlerTest extends TestCase {
verify(colorRegistry, times(1)).put(eq("colorDefinition2"), any(RGB.class));
verify(colorRegistry, times(1)).put(eq("colorDefinition2"), eq(EMPTY_COLOR_VALUE));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(fontRegistry), eq(fontDefinition1),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(fontRegistry), eq(fontDefinition1),
any(IPreferenceStore.class));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(fontRegistry), eq(fontDefinition2),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(fontRegistry), eq(fontDefinition2),
any(IPreferenceStore.class));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(colorRegistry), eq(colorDefinition1),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(colorRegistry), eq(colorDefinition1),
any(IPreferenceStore.class));
- verify(handler, times(1)).populateDefinition(isNull(), isNull(), eq(colorRegistry), eq(colorDefinition2),
+ verify(handler, times(1)).populateDefinition(any(ITheme.class), any(org.eclipse.ui.themes.ITheme.class), eq(colorRegistry), eq(colorDefinition2),
any(IPreferenceStore.class));
verify(handler, times(1)).resetThemeRegistries(themeRegistry, fontRegistry, colorRegistry);
diff --git a/eclipse.platform.ui/tests/org.eclipse.ui.tests/META-INF/MANIFEST.MF b/eclipse.platform.ui/tests/org.eclipse.ui.tests/META-INF/MANIFEST.MF
index 45c025610f..484f3a0092 100644
--- a/eclipse.platform.ui/tests/org.eclipse.ui.tests/META-INF/MANIFEST.MF
+++ b/eclipse.platform.ui/tests/org.eclipse.ui.tests/META-INF/MANIFEST.MF
@@ -44,7 +44,7 @@ Require-Bundle: org.eclipse.core.resources,
org.eclipse.osgi.services;bundle-version="3.3.100",
org.hamcrest.core;bundle-version="1.3.0",
org.hamcrest.library;bundle-version="1.3.0",
- org.mockito;bundle-version="2.13.0"
+ org.mockito.mockito-core
Import-Package: javax.annotation
Eclipse-AutoStart: true
Export-Package: org.eclipse.ui.tests.api,
diff --git a/eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml b/eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml
index 5514138f..ac5c0ee4 100644
--- a/eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml
+++ b/eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml
@@ -23,7 +23,7 @@
<import plugin="org.apache.commons.io" />
<import plugin="org.hamcrest.core" />
<import plugin="org.hamcrest.library" />
- <import plugin="org.mockito" />
+ <import plugin="org.mockito.mockito-core" />
<import plugin="org.objenesis" />
</requires>
diff --git a/eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml b/eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml
index d4728693..297e1031 100644
--- a/eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml
+++ b/eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml
@@ -24,7 +24,7 @@
<import plugin="org.easymock" />
<import plugin="org.hamcrest.core" />
<import plugin="org.hamcrest.library" />
- <import plugin="org.mockito" />
+ <import plugin="org.mockito.mockito-core" />
</requires>
<plugin

View File

@ -0,0 +1,73 @@
--- rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/pom.xml.bak 2012-07-25 17:45:43.000000000 +0200
+++ rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/pom.xml 2012-07-31 07:41:13.103636303 +0200
@@ -40,6 +40,25 @@
<excludes>
<plugin id="org.sat4j.core"/>
<plugin id="org.sat4j.pb"/>
+ <plugin id="org.apache.commons.codec" />
+ <plugin id="org.apache.commons.httpclient" />
+ <plugin id="org.apache.httpcomponents.httpclient" />
+ <plugin id="org.apache.httpcomponents.httpcore" />
+ <plugin id="org.apache.commons.logging" />
+ <plugin id="org.eclipse.ecf"/>
+ <plugin id="org.eclipse.ecf.filetransfer"/>
+ <plugin id="org.eclipse.ecf.identity"/>
+ <plugin id="org.eclipse.ecf.provider.filetransfer"/>
+ <plugin id="org.eclipse.ecf.provider.filetransfer.httpclient"/>
+ <plugin id="org.eclipse.ecf.provider.filetransfer.httpclient.ssl"/>
+ <plugin id="org.eclipse.ecf.provider.filetransfer.httpclient4"/>
+ <plugin id="org.eclipse.ecf.provider.filetransfer.httpclient4.ssl"/>
+ <plugin id="org.eclipse.ecf.provider.filetransfer.ssl"/>
+ <plugin id="org.eclipse.ecf.ssl"/>
+ <plugin id="org.eclipse.equinox.security.macosx"/>
+ <plugin id="org.eclipse.equinox.security.win32.x86"/>
+ <plugin id="org.eclipse.equinox.security.win32.x86_64"/>
+ <plugin id="org.tukaani.xz" />
</excludes>
</configuration>
</execution>
--- eclipse.platform.ui/features/org.eclipse.e4.rcp/pom.xml.orig 2014-05-26 18:37:25.406426611 +0300
+++ eclipse.platform.ui/features/org.eclipse.e4.rcp/pom.xml 2014-05-26 18:37:47.327449374 +0300
@@ -42,6 +42,23 @@
<plugin id="org.eclipse.equinox.launcher.gtk.linux.ppc64le"/>
<plugin id="org.eclipse.equinox.launcher.gtk.linux.x86_64"/>
<plugin id="org.eclipse.equinox.launcher.win32.win32.x86_64"/>
+ <plugin id="org.eclipse.equinox.launcher.gtk.linux.arm" />
+ <plugin id="org.eclipse.equinox.launcher.gtk.linux.aarch64" />
+ <plugin id="org.eclipse.equinox.launcher.gtk.linux.s390x" />
+ <plugin id="org.eclipse.equinox.launcher.gtk.linux.x86" />
+ <plugin id="org.eclipse.e4.ui.workbench.renderers.swt.cocoa" />
+ <plugin id="org.apache.commons.jxpath" />
+ <plugin id="org.apache.felix.gogo.command" />
+ <plugin id="org.apache.batik.css" />
+ <plugin id="org.apache.batik.i18n" />
+ <plugin id="org.w3c.css.sac" />
+ <plugin id="org.apache.batik.util" />
+ <plugin id="org.apache.xmlgraphics" />
+ <plugin id="org.w3c.dom.svg" />
+ <plugin id="javax.inject" />
+ <plugin id="com.ibm.icu"/>
+ <plugin id="org.apache.felix.gogo.runtime" />
+ <plugin id="org.apache.felix.gogo.shell" />
</excludes>
</configuration>
</execution>
--- eclipse.platform.releng/features/org.eclipse.sdk/feature.xml.orig 2019-06-17 13:00:29.410091487 +0100
+++ eclipse.platform.releng/features/org.eclipse.sdk/feature.xml 2019-06-17 13:00:36.270076080 +0100
@@ -51,16 +51,6 @@
id="org.eclipse.help.source"
version="0.0.0"/>
- <requires>
- <import feature="org.eclipse.emf.common.source" version="2.7.0" match="compatible"/>
- <import feature="org.eclipse.emf.ecore.source" version="2.7.0" match="compatible"/>
- <import feature="org.eclipse.ecf.core.feature.source" version="1.4.0" match="compatible"/>
- <import feature="org.eclipse.ecf.core.ssl.feature.source" version="1.1.0" match="compatible"/>
- <import feature="org.eclipse.ecf.filetransfer.feature.source" version="3.13.7" match="compatible"/>
- <import feature="org.eclipse.ecf.filetransfer.httpclient45.feature.source" version="1.0.0" match="compatible"/>
- <import feature="org.eclipse.ecf.filetransfer.ssl.feature.source" version="1.1.0" match="compatible"/>
- </requires>
-
<plugin
id="org.eclipse.sdk"
download-size="0"

View File

@ -0,0 +1,11 @@
--- 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
@@ -885,7 +885,7 @@
//First check to see if there is already an IU around for this
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"))) {
createAdviceFileAdvice(bd, info);
// Create the bundle IU according to any shape advice we have
bundleIU = doCreateBundleIU(bd, bundleArtKey, info);

View File

@ -0,0 +1,115 @@
--- rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/META-INF/MANIFEST.MF.orig 2019-05-30 16:37:50.444183989 +0100
+++ rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/META-INF/MANIFEST.MF 2019-05-30 16:39:53.635849673 +0100
@@ -11,10 +11,7 @@
org.eclipse.equinox.http.servlet.context;version="1.0.0";x-internal:=true,
org.eclipse.equinox.http.servlet.session;version="1.0.0";x-internal:=true,
org.eclipse.equinox.http.servlet.dto;version="1.0.0";x-internal:=true
-Import-Package: org.apache.commons.fileupload;version="[1.2.2, 2.0.0)";resolution:=optional,
- org.apache.commons.fileupload.disk;version="[1.2.2, 2.0.0)";resolution:=optional,
- org.apache.commons.fileupload.servlet;version="[1.2.2, 2.0.0)";resolution:=optional,
- javax.servlet;version="[3.1.0,5.0.0)",
+Import-Package: javax.servlet;version="[3.1.0,5.0.0)",
javax.servlet.annotation;version="[3.1.0,5.0.0)";resolution:=optional,
javax.servlet.descriptor;version="[3.1.0,5.0.0)";resolution:=optional,
javax.servlet.http;version="[3.1.0,5.0.0)",
--- rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet.tests/META-INF/MANIFEST.MF.orig 2019-05-30 16:55:25.117321897 +0100
+++ rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet.tests/META-INF/MANIFEST.MF 2019-05-30 16:55:36.792290214 +0100
@@ -8,9 +8,6 @@
Require-Bundle: org.junit;bundle-version="4.0"
Import-Package: javax.servlet;version="2.6.0",
javax.servlet.http;version="2.6.0",
- org.apache.commons.fileupload;version="1.2.2",
- org.apache.commons.fileupload.disk;version="1.2.2",
- org.apache.commons.fileupload.servlet;version="1.2.2",
org.eclipse.equinox.http.jetty;version="1.4.0",
org.eclipse.equinox.http.servlet;version="1.1.0",
org.eclipse.equinox.http.servlet.context;version="1.0.0",
--- eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml.orig 2019-06-20 11:07:22.539088841 +0100
+++ eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml 2019-06-20 11:07:27.679071742 +0100
@@ -20,7 +20,6 @@
</license>
<requires>
- <import plugin="org.apache.commons.fileupload" />
<import plugin="org.apache.commons.io" />
<import plugin="org.hamcrest.core" />
<import plugin="org.hamcrest.library" />
--- rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet.tests/src/org/eclipse/equinox/http/servlet/tests/ServletTest.java.orig 2019-06-20 11:48:48.317887414 +0100
+++ rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet.tests/src/org/eclipse/equinox/http/servlet/tests/ServletTest.java 2019-06-20 11:49:35.106774459 +0100
@@ -79,10 +79,6 @@
import javax.servlet.http.HttpSessionListener;
import javax.servlet.http.Part;
-import org.apache.commons.fileupload.FileItem;
-import org.apache.commons.fileupload.FileUploadException;
-import org.apache.commons.fileupload.disk.DiskFileItemFactory;
-import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.eclipse.equinox.http.servlet.ExtendedHttpService;
import org.eclipse.equinox.http.servlet.RangeAwareServletContextHelper;
import org.eclipse.equinox.http.servlet.context.ContextPathCustomizer;
@@ -2665,65 +2661,6 @@
Assert.assertEquals("bundleresource", requestAdvisor.request("testDefaultHttpContextResource"));
}
- @Test
- public void test_commonsFileUpload() throws Exception {
- Servlet servlet = new HttpServlet() {
- private static final long serialVersionUID = 1L;
-
- @Override
- protected void doPost(HttpServletRequest req, HttpServletResponse resp)
- throws IOException, ServletException {
-
- boolean isMultipart = ServletFileUpload.isMultipartContent(req);
- Assert.assertTrue(isMultipart);
-
- DiskFileItemFactory factory = new DiskFileItemFactory();
-
- ServletContext servletContext = this.getServletConfig().getServletContext();
- File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir");
- factory.setRepository(repository);
- ServletFileUpload upload = new ServletFileUpload(factory);
-
- List<FileItem> items = null;
- try {
- List<FileItem> parseRequest = upload.parseRequest(req);
- items = parseRequest;
- } catch (FileUploadException e) {
- e.printStackTrace();
- }
-
- Assert.assertNotNull(items);
- Assert.assertFalse(items.isEmpty());
-
- FileItem fileItem = items.get(0);
-
- String submittedFileName = fileItem.getName();
- String contentType = fileItem.getContentType();
- long size = fileItem.getSize();
-
- PrintWriter writer = resp.getWriter();
-
- writer.write(submittedFileName);
- writer.write("|");
- writer.write(contentType);
- writer.write("|" + size);
- }
- };
-
- Dictionary<String, Object> props = new Hashtable<String, Object>();
- props.put(HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_NAME, "S16");
- props.put(HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_PATTERN, "/Servlet16/*");
- registrations.add(getBundleContext().registerService(Servlet.class, servlet, props));
-
- Map<String, List<Object>> map = new HashMap<String, List<Object>>();
-
- map.put("file", Arrays.<Object>asList(getClass().getResource("blue.png")));
-
- Map<String, List<String>> result = requestAdvisor.upload("Servlet16/do", map);
-
- Assert.assertEquals("200", result.get("responseCode").get(0));
- Assert.assertEquals("blue.png|image/png|292", result.get("responseBody").get(0));
- }
@Test
public void test_PathEncodings_Bug540970() throws Exception {

View File

@ -0,0 +1,120 @@
From 72e58be8c9c5fbc6f6527318b4381a58cebfc120 Mon Sep 17 00:00:00 2001
From: Roland Grunberg <rgrunber@redhat.com>
Date: Thu, 7 Apr 2016 10:23:49 -0400
Subject: [PATCH] Support reading BundleInfo from p2 Droplets enabled
installations.
- Additionally support reading source bundles from p2 Droplets location
---
ui/org.eclipse.pde.core/META-INF/MANIFEST.MF | 3 +-
.../src/org/eclipse/pde/internal/core/P2Utils.java | 48 +++++++++++++++++++---
2 files changed, 45 insertions(+), 6 deletions(-)
diff --git eclipse.pde.ui/ui/org.eclipse.pde.core/META-INF/MANIFEST.MF eclipse.pde.ui/ui/org.eclipse.pde.core/META-INF/MANIFEST.MF
index 7c20994..ab702e3 100644
--- eclipse.pde.ui/ui/org.eclipse.pde.core/META-INF/MANIFEST.MF
+++ eclipse.pde.ui/ui/org.eclipse.pde.core/META-INF/MANIFEST.MF
@@ -104,6 +104,7 @@ Require-Bundle:
org.eclipse.core.filesystem;bundle-version="[1.0.0,2.0.0)"
Eclipse-LazyStart: true
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Import-Package: com.ibm.icu.util
+Import-Package: com.ibm.icu.util,
+ org.eclipse.equinox.internal.simpleconfigurator.utils
Bundle-ActivationPolicy: lazy
Automatic-Module-Name: org.eclipse.pde.core
diff --git eclipse.pde.ui/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/P2Utils.java eclipse.pde.ui/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/P2Utils.java
index fbd4b81..55cd40e 100644
--- eclipse.pde.ui/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/P2Utils.java
+++ eclipse.pde.ui/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/P2Utils.java
@@ -17,8 +17,9 @@
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
+import java.net.*;
+import java.nio.file.Paths;
+import java.util.Arrays;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
@@ -31,7 +32,9 @@
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.URIUtil;
import org.eclipse.equinox.frameworkadmin.BundleInfo;
+import org.eclipse.equinox.internal.simpleconfigurator.utils.SimpleConfiguratorUtils;
import org.eclipse.equinox.p2.core.IProvisioningAgent;
import org.eclipse.equinox.p2.core.IProvisioningAgentProvider;
import org.eclipse.equinox.p2.engine.IEngine;
@@ -60,6 +63,7 @@
import org.eclipse.pde.core.plugin.TargetPlatform;
import org.eclipse.pde.internal.build.BundleHelper;
import org.eclipse.pde.internal.core.plugin.PluginBase;
+import org.eclipse.pde.internal.core.util.ManifestUtils;
import org.osgi.framework.Constants;
/**
@@ -139,7 +143,16 @@
try {
URL bundlesTxt = new URL(configurationArea.getProtocol(), configurationArea.getHost(), new File(configurationArea.getFile(), SimpleConfiguratorManipulator.BUNDLES_INFO_PATH).getAbsolutePath());
File home = basePath.toFile();
- BundleInfo bundles[] = getBundlesFromFile(bundlesTxt, home);
+ List<org.eclipse.equinox.internal.simpleconfigurator.utils.BundleInfo> ibundleList = SimpleConfiguratorUtils.readConfiguration(bundlesTxt, home.toURI());
+ List<BundleInfo> bundleList = new ArrayList<>();
+ for (org.eclipse.equinox.internal.simpleconfigurator.utils.BundleInfo b : ibundleList) {
+ URI location = b.getLocation();
+ if (!location.isAbsolute() && b.getBaseLocation() != null)
+ location = URIUtil.makeAbsolute(location, b.getBaseLocation());
+ BundleInfo binfo = new BundleInfo(b.getSymbolicName(), b.getVersion(), location, b.getStartLevel(), b.isMarkedAsStarted());
+ bundleList.add(binfo);
+ }
+ BundleInfo[] bundles = bundleList.toArray(new BundleInfo[0]);
if (bundles == null || bundles.length == 0) {
return null;
}
@@ -171,11 +184,38 @@
try {
File home = basePath.toFile();
URL srcBundlesTxt = new URL(configurationArea.getProtocol(), configurationArea.getHost(), configurationArea.getFile().concat(SimpleConfiguratorManipulator.SOURCE_INFO_PATH));
+ final List<BundleInfo> allSrcBundles = new ArrayList<>();
+ try {
+ for (File infoFile : SimpleConfiguratorUtils.getInfoFiles()) {
+ File pluginsDir = Paths.get(infoFile.getParent(), "plugins").toFile(); //$NON-NLS-1$
+ File[] sourceJars = pluginsDir.listFiles((dir, name) -> {
+ return name.matches(".*\\.source_.*\\.jar$"); //$NON-NLS-1$
+ });
+ for (File sourceJar : sourceJars) {
+ Map<String, String> manifest;
+ try {
+ manifest = ManifestUtils.loadManifest(sourceJar);
+ final String bsn = manifest.get(Constants.BUNDLE_SYMBOLICNAME);
+ final String version = manifest.get(Constants.BUNDLE_VERSION);
+ BundleInfo info = new BundleInfo(bsn, version, sourceJar.toURI(), -1, false);
+ allSrcBundles.add(info);
+ } catch (CoreException e) {
+ // continue
+ }
+ }
+ }
+ } catch (URISyntaxException e) {
+ // continue
+ }
+
BundleInfo srcBundles[] = getBundlesFromFile(srcBundlesTxt, home);
- if (srcBundles == null || srcBundles.length == 0) {
+ if (srcBundles != null && srcBundles.length > 0) {
+ allSrcBundles.addAll(Arrays.asList(srcBundles));
+ }
+ if (allSrcBundles.size() == 0) {
return null;
}
- return srcBundles;
+ return allSrcBundles.toArray(new BundleInfo[0]);
} catch (MalformedURLException e) {
PDECore.log(e);
return null;
--
2.7.4

View File

@ -0,0 +1,144 @@
diff --git a/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml b/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
index 7e1f520..734dd10 100644
--- a/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
+++ b/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
@@ -393,6 +393,26 @@
unpack="false"/>
<plugin
+ id="org.eclipse.equinox.launcher.gtk.linux.aarch64"
+ os="linux"
+ ws="gtk"
+ arch="aarch64"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ fragment="true"/>
+
+ <plugin
+ id="org.eclipse.equinox.launcher.gtk.linux.s390x"
+ os="linux"
+ ws="gtk"
+ arch="s390x"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ fragment="true"/>
+
+ <plugin
id="org.eclipse.equinox.launcher.cocoa.macosx.x86_64"
os="macosx"
ws="cocoa"
@@ -480,6 +520,28 @@
download-size="0"
install-size="0"
version="0.0.0"
+ fragment="true"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.swt.gtk.linux.s390x"
+ os="linux"
+ ws="gtk"
+ arch="s390x"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ fragment="true"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.swt.gtk.linux.aarch64"
+ os="linux"
+ ws="gtk"
+ arch="aarch64"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
fragment="true"
unpack="false"/>
--- a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/pom.xml 2014-11-28 15:09:42.000000000 +0000
+++ b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/pom.xml 2014-11-28 16:52:00.315007846 +0000
@@ -123,7 +123,9 @@
<copy todir="bin" verbose="true" includeEmptyDirs="false" failonerror="true">
<fileset dir="${rt.equinox.binaries.loc}/org.eclipse.equinox.executable/bin/">
<include name="cocoa/macosx/x86_64/**/*"/>
+ <include name="gtk/linux/aarch64/**/*"/>
<include name="gtk/linux/ppc64le/**/*"/>
+ <include name="gtk/linux/s390x/**/*"/>
<include name="gtk/linux/x86_64/**/*"/>
<include name="win32/win32/x86_64/**/*"/>
</fileset>
--- a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/build.properties 2015-01-30 14:44:03.436891441 +0000
+++ b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/build.properties 2015-01-30 14:45:25.232480509 +0000
@@ -32,3 +32,9 @@
root.linux.gtk.x86_64=bin/gtk/linux/x86_64,gtk_root
root.linux.gtk.x86_64.permissions.755=libcairo-swt.so
+
+root.linux.gtk.aarch64=bin/gtk/linux/aarch64,gtk_root
+root.linux.gtk.aarch64.permissions.755=launcher
+
+root.linux.gtk.s390x=bin/gtk/linux/s390x,gtk_root
+root.linux.gtk.s390x.permissions.755=launcher
--- a/eclipse.platform.swt.binaries/pom.xml 2017-04-05 01:57:59.142576722 +0100
+++ b/eclipse.platform.swt.binaries/pom.xml 2017-04-05 02:00:00.153247342 +0100
@@ -54,7 +54,9 @@
<modules>
<module>bundles/org.eclipse.swt.cocoa.macosx.x86_64</module>
+ <module>bundles/org.eclipse.swt.gtk.linux.aarch64</module>
<module>bundles/org.eclipse.swt.gtk.linux.ppc64le</module>
+ <module>bundles/org.eclipse.swt.gtk.linux.s390x</module>
<module>bundles/org.eclipse.swt.gtk.linux.x86_64</module>
<module>bundles/org.eclipse.swt.win32.win32.x86_64</module>
</modules>
--- a/eclipse.platform.swt/bundles/org.eclipse.swt/META-INF/p2.inf 2017-04-21 10:15:34.857977599 +0100
+++ b/eclipse.platform.swt/bundles/org.eclipse.swt/META-INF/p2.inf 2017-04-21 10:18:22.878025820 +0100
@@ -24,3 +24,13 @@
requires.5.name = org.eclipse.swt.gtk.linux.ppc64le
requires.5.range = [$version$,$version$]
requires.5.filter = (&(osgi.os=linux)(osgi.ws=gtk)(osgi.arch=ppc64le)(!(org.eclipse.swt.buildtime=true)))
+
+requires.6.namespace = org.eclipse.equinox.p2.iu
+requires.6.name = org.eclipse.swt.gtk.linux.aarch64
+requires.6.range = [$version$,$version$]
+requires.6.filter = (&(osgi.os=linux)(osgi.ws=gtk)(osgi.arch=aarch64)(!(org.eclipse.swt.buildtime=true)))
+
+requires.7.namespace = org.eclipse.equinox.p2.iu
+requires.7.name = org.eclipse.swt.gtk.linux.s390x
+requires.7.range = [$version$,$version$]
+requires.7.filter = (&(osgi.os=linux)(osgi.ws=gtk)(osgi.arch=s390x)(!(org.eclipse.swt.buildtime=true)))
--- a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/library/gtk/build.sh 2017-04-19 13:31:15.000000000 +0100
+++ b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/library/gtk/build.sh 2017-04-23 16:58:34.022207885 +0100
@@ -109,7 +109,7 @@
"s390x")
defaultOSArch="s390x"
defaultJava=DEFAULT_JAVA_EXEC
- OUTPUT_DIR="$EXEC_DIR/contributed/$defaultWS/$defaultOS/$defaultOSArch"
+ OUTPUT_DIR="$EXEC_DIR/bin/$defaultWS/$defaultOS/$defaultOSArch"
;;
arm*)
defaultOSArch="arm"
--- a/rt.equinox.framework/pom.xml 2017-04-26 22:19:15.548461372 +0100
+++ b/rt.equinox.framework/pom.xml 2017-04-26 22:20:41.348571492 +0100
@@ -77,6 +77,18 @@
<module>bundles/org.eclipse.equinox.launcher.gtk.linux.aarch64</module>
</modules>
</profile>
+ <profile>
+ <id>build-native-launchers-gtk.linux.s390x</id>
+ <activation>
+ <property>
+ <name>native</name>
+ <value>gtk.linux.s390x</value>
+ </property>
+ </activation>
+ <modules>
+ <module>bundles/org.eclipse.equinox.launcher.gtk.linux.s390x</module>
+ </modules>
+ </profile>
</profiles>
<modules>

View File

@ -0,0 +1,156 @@
From aabcf5acff194b807c4d0bcf68425c3452c90339 Mon Sep 17 00:00:00 2001
From: Roland Grunberg <rgrunber@redhat.com>
Date: Fri, 12 Sep 2014 10:27:14 -0400
Subject: [PATCH] Add support for regenerating bundle versions for symlinks.
When the version field in a bundle info file corresponds to a bundle
whose location is a symbolic link, the correct version should be
regenerated every time, in case a change has occured.
Change-Id: Ifbe8efed2218a8a1250fd1ac59f0cdd6bdd5f309
---
.../META-INF/MANIFEST.MF | 1 +
.../utils/SimpleConfiguratorUtils.java | 106 ++++++++++++++++++++-
2 files changed, 106 insertions(+), 1 deletion(-)
diff --git rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/META-INF/MANIFEST.MF rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/META-INF/MANIFEST.MF
index d88d0a6..07fe087 100644
--- rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/META-INF/MANIFEST.MF
+++ rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/META-INF/MANIFEST.MF
@@ -9,6 +9,7 @@ Bundle-Activator: org.eclipse.equinox.internal.simpleconfigurator.Activator
Bundle-ActivationPolicy: lazy
Import-Package: org.eclipse.osgi.framework.console;version="1.0.0";resolution:=optional,
org.eclipse.osgi.service.datalocation;version="1.0.0";resolution:=optional,
+ org.eclipse.osgi.util;version="1.1.0",
org.osgi.framework;version="1.3.0",
org.osgi.framework.namespace;version="1.0.0",
org.osgi.framework.wiring;version="1.2.0",
diff --git rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
index ab69b88..d6bf121 100644
--- rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
+++ rt.equinox.p2/bundles/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
@@ -20,8 +20,12 @@
import java.nio.file.Files;
import java.nio.file.attribute.FileTime;
import java.util.*;
+import java.util.jar.JarFile;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
import org.eclipse.equinox.internal.simpleconfigurator.Activator;
-import org.osgi.framework.Version;
+import org.eclipse.osgi.util.ManifestElement;
+import org.osgi.framework.*;
public class SimpleConfiguratorUtils {
@@ -282,6 +286,16 @@
String symbolicName = tok.nextToken().trim();
String version = tok.nextToken().trim();
URI location = parseLocation(tok.nextToken().trim());
+ if (base != null) {
+ URI absLoc = URIUtil.append(base, location.toString());
+ java.nio.file.Path absPath = java.nio.file.Paths.get(absLoc);
+ // Symbolic links may change outside Eclipse so regenerate proper bundle version.
+ if (Files.isSymbolicLink(absPath) && absPath.toFile().isFile()) {
+ // We can't depend on org.eclipse.equinox.internal.frameworkadmin.utils.Utils
+ Dictionary<String, String> manifest = getOSGiManifest(absLoc);
+ version = manifest.get(Constants.BUNDLE_VERSION);
+ }
+ }
int startLevel = Integer.parseInt(tok.nextToken().trim());
boolean markedAsStarted = Boolean.parseBoolean(tok.nextToken());
BundleInfo result = new BundleInfo(symbolicName, version, location, startLevel, markedAsStarted);
@@ -420,4 +434,93 @@
}
return lastModified;
}
+
+ private static Dictionary<String, String> getOSGiManifest(URI location) {
+ if (location == null)
+ return null;
+ // if we have a file-based URL that doesn't end in ".jar" then...
+ if (FILE_SCHEME.equals(location.getScheme()))
+ return basicLoadManifest(URIUtil.toFile(location));
+
+ try {
+ URL url = new URL("jar:" + location.toString() + "!/"); //$NON-NLS-1$//$NON-NLS-2$
+ JarURLConnection jarConnection = (JarURLConnection) url.openConnection();
+ ZipFile jar = jarConnection.getJarFile();
+
+ try {
+ ZipEntry entry = jar.getEntry(JarFile.MANIFEST_NAME);
+ if (entry == null)
+ return null;
+
+ Map<String, String> manifest = ManifestElement.parseBundleManifest(jar.getInputStream(entry), null);
+ return manifestToProperties(manifest);
+ } catch (BundleException e) {
+ return null;
+ } finally {
+ jar.close();
+ }
+ } catch (IOException e) {
+ if (System.getProperty("osgi.debug") != null) { //$NON-NLS-1$
+ System.err.println("location=" + location); //$NON-NLS-1$
+ e.printStackTrace();
+ }
+ }
+ return null;
+ }
+
+ private static Dictionary<String, String> basicLoadManifest(File bundleLocation) {
+ InputStream manifestStream = null;
+ ZipFile jarFile = null;
+ try {
+ try {
+ // Handle a JAR'd bundle
+ if (bundleLocation.isFile()) {
+ jarFile = new ZipFile(bundleLocation, ZipFile.OPEN_READ);
+ ZipEntry manifestEntry = jarFile.getEntry(JarFile.MANIFEST_NAME);
+ if (manifestEntry != null) {
+ manifestStream = jarFile.getInputStream(manifestEntry);
+ }
+ } else {
+ // we have a directory-based bundle
+ File bundleManifestFile = new File(bundleLocation, JarFile.MANIFEST_NAME);
+ if (bundleManifestFile.exists())
+ manifestStream = new BufferedInputStream(new FileInputStream(new File(bundleLocation, JarFile.MANIFEST_NAME)));
+ }
+ } catch (IOException e) {
+ //ignore
+ }
+
+ try {
+ Map<String, String> manifest = ManifestElement.parseBundleManifest(manifestStream, null);
+ return manifestToProperties(manifest);
+ } catch (IOException ioe) {
+ return null;
+ } catch (BundleException e) {
+ return null;
+ }
+ } finally {
+ try {
+ if (manifestStream != null)
+ manifestStream.close();
+ } catch (IOException e1) {
+ //Ignore
+ }
+ try {
+ if (jarFile != null)
+ jarFile.close();
+ } catch (IOException e2) {
+ //Ignore
+ }
+ }
+ }
+
+ private static Dictionary<String, String> manifestToProperties(Map<String, String> d) {
+ Iterator<String> iter = d.keySet().iterator();
+ Dictionary<String, String> result = new Hashtable<String, String>();
+ while (iter.hasNext()) {
+ String key = iter.next();
+ result.put(key, d.get(key));
+ }
+ return result;
+ }
}

View File

@ -0,0 +1,98 @@
--- eclipse.platform.swt.binaries/bundles/binaries-parent/pom.xml.orig 2019-05-01 16:18:20.026476746 +0100
+++ eclipse.platform.swt.binaries/bundles/binaries-parent/pom.xml 2019-05-01 16:18:30.068453716 +0100
@@ -75,18 +75,6 @@
</goals>
</execution>
</executions>
- <dependencies>
- <dependency>
- <groupId>org.mozilla</groupId>
- <artifactId>rhino</artifactId>
- <version>1.7.10</version>
- </dependency>
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant-apache-bsf</artifactId>
- <version>1.10.6</version>
- </dependency>
- </dependencies>
</plugin>
</plugins>
</build>
--- eclipse.platform.swt/bundles/org.eclipse.swt/buildSWT.xml.orig 2019-05-01 15:19:21.784965731 +0100
+++ eclipse.platform.swt/bundles/org.eclipse.swt/buildSWT.xml 2019-05-01 16:40:48.623849151 +0100
@@ -399,27 +399,8 @@
<!-- Set swt_version, new_version, (and rev, min_ver, maj_ver, new_rev, new_min_ver, new_maj_ver) from the make_common.mak -->
<target name="get_version" unless="swt_version">
<loadproperties srcFile="${repo.src}/${file_make_common}"/>
- <script language="javascript">
- <![CDATA[
- rev = project.getProperty("rev");
- min_ver = project.getProperty("min_ver");
- maj_ver = project.getProperty("maj_ver");
- new_rev = parseInt(rev) + 1;
- new_min_ver = min_ver;
- new_maj_ver = maj_ver;
- one = new_maj_ver;
- two = new_min_ver;
- three = new_rev;
- four = 0;
- project.setProperty("new_rev", new_rev);
- project.setProperty("new_min_ver", new_min_ver);
- project.setProperty("new_maj_ver", new_maj_ver);
- project.setProperty("new_comma_ver", one + "," + two + "," + three + "," + four);
- ]]>
- </script>
<property name="swt_version" value="${maj_ver}${min_ver}r${rev}"/>
- <property name="new_version" value="${new_maj_ver}${new_min_ver}r${new_rev}"/>
- <echo>Version=${swt_version}; New=${new_version}; New comma_ver=${new_comma_ver}</echo>
+ <echo>Version=${swt_version}</echo>
</target>
<target name="get_new_release_version" unless="min_ver">
@@ -548,11 +529,7 @@
</condition>
<property name="fragment_dir" value="${repo.bin}/bundles/${fragment}"/>
<property name="sha1_file" value="${fragment_dir}/build.sha1"/>
- <script language="javascript">
- <![CDATA[
- project.setProperty("library_src", project.getProperty("src_" + project.getProperty("swt.ws")));
- ]]>
- </script>
+ <property name="library_src" value="${src_gtk}"/>
</target>
<target name="update_sha1_file_in_fragment">
@@ -686,23 +663,15 @@
</target>
<target name="copy.library.src">
- <script language="javascript">
- <![CDATA[
- var File = java.io.File;
- var StreamTokenizer = java.io.StreamTokenizer;
- var StringReader = java.io.StringReader;
- task = project.createTask("copy");
- projectDir = project.getProperty("project_dir");
- task.setTodir(new File(project.getProperty("build_dir")));
- tk = new StreamTokenizer(new StringReader(project.getProperty("library_src")));
- while ((token = tk.nextToken()) != StreamTokenizer.TT_EOF) {
- fileset = project.createDataType("fileset");
- fileset.setDir(new File(projectDir + "/" + tk.sval + "/"));
- task.addFileset(fileset);
- }
- task.execute();
- ]]>
- </script>
+ <copy todir="${build_dir}">
+ <fileset dir="${project_dir}/bundles/org.eclipse.swt/Eclipse SWT/common/library/"/>
+ <fileset dir="${project_dir}/bundles/org.eclipse.swt/Eclipse SWT PI/common/library/"/>
+ <fileset dir="${project_dir}/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/"/>
+ <fileset dir="${project_dir}/bundles/org.eclipse.swt/Eclipse SWT AWT/gtk/library/"/>
+ <fileset dir="${project_dir}/bundles/org.eclipse.swt/Eclipse SWT OpenGL/glx/library/"/>
+ <fileset dir="${project_dir}/bundles/org.eclipse.swt/Eclipse SWT PI/cairo/library/"/>
+ <fileset dir="${project_dir}/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/library/"/>
+ </copy>
</target>
<!-- Params: swt.ws, swt.os, swt.arch -->

View File

@ -0,0 +1,29 @@
--- eclipse.jdt.debug/org.eclipse.jdt.debug.tests/META-INF/MANIFEST.MF.orig 2018-08-20 12:54:25.245305107 +0100
+++ eclipse.jdt.debug/org.eclipse.jdt.debug.tests/META-INF/MANIFEST.MF 2018-08-20 12:54:37.952261537 +0100
@@ -33,6 +33,7 @@
org.eclipse.ui.workbench.texteditor;resolution:=optional,
org.eclipse.ui.editors;resolution:=optional,
org.junit,
+ org.hamcrest.core,
org.eclipse.core.resources,
org.eclipse.core.variables,
org.eclipse.ui,
--- eclipse.platform.ui/tests/org.eclipse.tests.urischeme/META-INF/MANIFEST.MF.orig 2018-08-20 13:22:04.987695821 +0100
+++ eclipse.platform.ui/tests/org.eclipse.tests.urischeme/META-INF/MANIFEST.MF 2018-08-20 13:22:28.507613518 +0100
@@ -7,4 +7,5 @@
Fragment-Host: org.eclipse.urischeme;bundle-version="1.0.0"
Automatic-Module-Name: org.eclipse.urischeme.tests
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Require-Bundle: org.junit;bundle-version="[4.12.0,5.0.0)"
+Require-Bundle: org.junit;bundle-version="[4.12.0,5.0.0)",
+ org.hamcrest.core;bundle-version="1.3.0"
--- eclipse.pde.ui/ui/org.eclipse.pde.ui.templates.tests/META-INF/MANIFEST.MF.orig 2019-06-20 11:25:47.959981490 +0100
+++ eclipse.pde.ui/ui/org.eclipse.pde.ui.templates.tests/META-INF/MANIFEST.MF 2019-06-20 11:26:06.444935061 +0100
@@ -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.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",
org.eclipse.ui.ide;bundle-version="3.13.0",

View File

@ -0,0 +1,26 @@
diff --git a/eclipse.platform/ant/org.eclipse.ant.launching/remote/org/eclipse/ant/internal/launching/remote/AntSecurityManager.java b/eclipse.platform/ant/org.eclipse.ant.launching/remote/org/eclipse/ant/internal/launching/remote/AntSecurityManager.java
index b6c0d1e68..a35e683d7 100644
--- a/eclipse.platform/ant/org.eclipse.ant.launching/remote/org/eclipse/ant/internal/launching/remote/AntSecurityManager.java
+++ b/eclipse.platform/ant/org.eclipse.ant.launching/remote/org/eclipse/ant/internal/launching/remote/AntSecurityManager.java
@@ -19,12 +19,6 @@ import java.net.SocketPermission;
import java.security.Permission;
import java.util.PropertyPermission;
-import org.eclipse.ant.core.AntCorePlugin;
-import org.eclipse.ant.core.AntSecurityException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-
/**
* A security manager that always throws an <code>AntSecurityException</code> if the calling thread attempts to cause the Java Virtual Machine to
* exit/halt or if the restricted thread attempts to set a System property. Otherwise this manager just delegates to the pre-existing manager passed
@@ -453,8 +447,6 @@ public class AntSecurityManager extends SecurityManager {
return super.getInCheck();
}
catch (NoSuchMethodException | SecurityException e) {
- Platform.getLog(AntCorePlugin.getPlugin().getBundle()).log(new Status(IStatus.WARNING, "org.eclipse.ant.launching", //$NON-NLS-1$
- RemoteAntMessages.getString("AntSecurityManager.getInCheck"))); //$NON-NLS-1$
return false;
}
}

161
SOURCES/fix_ant_build.patch Normal file
View File

@ -0,0 +1,161 @@
--- eclipse.platform/ant/org.eclipse.ant.launching/build.properties.orig 2017-01-09 10:24:16.258243377 +0000
+++ eclipse.platform/ant/org.eclipse.ant.launching/build.properties 2017-01-09 10:25:08.302620557 +0000
@@ -23,18 +23,14 @@
about.html
jars.compile.order = .,\
- lib/loggers.jar
-# antdebug.jar and remote.jar are compiled locally using 1.6, see bug 495617:
-# lib/antdebug.jar,\
-# lib/remote.jar
+ lib/antdebug.jar,\
+ lib/loggers.jar,\
+ lib/remote.jar
source.lib/loggers.jar = loggers/
output.lib/loggers.jar = loggers_bin/
-extra.lib/loggers.jar = lib/antdebug.jar
-#source.lib/antdebug.jar = common/
-#output.lib/antdebug.jar = common_bin/
-#source.lib/remote.jar = remote/
-#output.lib/remote.jar = remote_bin/
-src.includes = about.html,\
- remote/,\
- common/
+source.lib/antdebug.jar = common/
+output.lib/antdebug.jar = common_bin/
+source.lib/remote.jar = remote/
+output.lib/remote.jar = remote_bin/
+src.includes = about.html
javacWarnings..=-unavoidableGenericProblems
--- eclipse.platform/ant/org.eclipse.ant.ui/build.properties.orig 2017-04-03 18:40:41.033489412 +0100
+++ eclipse.platform/ant/org.eclipse.ant.ui/build.properties 2017-04-03 18:43:21.614928391 +0100
@@ -17,8 +17,8 @@
source.lib/antrunner.jar = Ant Runner Support/
output.lib/antrunner.jar = ant_runner_support_bin/
# Compiled with 1.6 locally, see bug 495617:
-#source.lib/remoteAnt.jar = Remote Ant Support/
-#output.lib/remoteAnt.jar = remote_support_bin/
+source.lib/remoteAnt.jar = Remote Ant Support/
+output.lib/remoteAnt.jar = remote_support_bin/
src.includes = about.html,\
about_files/,\
Remote Ant Support/
@@ -34,6 +34,5 @@
lib/antrunner.jar,\
lib/remoteAnt.jar,\
css/
-jars.compile.order=.,lib/antrunner.jar
-# ,lib/remoteAnt.jar
+jars.compile.order=.,lib/antrunner.jar,lib/remoteAnt.jar
javacWarnings..=-unavoidableGenericProblems
--- eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/build.xml.orig 2017-01-09 13:30:24.238066571 +0000
+++ eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/build.xml 2017-01-09 13:31:19.228456113 +0000
@@ -1,106 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project name="org.eclipse.jdt.doc.user" default="build.jars" basedir=".">
+<project name="org.eclipse.jdt.doc.user" default="build.index" basedir=".">
- <property name="version.suffix" value="3.3.0" />
- <property name="full.name" value="org.eclipse.jdt.doc.user_${version.suffix}" />
- <property name="bootclasspath" value="" />
- <property name="basews" value="${ws}" />
- <property name="baseos" value="${os}" />
- <property name="basearch" value="${arch}" />
- <property name="basenl" value="${nl}" />
- <property name="javacFailOnError" value="false" />
- <property name="javacDebugInfo" value="on" />
- <property name="javacVerbose" value="true" />
- <property name="javacSource" value="1.3" />
- <property name="javacTarget" value="1.1" />
-
- <target name="init" depends="properties">
- <property name="temp.folder" value="${basedir}/temp.folder" />
- <property name="plugin.destination" value="${basedir}" />
- <property name="build.result.folder" value="${basedir}" />
- <available file="${basedir}/doc.zip" property="doc.zip.present" />
- <condition property="p2.publish.parts" value="true">
- <istrue value="${p2.gathering}" />
- </condition>
- </target>
-
- <target name="properties" if="eclipse.running">
- <property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter" />
- </target>
-
- <target name="build.update.jar" depends="init" description="Build the plug-in: org.eclipse.jdt.doc.user for an update site.">
- <delete dir="${temp.folder}" />
- <mkdir dir="${temp.folder}" />
- <antcall target="build.jars" />
- <antcall target="gather.bin.parts">
- <param name="destination.temp.folder" value="${temp.folder}/" />
- </antcall>
- <zip zipfile="${plugin.destination}/${full.name}.jar" basedir="${temp.folder}/${full.name}" filesonly="false" whenempty="skip" />
- <delete dir="${temp.folder}" />
- </target>
-
- <target name="publish.bin.parts" depends="init" if="p2.publish.parts">
- <antcall target="gather.bin.parts">
- <param name="destination.temp.folder" value="${build.result.folder}" />
- </antcall>
- <eclipse.gatherBundle metadataRepository="${p2.build.repo}" artifactRepository="${p2.build.repo}" buildResultFolder="${build.result.folder}" targetFolder="${build.result.folder}/${full.name}" />
- </target>
-
- <target name="gather.bin.parts" depends="init" if="destination.temp.folder">
- <antcall target="build.index" />
- <mkdir dir="${destination.temp.folder}/${full.name}" />
- <copy todir="${destination.temp.folder}/${full.name}">
- <fileset dir="${basedir}" includes="*.properties,*.xml,*.zip,*.html,*.htm,*.png,*.css,META-INF/**,index/**,concepts/**, gettingStarted/**, images/**, reference/**, tasks/**, tips/**, whatsNew/**" excludes="build.properties,build.xml" />
- </copy>
- <eclipse.versionReplacer path="${destination.temp.folder}/${full.name}" version="${version.suffix}" />
- </target>
-
- <target name="build.jars" depends="init" description="Build all the jars for the plug-in: org.eclipse.jdt.doc.user.">
- </target>
-
- <target name="build.index" depends="init" description="Builds search index for the plug-in: org.eclipse.jdt.doc.user." if="eclipse.running">
+ <target name="build.index" description="Builds search index for the plug-in: org.eclipse.jdt.doc.user." if="eclipse.running">
<help.buildHelpIndex manifest="plugin.xml" destination="." />
</target>
- <target name="build.sources" depends="init">
- </target>
-
- <target name="build.zips" depends="init">
- </target>
-
- <target name="gather.sources" depends="init" if="destination.temp.folder">
- </target>
-
- <target name="gather.logs" depends="init" if="destination.temp.folder">
- </target>
-
- <target name="clean" depends="init" description="Clean the plug-in: org.eclipse.jdt.doc.user of all the zips, jars and logs created.">
- <delete file="${plugin.destination}/${full.name}.jar" />
- <delete file="${plugin.destination}/${full.name}.zip" />
- <delete dir="${temp.folder}" />
- </target>
-
- <target name="refresh" depends="init" if="eclipse.running" description="Refresh this folder.">
- <eclipse.convertPath fileSystemPath="D:/30workspace/org.eclipse.jdt.doc.user/" property="resourcePath" />
- <eclipse.refreshLocal resource="${resourcePath}" depth="infinite" />
- </target>
-
- <target name="zip.plugin" depends="init" description="Create a zip containing all the elements for the plug-in: org.eclipse.jdt.doc.user." if="eclipse.running">
- <delete dir="${temp.folder}" />
- <mkdir dir="${temp.folder}" />
- <antcall target="build.jars" />
- <antcall target="build.sources" />
- <antcall target="gather.bin.parts">
- <param name="destination.temp.folder" value="${temp.folder}/" />
- </antcall>
- <antcall target="gather.sources">
- <param name="destination.temp.folder" value="${temp.folder}/" />
- </antcall>
- <delete>
- <fileset dir="${temp.folder}" includes="**/*.bin.log" />
- </delete>
- <zip zipfile="${plugin.destination}/${full.name}.zip" basedir="${temp.folder}" filesonly="true" whenempty="skip" />
- <delete dir="${temp.folder}" />
- </target>
-
</project>

View File

@ -0,0 +1,14 @@
--- rt.equinox.framework/features/org.eclipse.equinox.executable.feature/library/gtk/eclipseGtkInit.c.orig 2018-08-22 15:19:04.602623018 +0100
+++ rt.equinox.framework/features/org.eclipse.equinox.executable.feature/library/gtk/eclipseGtkInit.c 2018-08-22 15:20:03.453348722 +0100
@@ -114,6 +114,11 @@
#define DLFLAGS RTLD_LAZY
#endif
+ char *gdkBackend = getenv("GDK_BACKEND");
+ if (gdkBackend == NULL) {
+ setenv("GDK_BACKEND", "x11", 0);
+ }
+
void *gioLib = NULL, *glibLib = NULL, *gdkLib = NULL, *gtkLib = NULL, *objLib = NULL, *pixLib = NULL;
gdkLib = dlopen(GDK3_LIB, DLFLAGS);

1403
SPECS/eclipse.spec Normal file

File diff suppressed because it is too large Load Diff