Added the new jQuery.support object and removed all uses of jQuery.browser from withi...
[jquery.git] / Makefile
1 SRC_DIR = src
2 BUILD_DIR = build
3
4 PREFIX = .
5 DOCS_DIR = ${PREFIX}/docs
6 TEST_DIR = ${PREFIX}/test
7 DIST_DIR = ${PREFIX}/dist
8 SPEED_DIR = ${PREFIX}/speed
9 PLUG_DIR = ../plugins
10
11 BASE_FILES = ${SRC_DIR}/core.js\
12         ${SRC_DIR}/support.js\
13         ${SRC_DIR}/selector.js\
14         ${SRC_DIR}/event.js\
15         ${SRC_DIR}/ajax.js\
16         ${SRC_DIR}/fx.js\
17         ${SRC_DIR}/offset.js\
18         ${SRC_DIR}/dimensions.js
19
20 PLUGINS = ${PLUG_DIR}/button/*\
21         ${PLUG_DIR}/center/*\
22         ${PLUG_DIR}/cookie/*\
23         ${PLUG_DIR}/dimensions/*\
24         ${PLUG_DIR}/metadata/*\
25         ${PLUG_DIR}/form/*\
26         ${PLUG_DIR}/greybox/greybox.js\
27         ${PLUG_DIR}/interface/*\
28         ${PLUG_DIR}/pager/*\
29         ${PLUG_DIR}/tablesorter/*\
30         ${PLUG_DIR}/tabs/*\
31         ${PLUG_DIR}/tooltip/jquery.tooltip.js\
32         ${PLUG_DIR}/accordion/jquery.accordion.js
33
34 MODULES = ${SRC_DIR}/intro.js\
35         ${BASE_FILES}\
36         ${SRC_DIR}/outro.js
37
38 MODULES_WITH_PLUGINS = ${SRC_DIR}/intro.js\
39         ${BASE_FILES}\
40         ${PLUGINS}\
41         ${SRC_DIR}/outro.js
42
43 JQ = ${DIST_DIR}/jquery.js
44 JQ_LITE = ${DIST_DIR}/jquery.lite.js
45 JQ_MIN = ${DIST_DIR}/jquery.min.js
46 JQ_PACK = ${DIST_DIR}/jquery.pack.js
47
48 JQ_VER = `cat version.txt`
49 VER = sed s/@VERSION/${JQ_VER}/
50
51 JAR = java -jar ${BUILD_DIR}/js.jar
52
53 all: jquery lite min pack speed
54         @@echo "jQuery build complete."
55
56 ${DIST_DIR}:
57         @@mkdir -p ${DIST_DIR}
58
59 jquery: ${DIST_DIR} ${JQ}
60
61 ${JQ}: ${MODULES}
62         @@echo "Building" ${JQ}
63
64         @@mkdir -p ${DIST_DIR}
65         @@cat ${MODULES} | ${VER} > ${JQ};
66
67         @@echo ${JQ} "Built"
68         @@echo
69
70 with_plugins: ${MODULES_WITH_PLUGINS}
71         @@echo "Building" ${JQ}
72
73         @@mkdir -p ${DIST_DIR}
74         @@cat ${MODULES_WITH_PLUGINS} | ${VER} > ${JQ};
75
76         @@echo ${JQ} "Built"
77         @@echo
78
79 lite: ${JQ_LITE}
80
81 ${JQ_LITE}: ${JQ}
82         @@echo "Building" ${JQ_LITE}
83
84         @@cp ${JQ} ${JQ_LITE}
85
86         @@echo ${JQ_LITE} "Built"
87         @@echo
88
89 pack: ${JQ_PACK}
90
91 ${JQ_PACK}: ${JQ}
92         @@echo "Building" ${JQ_PACK}
93
94         @@echo " - Compressing using Packer"
95         @@${JAR} ${BUILD_DIR}/build/pack.js ${JQ} ${JQ_PACK}
96
97         @@echo ${JQ_PACK} "Built"
98         @@echo
99
100 min: ${JQ_MIN}
101
102 ${JQ_MIN}: ${JQ}
103         @@echo "Building" ${JQ_MIN}
104
105         @@echo " - Compressing using Minifier"
106         @@${JAR} ${BUILD_DIR}/build/min.js ${JQ} ${JQ_MIN}
107
108         @@echo ${JQ_MIN} "Built"
109         @@echo
110
111 test: ${JQ}
112         @@echo "Building Test Suite"
113         @@echo "Test Suite Built"
114         @@echo
115
116 runtest: ${JQ} test
117         @@echo "Running Automated Test Suite"
118         @@${JAR} ${BUILD_DIR}/runtest/test.js
119
120         @@echo "Test Suite Finished"
121         @@echo
122
123 docs: ${JQ}
124         @@echo "Building Documentation"
125
126         @@echo " - Making Documentation Directory:" ${DOCS_DIR}
127         @@mkdir -p ${DOCS_DIR}
128         @@mkdir -p ${DOCS_DIR}/data
129
130         @@echo " - Copying over htaccess file."
131         @@cp -fR ${BUILD_DIR}/docs/.htaccess ${DOCS_DIR}
132
133         @@echo " - Copying over script files."
134         @@cp -fR ${BUILD_DIR}/docs/js ${DOCS_DIR}/js
135
136         @@echo " - Copying over style files."
137         @@cp -fR ${BUILD_DIR}/docs/style ${DOCS_DIR}/style
138
139         @@echo " - Extracting ScriptDoc from" ${JQ}
140         @@${JAR} ${BUILD_DIR}/docs/docs.js ${JQ} ${DOCS_DIR}
141
142         @@echo "Documentation Built"
143         @@echo
144
145 speed: ${JQ}
146         @@echo "Building Speed Test Suite"
147
148         @@echo " - Making Speed Test Suite Directory:" ${SPEED_DIR}
149         @@mkdir -p ${SPEED_DIR}
150
151         @@echo " - Copying over script files."
152         @@cp -f ${BUILD_DIR}/speed/index.html ${SPEED_DIR}
153         @@cp -f ${BUILD_DIR}/speed/benchmarker.css ${SPEED_DIR}
154         @@cp -f ${BUILD_DIR}/speed/benchmarker.js ${SPEED_DIR}
155         @@cp -f ${BUILD_DIR}/speed/jquery-basis.js ${SPEED_DIR}
156
157         @@echo "Speed Test Suite Built"
158         @@echo
159
160 clean:
161         @@echo "Removing Distribution directory:" ${DIST_DIR}
162         @@rm -rf ${DIST_DIR}
163
164         @@echo "Removing Documentation directory:" ${DOCS_DIR}
165         @@rm -rf ${DOCS_DIR}
166
167         @@echo "Removing Speed Test Suite directory:" ${SPEED_DIR}
168         @@rm -rf ${SPEED_DIR}