182 lines
9.9 KiB
Diff
182 lines
9.9 KiB
Diff
From f515e677ed605c6fe02842334de19304b8497144 Mon Sep 17 00:00:00 2001
|
|
From: Roland Grunberg <rgrunber@redhat.com>
|
|
Date: Tue, 12 Jun 2012 09:56:38 -0400
|
|
Subject: [PATCH] Fix the Tycho build to work on Fedora.
|
|
|
|
Minor fixes of limited scope needed to have Tycho building on Fedora.
|
|
|
|
Remove org.eclipse.equinox.concurrent until present in Fedora Eclipse.
|
|
|
|
Tycho upstream currently depends upon 0.15.0 when building
|
|
0.16.0-SNAPSHOT, which doesn't have reactor plugin version checking. In
|
|
Fedora we depend on the previously built version which has that version
|
|
checking. We must keep previous build version strings different to avoid
|
|
a cyclic dependency, but doing so causes the version checking to fail,
|
|
so we must provide a way to disable it. Disable by default.
|
|
|
|
Update to using Jetty 9 API.
|
|
|
|
Add support for compact profiles (http://openjdk.java.net/jeps/161).
|
|
|
|
Change-Id: Ic8c0514c1fa10ee53580d2654ac6a363ccd66814
|
|
---
|
|
.../META-INF/MANIFEST.MF | 2 +-
|
|
.../tycho/p2/target/ee/CustomEEResolutionHandler.java | 2 +-
|
|
.../main/java/org/eclipse/tycho/test/util/HttpServer.java | 8 ++++++--
|
|
.../tycho-bundles-external/tycho-bundles-external.product | 1 -
|
|
.../tycho-standalone-p2-director/p2 Director.product | 1 -
|
|
.../src/main/java/org/eclipse/tycho/core/ee/EEVersion.java | 13 ++++++++++++-
|
|
.../tycho/core/maven/TychoMavenLifecycleParticipant.java | 4 +++-
|
|
.../eclipse/tycho/test/AbstractTychoIntegrationTest.java | 11 +++++------
|
|
8 files changed, 28 insertions(+), 14 deletions(-)
|
|
|
|
diff --git a/tycho-bundles/org.eclipse.tycho.p2.maven.repository.tests/META-INF/MANIFEST.MF b/tycho-bundles/org.eclipse.tycho.p2.maven.repository.tests/META-INF/MANIFEST.MF
|
|
index f59f155..6d3813b 100644
|
|
--- a/tycho-bundles/org.eclipse.tycho.p2.maven.repository.tests/META-INF/MANIFEST.MF
|
|
+++ b/tycho-bundles/org.eclipse.tycho.p2.maven.repository.tests/META-INF/MANIFEST.MF
|
|
@@ -9,7 +9,7 @@ Fragment-Host: org.eclipse.tycho.p2.maven.repository
|
|
Require-Bundle: org.junit,
|
|
org.eclipse.equinox.p2.publisher,
|
|
org.eclipse.equinox.ds,
|
|
- org.mockito
|
|
+ org.mockito.mockito-core
|
|
Import-Package: org.eclipse.tycho.locking.facade,
|
|
org.eclipse.tycho.repository.local.testutil,
|
|
org.eclipse.tycho.repository.streaming.testutil,
|
|
diff --git a/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/CustomEEResolutionHandler.java b/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/CustomEEResolutionHandler.java
|
|
index 6773a40..c66c991 100644
|
|
--- a/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/CustomEEResolutionHandler.java
|
|
+++ b/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/CustomEEResolutionHandler.java
|
|
@@ -59,7 +59,7 @@ class CustomEEResolutionHandler extends ExecutionEnvironmentResolutionHandler {
|
|
String name = capability.getName();
|
|
String version = capability.getVersion().toString();
|
|
|
|
- if (JREAction.NAMESPACE_OSGI_EE.equals(namespace)) {
|
|
+ if ("osgi.ee".equals(namespace)) {
|
|
result.add(new SystemCapability(Type.OSGI_EE, name, version));
|
|
} else if (PublisherHelper.CAPABILITY_NS_JAVA_PACKAGE.equals(namespace)) {
|
|
result.add(new SystemCapability(Type.JAVA_PACKAGE, name, version));
|
|
diff --git a/tycho-bundles/org.eclipse.tycho.test.utils/src/main/java/org/eclipse/tycho/test/util/HttpServer.java b/tycho-bundles/org.eclipse.tycho.test.utils/src/main/java/org/eclipse/tycho/test/util/HttpServer.java
|
|
index 57b4e10..47423e5 100644
|
|
--- a/tycho-bundles/org.eclipse.tycho.test.utils/src/main/java/org/eclipse/tycho/test/util/HttpServer.java
|
|
+++ b/tycho-bundles/org.eclipse.tycho.test.utils/src/main/java/org/eclipse/tycho/test/util/HttpServer.java
|
|
@@ -17,9 +17,13 @@ import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Random;
|
|
|
|
+import org.eclipse.jetty.security.ConstraintMapping;
|
|
+import org.eclipse.jetty.security.ConstraintSecurityHandler;
|
|
+import org.eclipse.jetty.security.HashLoginService;
|
|
+import org.eclipse.jetty.server.AbstractNetworkConnector;
|
|
import org.eclipse.jetty.server.Connector;
|
|
import org.eclipse.jetty.server.Server;
|
|
-import org.eclipse.jetty.server.bio.SocketConnector;
|
|
+import org.eclipse.jetty.server.ServerConnector;
|
|
import org.eclipse.jetty.servlet.ServletContextHandler;
|
|
import org.eclipse.jetty.servlet.ServletHolder;
|
|
import org.junit.rules.ExternalResource;
|
|
@@ -77,7 +81,7 @@ public class HttpServer extends ExternalResource {
|
|
|
|
private static RunningServer startServerOnPort(int port) throws Exception {
|
|
Server jetty = new Server();
|
|
- Connector connector = new SocketConnector();
|
|
+ AbstractNetworkConnector connector = new ServerConnector(jetty);
|
|
connector.setPort(port);
|
|
jetty.addConnector(connector);
|
|
|
|
diff --git a/tycho-bundles/tycho-bundles-external/tycho-bundles-external.product b/tycho-bundles/tycho-bundles-external/tycho-bundles-external.product
|
|
index 9f6cb78..41705c5 100644
|
|
--- a/tycho-bundles/tycho-bundles-external/tycho-bundles-external.product
|
|
+++ b/tycho-bundles/tycho-bundles-external/tycho-bundles-external.product
|
|
@@ -43,7 +43,6 @@
|
|
<plugin id="org.eclipse.ecf.ssl" fragment="true"/>
|
|
<plugin id="org.eclipse.equinox.app"/>
|
|
<plugin id="org.eclipse.equinox.common"/>
|
|
- <plugin id="org.eclipse.equinox.concurrent"/>
|
|
<plugin id="org.eclipse.equinox.ds"/>
|
|
<plugin id="org.eclipse.equinox.frameworkadmin"/>
|
|
<plugin id="org.eclipse.equinox.frameworkadmin.equinox"/>
|
|
diff --git a/tycho-bundles/tycho-standalone-p2-director/p2 Director.product b/tycho-bundles/tycho-standalone-p2-director/p2 Director.product
|
|
index 6739b3a..af9237b 100644
|
|
--- a/tycho-bundles/tycho-standalone-p2-director/p2 Director.product
|
|
+++ b/tycho-bundles/tycho-standalone-p2-director/p2 Director.product
|
|
@@ -42,7 +42,6 @@
|
|
<plugin id="org.eclipse.ecf.ssl" fragment="true"/>
|
|
<plugin id="org.eclipse.equinox.app"/>
|
|
<plugin id="org.eclipse.equinox.common"/>
|
|
- <plugin id="org.eclipse.equinox.concurrent"/>
|
|
<plugin id="org.eclipse.equinox.ds"/>
|
|
<plugin id="org.eclipse.equinox.frameworkadmin"/>
|
|
<plugin id="org.eclipse.equinox.frameworkadmin.equinox"/>
|
|
diff --git a/tycho-core/src/main/java/org/eclipse/tycho/core/ee/EEVersion.java b/tycho-core/src/main/java/org/eclipse/tycho/core/ee/EEVersion.java
|
|
index 6455a7c..4d09e34 100644
|
|
--- a/tycho-core/src/main/java/org/eclipse/tycho/core/ee/EEVersion.java
|
|
+++ b/tycho-core/src/main/java/org/eclipse/tycho/core/ee/EEVersion.java
|
|
@@ -18,7 +18,8 @@ public class EEVersion implements Comparable<EEVersion> {
|
|
public enum EEType {
|
|
|
|
// order is significant for comparison
|
|
- OSGI_MINIMUM("OSGi/Minimum"), CDC_FOUNDATION("CDC/Foundation"), JRE("JRE"), JAVA_SE("JavaSE");
|
|
+ OSGI_MINIMUM("OSGi/Minimum"), CDC_FOUNDATION("CDC/Foundation"), JRE("JRE"), JAVA_SE("JavaSE"), JAVA_SE_COMPACT1(
|
|
+ "JavaSE/compact1"), JAVA_SE_COMPACT2("JavaSE/compact2"), JAVA_SE_COMPACT3("JavaSE/compact3");
|
|
|
|
private final String profileName;
|
|
|
|
@@ -51,6 +52,16 @@ public class EEVersion implements Comparable<EEVersion> {
|
|
* @see java.lang.Comparable#compareTo(java.lang.Object)
|
|
*/
|
|
public int compareTo(EEVersion other) {
|
|
+ // JavaSE/compact{1..3} > JavaSE-N except when N = 1.8
|
|
+ final Version JAVA8 = Version.parseVersion("1.8");
|
|
+ if (type.equals(EEType.JAVA_SE) && version.equals(JAVA8)
|
|
+ && other.type.profileName.contains("JavaSE/compact")) {
|
|
+ return 1;
|
|
+
|
|
+ } else if (other.type.equals(EEType.JAVA_SE) && other.version.equals(JAVA8)
|
|
+ && type.profileName.contains("JavaSE/compact")) {
|
|
+ return -1;
|
|
+ }
|
|
int result = type.compareTo(other.type);
|
|
if (result != 0) {
|
|
return result;
|
|
diff --git a/tycho-core/src/main/java/org/eclipse/tycho/core/maven/TychoMavenLifecycleParticipant.java b/tycho-core/src/main/java/org/eclipse/tycho/core/maven/TychoMavenLifecycleParticipant.java
|
|
index 4cc937c..59335b9 100644
|
|
--- a/tycho-core/src/main/java/org/eclipse/tycho/core/maven/TychoMavenLifecycleParticipant.java
|
|
+++ b/tycho-core/src/main/java/org/eclipse/tycho/core/maven/TychoMavenLifecycleParticipant.java
|
|
@@ -77,7 +77,9 @@ public class TychoMavenLifecycleParticipant extends AbstractMavenLifecyclePartic
|
|
}
|
|
|
|
private void validate(List<MavenProject> projects) throws MavenExecutionException {
|
|
- validateConsistentTychoVersion(projects);
|
|
+ if (System.getProperty("tycho.enableVersionCheck") != null) {
|
|
+ validateConsistentTychoVersion(projects);
|
|
+ }
|
|
validateUniqueBaseDirs(projects);
|
|
}
|
|
|
|
diff --git a/tycho-testing-harness/src/main/java/org/eclipse/tycho/test/AbstractTychoIntegrationTest.java b/tycho-testing-harness/src/main/java/org/eclipse/tycho/test/AbstractTychoIntegrationTest.java
|
|
index a8173df..cf2cf57 100644
|
|
--- a/tycho-testing-harness/src/main/java/org/eclipse/tycho/test/AbstractTychoIntegrationTest.java
|
|
+++ b/tycho-testing-harness/src/main/java/org/eclipse/tycho/test/AbstractTychoIntegrationTest.java
|
|
@@ -110,12 +110,11 @@ public abstract class AbstractTychoIntegrationTest {
|
|
verifier.getCliOptions().add(customOptions);
|
|
}
|
|
|
|
- if (System.getProperty(SYSPROP_STATELOCATION) != null) {
|
|
- verifier.setForkJvm(false);
|
|
- String m2eresolver = System.getProperty("tychodev-maven.ext.class.path"); // XXX
|
|
- if (m2eresolver != null) {
|
|
- verifier.addCliOption("-Dmaven.ext.class.path=" + m2eresolver);
|
|
- }
|
|
+ String m2eState = System.getProperty("m2eclipse.workspace.state");
|
|
+ String m2eResolver = System.getProperty("m2eclipse.workspace.resolver");
|
|
+
|
|
+ if (m2eState != null && m2eResolver != null) {
|
|
+ verifier.getVerifierProperties().put("m2eclipse.workspace.state", m2eState);
|
|
}
|
|
|
|
return verifier;
|
|
--
|
|
1.9.3
|
|
|