[tycho] Change BR/R on maven to maven-local for XMvn support.
Roland Grunberg
rgrunber at fedoraproject.org
Wed Feb 6 18:56:40 UTC 2013
commit 39d8ccf4a8d28a3e0171abed70e18dbc8a8cae3b
Author: Roland Grunberg <rgrunber at redhat.com>
Date: Wed Feb 6 12:13:21 2013 -0500
Change BR/R on maven to maven-local for XMvn support.
Built bootstrapped to fix missing JavadirWorkspaceReader.
FedoraWorkspaceReader cannot be accessed so use DefaultResolver instead.
tycho-use-custom-resolver.patch | 47 ++++++++++++++++++++++----------------
tycho.spec | 12 ++++++---
2 files changed, 35 insertions(+), 24 deletions(-)
---
diff --git a/tycho-use-custom-resolver.patch b/tycho-use-custom-resolver.patch
index a007aac..1dbaec4 100644
--- a/tycho-use-custom-resolver.patch
+++ b/tycho-use-custom-resolver.patch
@@ -1,4 +1,4 @@
-From eed70befcb3c5b55170a9847da2257b416e96314 Mon Sep 17 00:00:00 2001
+From d2140837249eb18247adf7ae9399c1092803f8f5 Mon Sep 17 00:00:00 2001
From: Roland Grunberg <rgrunber at redhat.com>
Date: Tue, 12 Jun 2012 10:38:51 -0400
Subject: [PATCH] Implement a custom resolver for Tycho in local mode.
@@ -23,13 +23,14 @@ Change-Id: Ia1ece07ece2412bc4a88901631f3f651ad2b634b
---
.../tycho/p2/target/TargetDefinitionResolver.java | 11 +++--
.../tycho/p2/target/TargetPlatformBuilderImpl.java | 55 ++++++++++++++++++++--
+ tycho-core/pom.xml | 5 ++
.../core/maven/TychoMavenLifecycleParticipant.java | 16 +++++++
.../tycho/core/osgitools/AbstractTychoProject.java | 24 ++++++++++
.../tycho/core/osgitools/OsgiBundleProject.java | 29 +++++++++++-
.../DefaultTargetPlatformConfigurationReader.java | 6 ++-
- .../osgi/runtime/TychoOsgiRuntimeLocator.java | 15 ++++++
+ .../osgi/runtime/TychoOsgiRuntimeLocator.java | 12 +++++
.../p2/resolver/P2TargetPlatformResolver.java | 11 +++++
- 8 files changed, 157 insertions(+), 10 deletions(-)
+ 9 files changed, 159 insertions(+), 10 deletions(-)
diff --git a/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/TargetDefinitionResolver.java b/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/TargetDefinitionResolver.java
index 5cc8718..7e4fcc1 100644
@@ -141,6 +142,22 @@ index c56eeff..bb45548 100644
if (logger.isDebugEnabled()) {
IQueryResult<IInstallableUnit> locallyInstalledIUs = localMetadataRepository.query(QueryUtil.ALL_UNITS,
+diff --git a/tycho-core/pom.xml b/tycho-core/pom.xml
+index c3d5288..d76c229 100644
+--- a/tycho-core/pom.xml
++++ b/tycho-core/pom.xml
+@@ -146,6 +146,11 @@
+ <artifactId>org.eclipse.tycho.core.shared</artifactId>
+ <version>${project.version}</version>
+ </dependency>
++ <dependency>
++ <groupId>org.fedoraproject.xmvn</groupId>
++ <artifactId>xmvn-core</artifactId>
++ <version>0.3.0</version>
++ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.tycho</groupId>
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 cccb6ff..fb8bf78 100644
--- a/tycho-core/src/main/java/org/eclipse/tycho/core/maven/TychoMavenLifecycleParticipant.java
@@ -301,37 +318,27 @@ index 5c4a26f..802c9dd 100644
setTargetPlatformResolver(result, configuration);
diff --git a/tycho-core/src/main/java/org/eclipse/tycho/osgi/runtime/TychoOsgiRuntimeLocator.java b/tycho-core/src/main/java/org/eclipse/tycho/osgi/runtime/TychoOsgiRuntimeLocator.java
-index 9935c5f..9e539e6 100644
+index 9935c5f..8f63735 100644
--- a/tycho-core/src/main/java/org/eclipse/tycho/osgi/runtime/TychoOsgiRuntimeLocator.java
+++ b/tycho-core/src/main/java/org/eclipse/tycho/osgi/runtime/TychoOsgiRuntimeLocator.java
-@@ -22,6 +22,7 @@ import org.apache.maven.artifact.repository.ArtifactRepository;
- import org.apache.maven.artifact.resolver.ArtifactResolutionException;
- import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
- import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
-+import org.apache.maven.artifact.resolver.JavadirWorkspaceReader;
- import org.apache.maven.artifact.resolver.ResolutionErrorHandler;
- import org.apache.maven.execution.MavenSession;
- import org.apache.maven.model.Dependency;
-@@ -38,6 +39,7 @@ import org.eclipse.sisu.equinox.embedder.EquinoxRuntimeLocator;
+@@ -38,6 +38,9 @@ import org.eclipse.sisu.equinox.embedder.EquinoxRuntimeLocator;
import org.eclipse.tycho.dev.DevWorkspaceResolver;
import org.eclipse.tycho.locking.facade.FileLockService;
import org.eclipse.tycho.locking.facade.FileLocker;
+import org.sonatype.aether.util.artifact.DefaultArtifact;
++
++import org.fedoraproject.maven.resolver.DefaultResolver;
/**
* Implementation of {@link org.eclipse.sisu.equinox.embedder.EquinoxRuntimeLocator} for Tycho's
-@@ -201,6 +203,19 @@ public class TychoOsgiRuntimeLocator implements EquinoxRuntimeLocator {
+@@ -201,6 +204,15 @@ public class TychoOsgiRuntimeLocator implements EquinoxRuntimeLocator {
Artifact artifact = repositorySystem.createArtifact(dependency.getGroupId(), dependency.getArtifactId(),
dependency.getVersion(), dependency.getType());
+ // If we are in local mode, find the artifact on the system
+ if (System.getenv("TYCHO_MVN_LOCAL") != null || System.getenv("TYCHO_MVN_RPMBUILD") != null) {
-+ JavadirWorkspaceReader wReader = new JavadirWorkspaceReader();
-+ DefaultArtifact newArtifact = new DefaultArtifact(artifact.getGroupId()
-+ + ":" + artifact.getArtifactId()
-+ + ":" + artifact.getType()
-+ + ":" + artifact.getVersion());
-+ File file = wReader.findArtifact(newArtifact);
++ DefaultResolver resolver = new DefaultResolver();
++ File file = resolver.resolve(artifact.getGroupId(), artifact.getArtifactId(), artifact.getVersion(), artifact.getType());
+ if (file != null) {
+ artifact.setFile(file);
+ }
diff --git a/tycho.spec b/tycho.spec
index 42a353e..0c947a7 100644
--- a/tycho.spec
+++ b/tycho.spec
@@ -1,6 +1,6 @@
# Bootstrap build
# Set this if Tycho and Eclipse are not in buildroot
-%global bootstrap 0
+%global bootstrap 1
# When building version under development (non-release)
# %%global snap -SNAPSHOT
@@ -8,7 +8,7 @@
Name: tycho
Version: 0.16.0
-Release: 20%{?dist}
+Release: 20.1%{?dist}
Summary: Plugins and extensions for building Eclipse plugins and OSGI bundles with Maven
Group: Development/Libraries
@@ -52,7 +52,7 @@ BuildArch: noarch
BuildRequires: jpackage-utils
BuildRequires: java-devel
-BuildRequires: maven
+BuildRequires: maven-local
BuildRequires: maven-clean-plugin
BuildRequires: maven-compiler-plugin
BuildRequires: maven-dependency-plugin
@@ -77,7 +77,7 @@ BuildRequires: %{name}
Requires: jpackage-utils
Requires: decentxml
-Requires: maven
+Requires: maven-local
Requires: maven-clean-plugin
Requires: maven-dependency-plugin
Requires: maven-shared-verifier
@@ -259,6 +259,10 @@ install -m 644 $osgiJarPath $RPM_BUILD_ROOT%{_javadir}/%{name}/osgi.jar
%{_javadocdir}/%{name}
%changelog
+* Wed Feb 6 2013 Roland Grunberg <rgrunber at redhat.com> 0.16.0-20.1
+- Change BR/R on maven to maven-local for XMvn support.
+- Build bootstrapped to fix missing Fedora Maven class.
+
* Thu Jan 24 2013 Roland Grunberg <rgrunber at redhat.com> 0.16.0-20
- Use TYCHO_MVN_{LOCAL,RPMBUILD} to determine how maven was called.
- Update to maven-surefire 2.13.
More information about the scm-commits
mailing list