You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2007/09/24 23:33:37 UTC

svn commit: r578983 - in /jakarta/jmeter: branches/rel-2-2/build.xml trunk/build.xml

Author: sebb
Date: Mon Sep 24 14:33:35 2007
New Revision: 578983

URL: http://svn.apache.org/viewvc?rev=578983&view=rev
Log:
Add svn revision to jar manifests
Insist on jmeter.version and svn.revision definitions when building a distribution
Derive svn revision automatically if possible, but allow command-line definition if necessary

Modified:
    jakarta/jmeter/branches/rel-2-2/build.xml
    jakarta/jmeter/trunk/build.xml

Modified: jakarta/jmeter/branches/rel-2-2/build.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/build.xml?rev=578983&r1=578982&r2=578983&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/build.xml (original)
+++ jakarta/jmeter/branches/rel-2-2/build.xml Mon Sep 24 14:33:35 2007
@@ -31,10 +31,10 @@
       ant docs-all
 
     To build all and package up the files for distribution
-      ant distribution [ -Djmeter.version=vvvv ]
+      ant distribution -Djmeter.version=vvvv [-Dsvn.revision=nnnnn]
 
   	To create a nightly build (separate bin/src/lib jars):
-      ant nightly [ -Djmeter.version=vvvv ]
+      ant nightly [-Dsvn.revision=nnnnn]
   	
     To create tar and tgz of the web-site documentation (docs and api)
       ant site [ -Djmeter.version=vvvv ]
@@ -403,7 +403,9 @@
   	    This is overridden for formal releases.
   	-->
     <property name="jmeter.version" value="2.3.${DSTAMP}"/>
+    <property name="implementation.version" value="${jmeter.version} r${svn.revision}"/>
    	<echo>jmeter.version = ${jmeter.version}</echo>
+   	<echo>implementation.version = ${implementation.version}</echo>
   </target>
 
   <!-- JMeter Javadoc version (own variable is used so can be overriden independently) -->
@@ -411,8 +413,12 @@
 
 	<!-- Get version from SVN status -->
   <target name="init-svnVersion" depends="svnCheck">
-   	<property name="jmeter.version" value="r${svnCheck.revision}"/>
+  	<fail message="Could not get SVN revision" unless="svn.revision"/>
+   	<property name="jmeter.version" value="r${svn.revision}"/>
+  	<!-- Copy the value to avoid duplication of revision in Manifests -->
+    <property name="implementation.version" value="${jmeter.version}"/>
    	<echo>jmeter.version = ${jmeter.version}</echo>
+   	<echo>implementation.version = ${implementation.version}</echo>
   </target>
 
   
@@ -738,7 +744,7 @@
     	<manifest>
            <attribute name="Main-Class" value="org.apache.jmeter.NewDriver"/>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -760,7 +766,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -773,7 +779,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -786,7 +792,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -799,7 +805,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -812,7 +818,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -825,7 +831,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -838,7 +844,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -851,7 +857,7 @@
     	<manifest>
 	   <attribute name="Main-Class" value="org.apache.jmeter.util.BeanShellClient"/>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -864,7 +870,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -877,7 +883,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -890,7 +896,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -903,7 +909,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -916,7 +922,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -929,7 +935,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -944,7 +950,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -956,7 +962,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -977,7 +983,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -1059,17 +1065,22 @@
 		<include name="${velocity.jar}"/>
   	</patternset>
 
-	<!-- Invoke with -Djmeter.version=m.n -Duser.name=xyz@apache.org
+	<!-- Invoke with -Djmeter.version=m.n -Duser.name=xyz@apache.org [-Dsvn.revision=nnnnn]
 	Creates clean build and all documentation
 	Creates runtime and source distributions and site documentation
 	-->
 	<target name="distribution" 
-		depends="clean,install,docs-printable,test,_distribution"
+		depends="svnCheck,check-versions,clean,install,docs-printable,test,_distribution"
 		description="Build JMeter for end-user distribution"/>
 
+	<target name="check-versions">
+		<fail message="jmeter.version must be defined" unless="jmeter.version"/>
+		<fail message="svn.revision must be defined" unless="svn.revision"/>
+	</target>
+
 	<target
 		name="nightly"
-		depends="package,docs-printable,pack-nightly"
+		depends="init-svnVersion,check-versions,package,docs-printable,pack-nightly"
 		description="Build JMeter for nightly dir (package docs-printable pack-nightly)"/>
 		
 	<!-- Internal target -->
@@ -1628,17 +1639,20 @@
     </junitreport>
   </target>
 
-    <target name="svnCheck" description="Use SVN to get the current revision">
-   	  <path id="svn.classpath">
-   	  	<pathelement location="${lib.opt}/svnant.jar"/>
-   	  	<pathelement location="${lib.opt}/svnClientAdapter.jar"/>
-   	  	<pathelement location="${lib.opt}/svnjavahl.jar"/>
-   	  </path>
-      <!-- The task def is nested here so that a missing jar only causes an error if the task is used -->
-   	  <taskdef resource="svntask.properties" classpathref="svn.classpath"/>
+	<path id="svnant.classpath">
+ 	  	<pathelement location="${lib.opt}/svnant.jar"/>
+ 	  	<pathelement location="${lib.opt}/svnClientAdapter.jar"/>
+ 	  	<pathelement location="${lib.opt}/svnjavahl.jar"/>
+ 	</path>
+
+	<available resource="svntask.properties" classpathref="svnant.classpath" property="svnAnt.present"/>
+
+    <target name="svnCheck" description="Use SVN to get the current revision" if="svnAnt.present">
+      <!-- The task def is nested here so that a missing jar does not cause an error -->
+   	  <taskdef resource="svntask.properties" classpathref="svnant.classpath"/>
     	<svn>
           <status path="build.xml" 
-    		revisionProperty="svnCheck.revision"/>
+    		revisionProperty="svn.revision"/>
     	</svn>
     </target>
 </project>

Modified: jakarta/jmeter/trunk/build.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/build.xml?rev=578983&r1=578982&r2=578983&view=diff
==============================================================================
--- jakarta/jmeter/trunk/build.xml (original)
+++ jakarta/jmeter/trunk/build.xml Mon Sep 24 14:33:35 2007
@@ -31,10 +31,10 @@
       ant docs-all
 
     To build all and package up the files for distribution
-      ant distribution [ -Djmeter.version=vvvv ]
+      ant distribution -Djmeter.version=vvvv [-Dsvn.revision=nnnnn]
 
   	To create a nightly build (separate bin/src/lib jars):
-      ant nightly [ -Djmeter.version=vvvv ]
+      ant nightly [-Dsvn.revision=nnnnn]
   	
     To create tar and tgz of the web-site documentation (docs and api)
       ant site [ -Djmeter.version=vvvv ]
@@ -403,7 +403,9 @@
   	    This is overridden for formal releases.
   	-->
     <property name="jmeter.version" value="2.3.${DSTAMP}"/>
+    <property name="implementation.version" value="${jmeter.version} r${svn.revision}"/>
    	<echo>jmeter.version = ${jmeter.version}</echo>
+   	<echo>implementation.version = ${implementation.version}</echo>
   </target>
 
   <!-- JMeter Javadoc version (own variable is used so can be overriden independently) -->
@@ -411,8 +413,12 @@
 
 	<!-- Get version from SVN status -->
   <target name="init-svnVersion" depends="svnCheck">
-   	<property name="jmeter.version" value="r${svnCheck.revision}"/>
+  	<fail message="Could not get SVN revision" unless="svn.revision"/>
+   	<property name="jmeter.version" value="r${svn.revision}"/>
+  	<!-- Copy the value to avoid duplication of revision in Manifests -->
+    <property name="implementation.version" value="${jmeter.version}"/>
    	<echo>jmeter.version = ${jmeter.version}</echo>
+   	<echo>implementation.version = ${implementation.version}</echo>
   </target>
 
   
@@ -748,7 +754,7 @@
     	<manifest>
            <attribute name="Main-Class" value="org.apache.jmeter.NewDriver"/>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -770,7 +776,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -783,7 +789,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -796,7 +802,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -809,7 +815,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -822,7 +828,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -835,7 +841,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -848,7 +854,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -861,7 +867,7 @@
     	<manifest>
 	   <attribute name="Main-Class" value="org.apache.jmeter.util.BeanShellClient"/>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -874,7 +880,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -887,7 +893,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -900,7 +906,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -913,7 +919,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -926,7 +932,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -939,7 +945,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -954,7 +960,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -966,7 +972,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -987,7 +993,7 @@
         <metainf dir="." includes="LICENSE,NOTICE"/>
     	<manifest>
            <attribute name="Built-By" value="${user.name}"/>
-           <attribute name="Implementation-Version" value="${jmeter.version}"/>
+           <attribute name="Implementation-Version" value="${implementation.version}"/>
            <attribute name="X-Compile-Source-JDK" value="${src.java.version}"/>
            <attribute name="X-Compile-Target-JDK" value="${target.java.version}"/>
     	</manifest>
@@ -1069,17 +1075,22 @@
 		<include name="${velocity.jar}"/>
   	</patternset>
 
-	<!-- Invoke with -Djmeter.version=m.n -Duser.name=xyz@apache.org
+	<!-- Invoke with -Djmeter.version=m.n -Duser.name=xyz@apache.org [-Dsvn.revision=nnnnn]
 	Creates clean build and all documentation
 	Creates runtime and source distributions and site documentation
 	-->
 	<target name="distribution" 
-		depends="clean,install,docs-printable,test,_distribution"
+		depends="svnCheck,check-versions,clean,install,docs-printable,test,_distribution"
 		description="Build JMeter for end-user distribution"/>
 
+	<target name="check-versions">
+		<fail message="jmeter.version must be defined" unless="jmeter.version"/>
+		<fail message="svn.revision must be defined" unless="svn.revision"/>
+	</target>
+
 	<target
 		name="nightly"
-		depends="package,docs-printable,pack-nightly"
+		depends="init-svnVersion,check-versions,package,docs-printable,pack-nightly"
 		description="Build JMeter for nightly dir (package docs-printable pack-nightly)"/>
 		
 	<!-- Internal target -->
@@ -1638,20 +1649,20 @@
     </junitreport>
   </target>
 
-    <target name="svnCheck" description="Use SVN to get the current revision">
-   	  <path id="svn.classpath">
-   	  	<pathelement location="${lib.opt}/svnant.jar"/>
-   	  	<pathelement location="${lib.opt}/svnClientAdapter.jar"/>
-   	  	<pathelement location="${lib.opt}/svnjavahl.jar"/>
-   	  </path>
-      <!-- The task def is nested here so that a missing jar only causes an error if the task is used -->
-   	  <taskdef resource="svntask.properties" classpathref="svn.classpath"/>
-    	<svn javahl="true">
+  <path id="svnant.classpath">
+ 	  	<pathelement location="${lib.opt}/svnant.jar"/>
+ 	  	<pathelement location="${lib.opt}/svnClientAdapter.jar"/>
+ 	  	<pathelement location="${lib.opt}/svnjavahl.jar"/>
+ 	</path>
+
+	<available resource="svntask.properties" classpathref="svnant.classpath" property="svnAnt.present"/>
+
+    <target name="svnCheck" description="Use SVN to get the current revision" if="svnAnt.present">
+      <!-- The task def is nested here so that a missing jar does not cause an error -->
+   	  <taskdef resource="svntask.properties" classpathref="svnant.classpath"/>
+    	<svn>
           <status path="build.xml" 
-          	textStatusProperty="testStatus.textStatus"
-    		propStatusProperty="testStatus.propStatus"
-    		lastChangedRevisionProperty="testStatus.lastCommitRevision"
-    		revisionProperty="svnCheck.revision"/>
+    		revisionProperty="svn.revision"/>
     	</svn>
     </target>
 </project>



---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org