-
Notifications
You must be signed in to change notification settings - Fork 4
/
build_demo.xml
112 lines (102 loc) · 5.04 KB
/
build_demo.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<?xml version="1.0" encoding="UTF-8"?>
<project name="build.dita-rdf.dita-ot.plugin" default="package-zip-copy-plugin-demo" basedir=".">
<!-- User properties -->
<property file="build_demo.properties"/>
<condition property="executable" value="dita.bat" else="dita">
<os family="windows"/>
</condition>
<property name="demo-set" value="ditaot-userguide">
<!-- Possibe demo sets:
- ditaot-userguide (the DITA OT user guide)
- oxygen-userguide (the Oxygen Author user guide, will be downloaded by this script, 13 MB. It will take a while :) )
- garage
- oxy-MobilePhone
- oxy-flowers
- oxy-it-book
- ditardf-project (the documentation of the DITA RDF project)
- dita-spec (will probably time out and make your CPU melt)
-->
</property>
<!-- If you don't want the plugin to be integrated automatically (integrator.xml), enter "false" -->
<property name="run.integrator" value="true"/>
<!-- If you want to set a DITAVAL path, that here. It is resolved against ${ditaot.dir} -->
<!--/ User properties -->
<property name="demo.dir" value="${basedir}/demo"/>
<property name="temp.demo.dir" value="${demo.dir}/out/temp"/>
<property name="demo.input.dir" value="${temp.demo.dir}/unzipped/"/>
<property file="demo/properties/${demo-set}.properties"></property>
<property name="demo.zip" value="${demo.dir}/${demo-set}.zip"></property>
<property name="demo.input" value="${demo.input.dir}/${demo.input.path}${demo-set}.ditamap"></property>
<condition property="oxygenUserGuideDownloaded">
<or>
<not>
<equals arg1="${demo-set}" arg2="oxygen-userguide"/>
</not>
<available file="demo/oxygen-userguide.zip"></available>
</or>
</condition>
<property name="plugin-id" value="com.github.colinmaudry.dita2rdf"></property>
<property name="temp.plugin.dir" location="temp"/>
<property name="dita-rdf-ot-plugin-dir" value="dita-ot"/>
<property name="ditaot.classpath" value="${ditaot.dir}/lib;${ditaot.dir}lib/dost.jar;${ditaot.dir}/lib/commons-codec-1.4.jar;${ditaot.dir}/lib/resolver.jar;${ditaot.dir}/lib/icu4j.jar;${ditaot.dir}/lib/xercesImpl.jar;${ditaot.dir}/lib/xml-apis.jar;${ditaot.dir}/lib/saxon/saxon9.jar;${ditaot.dir}/lib/saxon/saxon9-dom.jar;"/>
<target name="package-zip-copy-plugin" depends="package-zip,copy-plugin-dita-ot">
<zip destfile="demo/ditardf-project.zip">
<fileset dir="../documentation/src/" includes="**/*.dita*"/>
</zip>
</target>
<target name="package-zip-copy-plugin-demo" depends="package-zip-copy-plugin,demo">
</target>
<target name="make.temp.dir">
<delete dir="${temp.plugin.dir}"/>
<mkdir dir="${temp.plugin.dir}/${plugin-id}"/>
<copy todir="${temp.plugin.dir}/${plugin-id}" >
<fileset dir="src/" includes="**/*" />
</copy>
</target>
<target name="package-zip" description="Add the DITA RDF plugin files to a ZIP archive." depends="make.temp.dir">
<zip destfile="dita2rdf-ditaot-plugin.zip">
<fileset dir="${temp.plugin.dir}" includes="${plugin-id}/**/*" excludes="**/build.properties"/>
<zipfileset dir="../documentation/" includes="*.pdf,dita-rdf.html,*.chm" prefix="${plugin-id}/documentation"/>
</zip>
</target>
<target name="copy-plugin-dita-ot" description="Copy the DITA RDF plugin to the DITA OT">
<delete dir="${ditaot.dir}/plugins/${plugin-id}"/>
<copy todir="${ditaot.dir}/plugins">
<fileset dir="${temp.plugin.dir}" includes="${plugin-id}/**/*"></fileset>
</copy>
<antcall target="run-integrator"/>
</target>
<target name="run-integrator" if="run.integrator">
<ant dir="${ditaot.dir}" antfile="integrator.xml"/>
</target>
<target name="clean-temp" description="Delete temporary folder" depends="copy-plugin-dita-ot">
<delete dir="${temp.plugin.dir}"/>
</target>
<target name="download-oxygen-userguide" unless="oxygenUserGuideDownloaded">
<get verbose="yes" src="https://github.com/oxygenxml/userguide/archive/master.zip" dest="demo/oxygen-userguide.zip"/>
</target>
<target name="demo">
<delete includeemptydirs="true" verbose="yes" failonerror="false">
<fileset dir="demo/out" includes="**" excludes="*.rdf"/>
</delete>
<antcall target="download-oxygen-userguide"/>
<mkdir dir="${temp.demo.dir}"/>
<mkdir dir="${demo.input.dir}"/>
<unzip src="${demo.zip}" dest="${demo.input.dir}"/>
<move file="${demo.input.dir}/${demo.input.path}${demo.input.filename}" tofile="${demo.input}"/>
<exec dir="${ditaot.dir}" executable="${ditaot.dir}/bin/${executable}">
<env key="DITA_DIR" value="${ditaot.dir}"/>
<env key="CLASSPATH" value="${ditaot.classpath}"/>
<arg prefix="-Djavax.xml.transform.TransformerFactory=" value="net.sf.saxon.TransformerFactoryImpl"/>
<arg line="-input ${demo.input}"/>
<arg line="-output ${output.dir}"/>
<arg line="-temp ${temp.demo.dir}/${demo-set}"/>
<arg prefix="-Dclean.temp=" value="${clean.temp}"/>
<arg line="-format rdf"/>
<arg line="-verbose"/>
<arg prefix="-Dargs.debug=" value="0"/>
<!--<arg line="-filter ${demo.input.dir}${demo.input.path}editor.ditaval"/>-->
<arg prefix="-Dargs.buildBrowser=" value="${build.browser}"/>
</exec>
</target>
</project>