Merge branch 'master' of github.com:jquery/jquery into csshooks
[jquery.git] / README.md
1 [jQuery](http://jquery.com/) - New Wave Javascript
2 ================================
3
4 What you need to build your own jQuery
5 ---------------------------------------
6 * Make sure that you have Java installed (if you want to build a minified version of jQuery).  
7 If not, [go to this page](http://java.sun.com/javase/downloads/index.jsp) and download "Java Runtime Environment (JRE) 5.0"
8
9 Build Options
10 --------------
11
12 You now have **three** options for building jQuery:
13
14 * **`make`**: If you have access to common UNIX commands (like `make`, `mkdir`, `rm`, `cat`, and `echo`) then simply type `make` to build all the components.
15
16 * **`rake`**: If you have Ruby Rake installed (on either Windows or UNIX/Linux), you can simply type `rake` to build all the components.
17
18 * **`ant`**: If you have Ant installed (or are on Windows and don't have access to make). You can download Ant from here: [http://ant.apache.org/bindownload.cgi].
19
20 How to build your own jQuery
21 -----------------------------
22
23 *Note: If you are using either `rake` or `ant`, substitute your chosen method in place of `make` in the examples below. They work identically for all intents and purposes. Quick reference is also available for `rake` by typing `rake -T` in the `jquery` directory.*
24
25 In the main directory of the distribution (the one that this file is in), type
26 the following to make all versions of jQuery:
27
28     make
29
30 *Here are the individual items that are buildable from the Makefile:*
31
32     make init
33
34 Pull in all the external dependencies (QUnit, Sizzle) for the project.
35
36     make jquery
37
38 The standard, uncompressed, jQuery code.  
39 Makes: `./dist/jquery.js`
40
41     make min
42
43 A compressed version of jQuery (made the Closure Compiler).  
44 Makes: `./dist/jquery.min.js`
45
46     make lint
47
48 Tests a build of jQuery against JSLint, looking for potential errors or bits of confusing code.
49
50     make selector
51
52 Builds the selector library for jQuery from Sizzle.  
53 Makes: `./src/selector.js`
54
55 Finally, you can remove all the built files using the command:
56   
57     make clean
58
59 Building to a different directory
60 ----------------------------------
61
62 If you want to build jQuery to a directory that is different from the default location, you can...
63
64 **Make only:** Specify the PREFIX directory, for example:
65   
66     make PREFIX=/home/john/test/ [command]
67     
68 With this example, the output files would be contained in `/home/john/test/dist/`
69
70 **Rake only:** Define the DIST_DIR directory, for example:
71
72     rake DIST_DIR=/home/john/test/ [command]
73     
74 With this example, the output files would be contained in `/home/john/test/`
75
76 *In both examples, `[command]` is optional.*
77
78 **Ant only:** You cannot currently build to another directory when using Ant.
79
80 Questions?
81 ----------
82
83 If you have any questions, please feel free to ask them on the jQuery
84 mailing list, which can be found here:  
85 [http://docs.jquery.com/Discussion](http://docs.jquery.com/Discussion)