@@ -1510,20 +1510,33 @@ LIBRARIES (MSIL, FJBG maybe later)
15101510DOCUMENTATION
15111511============================================================================ -->
15121512
1513- <target name =" docs.start" depends =" pack.done" />
1513+ <target name =" docs.start" depends =" pack.done" >
1514+ <macrodef name =" doc-uptodate-check" >
1515+ <attribute name =" name" />
1516+ <attribute name =" srcdir" />
1517+ <element name =" source-includes" optional =" yes" />
1518+ <sequential >
1519+ <uptodate property =" docs.@{ name } .available" targetfile =" ${ build-docs.dir } /@{ name } .complete" >
1520+ <srcfiles dir =" @{ srcdir } " >
1521+ <source-includes />
1522+ </srcfiles >
1523+ </uptodate >
1524+ </sequential >
1525+ </macrodef >
1526+ </target >
15141527
15151528 <target name =" docs.pre-lib" depends =" docs.start" >
1516- <uptodate property = " docs.lib.available " targetfile =" ${ build-docs .dir} /library.complete " >
1517- <srcfiles dir = " ${ src.dir } " >
1529+ <doc- uptodate-check name = " library " srcdir =" ${ src .dir} " >
1530+ <source-includes >
15181531 <include name =" library/**" />
15191532 <include name =" dbc/**" />
15201533 <include name =" actors/**" />
15211534 <include name =" swing/**" />
1522- </srcfiles >
1523- </uptodate >
1535+ </source-includes >
1536+ </doc- uptodate-check >
15241537 </target >
15251538
1526- <target name =" docs.lib" depends =" docs.pre-lib" unless =" docs.lib .available" >
1539+ <target name =" docs.lib" depends =" docs.pre-lib" unless =" docs.library .available" >
15271540 <stopwatch name =" docs.lib.timer" />
15281541 <mkdir dir =" ${ build-docs.dir } /library" />
15291542 <scaladoc
@@ -1558,12 +1571,10 @@ DOCUMENTATION
15581571 </target >
15591572
15601573 <target name =" docs.pre-man" depends =" docs.lib" >
1561- <uptodate property =" docs.man.available" targetfile =" ${ build-docs.dir } /manual.complete" >
1562- <srcfiles dir =" ${ src.dir } /manual" />
1563- </uptodate >
1574+ <doc-uptodate-check name =" manual" srcdir =" ${ src.dir } /manual" />
15641575 </target >
15651576
1566- <target name =" docs.manmaker" depends =" docs.pre-man" unless =" docs.man .available" >
1577+ <target name =" docs.manmaker" depends =" docs.pre-man" unless =" docs.manual .available" >
15671578 <mkdir dir =" ${ build.dir } /manmaker/classes" />
15681579 <scalac
15691580 destdir =" ${ build.dir } /manmaker/classes"
@@ -1577,7 +1588,7 @@ DOCUMENTATION
15771588 </path >
15781589 </target >
15791590
1580- <target name =" docs.man" depends =" docs.manmaker" unless =" docs.man .available" >
1591+ <target name =" docs.man" depends =" docs.manmaker" unless =" docs.manual .available" >
15811592 <mkdir dir =" ${ build-docs.dir } /manual/man/man1" />
15821593 <mkdir dir =" ${ build-docs.dir } /manual/html" />
15831594 <mkdir dir =" ${ build-docs.dir } /manual/genman/man1" />
@@ -1604,12 +1615,10 @@ DOCUMENTATION
16041615 </target >
16051616
16061617 <target name =" docs.pre-comp" depends =" docs.man" >
1607- <uptodate property =" docs.comp.available" targetfile =" ${ build-docs.dir } /compiler.complete" >
1608- <srcfiles dir =" ${ src.dir } /compiler" />
1609- </uptodate >
1618+ <doc-uptodate-check name =" compiler" srcdir =" ${ src.dir } /compiler" />
16101619 </target >
16111620
1612- <target name =" docs.comp" depends =" docs.pre-comp" unless =" docs.comp .available" >
1621+ <target name =" docs.comp" depends =" docs.pre-comp" unless =" docs.compiler .available" >
16131622 <stopwatch name =" docs.comp.timer" />
16141623 <mkdir dir =" ${ build-docs.dir } /compiler" />
16151624 <scaladoc
@@ -1620,16 +1629,104 @@ DOCUMENTATION
16201629 sourcepath =" ${ src.dir } "
16211630 classpathref =" pack.classpath"
16221631 srcdir =" ${ src.dir } /compiler"
1623- docRootContent =" ${ src.dir } /compiler/rootdoc.txt" >
1624- addparams="${ scalac.args.all } "
1632+ docRootContent =" ${ src.dir } /compiler/rootdoc.txt"
1633+ addparams =" ${ scalac.args.all } " >
16251634 <include name =" **/*.scala" />
16261635 </scaladoc >
16271636 <touch file =" ${ build-docs.dir } /compiler.complete" verbose =" no" />
16281637 <stopwatch name =" docs.comp.timer" action =" total" />
16291638 </target >
16301639
1640+ <target name =" docs.pre-jline" depends =" docs.start" >
1641+ <doc-uptodate-check name =" jline" srcdir =" ${ src.dir } /jline/src/main/java" />
1642+ </target >
1643+
1644+ <target name =" docs.jline" depends =" docs.pre-jline" unless =" docs.jline.available" >
1645+ <stopwatch name =" docs.jline.timer" />
1646+ <mkdir dir =" ${ build-docs.dir } /jline" />
1647+ <scaladoc
1648+ destdir =" ${ build-docs.dir } /jline"
1649+ doctitle =" Scala JLine"
1650+ docversion =" ${ version.number } "
1651+ sourcepath =" ${ src.dir } "
1652+ classpathref =" pack.classpath"
1653+ srcdir =" ${ src.dir } /jline/src/main/java"
1654+ addparams =" ${ scalac.args.all } " >
1655+ <include name =" **/*.scala" />
1656+ <include name =" **/*.java" />
1657+ </scaladoc >
1658+ <touch file =" ${ build-docs.dir } /jline.complete" verbose =" no" />
1659+ <stopwatch name =" docs.jline.timer" action =" total" />
1660+ </target >
1661+
1662+ <target name =" docs.pre-scalap" depends =" docs.start" >
1663+ <doc-uptodate-check name =" scalap" srcdir =" ${ src.dir } /scalap" />
1664+ </target >
1665+
1666+ <target name =" docs.scalap" depends =" docs.pre-scalap" unless =" docs.scalap.available" >
1667+ <stopwatch name =" docs.scalap.timer" />
1668+ <mkdir dir =" ${ build-docs.dir } /scalap" />
1669+ <scaladoc
1670+ destdir =" ${ build-docs.dir } /scalap"
1671+ doctitle =" Scalap"
1672+ docversion =" ${ version.number } "
1673+ docsourceurl =" https://lampsvn.epfl.ch/trac/scala/browser/scala/trunk/src/€{FILE_PATH}.scala#L1"
1674+ sourcepath =" ${ src.dir } "
1675+ classpathref =" pack.classpath"
1676+ srcdir =" ${ src.dir } /scalap"
1677+ addparams =" ${ scalac.args.all } " >
1678+ <include name =" **/*.scala" />
1679+ </scaladoc >
1680+ <touch file =" ${ build-docs.dir } /scalap.complete" verbose =" no" />
1681+ <stopwatch name =" docs.scalap.timer" action =" total" />
1682+ </target >
1683+
1684+ <target name =" docs.pre-partest" depends =" docs.start" >
1685+ <doc-uptodate-check name =" partest" srcdir =" ${ src.dir } /partest" />
1686+ </target >
1687+
1688+ <target name =" docs.partest" depends =" docs.pre-partest" unless =" docs.partest.available" >
1689+ <stopwatch name =" docs.partest.timer" />
1690+ <mkdir dir =" ${ build-docs.dir } /scala-partest" />
1691+ <scaladoc
1692+ destdir =" ${ build-docs.dir } /scala-partest"
1693+ doctitle =" Scala Parallel Testing Framework"
1694+ docversion =" ${ version.number } "
1695+ sourcepath =" ${ src.dir } "
1696+ classpathref =" pack.classpath"
1697+ srcdir =" ${ src.dir } /partest"
1698+ addparams =" ${ scalac.args.all } " >
1699+ <include name =" **/*.scala" />
1700+ </scaladoc >
1701+ <touch file =" ${ build-docs.dir } /partest.complete" verbose =" no" />
1702+ <stopwatch name =" docs.partest.timer" action =" total" />
1703+ </target >
1704+
1705+ <target name =" docs.pre-continuations-plugin" depends =" docs.start" >
1706+ <doc-uptodate-check name =" continuations-plugin" srcdir =" ${ src.dir } /continuations/plugin" />
1707+ </target >
1708+
1709+ <target name =" docs.continuations-plugin" depends =" docs.pre-continuations-plugin" unless =" docs.continuations-plugin.available" >
1710+ <stopwatch name =" docs.continuations-plugin.timer" />
1711+ <mkdir dir =" ${ build-docs.dir } /continuations-plugin" />
1712+ <scaladoc
1713+ destdir =" ${ build-docs.dir } /continuations-plugin"
1714+ doctitle =" Delimited Continuations Compiler Plugin"
1715+ docversion =" ${ version.number } "
1716+ sourcepath =" ${ src.dir } "
1717+ classpathref =" pack.classpath"
1718+ srcdir =" ${ src.dir } /continuations/plugin"
1719+ addparams =" ${ scalac.args.all } " >
1720+ <include name =" **/*.scala" />
1721+ </scaladoc >
1722+ <touch file =" ${ build-docs.dir } /continuations-plugin.complete" verbose =" no" />
1723+ <stopwatch name =" docs.continuations-plugin.timer" action =" total" />
1724+ </target >
1725+
16311726 <target name =" docs.done" depends =" docs.man" />
16321727
1728+ <target name =" docs.all" depends =" docs.jline, docs.comp, docs.man, docs.lib, docs.scalap, docs.partest, docs.continuations-plugin" />
1729+
16331730 <target name =" docs.clean" >
16341731 <delete dir =" ${ build-docs.dir } " includeemptydirs =" yes" quiet =" yes" failonerror =" no" />
16351732 <delete dir =" ${ build.dir } /manmaker" includeemptydirs =" yes" quiet =" yes" failonerror =" no" />
@@ -1921,17 +2018,28 @@ STABLE REFERENCE (STARR)
19212018FORWARDED TARGETS FOR PACKAGING
19222019============================================================================ -->
19232020
1924- <target name =" distpack" depends =" dist.done" >
2021+ <target name =" distpack" depends =" dist.done, docs.all " >
19252022 <ant antfile =" ${ src.dir } /build/pack.xml" target =" pack-all.done" inheritall =" yes" inheritrefs =" yes" />
19262023 </target >
19272024
2025+ <target name =" distpack-maven" depends =" dist.done, docs.all" >
2026+ <ant antfile =" ${ src.dir } /build/pack.xml" target =" pack-maven.done" inheritall =" yes" inheritrefs =" yes" />
2027+ </target >
2028+
19282029 <target name =" distpack-opt"
19292030 description =" Builds an optimised distribution." >
19302031 <antcall target =" distpack" >
19312032 <param name =" scalac.args.optimise" value =" -optimise" />
19322033 </antcall >
19332034 </target >
19342035
2036+ <target name =" distpack-maven-opt"
2037+ description =" Builds an optimised maven distribution." >
2038+ <antcall target =" distpack-maven" >
2039+ <param name =" scalac.args.optimise" value =" -optimise" />
2040+ </antcall >
2041+ </target >
2042+
19352043 <!-- Used by the scala-installer script -->
19362044 <target name =" allallclean" depends =" all.clean" />
19372045
0 commit comments