maven-plugins/docbook/plugin.jelly
bwalding 449d07ea32 A giant rip off of the hibernate docbook->pdf/html converter.
It's pretty much a copy and hack to make it fit into maven at present.  
Needs to have customisation added to it (at present it generates hibernate.pdf!)

Have a look in hibernate CVS for example files (which have to be put in src/reference/src in your project)


git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@114587 13f79535-47bb-0310-9956-ffa450edef68
2004-01-15 14:25:48 +00:00

117 lines
4.8 KiB
XML

<?xml version="1.0"?>
<project xmlns:j="jelly:core"
xmlns:ant="jelly:ant">
<!-- ================================================================== -->
<!-- S I M P L E D O C B O O K D O C U M E N T A T I O N -->
<!-- ================================================================== -->
<goal
name="docbook:transform"
prereqs="xdoc:init"
description="Transform any docbook-simple source into xdocs for later use">
<j:set var="genDocs" value="${maven.gen.docs}"/>
${systemScope.setProperty('javax.xml.transform.TransformerFactory','org.apache.xalan.processor.TransformerFactoryImpl')}
<j:set var="dtd" value="${maven.docbook.dtd}"/>
<j:if test="${empty(dtd)}">
<ant:style
basedir="${maven.docbook.src}"
destdir="${genDocs}" extension=".xml"
style="${plugin.resources}/docbook2document.xsl"
includes="**/*.xml, **/*.sgml"
/>
</j:if>
<j:if test="${!empty(dtd)}">
<echo>Using offline DocBook DTD ${maven.docbook.dtd}</echo>
<ant:style
basedir="${maven.docbook.src}"
destdir="${genDocs}" extension=".xml"
style="${plugin.resources}/docbook2document.xsl"
includes="**/*.xml, **/*.sgml">
<ant:xmlcatalog id="cat">
<ant:dtd
publicId="-//OASIS//DTD DocBook XML V4.1.2//EN"
location="${maven.docbook.dtd}"/>
</ant:xmlcatalog>
</ant:style>
</j:if>
</goal>
<goal name="docbook:pdf" description="Compile reference documentation to pdf">
<j:set var="basedir" value="d:/data/dataforge/dataforge-engine"/>
<j:useBean class="org.apache.maven.util.ResourceBean" var="resourceTool"/>
<j:set var="fopdf" value="${resourceTool.findResource('plugin-resources/styles/fopdf.xsl')}"/>
<ant:java classname="com.icl.saxon.StyleSheet" fork="true" dir="${basedir}/src/reference">
<ant:classpath>
<pathelement location="${plugin.getDependencyPath('xalan')}"/>
<pathelement location="${plugin.getDependencyPath('fop')}"/>
<pathelement location="${plugin.getDependencyPath('commons-logging')}"/>
<pathelement location="${plugin.getDependencyPath('avalon-framework')}"/>
<pathelement location="${plugin.getDependencyPath('saxon')}"/>
<pathelement location="${plugin.getDependencyPath('saxon:saxon-dbxsl-extensions')}"/>
</ant:classpath>
<ant:arg value="-o"/>
<ant:arg value="${basedir}/target/pdf/docbook_fop.tmp"/>
<ant:arg value="${basedir}/src/reference/src/index.xml"/>
<ant:arg value="${fopdf}"/>
</ant:java>
<ant:java classname="org.apache.fop.apps.Fop" fork="true" dir="${doc.ref.dir}">
<ant:classpath>
<pathelement location="${plugin.getDependencyPath('xalan')}"/>
<pathelement location="${plugin.getDependencyPath('fop')}"/>
<pathelement location="${plugin.getDependencyPath('commons-logging')}"/>
<pathelement location="${plugin.getDependencyPath('avalon-framework')}"/>
<pathelement location="${plugin.getDependencyPath('batik')}"/>
<pathelement location="${plugin.getDependencyPath('saxon')}"/>
</ant:classpath>
<ant:arg value="${basedir}/target/pdf/docbook_fop.tmp"/>
<ant:arg value="${basedir}/target/pdf/hibernate_reference.pdf"/>
</ant:java>
<ant:delete file="${basedir}/pdf/docbook_fop.tmp"/>
</goal>
<goal name="docbook:html" description="Compile reference documentation to chunked html">
<mkdir dir="${dist.ref.dir}/html/"/>
<ant:java classname="com.icl.saxon.StyleSheet" fork="true" dir="${dist.ref.dir}/html/">
<ant:classpath>
<ant:fileset dir="${basedir}/${doc.ref.dir}/lib">
<ant:include name="**/*.jar"/>
</ant:fileset>
</ant:classpath>
<ant:arg value="${basedir}/${doc.ref.dir}/src/index.xml"/>
<ant:arg value="${basedir}/${doc.ref.dir}/styles/html_chunk.xsl"/>
</ant:java>
</goal>
<goal name="docbook:htmlsingle" description="Compile reference documentation to single html">
<ant:java classname="com.icl.saxon.StyleSheet" fork="true" dir="${doc.ref.dir}">
<ant:classpath>
<fileset dir="${basedir}/${doc.dir}/reference/lib">
<include name="**/*.jar"/>
</fileset>
</ant:classpath>
<ant:arg value="-o"/>
<ant:arg value="${basedir}/${dist.ref.dir}/html_single/index.html"/>
<ant:arg value="${basedir}/${doc.ref.dir}/src/index.xml"/>
<ant:arg value="${basedir}/${doc.ref.dir}/styles/html.xsl"/>
</ant:java>
</goal>
<goal name="docbook:refdoc"
prereqs="docbook:html,docbook:htmlsingle,docbook:pdf"
description="Generate and copy reference documentation">
<ant:copy todir="${dist.ref.dir}">
<ant:fileset dir="${doc.ref.dir}">
<ant:patternset refid="refdoc.files"/>
</ant:fileset>
</ant:copy>
<ant:mkdir dir="${dist.doc.dir}/other"/>
<ant:copy file="${doc.dir}/other/hibernate-quickref.pdf" todir="${dist.doc.dir}/other"/>
</goal>
</project>