build_general.xml 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. <?xml version="1.0" encoding="UTF-8"?><!-- (c) Copyright IBM Corp. 2006 All Rights Reserved. hosted on
  2. Sourceforge.net. See the accompanying license.txt file for
  3. applicable licenses.--><!-- (c) Copyright IBM Corp. 2006 All Rights Reserved. --><project xmlns:dita="http://dita-ot.sourceforge.net" name="build_generaltargets">
  4. <target name="xhtml.init">
  5. <dita-ot-fail id="DOTA007E">
  6. <condition>
  7. <and>
  8. <isset property="args.ftr"/>
  9. <not>
  10. <available file="${args.ftr}" type="file"/>
  11. </not>
  12. </and>
  13. </condition>
  14. <param name="1" value="${args.ftr}"/>
  15. </dita-ot-fail>
  16. <dita-ot-fail id="DOTA008E">
  17. <condition>
  18. <and>
  19. <isset property="args.hdr"/>
  20. <not>
  21. <available file="${args.hdr}" type="file"/>
  22. </not>
  23. </and>
  24. </condition>
  25. <param name="1" value="${args.hdr}"/>
  26. </dita-ot-fail>
  27. <dita-ot-fail id="DOTA009E">
  28. <condition>
  29. <and>
  30. <isset property="args.hdf"/>
  31. <not>
  32. <available file="${args.hdf}" type="file"/>
  33. </not>
  34. </and>
  35. </condition>
  36. <param name="1" value="${args.hdf}"/>
  37. </dita-ot-fail>
  38. <!-- begin to check and init css relevant properties -->
  39. <condition property="user.csspath.url">
  40. <or>
  41. <contains string="${args.csspath}" substring="http://"/>
  42. <contains string="${args.csspath}" substring="https://"/>
  43. </or>
  44. </condition>
  45. <condition property="args.csspath.absolute">
  46. <isabsolute path="${args.csspath}"/>
  47. </condition>
  48. <!-- Set the csspath as default empty directory when there is no user
  49. input csspath or user input csspath is a local absolute path. -->
  50. <condition property="user.csspath" value="">
  51. <or>
  52. <not>
  53. <isset property="args.csspath"/>
  54. </not>
  55. <isset property="args.csspath.absolute"/>
  56. </or>
  57. </condition>
  58. <condition property="user.csspath" value="${args.csspath}/">
  59. <not>
  60. <isset property="user.csspath"/>
  61. </not>
  62. </condition>
  63. <condition property="args.css.real" value="${args.cssroot}${file.separator}${args.css}">
  64. <isset property="args.cssroot"/>
  65. </condition>
  66. <condition property="args.css.real" value="${args.css}">
  67. <not>
  68. <isset property="args.cssroot"/>
  69. </not>
  70. </condition>
  71. <available file="${args.css.real}" property="args.css.present" type="file"/>
  72. <basename property="args.css.file.temp" file="${args.css}"/>
  73. <condition property="args.css.file" value="${args.css.file.temp}">
  74. <or>
  75. <isset property="args.css.present"/>
  76. <isset property="user.csspath.url"/>
  77. </or>
  78. </condition>
  79. <!-- end to check and init css relevant parameters -->
  80. <condition property="out.ext" value=".html">
  81. <not>
  82. <isset property="out.ext"/>
  83. </not>
  84. </condition>
  85. <condition property="html-version" value="xhtml">
  86. <not>
  87. <isset property="html-version"/>
  88. </not>
  89. </condition>
  90. <condition property="args.xsl" value="${dita.plugin.org.dita.xhtml.dir}/xsl/dita2${html-version}.xsl">
  91. <not>
  92. <isset property="args.xsl"/>
  93. </not>
  94. </condition>
  95. <makeurl file="${dita.input.valfile}" property="dita.input.valfile.url" validate="no"/>
  96. <!-- Set to "true" if you get out-of-memory errors during preprocess
  97. while processing very large (thousands of files) document sets. -->
  98. <condition property="dita.xhtml.reloadstylesheet" value="false">
  99. <not><isset property="dita.xhtml.reloadstylesheet"/></not>
  100. </condition>
  101. <antcall target="output-css-warn-message"/>
  102. </target>
  103. <target name="output-css-warn-message" if="args.csspath.absolute">
  104. <dita-ot-echo id="DOTA006W"/>
  105. </target>
  106. <target name="xhtml.topics" depends="xhtml.init, xhtml.image-metadata, dita.topics.html.common, dita.inner.topics.html.common"/>
  107. <target name="xhtml.image-metadata" depends="xhtml.image-metadata-check" unless="xhtml.image-metadata.skip" description="Read image metadata">
  108. <pipeline message="Read image metadata." taskname="image-metadata" tempdir="${dita.temp.dir}">
  109. <module class="org.dita.dost.module.ImageMetadataModule">
  110. <param name="outputdir" location="${output.dir}"/>
  111. </module>
  112. </pipeline>
  113. </target>
  114. <target name="xhtml.image-metadata-check">
  115. <condition property="xhtml.image-metadata.skip">
  116. <isset property="noImagelist"/>
  117. </condition>
  118. </target>
  119. <!--requirement 3, old solution-->
  120. <macrodef name="topics.html">
  121. <element name="params" optional="true" implicit="true"/>
  122. <sequential>
  123. <xslt basedir="${dita.temp.dir}" destdir="${output.dir}" includesfile="${dita.temp.dir}${file.separator}${fullditatopicfile}" reloadstylesheet="${dita.xhtml.reloadstylesheet}" classpathref="dost.class.path" extension="${out.ext}" style="${args.xsl}" filenameparameter="FILENAME" filedirparameter="FILEDIR">
  124. <excludesfile name="${dita.temp.dir}${file.separator}${resourceonlyfile}" if="resourceonlyfile"/>
  125. <param name="TRANSTYPE" expression="${transtype}"/>
  126. <param name="FILTERFILE" expression="${dita.input.valfile.url}" if="dita.input.valfile"/>
  127. <param name="CSS" expression="${args.css.file}" if="args.css.file"/>
  128. <param name="CSSPATH" expression="${user.csspath}" if="user.csspath"/>
  129. <param name="HDF" expression="${args.hdf}" if="args.hdf"/>
  130. <param name="HDR" expression="${args.hdr}" if="args.hdr"/>
  131. <param name="FTR" expression="${args.ftr}" if="args.ftr"/>
  132. <param name="DRAFT" expression="${args.draft}" if="args.draft"/>
  133. <param name="ARTLBL" expression="${args.artlbl}" if="args.artlbl"/>
  134. <param name="GENERATE-TASK-LABELS" expression="${args.gen.task.lbl}" if="args.gen.task.lbl"/>
  135. <param name="PRESERVE-DITA-CLASS" expression="${args.xhtml.classattr}" if="args.xhtml.classattr"/>
  136. <param name="NOPARENTLINK" expression="${args.hide.parent.link}" if="args.hide.parent.link"/>
  137. <param name="include.rellinks" expression="${include.rellinks}"/>
  138. <param name="BREADCRUMBS" expression="${args.breadcrumbs}" if="args.breadcrumbs"/>
  139. <param name="INDEXSHOW" expression="${args.indexshow}" if="args.indexshow"/>
  140. <param name="genDefMeta" expression="${args.gen.default.meta}" if="args.gen.default.meta"/>
  141. <param name="OUTEXT" expression="${out.ext}" if="out.ext"/>
  142. <param name="BASEDIR" expression="${basedir}"/>
  143. <param name="OUTPUTDIR" expression="${output.dir}"/>
  144. <param name="DBG" expression="${args.debug}" if="args.debug"/>
  145. <param name="defaultLanguage" expression="${default.language}"/>
  146. <params/>
  147. <xmlcatalog refid="dita.catalog"/>
  148. </xslt>
  149. </sequential>
  150. </macrodef>
  151. <target name="dita.topics.html.common" unless="noTopic" if="old.transform">
  152. <topics.html>
  153. </topics.html>
  154. </target>
  155. <!--To generate&copy inner files-->
  156. <!--requirement 1,2-->
  157. <target name="dita.inner.topics.html.common" unless="noTopic" if="inner.transform">
  158. <topics.html>
  159. <!--New,To generate&copy all dita files in the inputmap.dir,not all files in dita.temp.dir -->
  160. <mapper type="regexp" from="^(${tempdirToinputmapdir.relative.value})(.*?)(\.(\w+))$$" to="\2${out.ext}"/>
  161. </topics.html>
  162. </target>
  163. </project>