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 >
113
113
</project >
0 commit comments