Merge pull request #319 from broadinstitute/dr_packaging_system_fail_gracefully_when_bcel_not_installed

Fail gracefully in the packaging system when bcel is not installed
This commit is contained in:
droazen 2013-07-02 13:01:45 -07:00
commit 2e87d09c26
1 changed files with 22 additions and 1 deletions

View File

@ -887,6 +887,27 @@
<fail message="No executable defined. Call a more specific packaging/release target, or define an executable manually" if="no.executable.defined" />
</target>
<target name="require.bcel">
<fileset id="bcel.jar" dir="${user.home}/.ant/lib">
<include name="bcel-*.jar" />
</fileset>
<pathconvert refid="bcel.jar" property="bcel.jar.installed" setonempty="false" />
<fileset id="ant.bcel.jar" dir="${user.home}/.ant/lib">
<include name="ant-apache-bcel-*.jar" />
</fileset>
<pathconvert refid="ant.bcel.jar" property="ant.bcel.jar.installed" setonempty="false" />
<condition property="bcel.installed">
<and>
<isset property="bcel.jar.installed" />
<isset property="ant.bcel.jar.installed" />
</and>
</condition>
<fail unless="bcel.installed"
message="Required bcel libraries for GATK packaging not installed in ${user.home}/.ant/lib/${line.separator}The bcel jar can be found in the lib directory of a GATK clone after compiling, and the ant-apache-bcel jar can be downloaded from here: http://repo1.maven.org/maven2/ant/ant-apache-bcel/1.6.5/ant-apache-bcel-1.6.5.jar${line.separator}Please copy these two jar files to ${user.home}/.ant/lib/" />
</target>
<!-- Unzip all classes from their current locations and assemble them in a staging directory -->
<target name="stage" description="stage files for distribution">
<mkdir dir="${staging.dir}"/>
@ -910,7 +931,7 @@
<!-- Build a package consisting of all supporting files. Don't call this target directly. Call one of the specific packaging targets below -->
<target name="package" depends="require.clean,dist,stage,require.executable" description="bundle up an executable for distribution">
<target name="package" depends="require.clean,require.bcel,dist,stage,require.executable" description="bundle up an executable for distribution">
<mkdir dir="${package.output.dir}" />
<xslt destdir="${package.output.dir}" style="${package.xml.dir}/CreatePackager.xsl" useImplicitFileset="false">
<flattenmapper/>