Compare commits

..

No commits in common. "rawhide" and "f18" have entirely different histories.

8 changed files with 275 additions and 1 deletions

2
.gitignore vendored Normal file
View file

@ -0,0 +1,2 @@
/tycho-extras-*.bz2
/org.eclipse.tycho.extras-*.bz2

View file

@ -1 +0,0 @@
This project was merged upstream with the main tycho repo. The tycho-extras RPM was subsumed by the tycho RPM

1
sources Normal file
View file

@ -0,0 +1 @@
0568752ff0ae1b8e40263b6e3637488c tycho-extras-0.16.x.tar.bz2

53
tycho-extras-393686.patch Normal file
View file

@ -0,0 +1,53 @@
From b57fed1d046cde40d90bda409280463006337b4a Mon Sep 17 00:00:00 2001
From: Tobias Oberlies <tobias.oberlies@sap.com>
Date: Wed, 28 Nov 2012 14:13:42 +0100
Subject: [PATCH] 393686 Correctly add reactor artifacts to eclipserun mojo
runtime
- Special handling for eclipserun runtime artifact from the reactor. It
is questionable if we need this at all, but while the eclipserun
runtime resolved from the target platform (and hence may include
reactor artifacts), we need this special handling.
- Fail fast if reactor artifacts for runtime have not yet been packaged.
- Still no integration test - tested manually.
Bug: 393686
Change-Id: Ifa542df7af5691c9146b65ff230201c4c857d4b4
---
.../tycho/extras/eclipserun/EclipseRunMojo.java | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git a/tycho-eclipserun-plugin/src/main/java/org/eclipse/tycho/extras/eclipserun/EclipseRunMojo.java b/tycho-eclipserun-plugin/src/main/java/org/eclipse/tycho/extras/eclipserun/EclipseRunMojo.java
index 0ca5be1..a6fba3d 100644
--- a/tycho-eclipserun-plugin/src/main/java/org/eclipse/tycho/extras/eclipserun/EclipseRunMojo.java
+++ b/tycho-eclipserun-plugin/src/main/java/org/eclipse/tycho/extras/eclipserun/EclipseRunMojo.java
@@ -170,7 +170,25 @@ public class EclipseRunMojo extends AbstractMojo {
EquinoxInstallationDescription installationDesc = new DefaultEquinoxInstallationDescription();
for (ArtifactDescriptor artifact : runtimeArtifacts.getArtifacts(ArtifactKey.TYPE_ECLIPSE_PLUGIN)) {
- installationDesc.addBundle(artifact);
+
+ ReactorProject reactorProject = artifact.getMavenProject();
+ if (reactorProject != null) {
+ // while reactor projects may be in the runtime, we need this special handling here
+ if (reactorProject.sameProject(project)) {
+ // never add this project to the runtime
+ continue;
+ }
+
+ File reactorArtifactFile = reactorProject.getArtifact(artifact.getClassifier());
+ if (reactorArtifactFile == null || !reactorArtifactFile.isFile()) {
+ throw new MojoExecutionException(
+ "Eclipse runtime includes artifact from the reactor which has not yet been built: "
+ + artifact);
+ }
+ installationDesc.addBundle(artifact.getKey(), reactorArtifactFile);
+ } else {
+ installationDesc.addBundle(artifact);
+ }
}
return installationFactory.createInstallation(installationDesc, work);
--
1.7.11.7

View file

@ -0,0 +1,38 @@
diff --git a/tycho-source-feature-plugin/src/main/java/org/eclipse/tycho/extras/sourcefeature/SourceFeatureMojo.java b/tycho-source-feature-plugin/src/main/java/org/eclipse/tycho/extras/sourcefeature/SourceFeatureMojo.java
index 80d8f21..eb8396e 100644
--- a/tycho-source-feature-plugin/src/main/java/org/eclipse/tycho/extras/sourcefeature/SourceFeatureMojo.java
+++ b/tycho-source-feature-plugin/src/main/java/org/eclipse/tycho/extras/sourcefeature/SourceFeatureMojo.java
@@ -29,6 +29,7 @@ import org.apache.maven.project.MavenProjectHelper;
import org.codehaus.plexus.archiver.jar.JarArchiver;
import org.codehaus.plexus.archiver.util.DefaultFileSet;
import org.codehaus.plexus.configuration.PlexusConfiguration;
+import org.codehaus.plexus.configuration.PlexusConfigurationException;
import org.codehaus.plexus.logging.Logger;
import org.eclipse.sisu.equinox.EquinoxServiceFactory;
import org.eclipse.tycho.ArtifactKey;
@@ -342,14 +343,18 @@ public class SourceFeatureMojo extends AbstractMojo {
}
private String getAttribute(PlexusConfiguration dom, String attrName) {
- String attr = dom.getAttribute(attrName);
- if (attr == null) {
- return null;
- }
- attr = attr.trim();
- if (attr.length() == 0) {
+ try {
+ String attr = dom.getAttribute(attrName);
+ if (attr == null) {
+ return null;
+ }
+ attr = attr.trim();
+ if (attr.length() == 0) {
+ return null;
+ }
+ return attr;
+ } catch (PlexusConfigurationException e) {
return null;
}
- return attr;
}
}

View file

@ -0,0 +1,36 @@
--- org.eclipse.tycho.extras-e58861033fdadbae0563a703feae75bc50245bee/pom.xml.old 2012-07-30 09:56:42.000000000 -0400
+++ org.eclipse.tycho.extras-e58861033fdadbae0563a703feae75bc50245bee/pom.xml 2012-07-30 09:58:02.000000000 -0400
@@ -205,6 +205,7 @@
</executions>
</plugin>
<!-- m2eclipse lifecycle mapping -->
+ <!--
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
@@ -229,6 +230,7 @@
</lifecycleMappingMetadata>
</configuration>
</plugin>
+ -->
</plugins>
</pluginManagement>
</build>
--- org.eclipse.tycho.extras-e58861033fdadbae0563a703feae75bc50245bee/tycho-p2-extras-plugin/pom.xml.old 2012-08-03 11:56:55.000000000 -0400
+++ org.eclipse.tycho.extras-e58861033fdadbae0563a703feae75bc50245bee/tycho-p2-extras-plugin/pom.xml 2012-08-03 11:57:20.000000000 -0400
@@ -78,6 +78,7 @@
<build>
<plugins>
+ <!--
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>maven-properties-plugin</artifactId>
@@ -95,6 +96,7 @@
</execution>
</executions>
</plugin>
+ -->
<!-- During the unit tests, the test project is copied to the target folder
and the publish mojo is executed on the project. The test project may also

View file

@ -0,0 +1,30 @@
diff --git a/tycho-p2-extras-plugin/pom.xml b/tycho-p2-extras-plugin/pom.xml
index b1f97ed..2721b8d 100644
--- a/tycho-p2-extras-plugin/pom.xml
+++ b/tycho-p2-extras-plugin/pom.xml
@@ -46,8 +46,8 @@
<version>${project.version}</version>
</dependency>
- <dependency>
<!--
+ <dependency>
Workaround 387848 and 348394.
Ideally, we want to be able to run unit/integration tests in three distinct environments
@@ -65,7 +65,6 @@
from remote repositories.
- new snapshots/releases <pluginRepository> in test pom.xml files gives test project access to
tycho-core artifacts
- -->
<groupId>org.apache.maven</groupId>
<artifactId>apache-maven</artifactId>
<version>${maven-version}</version>
@@ -73,6 +72,7 @@
<type>tar.gz</type>
<scope>provided</scope>
</dependency>
+ -->
</dependencies>
<build>

115
tycho-extras.spec Normal file
View file

@ -0,0 +1,115 @@
Name: tycho-extras
Version: 0.16.0
Release: 4%{?dist}
Summary: Additional plugins for Tycho
Group: Development/Libraries
License: EPL
URL: http://eclipse.org/tycho/
Source0: http://git.eclipse.org/c/tycho/org.eclipse.tycho.extras.git/snapshot/tycho-extras-0.16.x.tar.bz2
# maven-properties-plugin is only needed for tests
Patch0: %{name}-no-maven-properties-plugin.patch
Patch1: %{name}-remove-core.patch
Patch2: %{name}-fix-build.patch
Patch3: %{name}-393686.patch
BuildArch: noarch
BuildRequires: jpackage-utils
BuildRequires: java-devel >= 1.5
BuildRequires: jgit
BuildRequires: tycho
Requires: jpackage-utils
Requires: java >= 1.5
Requires: jgit
Requires: tycho
%description
A small set of plugins that work with Tycho to provide additional functionality
when building projects of an OSGi nature.
%package javadoc
Summary: Java docs for %{name}
Group: Documentation
Requires: jpackage-utils
%description javadoc
This package contains the API documentation for %{name}.
%prep
%setup -q -n tycho-extras-0.16.x
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%build
# To run tests, we need :
# maven-properties-plugin (unclear licensing)
mvn-rpmbuild -Dmaven.test.skip=true install javadoc:aggregate
%install
install -d -m 755 %{buildroot}%{_javadir}/%{name}
install -d -m 755 %{buildroot}%{_mavenpomdir}
install -pm 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-main.pom
%add_maven_depmap JPP.%{name}-main.pom -a "org.eclipse.tycho:tycho-extras,org.sonatype.tycho:tycho-extras"
for mod in tycho-{custom-bundle,eclipserun,source-feature,version-bump}-plugin \
tycho-{buildtimestamp,sourceref}-jgit tycho-p2-extras-plugin \
pack200/tycho-pack200{{a,b}-plugin,-impl} \
target-platform-validation-plugin ; do
echo $mod
aid=`basename $mod`
install -pm 644 $mod/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-$aid.pom
install -m 644 $mod/target/$aid-%{version}.jar %{buildroot}%{_javadir}/%{name}/$aid.jar
%add_maven_depmap JPP.%{name}-$aid.pom %{name}/$aid.jar -a "org.eclipse.tycho:$aid,org.sonatype.tycho:$aid"
done
for pommod in pack200; do
echo $pommod
aid=`basename $pommod`
install -pm 644 $pommod/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-$aid.pom
%add_maven_depmap JPP.%{name}-$aid.pom -a "org.eclipse.tycho:$aid,org.sonatype.tycho:$aid"
done
# javadoc
install -dm 755 %{buildroot}%{_javadocdir}/%{name}
cp -pr target/site/api*/* %{buildroot}%{_javadocdir}/%{name}
%files
%{_mavenpomdir}/*
%{_mavendepmapfragdir}/%{name}
%{_javadir}/%{name}
%files javadoc
%{_javadocdir}/%{name}
%changelog
* Wed Feb 20 2013 Roland Grunberg <rgrunber@redhat.com> - 0.16.0-4
- Fix build issues relating to PlexusConfiguration.
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.16.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Thu Dec 13 2012 Roland Grunberg <rgrunber@redhat.com> 0.16.0-3
- Fix upstream Bug 393686.
* Fri Oct 19 2012 Roland Grunberg <rgrunber@redhat.com> 0.16.0-2
- Update to 0.16.0 Release.
* Mon Jul 30 2012 Roland Grunberg <rgrunber@redhat.com> 0.16.0-1.e58861
- Update to 0.16.0 SNAPSHOT.
* Fri Jul 27 2012 Roland Grunberg <rgrunber@redhat.com> 0.15.0-1
- Update to 0.15.0.
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.14.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Tue Apr 16 2012 Roland Grunberg <rgrunber@redhat.com> - 0.14.0-1
- Initial packaging of tycho extras.