1- <?xml version =" 1.0" encoding =" iso-8859-1" ?>
2- <project name =" QuickForm2 Javascript" basedir =" ." default =" build-all" >
3-
4- <property file =" build.properties" />
5-
6- <property name =" js.src.basefirst" value =" base.js" />
7- <property name =" js.src.basesecond" value =" map.js, form.js, classes.js, events.js, validator.js, rules.js" />
8-
9- <property name =" js.concat.base" value =" build/quickform.js" />
10- <property name =" js.concat.hs" value =" build/quickform-hierselect.js" />
11- <property name =" js.concat.repeat" value =" build/quickform-repeat.js" />
12- <property name =" js.filelist.base" value =" build/filelist.txt" />
13- <property name =" js.minified.base" value =" build/quickform.min.js" />
14- <property name =" js.minified.hs" value =" build/quickform-hierselect.min.js" />
15- <property name =" js.minified.repeat" value =" build/quickform-repeat.min.js" />
16-
17- <property name =" release.concat" value =" ../data/js/" />
18- <property name =" release.minified" value =" ../data/js/min/" />
19-
20- <property name =" closure_command" value =" java -jar ${ path.closure } --compilation_level SIMPLE_OPTIMIZATIONS --rewrite_polyfills=false" />
21-
22- <property name =" package_version" value =" 2.2.2 " />
23-
24- <target name =" init" >
25- <mkdir dir =" build" />
26- <mkdir dir =" docs" />
27- </target >
28-
29- <target name =" concat" depends =" init" description =" Build concatenated javascript files" >
30- <copy file =" src/${ js.src.basefirst } " tofile =" ${ js.concat.base } " >
31- <filterchain >
32- <replaceregexp >
33- <regexp pattern =" @preserve\s+" replace =" " />
34- </replaceregexp >
35- </filterchain >
36- </copy >
37- <append destFile =" ${ js.concat.base } " >
38- <filelist dir =" src/" files =" ${ js.src.basesecond } " />
39- </append >
40- <copy file =" src/hierselect.js" tofile =" ${ js.concat.hs } " >
41- <filterchain >
42- <replaceregexp >
43- <regexp pattern =" @preserve\s+" replace =" " />
44- </replaceregexp >
45- </filterchain >
46- </copy >
47- <copy file =" src/repeat.js" tofile =" ${ js.concat.repeat } " >
48- <filterchain >
49- <replaceregexp >
50- <regexp pattern =" @preserve\s+" replace =" " />
51- </replaceregexp >
52- </filterchain >
53- </copy >
54- </target >
55-
56- <target name =" appendjsfile" >
57- <echo append =" true" file =" ${ js.filelist.base } " message =" --js src/${ srcname } " />
58- </target >
59- <target name =" minify" depends =" init" description =" Build minified javascript files using closure compiler" >
60- <available file =" ${ path.closure } " property =" has_closure" />
61- <fail unless =" has_closure" message =" Closure compiler is not available" />
62- <echo append =" false" file =" ${ js.filelist.base } " message =" --js src/${ js.src.basefirst } " />
63- <foreach list =" ${ js.src.basesecond } " param =" srcname" target =" appendjsfile" />
64- <exec logoutput =" true" command =" ${ closure_command } --js_output_file ${ js.minified.base } --flagfile ${ js.filelist.base } " />
65- <exec logoutput =" true" command =" ${ closure_command } --js_output_file ${ js.minified.hs } --js src/hierselect.js" />
66- <exec logoutput =" true" command =" ${ closure_command } --js_output_file ${ js.minified.repeat } --js src/repeat.js" />
67- </target >
68-
69- <target name =" docs" depends =" init" description =" Build API documentation using JSDoc toolkit" >
70- <available file =" ${ path.jsdoc } jsrun.jar" property =" has_jsdoc" />
71- <fail unless =" has_jsdoc" message =" JSDoc toolkit is not available" />
72- <exec logoutput =" true" command =" java -Djsdoc.dir=${ path.jsdoc } -Djsdoc.template.dir=${ path.jsdoc.template } -jar ${ path.jsdoc } jsrun.jar ${ path.jsdoc.app } -a -d=./docs -r=4 ./src" />
73- </target >
74-
75- <target name =" clean-js" description =" Removes generated javascript files" >
76- <delete dir =" build" />
77- </target >
78- <target name =" clean-docs" description =" Removes generated API docs" >
79- <delete dir =" docs" />
80- </target >
81- <target name =" clean" depends =" clean-js, clean-docs" description =" Removes all generated files" />
82-
83- <target name =" build-all" depends =" clean, concat, minify, docs" description =" Builds everything" />
84-
85- <target name =" release" depends =" clean, concat, minify" description =" Builds JS files and copies them to data" >
86- <copy todir =" ${ release.concat } " >
87- <mapper type =" flatten" />
88- <fileset dir =" ." >
89- <include name =" ${ js.concat.base } " />
90- <include name =" ${ js.concat.hs } " />
91- <include name =" ${ js.concat.repeat } " />
92- </fileset >
93- <filterchain >
94- <replaceregexp >
95- <regexp pattern =" @package_version@" replace =" ${ package_version } " />
96- </replaceregexp >
97- </filterchain >
98- </copy >
99- <copy todir =" ${ release.minified } " >
100- <mapper type =" regexp" from =" build.(.+)\.min\.js" to =" \1.js" />
101- <fileset dir =" ." >
102- <include name =" ${ js.minified.base } " />
103- <include name =" ${ js.minified.hs } " />
104- <include name =" ${ js.minified.repeat } " />
105- </fileset >
106- <filterchain >
107- <replaceregexp >
108- <regexp pattern =" @package_version@" replace =" ${ package_version } " />
109- </replaceregexp >
110- </filterchain >
111- </copy >
112- </target >
1+ <?xml version =" 1.0" encoding =" iso-8859-1" ?>
2+ <project name =" QuickForm2 Javascript" basedir =" ." default =" build-all" >
3+
4+ <property file =" build.properties" />
5+
6+ <property name =" js.src.basefirst" value =" base.js" />
7+ <property name =" js.src.basesecond" value =" map.js, form.js, classes.js, events.js, validator.js, rules.js" />
8+
9+ <property name =" js.concat.base" value =" build/quickform.js" />
10+ <property name =" js.concat.hs" value =" build/quickform-hierselect.js" />
11+ <property name =" js.concat.repeat" value =" build/quickform-repeat.js" />
12+ <property name =" js.filelist.base" value =" build/filelist.txt" />
13+ <property name =" js.minified.base" value =" build/quickform.min.js" />
14+ <property name =" js.minified.hs" value =" build/quickform-hierselect.min.js" />
15+ <property name =" js.minified.repeat" value =" build/quickform-repeat.min.js" />
16+
17+ <property name =" release.concat" value =" ../data/js/" />
18+ <property name =" release.minified" value =" ../data/js/min/" />
19+
20+ <property name =" closure_command" value =" java -jar ${ path.closure } --compilation_level SIMPLE_OPTIMIZATIONS --rewrite_polyfills=false" />
21+
22+ <property name =" package_version" value =" 2.3.0 " />
23+
24+ <target name =" init" >
25+ <mkdir dir =" build" />
26+ <mkdir dir =" docs" />
27+ </target >
28+
29+ <target name =" concat" depends =" init" description =" Build concatenated javascript files" >
30+ <copy file =" src/${ js.src.basefirst } " tofile =" ${ js.concat.base } " >
31+ <filterchain >
32+ <replaceregexp >
33+ <regexp pattern =" @preserve\s+" replace =" " />
34+ </replaceregexp >
35+ </filterchain >
36+ </copy >
37+ <append destFile =" ${ js.concat.base } " >
38+ <filelist dir =" src/" files =" ${ js.src.basesecond } " />
39+ </append >
40+ <copy file =" src/hierselect.js" tofile =" ${ js.concat.hs } " >
41+ <filterchain >
42+ <replaceregexp >
43+ <regexp pattern =" @preserve\s+" replace =" " />
44+ </replaceregexp >
45+ </filterchain >
46+ </copy >
47+ <copy file =" src/repeat.js" tofile =" ${ js.concat.repeat } " >
48+ <filterchain >
49+ <replaceregexp >
50+ <regexp pattern =" @preserve\s+" replace =" " />
51+ </replaceregexp >
52+ </filterchain >
53+ </copy >
54+ </target >
55+
56+ <target name =" appendjsfile" >
57+ <echo append =" true" file =" ${ js.filelist.base } " message =" --js src/${ srcname } " />
58+ </target >
59+ <target name =" minify" depends =" init" description =" Build minified javascript files using closure compiler" >
60+ <available file =" ${ path.closure } " property =" has_closure" />
61+ <fail unless =" has_closure" message =" Closure compiler is not available" />
62+ <echo append =" false" file =" ${ js.filelist.base } " message =" --js src/${ js.src.basefirst } " />
63+ <foreach list =" ${ js.src.basesecond } " param =" srcname" target =" appendjsfile" />
64+ <exec logoutput =" true" command =" ${ closure_command } --js_output_file ${ js.minified.base } --flagfile ${ js.filelist.base } " />
65+ <exec logoutput =" true" command =" ${ closure_command } --js_output_file ${ js.minified.hs } --js src/hierselect.js" />
66+ <exec logoutput =" true" command =" ${ closure_command } --js_output_file ${ js.minified.repeat } --js src/repeat.js" />
67+ </target >
68+
69+ <target name =" docs" depends =" init" description =" Build API documentation using JSDoc toolkit" >
70+ <available file =" ${ path.jsdoc } jsrun.jar" property =" has_jsdoc" />
71+ <fail unless =" has_jsdoc" message =" JSDoc toolkit is not available" />
72+ <exec logoutput =" true" command =" java -Djsdoc.dir=${ path.jsdoc } -Djsdoc.template.dir=${ path.jsdoc.template } -jar ${ path.jsdoc } jsrun.jar ${ path.jsdoc.app } -a -d=./docs -r=4 ./src" />
73+ </target >
74+
75+ <target name =" clean-js" description =" Removes generated javascript files" >
76+ <delete dir =" build" />
77+ </target >
78+ <target name =" clean-docs" description =" Removes generated API docs" >
79+ <delete dir =" docs" />
80+ </target >
81+ <target name =" clean" depends =" clean-js, clean-docs" description =" Removes all generated files" />
82+
83+ <target name =" build-all" depends =" clean, concat, minify, docs" description =" Builds everything" />
84+
85+ <target name =" release" depends =" clean, concat, minify" description =" Builds JS files and copies them to data" >
86+ <copy todir =" ${ release.concat } " >
87+ <mapper type =" flatten" />
88+ <fileset dir =" ." >
89+ <include name =" ${ js.concat.base } " />
90+ <include name =" ${ js.concat.hs } " />
91+ <include name =" ${ js.concat.repeat } " />
92+ </fileset >
93+ <filterchain >
94+ <replaceregexp >
95+ <regexp pattern =" @package_version@" replace =" ${ package_version } " />
96+ </replaceregexp >
97+ </filterchain >
98+ </copy >
99+ <copy todir =" ${ release.minified } " >
100+ <mapper type =" regexp" from =" build.(.+)\.min\.js" to =" \1.js" />
101+ <fileset dir =" ." >
102+ <include name =" ${ js.minified.base } " />
103+ <include name =" ${ js.minified.hs } " />
104+ <include name =" ${ js.minified.repeat } " />
105+ </fileset >
106+ <filterchain >
107+ <replaceregexp >
108+ <regexp pattern =" @package_version@" replace =" ${ package_version } " />
109+ </replaceregexp >
110+ </filterchain >
111+ </copy >
112+ </target >
113113</project >
0 commit comments