Browse Source

tools/version.sh: Update OSGi manifest files

Tag the version number and API range in the OSGi manifest files
whenever we bump the pom.xml files.

Change-Id: I7c38b51f7139c02bef6b0e67d3f9199cbcdc8a39
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
tags/v0.7.0
Shawn O. Pearce 14 years ago
parent
commit
764f1635d4
2 changed files with 57 additions and 2 deletions
  1. 2
    2
      org.eclipse.jgit.packaging/org.eclipse.jgit.updatesite/pom.xml
  2. 55
    0
      tools/version.sh

+ 2
- 2
org.eclipse.jgit.packaging/org.eclipse.jgit.updatesite/pom.xml View File

@@ -57,6 +57,8 @@
<packaging>eclipse-update-site</packaging>

<name>Eclipse JGit Plugin Update Site (Incubation)</name>
<!-- see http://issues.sonatype.org/browse/TYCHO-313 -->
<version>0.6.0</version>

<dependencies>
<dependency>
@@ -89,7 +91,5 @@
</plugin>
</plugins>
</build>
<!-- see http://issues.sonatype.org/browse/TYCHO-313 -->
<version>0.6.0</version>

</project>

+ 55
- 0
tools/version.sh View File

@@ -77,15 +77,70 @@ esac
case "$V" in
*-SNAPSHOT)
POM_V=$V
OSGI_V="${V%%-SNAPSHOT}.qualifier"
;;
*-[1-9]*-g[0-9a-f]*)
POM_V=$(echo "$V" | perl -pe 's/-(\d+-g.*)$/.$1/')
OSGI_V=$(perl -e '
$ARGV[0] =~ /^(\d+)(?:\.(\d+)(?:\.(\d+))?)?-(\d+)-g(.*)$/;
my ($a, $b, $c, $p, $r) = ($1, $2, $3, $4, $5);
$b = '0' unless defined $b;
$c = '0' unless defined $c;

printf "%s.%s.%s.%6.6i_g%s\n", $a, $b, $c, $p, $r;
' "$V")
;;
*)
POM_V=$V
OSGI_V=$V
;;
esac

API_V=$(perl -e '
$ARGV[0] =~ /^(\d+(?:\.\d+(?:\.\d+)?)?)/;
print $1
' "$V")

API_N=$(perl -e '
$ARGV[0] =~ /^(\d+)(?:\.(\d+)(?:\.(\d+))?)?/;
my ($a, $b) = ($1, $2);
$b = 0 unless defined $b;
$b++;
print "$a.$b.0";
' "$API_V")

perl -pi -e '
s/^(Bundle-Version:\s*).*$/${1}'"$OSGI_V"'/;
s/(org.eclipse.jgit.*;version=")[^"[(]*(")/${1}'"$API_V"'${2}/;
s/(org.eclipse.jgit.*;version="\[)[^"]*(\)")/${1}'"$API_V,$API_N"'${2}/;
' $(git ls-files | grep META-INF/MANIFEST.MF)

perl -pi -e '
if ($ARGV ne $old_argv) {
$seen_version = 0;
$old_argv = $ARGV;
}
if (!$seen_version) {
$seen_version = 1 if (!/<\?xml/ &&
s/(version=")[^"]*(")/${1}'"$OSGI_V"'${2}/);
}
' org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml

perl -pi -e '
s{<(version)>.*</\1>}{<${1}>'"$POM_V"'</${1}>};
' org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml

perl -pi -e '
if ($ARGV ne $old_argv) {
$seen_version = 0;
$old_argv = $ARGV;
}
if ($seen_version < 3) {
$seen_version++ if
s{<(version)>.*</\1>}{<${1}>'"$POM_V"'</${1}>};
}
' org.eclipse.jgit.packaging/org.eclipse.jgit.updatesite/pom.xml

perl -pi -e '
if ($ARGV ne $old_argv) {
$seen_version = 0;

Loading…
Cancel
Save