Fixed Ant task "jquery_with_plugins" and ill-formed XML
[jquery.git] / build.xml
1 <project name="jQuery" default="all" basedir=".">\r
2 \r
3         <!-- SETUP -->
4
5     <property name="SRC_DIR" value="src" />
6     <property name="BUILD_DIR" value="build" />
7     <property name="JAR" value="${BUILD_DIR}/js.jar" />\r
8 \r
9         <property name="PLUGIN_DIR" location="../plugins" />\r
10         <property name="PLUGINS" value="none" />
11         <property name="PLUGINS_ALL" value="button/*.js,center/*.js,cookie/*.js,form/*.js,greybox/*.js,interface/*.js,pager/*.js,tablesorter/*.js,tabs/*.js" />\r
12
13     <property name="PREFIX" value="." />
14     <property name="DOCS_DIR" value="${PREFIX}/docs" />
15     <property name="TEST_DIR" value="${PREFIX}/test" />
16     <property name="DIST_DIR" value="${PREFIX}/dist" />
17
18     <property name="JQ" value="${DIST_DIR}/jquery.js" />
19     <property name="JQ_LITE" value="${DIST_DIR}/jquery.lite.js" />
20     <property name="JQ_MIN" value="${DIST_DIR}/jquery.min.js" />
21     <property name="JQ_PACK" value="${DIST_DIR}/jquery.pack.js" />\r
22 \r
23         <property name="TABS" value="${PLUGIN_DIR}/tabs/tabs.js" />\r
24         <property name="TABS_PACK" value="${DIST_DIR}/jquery.tabs.pack.js" />\r
25 \r
26         <!-- MAIN -->\r
27 \r
28     <target name="jquery">
29         <echo message="Building ${JQ}" />
30         <mkdir dir="${DIST_DIR}" />
31         <concat destfile="${JQ}">\r
32                 <fileset dir="${SRC_DIR}" includes="intro.js" />
33             <fileset dir="${SRC_DIR}" includes="jquery/*.js" />
34             <fileset dir="${SRC_DIR}" includes="event/*.js" />
35             <fileset dir="${SRC_DIR}" includes="fx/*.js" />
36             <fileset dir="${SRC_DIR}" includes="ajax/*.js" />\r
37                 <fileset dir="${PLUGIN_DIR}" includes="${PLUGINS}" />\r
38                 <fileset dir="${SRC_DIR}" includes="outro.js" />
39         </concat>
40         <echo message="${JQ} built." />
41     </target>
42         
43         <target name="jquery_with_plugins" description="Build jquery with all plugins">
44                 <antcall target="jquery">
45                         <param name="PLUGINS" value="${PLUGINS_ALL}" />
46                 </antcall>\r
47         </target>
48
49     <target name="lite" depends="jquery">
50         <echo message="Building ${JQ_LITE}" />
51         <java jar="${JAR}" fork="true">
52             <arg value="${BUILD_DIR}/build/lite.js" />
53             <arg value="${JQ}" />
54             <arg value="${JQ_LITE}" />
55         </java>
56         <echo message="${JQ_LITE} built." />
57     </target>
58
59     <target name="min" depends="jquery">
60         <echo message="Building ${JQ_MIN}" />
61         <java jar="${JAR}" fork="true">
62             <arg value="${BUILD_DIR}/build/min.js" />
63             <arg value="${JQ}" />
64             <arg value="${JQ_MIN}" />
65         </java>
66         <echo message="${JQ_MIN} built." />
67     </target>
68
69     <target name="pack" depends="jquery">
70         <echo message="Building ${JQ_PACK}" />
71         <java jar="${JAR}" fork="true">
72             <arg value="${BUILD_DIR}/build/pack.js" />
73             <arg value="${JQ}" />
74             <arg value="${JQ_PACK}" />
75         </java>
76         <echo message="${JQ_PACK} built." />
77     </target>\r
78                 \r
79     <target name="pack_with_plugins" depends="jquery_with_plugins">\r
80         <echo message="Building ${JQ_PACK}" />\r
81         <java jar="${JAR}" fork="true">\r
82             <arg value="${BUILD_DIR}/build/pack.js" />\r
83             <arg value="${JQ}" />\r
84             <arg value="${JQ_PACK}" />\r
85         </java>\r
86         <echo message="${JQ_PACK} built." />\r
87     </target>           
88
89     <target name="test" depends="jquery">
90         <echo message="Building Test Suite" />
91         <delete dir="${TEST_DIR}" />
92         <mkdir dir="${TEST_DIR}/data" />\r
93         <copy todir="${TEST_DIR}/data">\r
94                 <fileset dir="${BUILD_DIR}/test/data/" />\r
95         </copy>\r
96         <java jar="${JAR}" fork="true">
97             <arg value="${BUILD_DIR}/test/test.js" />
98             <arg value="${JQ}" />
99             <arg value="${TEST_DIR}" />
100         </java>
101         <echo message="Test Suite built." />
102     </target>
103
104     <target name="docs" depends="jquery">
105         <echo message="Building Documentation" />
106         <delete dir="${DOCS_DIR}" />
107         <mkdir dir="${DOCS_DIR}/data" />
108         <copy todir="${DOCS_DIR}" file="${BUILD_DIR}/docs/.htaccess" />
109         <mkdir dir="${DOCS_DIR}/js" />
110         <copy todir="${DOCS_DIR}/js" >
111             <fileset dir="${BUILD_DIR}/docs/js">
112                 <include name="**/*.js"/>
113             </fileset>
114         </copy>
115                 <copy todir="${DOCS_DIR}/style" >
116             <fileset dir="${BUILD_DIR}/docs/style">
117                 <include name="**"/>
118             </fileset>
119         </copy>
120         <java jar="${JAR}" fork="true">
121             <arg value="${BUILD_DIR}/docs/docs.js" />
122             <arg value="${JQ}" />
123             <arg value="${DOCS_DIR}" />
124         </java>
125         <echo message="Documentation built." />
126     </target>\r
127                 \r
128     <target name="docs_with_plugins" depends="jquery_with_plugins">\r
129         <echo message="Building Documentation" />\r
130         <delete dir="${DOCS_DIR}" />\r
131         <mkdir dir="${DOCS_DIR}/data" />\r
132         <copy todir="${DOCS_DIR}" file="${BUILD_DIR}/docs/.htaccess" />\r
133         <mkdir dir="${DOCS_DIR}/js" />\r
134         <copy todir="${DOCS_DIR}/js" >\r
135             <fileset dir="${BUILD_DIR}/docs/js">\r
136                 <include name="**/*.js"/>\r
137             </fileset>\r
138         </copy>\r
139                 <copy todir="${DOCS_DIR}/style" >\r
140             <fileset dir="${BUILD_DIR}/docs/style">\r
141                 <include name="**"/>\r
142             </fileset>\r
143         </copy>\r
144         <java jar="${JAR}" fork="true">\r
145             <arg value="${BUILD_DIR}/docs/docs.js" />\r
146             <arg value="${JQ}" />\r
147             <arg value="${DOCS_DIR}" />\r
148         </java>\r
149         <echo message="Documentation built." />\r
150     </target>           
151
152     <target name="clean">
153         <delete dir="${DOCS_DIR}" />
154         <delete dir="${TEST_DIR}" />
155         <delete dir="${DIST_DIR}" />
156     </target>
157
158     <target name="all" depends="clean,jquery,lite,min,pack,docs,test" >
159         <echo message="Build complete." />
160     </target>
161         
162         <target name="pack_tabs">\r
163         <echo message="Building ${TABS_PACK}" />\r
164                 <mkdir dir="${DIST_DIR}" />\r
165         <java jar="${JAR}" fork="true">\r
166             <arg value="${BUILD_DIR}/build/pack.js" />\r
167             <arg value="${TABS}" />\r
168             <arg value="${TABS_PACK}" />\r
169         </java>\r
170         <echo message="${TABS_PACK} built." />\r
171     </target>\r
172
173 </project>