Use build timestamp as OSGi version qualifier

Translate the version qualifier using maven-antrun-plugin since we want
manifest-first and currently cannot rely on Tycho for the JGit build.

Introduce property for Eclipse p2 repository to enable builds against
other Eclipse versions.

Change-Id: I62c4e77ae91fe17f56c5a5338d53828d4e225395
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
This commit is contained in:
Matthias Sohn 2010-01-23 01:03:37 +01:00
parent 86e0c1e036
commit 407fe631ae
7 changed files with 57 additions and 6 deletions

View File

@ -2,6 +2,7 @@
<!--
Copyright (C) 2009, Google Inc.
Copyright (C) 2008, Imran M Yousuf <imyousuf@smartitengineering.com>
Copyright (C) 2010, Matthias Sohn <matthias.sohn@sap.com>
and other copyright owners as documented in the project's IP log.
This program and the accompanying materials are made available
@ -61,6 +62,10 @@
Console based user interface
</description>
<properties>
<translate-qualifier/>
</properties>
<dependencies>
<dependency>
<groupId>org.eclipse.jgit</groupId>
@ -86,7 +91,7 @@
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestFile>META-INF/MANIFEST.MF</manifestFile>
<manifestFile>${bundle-manifest}</manifestFile>
</archive>
</configuration>
</plugin>

View File

@ -2,6 +2,7 @@
<!--
Copyright (C) 2009-2010, Google Inc.
Copyright (C) 2008, Imran M Yousuf <imyousuf@smartitengineering.com>
Copyright (C) 2010, Matthias Sohn <matthias.sohn@sap.com>
and other copyright owners as documented in the project's IP log.
This program and the accompanying materials are made available
@ -61,6 +62,10 @@
Git aware HTTP server implementation.
</description>
<properties>
<translate-qualifier/>
</properties>
<dependencies>
<dependency>
<groupId>org.eclipse.jgit</groupId>
@ -92,7 +97,7 @@
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestFile>META-INF/MANIFEST.MF</manifestFile>
<manifestFile>${bundle-manifest}</manifestFile>
</archive>
</configuration>
</plugin>

View File

@ -2,6 +2,7 @@
<!--
Copyright (C) 2009, Google Inc.
Copyright (C) 2008, Imran M Yousuf <imyousuf@smartitengineering.com>
Copyright (C) 2010, Matthias Sohn <matthias.sohn@sap.com>
and other copyright owners as documented in the project's IP log.
This program and the accompanying materials are made available
@ -61,6 +62,10 @@
Utility classes to support JUnit testing of JGit applications.
</description>
<properties>
<translate-qualifier/>
</properties>
<dependencies>
<dependency>
<groupId>org.eclipse.jgit</groupId>
@ -92,7 +97,7 @@
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestFile>META-INF/MANIFEST.MF</manifestFile>
<manifestFile>${bundle-manifest}</manifestFile>
</archive>
</configuration>
</plugin>

View File

@ -60,6 +60,7 @@
<properties>
<tycho-version>0.6.0</tycho-version>
<eclipse-site>http://download.eclipse.org/releases/galileo</eclipse-site>
</properties>
<modules>
@ -71,7 +72,7 @@
<repository>
<id>galileo</id>
<layout>p2</layout>
<url>http://download.eclipse.org/releases/galileo</url>
<url>${eclipse-site}</url>
</repository>
</repositories>

View File

@ -2,6 +2,7 @@
<!--
Copyright (C) 2009, Google Inc.
Copyright (C) 2008, Imran M Yousuf <imyousuf@smartitengineering.com>
Copyright (C) 2010, Matthias Sohn <matthias.sohn@sap.com>
and other copyright owners as documented in the project's IP log.
This program and the accompanying materials are made available
@ -61,6 +62,10 @@
AWT/Swing based UI
</description>
<properties>
<translate-qualifier/>
</properties>
<dependencies>
<dependency>
<groupId>org.eclipse.jgit</groupId>
@ -86,7 +91,7 @@
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestFile>META-INF/MANIFEST.MF</manifestFile>
<manifestFile>${bundle-manifest}</manifestFile>
</archive>
</configuration>
</plugin>

View File

@ -3,6 +3,7 @@
Copyright (C) 2009, Google Inc.
Copyright (C) 2009, Igor Fedorenko <igor@ifedorenko.com>
Copyright (C) 2008, Imran M Yousuf <imyousuf@smartitengineering.com>
Copyright (C) 2010, Matthias Sohn <matthias.sohn@sap.com>
and other copyright owners as documented in the project's IP log.
This program and the accompanying materials are made available
@ -62,6 +63,10 @@
Repository access and algorithms
</description>
<properties>
<translate-qualifier/>
</properties>
<dependencies>
<dependency>
<groupId>com.jcraft</groupId>
@ -86,7 +91,7 @@
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestFile>META-INF/MANIFEST.MF</manifestFile>
<manifestFile>${bundle-manifest}</manifestFile>
</archive>
</configuration>
</plugin>

25
pom.xml
View File

@ -127,6 +127,9 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<maven.build.timestamp.format>yyyyMMddHHmm</maven.build.timestamp.format>
<bundle-manifest>${project.build.directory}/META-INF/MANIFEST.MF</bundle-manifest>
<jsch-CQ>CQ 3493</jsch-CQ>
<jsch-version>0.1.41</jsch-version>
@ -207,6 +210,28 @@
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>translate-qualifier</id>
<phase>generate-resources</phase>
<configuration>
<tasks unless="${translate-qualifier}">
<copy file="META-INF/MANIFEST.MF" tofile="${bundle-manifest}" overwrite="true"/>
<replace file="${bundle-manifest}">
<replacefilter token=".qualifier" value=".${maven.build.timestamp}"/>
</replace>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>