Fail gracefully in the packaging system when bcel is not installed
Packaging the GATK requires bcel to be installed. Detect when it's not, and output instructions on how to install it.
This commit is contained in:
parent
c3d59d890d
commit
75d1f64416
23
build.xml
23
build.xml
|
|
@ -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/>
|
||||
|
|
|
|||
Loading…
Reference in New Issue