extensions/net.sf.basedb.varsearch/trunk/build.xml

Code
Comments
Other
Rev Date Author Line
6107 22 Jan 21 nicklas 1 <?xml version="1.0" encoding="UTF-8"?>
6107 22 Jan 21 nicklas 2 <project 
6107 22 Jan 21 nicklas 3   name="VariantSearch" 
6107 22 Jan 21 nicklas 4   default="build" 
6107 22 Jan 21 nicklas 5   basedir=".">
6107 22 Jan 21 nicklas 6
6107 22 Jan 21 nicklas 7   <!--create this file if you need to override values from properties below -->
6107 22 Jan 21 nicklas 8   <property file="build.properties" />
6107 22 Jan 21 nicklas 9
6107 22 Jan 21 nicklas 10   <!-- variables used -->
6107 22 Jan 21 nicklas 11   <property name="name" value="varsearch" />
7307 28 Aug 23 nicklas 12   <property name="version" value="1.10-dev" />
6107 22 Jan 21 nicklas 13   <property name="src" location="src" description="Location of source files" />
6107 22 Jan 21 nicklas 14   <property name="build" location="build" description="Location of compiled files" />
6107 22 Jan 21 nicklas 15   <property name="dist" location="dist" description="Directory where distribution should be created" />
6107 22 Jan 21 nicklas 16   <property name="jar.name" value="${name}.jar" description="Name of JAR file with the extensions." />
6107 22 Jan 21 nicklas 17   <property name="tar.prefix" value="${name}-${version}" description="Prefix of .tar.gz file for download." />
6107 22 Jan 21 nicklas 18   <property name="tar.name" value="${tar.prefix}.tar.gz" description="Full name of .tar.gz file for download." />
6107 22 Jan 21 nicklas 19   <property name="javac.arg" value="-Xlint:unchecked" />
6107 22 Jan 21 nicklas 20   <property name="javac.release" value="11" />
6107 22 Jan 21 nicklas 21   <property name="javac.encoding" value="UTF-8" />
6107 22 Jan 21 nicklas 22   <property name="depend.base-version" 
7059 13 Mar 23 nicklas 23     value="3.19.8" 
6107 22 Jan 21 nicklas 24     description="The BASE version that this project depends on."
6107 22 Jan 21 nicklas 25   />
6107 22 Jan 21 nicklas 26   <property name="depend.jars" 
6302 11 Jun 21 nicklas 27     value="https://base.thep.lu.se/chrome/site/files/base/jars/${depend.base-version}" 
6107 22 Jan 21 nicklas 28     description="The location of the BASE core JARs that this project depends on."
6107 22 Jan 21 nicklas 29   />
6107 22 Jan 21 nicklas 30
6107 22 Jan 21 nicklas 31   <!-- set up classpath for compiling -->
6107 22 Jan 21 nicklas 32   <path id="classpath">
6107 22 Jan 21 nicklas 33     <fileset dir="lib">
6107 22 Jan 21 nicklas 34       <include name="**/*.jar" />
6107 22 Jan 21 nicklas 35     </fileset>
6107 22 Jan 21 nicklas 36     <fileset dir="META-INF/lib">
6107 22 Jan 21 nicklas 37       <include name="**/*.jar" />
6107 22 Jan 21 nicklas 38     </fileset>
6107 22 Jan 21 nicklas 39   </path>
6107 22 Jan 21 nicklas 40
6107 22 Jan 21 nicklas 41   <target name="init">
6107 22 Jan 21 nicklas 42     <mkdir dir="${build}" />
6107 22 Jan 21 nicklas 43     <mkdir dir="${dist}" />
6107 22 Jan 21 nicklas 44   </target>
6107 22 Jan 21 nicklas 45     
6107 22 Jan 21 nicklas 46   <target name="clean">
6107 22 Jan 21 nicklas 47     <delete failonerror="false" includeemptydirs="true">
6107 22 Jan 21 nicklas 48       <fileset dir="${build}" defaultexcludes="no" />
6107 22 Jan 21 nicklas 49       <fileset dir="${dist}" defaultexcludes="no" />
6107 22 Jan 21 nicklas 50       <fileset dir="lib" includes="base-*.jar" /> 
6107 22 Jan 21 nicklas 51       <fileset file="${jar.name}" />
6107 22 Jan 21 nicklas 52       <fileset file="${tar.name}" />
6107 22 Jan 21 nicklas 53     </delete>
6107 22 Jan 21 nicklas 54   </target>
6107 22 Jan 21 nicklas 55   
6107 22 Jan 21 nicklas 56   <target 
6107 22 Jan 21 nicklas 57     name="dist" 
6107 22 Jan 21 nicklas 58     depends="clean,download-lib,build"
6107 22 Jan 21 nicklas 59     >
6107 22 Jan 21 nicklas 60     <copy todir="${dist}">
6107 22 Jan 21 nicklas 61       <fileset dir="." includes="README,LICENSE,varsearch-config.xml" />
6107 22 Jan 21 nicklas 62       <fileset file="${jar.name}" />
6107 22 Jan 21 nicklas 63     </copy>
6107 22 Jan 21 nicklas 64   </target>
6107 22 Jan 21 nicklas 65   
6107 22 Jan 21 nicklas 66   <target
6107 22 Jan 21 nicklas 67     name="package"
6107 22 Jan 21 nicklas 68     depends="dist"
6107 22 Jan 21 nicklas 69     description="Create binary distribution package"
6107 22 Jan 21 nicklas 70     >
6107 22 Jan 21 nicklas 71     <tar
6107 22 Jan 21 nicklas 72       destfile="${tar.name}"
6107 22 Jan 21 nicklas 73       longfile="gnu"
6107 22 Jan 21 nicklas 74       compression="gzip"
6107 22 Jan 21 nicklas 75       >
6107 22 Jan 21 nicklas 76       <tarfileset
6107 22 Jan 21 nicklas 77         dir="${dist}"
6107 22 Jan 21 nicklas 78         mode="755"
6107 22 Jan 21 nicklas 79         prefix="${tar.prefix}"
6107 22 Jan 21 nicklas 80         preserveLeadingSlashes="true"
6107 22 Jan 21 nicklas 81         >
6107 22 Jan 21 nicklas 82         <include name="**/*.sh" />
6107 22 Jan 21 nicklas 83       </tarfileset>
6107 22 Jan 21 nicklas 84       <tarfileset
6107 22 Jan 21 nicklas 85         dir="${dist}"
6107 22 Jan 21 nicklas 86         prefix="${tar.prefix}"
6107 22 Jan 21 nicklas 87         preserveLeadingSlashes="true"
6107 22 Jan 21 nicklas 88         >
6107 22 Jan 21 nicklas 89         <exclude name="**/*.sh" />
6107 22 Jan 21 nicklas 90       </tarfileset>
6107 22 Jan 21 nicklas 91     </tar>
6107 22 Jan 21 nicklas 92   </target>
6107 22 Jan 21 nicklas 93   
6107 22 Jan 21 nicklas 94   <target 
6107 22 Jan 21 nicklas 95     name="install"
6107 22 Jan 21 nicklas 96     depends="build"
6107 22 Jan 21 nicklas 97     >
6107 22 Jan 21 nicklas 98     <fail unless="base.plugins" message="base.plugins is not set to the path of BASE plug-ins directory." />
6107 22 Jan 21 nicklas 99     <copy todir="${base.plugins}">
6107 22 Jan 21 nicklas 100       <fileset file="${jar.name}" />
6107 22 Jan 21 nicklas 101     </copy>
6107 22 Jan 21 nicklas 102     <echo>Copied '${jar.name}' to '${base.plugins}'.</echo>
6107 22 Jan 21 nicklas 103   </target>
6107 22 Jan 21 nicklas 104
6107 22 Jan 21 nicklas 105   
6107 22 Jan 21 nicklas 106   <target 
6107 22 Jan 21 nicklas 107     name="build"
6107 22 Jan 21 nicklas 108     depends="init,checkjar"
6107 22 Jan 21 nicklas 109     description="Compiles the plugin and put in jar"
6107 22 Jan 21 nicklas 110     >
6107 22 Jan 21 nicklas 111     <mkdir dir="${build}" />
6107 22 Jan 21 nicklas 112     <javac 
6107 22 Jan 21 nicklas 113       encoding="${javac.encoding}" 
6107 22 Jan 21 nicklas 114       srcdir="${src}" 
6107 22 Jan 21 nicklas 115       destdir="${build}" 
6107 22 Jan 21 nicklas 116       debug="true" 
6107 22 Jan 21 nicklas 117       includeantruntime="false"
6107 22 Jan 21 nicklas 118       classpathref="classpath"
6107 22 Jan 21 nicklas 119       release="${javac.release}"
6107 22 Jan 21 nicklas 120       >
6107 22 Jan 21 nicklas 121       <compilerarg value="${javac.arg}" />
6107 22 Jan 21 nicklas 122     </javac>
6107 22 Jan 21 nicklas 123     <jar 
6107 22 Jan 21 nicklas 124       jarfile="${jar.name}" 
6107 22 Jan 21 nicklas 125       manifest="META-INF/MANIFEST.MF"
6107 22 Jan 21 nicklas 126       >
6107 22 Jan 21 nicklas 127       <fileset dir="${build}" />
6107 22 Jan 21 nicklas 128       <fileset dir="." includes="META-INF/**" />
6107 22 Jan 21 nicklas 129       <fileset dir="." includes="resources/**" />
6107 22 Jan 21 nicklas 130     </jar>
6107 22 Jan 21 nicklas 131   </target>
6107 22 Jan 21 nicklas 132   
6107 22 Jan 21 nicklas 133   <target 
6107 22 Jan 21 nicklas 134     name="checkjar"
6107 22 Jan 21 nicklas 135     description="Checks that required BASE JAR files exists"
6107 22 Jan 21 nicklas 136     >
6107 22 Jan 21 nicklas 137     <available classname="net.sf.basedb.core.Application" 
6107 22 Jan 21 nicklas 138       classpathref="classpath" property="base-core" />
6107 22 Jan 21 nicklas 139     <available classname="net.sf.basedb.clients.web.Base" 
6107 22 Jan 21 nicklas 140       classpathref="classpath" property="base-web" />
6107 22 Jan 21 nicklas 141     <fail unless="base-core" message="Can't find base-core-${depend.base-version}.jar in ./lib/compile. Try 'ant download-lib' to download the missing file." />
6107 22 Jan 21 nicklas 142     <fail unless="base-web" message="Can't find base-webclient-${depend.base-version}.jar in ./lib/compile. Try 'ant download-lib' to download the missing file." />
6107 22 Jan 21 nicklas 143     <echo>Found all requried BASE core JAR files.</echo>
6107 22 Jan 21 nicklas 144   </target>
6107 22 Jan 21 nicklas 145   
6107 22 Jan 21 nicklas 146   <target 
6107 22 Jan 21 nicklas 147     name="download-lib"
6107 22 Jan 21 nicklas 148     description="Download required BASE core jar files"
6107 22 Jan 21 nicklas 149     >
6107 22 Jan 21 nicklas 150     <echo>
6107 22 Jan 21 nicklas 151 -------------------------------------------------------    
6107 22 Jan 21 nicklas 152 NOTE! You may specifiy a different download location by 
6107 22 Jan 21 nicklas 153 creating the file './build.properties' and
6107 22 Jan 21 nicklas 154 setting 'depend.jars' to the URL to download from.
6107 22 Jan 21 nicklas 155 -------------------------------------------------------
6107 22 Jan 21 nicklas 156     </echo>
6107 22 Jan 21 nicklas 157     <download-lib file="base-core-${depend.base-version}.jar" />
6107 22 Jan 21 nicklas 158     <download-lib file="base-webclient-${depend.base-version}.jar" />
6107 22 Jan 21 nicklas 159   </target>
6107 22 Jan 21 nicklas 160   
6107 22 Jan 21 nicklas 161   <macrodef name="download-lib" description="Download BASE core JAR files">
6107 22 Jan 21 nicklas 162     <attribute name="file" />
6107 22 Jan 21 nicklas 163     <sequential>
6107 22 Jan 21 nicklas 164       <get 
6107 22 Jan 21 nicklas 165         dest="lib/@{file}" 
6107 22 Jan 21 nicklas 166         src="${depend.jars}/@{file}" 
6107 22 Jan 21 nicklas 167         usetimestamp="true" 
6107 22 Jan 21 nicklas 168         verbose="true"
6107 22 Jan 21 nicklas 169         ignoreerrors="true"
6107 22 Jan 21 nicklas 170       />
6107 22 Jan 21 nicklas 171     </sequential>
6107 22 Jan 21 nicklas 172   </macrodef>  
6107 22 Jan 21 nicklas 173   
6107 22 Jan 21 nicklas 174   <target name="update-version">
6107 22 Jan 21 nicklas 175     <echo>Setting version to: ${version}</echo>
6107 22 Jan 21 nicklas 176     
6149 25 Feb 21 nicklas 177     <echo>VarSearch.java</echo>
6107 22 Jan 21 nicklas 178     <replaceregexp 
6107 22 Jan 21 nicklas 179       file="${src}/net/sf/basedb/varsearch/VarSearch.java"
6107 22 Jan 21 nicklas 180       match="public static final String VERSION = &#34;.*&#34;;"
6107 22 Jan 21 nicklas 181       replace="public static final String VERSION = &#34;${version}&#34;;"
6107 22 Jan 21 nicklas 182       encoding="UTF-8"
6107 22 Jan 21 nicklas 183     />
6107 22 Jan 21 nicklas 184     
6160 04 Mar 21 nicklas 185     <echo>varsearch.js</echo>
6160 04 Mar 21 nicklas 186     <replaceregexp 
6160 04 Mar 21 nicklas 187       file="resources/varsearch.js"
6160 04 Mar 21 nicklas 188       match="varsearch.VERSION = '.*';"
6160 04 Mar 21 nicklas 189       replace="varsearch.VERSION = '${version}';"
6160 04 Mar 21 nicklas 190       encoding="UTF-8"
6160 04 Mar 21 nicklas 191     />
6160 04 Mar 21 nicklas 192     
6107 22 Jan 21 nicklas 193     <echo>extensions.xml</echo>
6107 22 Jan 21 nicklas 194     <replaceregexp 
6107 22 Jan 21 nicklas 195       file="META-INF/extensions.xml"
6107 22 Jan 21 nicklas 196       match="&lt;version&gt;.*&lt;/version&gt;"
6107 22 Jan 21 nicklas 197       replace="&lt;version&gt;${version}&lt;/version&gt;"
6107 22 Jan 21 nicklas 198       encoding="UTF-8"
6107 22 Jan 21 nicklas 199     />
6107 22 Jan 21 nicklas 200     <replaceregexp 
6107 22 Jan 21 nicklas 201       file="META-INF/extensions.xml"
6107 22 Jan 21 nicklas 202       match="&lt;min-base-version&gt;.*&lt;/min-base-version&gt;"
6107 22 Jan 21 nicklas 203       replace="&lt;min-base-version&gt;${depend.base-version}&lt;/min-base-version&gt;"
6107 22 Jan 21 nicklas 204       encoding="UTF-8"
6107 22 Jan 21 nicklas 205     />
6107 22 Jan 21 nicklas 206     
6107 22 Jan 21 nicklas 207     <echo>.classpath</echo>
6107 22 Jan 21 nicklas 208     <replaceregexp 
6107 22 Jan 21 nicklas 209       file=".classpath"
6107 22 Jan 21 nicklas 210       match="base-(\w+)-[0-9.]+jar"
6107 22 Jan 21 nicklas 211       replace="base-\1-${depend.base-version}.jar"
6107 22 Jan 21 nicklas 212       encoding="UTF-8"
6107 22 Jan 21 nicklas 213       byline="true"
6107 22 Jan 21 nicklas 214     />
6107 22 Jan 21 nicklas 215
6107 22 Jan 21 nicklas 216     <echo>Don't forget to commit the changes to the subversion repository!</echo>
6107 22 Jan 21 nicklas 217   </target>
6107 22 Jan 21 nicklas 218
6107 22 Jan 21 nicklas 219 </project>