You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by gi...@credit-suisse.ch on 1999/12/17 12:12:05 UTC
preliminary build.xml
Hi
I've written a simple ant/build.xml for fop. It makes the codegen section
from the Makefile, compiles all java files and make a jar in the build
directory. The build process is much faster with ant. Unfortunately there
are no conditionals in ant so if you do a "build.sh codegen" or a "build.sh
all" the properties and fonts are always build. The codegen section will be
skipped if you do a "build.sh".
Giacomo
--
<?xml version="1.0"?>
<project default="package" basedir=".">
<property name="name" value="fop"/>
<property name="version" value="?.?-dev"/>
<property name="year" value="1999"/>
<property name="build.compiler" value="classic"/>
<property name="debug" value="off"/>
<property name="src.dir" value="./src"/>
<property name="src.codegen" value="./src/codegen"/>
<property name="packages" value="org.apache.fop.*"/>
<property name="build.dir" value="./build"/>
<property name="build.src" value="./build/src"/>
<property name="build.codegen" value="./build/src/codegen"/>
<property name="build.dest" value="./build/classes"/>
<property name="properties.dir" value="org/apache/fop/fo/properties"/>
<property name="fonts.dir" value="org/apache/fop/render/pdf/fonts"/>
<property name="xslt" value="com.jclark.xsl.sax.Driver"/>
<property name="replacestring" value="org/apache/fop"/>
<property name="src.properties.xsl"
value="${src.codegen}/properties.xsl"/>
<property name="properties.xml" value="${build.codegen}/properties.xml"/>
<property name="properties.xsl" value="${build.codegen}/properties.xsl"/>
<property name="src.charlist.xsl"
value="${src.codegen}/code-point-mapping.xsl"/>
<property name="charlist.xml" value="${build.codegen}/charlist.xml"/>
<property name="charlist.xsl"
value="${build.codegen}/code-point-mapping.xsl"/>
<property name="fontfile.xsl" value="${build.codegen}/font-file.xsl"/>
<property name="Courier.xml" value="${build.codegen}/Courier.xml"/>
<property name="Courier-Oblique.xml"
value="${build.codegen}/Courier-Oblique.xml"/>
<property name="Courier-Bold.xml"
value="${build.codegen}/Courier-Bold.xml"/>
<property name="Courier-BoldOblique.xml"
value="${build.codegen}/Courier-BoldOblique.xml"/>
<property name="Helvetica.xml" value="${build.codegen}/Helvetica.xml"/>
<property name="Helvetica-Oblique.xml"
value="${build.codegen}/Helvetica-Oblique.xml"/>
<property name="Helvetica-Bold.xml"
value="${build.codegen}/Helvetica-Bold.xml"/>
<property name="Helvetica-BoldOblique.xml"
value="${build.codegen}/Helvetica-BoldOblique.xml"/>
<property name="Times-Roman.xml"
value="${build.codegen}/Times-Roman.xml"/>
<property name="Times-Italic.xml"
value="${build.codegen}/Times-Italic.xml"/>
<property name="Times-Bold.xml" value="${build.codegen}/Times-Bold.xml"/>
<property name="Times-BoldItalic.xml"
value="${build.codegen}/Times-BoldItalic.xml"/>
<!--
=================================================================== -->
<!-- Prepares the build
-->
<!--
=================================================================== -->
<target name="prepare">
<!-- create directories -->
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.src}"/>
<mkdir dir="${build.dest}"/>
<!-- copy src files -->
<copydir src="${src.dir}" dest="${build.src}"
ignore="Makefile package.html"/>
<mkdir dir="${build.src}/${properties.dir}"/>
<mkdir dir="${build.src}/${fonts.dir}"/>
</target>
<!--
=================================================================== -->
<!-- Generate the source
-->
<!--
=================================================================== -->
<target name="codegen" depends="prepare">
<!-- resetting codegen directory -->
<deltree dir="${build.codegen}"/>
<copydir src="${src.codegen}" dest="${build.codegen}"/>
<replace file="${properties.xsl}"
token="${replacestring}" value="${build.src}/${replacestring}"/>
<replace file="${charlist.xsl}"
token="${replacestring}" value="${build.src}/${replacestring}"/>
<replace file="${fontfile.xsl}"
token="${replacestring}" value="${build.src}/${replacestring}"/>
<!-- generate the java files from xml resources -->
<java class="${xslt}" args="${properties.xml} ${properties.xsl}"/>
<java class="${xslt}" args="${charlist.xml} ${charlist.xsl}"/>
<java class="${xslt}" args="${Courier.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Courier-Oblique.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Courier-Bold.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Courier-BoldOblique.xml}
${fontfile.xsl}"/>
<java class="${xslt}" args="${Helvetica.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Helvetica-Oblique.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Helvetica-Bold.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Helvetica-BoldOblique.xml}
${fontfile.xsl}"/>
<java class="${xslt}" args="${Times-Roman.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Times-Italic.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Times-Bold.xml} ${fontfile.xsl}"/>
<java class="${xslt}" args="${Times-BoldItalic.xml} ${fontfile.xsl}"/>
</target>
<!--
=================================================================== -->
<!-- Compiles the source
-->
<!--
=================================================================== -->
<target name="compile" depends="prepare">
<javac srcdir="${build.src}" destdir="${build.dest}" debug="${debug}"/>
</target>
<!--
=================================================================== -->
<!-- Creates the class
-->
<!--
=================================================================== -->
<target name="package" depends="compile">
<jar jarfile="${build.dir}/${name}.jar" basedir="${build.dest}"
items="org"/>
</target>
<!--
=================================================================== -->
<!-- Make
-->
<!--
=================================================================== -->
<target name="all" depends="codegen,compile"/>
<!--
=================================================================== -->
<!-- Cleans
-->
<!--
=================================================================== -->
<target name="clean">
<deltree dir="${build.dir}"/>
</target>
</project>