build_preprocess.xml 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507
  1. <?xml version="1.0" encoding="UTF-8"?><!--
  2. This file is part of the DITA Open Toolkit project.
  3. Copyright 2006 IBM Corporation
  4. See the accompanying LICENSE file for applicable license.
  5. --><project xmlns:dita="http://dita-ot.sourceforge.net" xmlns:if="ant:if" xmlns:unless="ant:unless" name="ditaot-preprocess">
  6. <!-- Set to "true" if you get out-of-memory errors during preprocess
  7. while processing very large (thousands of files) document sets. -->
  8. <condition property="dita.preprocess.reloadstylesheet" value="${conserve-memory}">
  9. <and>
  10. <not><isset property="dita.preprocess.reloadstylesheet"/></not>
  11. <isset property="conserve-memory"/>
  12. </and>
  13. </condition>
  14. <target name="preprocess" depends="preprocess.init,ditaval-merge,gen-list,debug-filter,mapref,branch-filter,keyref,copy-to,conrefpush,conref,profile,topic-fragment,chunk,move-meta-entries,maplink,topicpull,clean-map,copy-files" description="Preprocessing ended"/>
  15. <target name="preprocess.init">
  16. <dita-ot-fail id="DOTA002F">
  17. <condition>
  18. <not><isset property="args.input"/></not>
  19. </condition>
  20. </dita-ot-fail>
  21. <basename property="dita.input.filename" file="${args.input}"/>
  22. <pathconvert property="dita.map.filename.root">
  23. <path path="${dita.input.filename}"/>
  24. <chainedmapper>
  25. <mapper type="flatten"/>
  26. <mapper type="regexp" from="^(.+)(\..+?)$$" to="\1"/>
  27. </chainedmapper>
  28. </pathconvert>
  29. <property name="dita.topic.filename.root" value="${dita.map.filename.root}"/>
  30. <echo level="info">*****************************************************************</echo>
  31. <echo level="info">* input = ${args.input}</echo>
  32. <echo level="info">*****************************************************************</echo>
  33. </target>
  34. <!-- clean-temp
  35. Remove anything in the ${dita.temp.dir} directory before starting. -->
  36. <target name="clean-temp" unless="clean-temp.skip" depends="" description="Clean temp directory">
  37. <delete includeemptydirs="true" failonerror="no">
  38. <fileset dir="${dita.temp.dir}"/>
  39. </delete>
  40. </target>
  41. <target name="ditaval-merge" depends="" description="Merge DITAVAL files into temporary file">
  42. <pipeline message="Preprocess and merge ditavals" taskname="ditaval-merge" if:set="args.filter">
  43. <module class="org.dita.dost.module.MergeDitavalModule">
  44. <param name="ditaval" value="${args.filter}"/>
  45. <param name="ditadir" location="${dita.dir}"/>
  46. </module>
  47. </pipeline>
  48. </target>
  49. <!-- gen-list
  50. Create the manifest files listing which files are referenced by the input file (even indirectly). -->
  51. <target name="gen-list" depends="" unless="preprocess.gen-list.skip" description="Generate file list">
  52. <pipeline message="Generate list." taskname="gen-list" inputmap="${args.input}">
  53. <module class="org.dita.dost.module.GenMapAndTopicListModule">
  54. <param name="inputdir" location="${args.input.dir}" if:set="args.input.dir"/>
  55. <param name="ditadir" location="${dita.dir}"/>
  56. <param name="validate" value="${validate}"/>
  57. <param name="generatecopyouter" value="${generate.copy.outer}"/>
  58. <param name="outercontrol" value="${outer.control}"/>
  59. <param name="onlytopicinmap" value="${onlytopic.in.map}"/>
  60. <param name="crawl" value="${link-crawl}" if:set="link-crawl"/>
  61. <param name="outputdir" location="${dita.output.dir}"/>
  62. <param name="transtype" value="${transtype}"/>
  63. <param name="gramcache" value="${args.grammar.cache}"/>
  64. <param name="setsystemid" value="${args.xml.systemid.set}"/>
  65. <param name="profiling.enable" value="${filter-on-parse}" unless:set="filter-on-parse"/>
  66. <param name="generate-debug-attributes" value="${generate-debug-attributes}" if:set="generate-debug-attributes"/>
  67. <param name="processing-mode" value="${processing-mode}" if:set="processing-mode"/>
  68. </module>
  69. </pipeline>
  70. </target>
  71. <!-- debug-filter
  72. Copy input files to ${dita.temp.dir} tree.
  73. While copying, populate default attributes like @class,
  74. add @xtrf and @xtrc and filter out elements according to valfile, if any. -->
  75. <target name="debug-filter" depends="" unless="preprocess.debug-filter.skip" description="Debug and filter input files">
  76. <pipeline message="Debug and filtering." taskname="filter">
  77. <module class="org.dita.dost.module.DebugAndFilterModule">
  78. <param name="ditadir" location="${dita.dir}"/>
  79. <param name="validate" value="${validate}"/>
  80. <param name="transtype" value="${transtype}"/>
  81. <param name="gramcache" value="${args.grammar.cache}"/>
  82. <param name="setsystemid" value="${args.xml.systemid.set}"/>
  83. <param name="profiling.enable" value="${filter-on-parse}" unless:set="filter-on-parse"/>
  84. <param name="generate-debug-attributes" value="${generate-debug-attributes}" if:set="generate-debug-attributes"/>
  85. <param name="processing-mode" value="${processing-mode}" if:set="processing-mode"/>
  86. </module>
  87. </pipeline>
  88. <!-- generate list files -->
  89. <job-helper file="canditopics.list" property="canditopicslist"/>
  90. <job-helper file="conref.list" property="conreflist"/>
  91. <job-helper file="conreftargets.list" property="conreftargetslist"/>
  92. <job-helper file="copytosource.list" property="copytosourcelist"/>
  93. <job-helper file="fullditamap.list" property="fullditamaplist"/>
  94. <job-helper file="fullditamapandtopic.list" property="fullditamapandtopiclist"/>
  95. <job-helper file="fullditatopic.list" property="fullditatopiclist"/>
  96. <job-helper file="hrefditatopic.list" property="hrefditatopiclist"/>
  97. <job-helper file="hreftargets.list" property="hreftargetslist"/>
  98. <!-- Deprecated since 2.1 -->
  99. <job-helper file="html.list" property="htmllist"/>
  100. <!-- Deprecated since 2.1 -->
  101. <job-helper file="image.list" property="imagelist"/>
  102. <job-helper file="outditafiles.list" property="outditafileslist"/>
  103. <job-helper file="resourceonly.list" property="resourceonlylist"/>
  104. <job-helper file="resourceonly.list" property="resourceonlylist"/>
  105. <job-helper file="subjectscheme.list" property="subjectschemelist"/>
  106. <job-helper file="subtargets.list" property="subtargetslist"/>
  107. <job-helper file="user.input.file.list" property="user.input.file"/>
  108. <job-property dir="${dita.temp.dir}"/>
  109. <property name="outditafilesfile" value="outditafiles.list"/>
  110. <property name="fullditamapandtopicfile" value="fullditamapandtopic.list"/>
  111. <property name="fullditatopicfile" value="fullditatopic.list"/>
  112. <property name="fullditamapfile" value="fullditamap.list"/>
  113. <property name="hrefditatopicfile" value="hrefditatopic.list"/>
  114. <!-- Deprecated since 2.3 -->
  115. <property name="conreffile" value="conref.list"/>
  116. <!-- Deprecated since 2.1 -->
  117. <property name="imagefile" value="image.list"/>
  118. <!-- Deprecated since 2.1 -->
  119. <property name="htmlfile" value="html.list"/>
  120. <property name="hreftargetsfile" value="hreftargets.list"/>
  121. <property name="canditopicsfile" value="canditopics.list"/>
  122. <property name="subjectschemefile" value="subjectscheme.list"/>
  123. <property name="conreftargetsfile" value="conreftargets.list"/>
  124. <property name="copytosourcefile" value="copytosource.list"/>
  125. <property name="subtargetsfile" value="subtargets.list"/>
  126. <property name="resourceonlyfile" value="resourceonly.list"/>
  127. <dirname property="_dita.map.output.dir" file="${dita.output.dir}/${user.input.file}"/>
  128. <dirname property="_dita.map.temp.dir" file="${dita.temp.dir}/${user.input.file}"/>
  129. <property name="dita.map.output.dir" location="${_dita.map.output.dir}/${uplevels}"/>
  130. <condition property="noMap">
  131. <length file="${dita.temp.dir}/${fullditamapfile}" length="0"/>
  132. </condition>
  133. </target>
  134. <!-- profile -->
  135. <target name="profile" depends="profile-check" unless="preprocess.profile.skip" description="Profile input files">
  136. <pipeline message="Profile filtering." taskname="profile" inputmap="${args.input}">
  137. <module class="org.dita.dost.module.FilterModule">
  138. <ditafileset format="dita"/>
  139. <ditafileset format="ditamap"/>
  140. <!--param name="ditadir" location="${dita.dir}"/-->
  141. <param name="ditaval" location="${dita.input.valfile}" if:set="dita.input.valfile"/>
  142. <!--param name="inputdir" location="${args.input.dir}" if:set="args.input.dir"/-->
  143. <!--param name="outputdir" location="${dita.output.dir}"/-->
  144. <!--param name="setsystemid" value="${args.xml.systemid.set}"/-->
  145. <param name="transtype" value="${transtype}"/>
  146. </module>
  147. </pipeline>
  148. <!-- update list files -->
  149. <job-helper file="fullditatopic.list" property="fullditatopiclist"/>
  150. <job-helper file="fullditamap.list" property="fullditamaplist"/>
  151. <job-helper file="fullditamapandtopic.list" property="fullditamapandtopiclist"/>
  152. <job-helper file="resourceonly.list" property="resourceonlylist"/>
  153. <job-helper file="copytosource.list" property="copytosourcelist"/>
  154. <job-property dir="${dita.temp.dir}"/>
  155. <condition property="noTopic">
  156. <length file="${dita.temp.dir}/${fullditatopicfile}" length="0"/>
  157. </condition>
  158. </target>
  159. <target name="profile-check">
  160. <condition property="preprocess.profile.skip">
  161. <!--not>
  162. <isset property="dita.input.valfile"/>
  163. </not-->
  164. <istrue value="${filter-on-parse}"/>
  165. </condition>
  166. </target>
  167. <target name="branch-filter">
  168. <pipeline taskname="branch-filter" message="Filter branches">
  169. <module class="org.dita.dost.module.BranchFilterModule"/>
  170. </pipeline>
  171. </target>
  172. <!-- conref push
  173. Push information to the specified target -->
  174. <target name="conrefpush" depends="" unless="preprocess.conrefpush.skip" description="Resolve conref push">
  175. <pipeline message="Resolve conref push." taskname="conref-push">
  176. <module class="org.dita.dost.module.ConrefPushModule">
  177. <ditafileset format="dita"/>
  178. <ditafileset format="ditamap"/>
  179. </module>
  180. </pipeline>
  181. <job-helper file="conref.list" property="conreflist"/>
  182. </target>
  183. <!-- move-meta-entries
  184. Push information from <topicmeta> in the map into the corresponding topics and
  185. pull metadata (such as navtitle) into the map from the referenced topics. -->
  186. <target name="move-meta-entries" depends="" unless="preprocess.move-meta-entries.skip" description="Move metadata entries">
  187. <pipeline message="Move metadata entries." taskname="move-meta" inputmap="${user.input.file}">
  188. <module class="org.dita.dost.module.MoveMetaModule">
  189. <param name="style" location="${dita.plugin.org.dita.base.dir}/xsl/preprocess/mappull.xsl"/>
  190. <param name="conserve-memory" expression="${conserve-memory}" if:set="conserve-memory"/>
  191. </module>
  192. </pipeline>
  193. </target>
  194. <!-- conref
  195. Pull elements referenced by conref into their correct place. -->
  196. <target name="conref" depends="conref-check" unless="preprocess.conref.skip" description="Resolve conref in input files">
  197. <condition property="dita.preprocess.reloadstylesheet.conref" value="${dita.preprocess.reloadstylesheet}">
  198. <not><isset property="dita.preprocess.reloadstylesheet.conref"/></not>
  199. </condition>
  200. <makeurl property="exportfile.url" file="${dita.temp.dir}/export.xml" validate="false"/>
  201. <pipeline message="Resolve conref in input files" taskname="conref">
  202. <xslt basedir="${dita.temp.dir}" reloadstylesheet="${dita.preprocess.reloadstylesheet.conref}" style="${dita.plugin.org.dita.base.dir}/xsl/preprocess/conref.xsl" filenameparameter="file-being-processed">
  203. <ditafileset conref="true"/>
  204. <param name="EXPORTFILE" expression="${exportfile.url}"/>
  205. <param name="TRANSTYPE" expression="${transtype}"/>
  206. <xmlcatalog refid="dita.catalog"/>
  207. </xslt>
  208. </pipeline>
  209. </target>
  210. <!-- Deprecated since 2.3 -->
  211. <target name="conref-check">
  212. </target>
  213. <target name="topic-fragment" depends="" description="Normalize same topic fragment identifiers and table column names, and resolve coderef">
  214. <pipeline message="Resolve topic fragment." taskname="topic-fragment">
  215. <sax format="dita">
  216. <filter class="org.dita.dost.writer.TopicFragmentFilter">
  217. <param name="attributes" value="href"/>
  218. </filter>
  219. <filter class="org.dita.dost.writer.NormalizeTableFilter">
  220. <param name="processing-mode" value="${processing-mode}" if:set="processing-mode"/>
  221. </filter>
  222. <filter class="org.dita.dost.writer.CoderefResolver" unless:set="preprocess.coderef.skip"/>
  223. <filter class="org.dita.dost.writer.NormalizeCodeblock" unless:set="preprocess.normalize-codeblock.skip"/>
  224. </sax>
  225. </pipeline>
  226. </target>
  227. <!-- coderef -->
  228. <!-- Deprecated since 2.3 -->
  229. <target name="coderef" unless="preprocess.coderef.skip" description="Resolve coderef in input files">
  230. <echo level="warn">WARN: Coderef target has been merged with topic-fragment and is deprecated.</echo>
  231. </target>
  232. <!-- mapref
  233. Produce a logical super-map from the map references
  234. (topicref with format="ditamap") in the input map. -->
  235. <target name="mapref" depends="mapref-check" unless="preprocess.mapref.skip" description="Resolve mapref in ditamap">
  236. <condition property="dita.preprocess.reloadstylesheet.mapref" value="${dita.preprocess.reloadstylesheet}">
  237. <not><isset property="dita.preprocess.reloadstylesheet.mapref"/></not>
  238. </condition>
  239. <dirname property="mapref.workdir" file="${dita.temp.dir}/${user.input.file}"/>
  240. <pipeline message="Resolve mapref in ditamap" taskname="mapref">
  241. <module class="org.dita.dost.module.MaprefModule">
  242. <param name="style" location="${dita.plugin.org.dita.base.dir}/xsl/preprocess/mapref.xsl"/>
  243. <ditafileset format="ditamap"/>
  244. </module>
  245. </pipeline>
  246. </target>
  247. <target name="mapref-check">
  248. <condition property="preprocess.mapref.skip">
  249. <isset property="noMap"/>
  250. </condition>
  251. </target>
  252. <!-- keyref
  253. Resolve keyref using key definition in ditamap-->
  254. <target name="keyref" depends="" unless="preprocess.keyref.skip" description="Resolve keyref">
  255. <pipeline message="Resolve keyref." taskname="keyref">
  256. <module class="org.dita.dost.module.KeyrefModule">
  257. <param name="transtype" value="${transtype}"/>
  258. </module>
  259. </pipeline>
  260. <pipeline message="Resolve mapref in ditamap" taskname="mapref">
  261. <xslt basedir="${dita.temp.dir}" reloadstylesheet="${dita.preprocess.reloadstylesheet.mapref}" style="${dita.plugin.org.dita.base.dir}/xsl/preprocess/mapref.xsl" filenameparameter="file-being-processed">
  262. <ditafileset format="ditamap"/>
  263. <param name="TRANSTYPE" expression="${transtype}"/>
  264. <param name="child-topicref-warning" expression="false"/>
  265. <param name="keep-submap-href" expression="false"/>
  266. <xmlcatalog refid="dita.catalog"/>
  267. </xslt>
  268. </pipeline>
  269. </target>
  270. <target name="copy-to">
  271. <pipeline message="Resolve copy-to." taskname="copy-to">
  272. <module class="org.dita.dost.module.CopyToModule">
  273. <param name="force-unique" value="${force-unique}" if:set="force-unique"/>
  274. </module>
  275. </pipeline>
  276. </target>
  277. <!-- mappull
  278. Pull metadata (such as navtitle) into the map from the referenced topics. -->
  279. <!-- Deprecated in 2.2 -->
  280. <target name="mappull" depends="mappull-check" unless="preprocess.mappull.skip" description="Pull the navtitle and topicmeta from topics to ditamap">
  281. <echo level="warn">WARN: Mappull target has been merged with move-meta-entries and is deprecated.</echo>
  282. </target>
  283. <!-- Deprecated in 2.2 -->
  284. <target name="mappull-check">
  285. <condition property="preprocess.mappull.skip">
  286. <isset property="noMap"/>
  287. </condition>
  288. </target>
  289. <!-- chunk
  290. Assemble virtual supertopics based on chunk attribute in map. -->
  291. <target name="chunk" depends="chunk-check" unless="preprocess.chunk.skip" description="Process chunks">
  292. <pipeline message="Process chunks." taskname="chunk" inputmap="${user.input.file}">
  293. <module class="org.dita.dost.module.ChunkModule">
  294. <param name="transtype" value="${transtype}"/>
  295. <param name="root-chunk-override" value="${root-chunk-override}" if:set="root-chunk-override"/>
  296. </module>
  297. </pipeline>
  298. <job-helper file="fullditatopic.list" property="fullditatopiclist"/>
  299. <job-helper file="fullditamap.list" property="fullditamaplist"/>
  300. <job-helper file="fullditamapandtopic.list" property="fullditamapandtopiclist"/>
  301. <job-helper file="resourceonly.list" property="resourceonlylist"/>
  302. <job-helper file="copytosource.list" property="copytosourcelist"/>
  303. <job-property dir="${dita.temp.dir}"/>
  304. <condition property="noTopic">
  305. <length file="${dita.temp.dir}/${fullditatopicfile}" length="0"/>
  306. </condition>
  307. </target>
  308. <target name="chunk-check">
  309. <condition property="preprocess.chunk.skip">
  310. <isset property="noMap"/>
  311. </condition>
  312. </target>
  313. <!-- maplink
  314. Collect all links from maps and push them into topics. -->
  315. <target name="maplink" depends="maplink-check" unless="preprocess.maplink.skip" description="Find and generate related link information">
  316. <condition property="dita.preprocess.reloadstylesheet.maplink" value="${dita.preprocess.reloadstylesheet}">
  317. <not><isset property="dita.preprocess.reloadstylesheet.maplink"/></not>
  318. </condition>
  319. <pipeline message="Move related links" taskname="maplink" inputmap="${user.input.file}">
  320. <module class="org.dita.dost.module.MoveLinksModule">
  321. <param name="style" location="${dita.plugin.org.dita.base.dir}/xsl/preprocess/maplink.xsl"/>
  322. <param name="include.rellinks" expression="${include.rellinks}" if:set="include.rellinks"/>
  323. <!--dita:extension id="dita.preprocess.maplink.param" behavior="org.dita.dost.platform.InsertAction"/-->
  324. </module>
  325. </pipeline>
  326. </target>
  327. <target name="maplink-check">
  328. <condition property="preprocess.maplink.skip">
  329. <isset property="noMap"/>
  330. </condition>
  331. </target>
  332. <!-- topicpull
  333. Populate link text for links within topics (xref, link). -->
  334. <target name="topicpull" depends="topicpull-check" unless="preprocess.topicpull.skip" description="Pull metadata for link and xref element">
  335. <condition property="dita.preprocess.reloadstylesheet.topicpull" value="${dita.preprocess.reloadstylesheet}">
  336. <not><isset property="dita.preprocess.reloadstylesheet.topicpull"/></not>
  337. </condition>
  338. <pipeline message="Pull metadata for link and xref element" taskname="topicpull">
  339. <xslt basedir="${dita.temp.dir}" reloadstylesheet="${dita.preprocess.reloadstylesheet.topicpull}" style="${dita.plugin.org.dita.base.dir}/xsl/preprocess/topicpull.xsl">
  340. <ditafileset format="dita" processingRole="normal"/>
  341. <param name="TABLELINK" expression="${args.tablelink.style}" if:set="args.tablelink.style"/>
  342. <param name="FIGURELINK" expression="${args.figurelink.style}" if:set="args.figurelink.style"/>
  343. <param name="ONLYTOPICINMAP" expression="${onlytopic.in.map}" if:set="onlytopic.in.map"/>
  344. <!-- Deprecated since 2.5 -->
  345. <param name="defaultLanguage" expression="${default.language}"/>
  346. <param name="remove-broken-links" expression="${remove-broken-links}" if:set="remove-broken-links"/>
  347. <xmlcatalog refid="dita.catalog"/>
  348. </xslt>
  349. </pipeline>
  350. </target>
  351. <target name="topicpull-check">
  352. <condition property="preprocess.topicpull.skip">
  353. <isset property="noTopic"/>
  354. </condition>
  355. </target>
  356. <!-- Clean maps from processing time -->
  357. <target name="clean-map" depends="clean-map-check" unless="preprocess.clean-map-check.skip" description="Clean ditamap">
  358. <condition property="dita.preprocess.reloadstylesheet.clean-map" value="${dita.preprocess.reloadstylesheet}">
  359. <not><isset property="dita.preprocess.reloadstylesheet.clean-map"/></not>
  360. </condition>
  361. <pipeline message="Clean ditamap" taskname="clean-map">
  362. <xslt basedir="${dita.temp.dir}" reloadstylesheet="${dita.preprocess.reloadstylesheet.clean-map}" style="${dita.plugin.org.dita.base.dir}/xsl/preprocess/clean-map.xsl">
  363. <ditafileset format="ditamap"/>
  364. <xmlcatalog refid="dita.catalog"/>
  365. </xslt>
  366. </pipeline>
  367. </target>
  368. <target name="clean-map-check">
  369. <condition property="preprocess.clean-map-check.skip">
  370. <isset property="noMap"/>
  371. </condition>
  372. </target>
  373. <!-- Clean tempory files at the end of preprocess -->
  374. <target name="clean-preprocess" unless="preprocess.clean-preprocess.skip" description="Clean preprocess">
  375. <property name="clean-preprocess.use-result-filename" value="true"/>
  376. <pipeline message="Clean preprocess" taskname="clean-preprocess">
  377. <param name="use-result-filename" value="${clean-preprocess.use-result-filename}" if:set="clean-preprocess.use-result-filename"/>
  378. <module class="org.dita.dost.module.CleanPreprocessModule"/>
  379. </pipeline>
  380. <job-helper file="canditopics.list" property="canditopicslist"/>
  381. <job-helper file="conref.list" property="conreflist"/>
  382. <job-helper file="conreftargets.list" property="conreftargetslist"/>
  383. <job-helper file="copytosource.list" property="copytosourcelist"/>
  384. <job-helper file="fullditamap.list" property="fullditamaplist"/>
  385. <job-helper file="fullditamapandtopic.list" property="fullditamapandtopiclist"/>
  386. <job-helper file="fullditatopic.list" property="fullditatopiclist"/>
  387. <job-helper file="hrefditatopic.list" property="hrefditatopiclist"/>
  388. <job-helper file="hreftargets.list" property="hreftargetslist"/>
  389. <!-- Deprecated since 2.1 -->
  390. <job-helper file="html.list" property="htmllist"/>
  391. <!-- Deprecated since 2.1 -->
  392. <job-helper file="image.list" property="imagelist"/>
  393. <job-helper file="outditafiles.list" property="outditafileslist"/>
  394. <job-helper file="resourceonly.list" property="resourceonlylist"/>
  395. <job-helper file="resourceonly.list" property="resourceonlylist"/>
  396. <job-helper file="subjectscheme.list" property="subjectschemelist"/>
  397. <job-helper file="subtargets.list" property="subtargetslist"/>
  398. <job-helper file="user.input.file.list" property="user.input.file"/>
  399. <job-helper file="usr.input.file.list" property="user.input.file"/>
  400. <job-property dir="${dita.temp.dir}"/>
  401. </target>
  402. <!-- copy-files
  403. Copy files to the output directory. -->
  404. <target name="copy-files" depends="copy-image,copy-html,copy-flag" unless="preprocess.copy-files.skip"/>
  405. <target name="copy-image" unless="preprocess.copy-image.skip" depends="" description="Copy image files">
  406. <condition property="copy-image.todir" value="${_dita.map.output.dir}/${uplevels}" else="${dita.output.dir}">
  407. <equals arg1="${generate.copy.outer}" arg2="1"/>
  408. </condition>
  409. <copy todir="${copy-image.todir}" failonerror="false">
  410. <ditafileset format="image"/>
  411. </copy>
  412. </target>
  413. <target name="copy-html" depends="" unless="preprocess.copy-html.skip" description="Copy html files">
  414. <condition property="copy-html.todir" value="${_dita.map.output.dir}/${uplevels}" else="${dita.output.dir}">
  415. <equals arg1="${generate.copy.outer}" arg2="1"/>
  416. </condition>
  417. <copy todir="${copy-html.todir}" failonerror="false">
  418. <ditafileset>
  419. <excludes format="dita"/>
  420. <excludes format="ditamap"/>
  421. <excludes format="ditaval"/>
  422. <excludes format="image"/>
  423. <excludes format="coderef"/>
  424. </ditafileset>
  425. </copy>
  426. </target>
  427. <target name="copy-flag" depends="copy-flag-check" unless="preprocess.copy-flag.skip" description="Copy flag files">
  428. <property name="flagimagefile" value="flagimage.list"/>
  429. <job-helper file="flagimage.list" property="flagimagelist"/>
  430. <dita-ot-copy todir="${dita.output.dir}" includesfile="${dita.temp.dir}/${flagimagefile}" relativepaths="${relflagimagelist}"/>
  431. </target>
  432. <target name="copy-flag-check">
  433. <condition property="preprocess.copy-flag.skip">
  434. <or>
  435. <isset property="preprocess.copy-files.skip"/>
  436. <not><isset property="dita.input.valfile"/></not>
  437. </or>
  438. </condition>
  439. </target>
  440. <!-- Deprecated since 2.1 -->
  441. <target name="copy-subsidiary" depends="copy-subsidiary-check" unless="preprocess.copy-subsidiary.skip" description="Copy subsidiary files">
  442. <dita-ot-echo id="DOTX070W"><param name="1" value="copy-subsidiary"/></dita-ot-echo>
  443. <copy todir="${dita.temp.dir}">
  444. <fileset dir="${user.input.dir}" includesfile="${dita.temp.dir}/${subtargetsfile}"/>
  445. </copy>
  446. </target>
  447. <!-- Deprecated since 2.1 -->
  448. <target name="copy-subsidiary-check">
  449. <dita-ot-echo id="DOTX070W"><param name="1" value="copy-subsidiary-check"/></dita-ot-echo>
  450. <condition property="preprocess.copy-subsidiary.skip">
  451. <or>
  452. <isset property="preprocess.copy-files.skip"/>
  453. <length file="${dita.temp.dir}/${subtargetsfile}" length="0"/>
  454. </or>
  455. </condition>
  456. </target>
  457. </project>