|
|
| Line 25: |
Line 25: |
| Things work slightly differently in Mercurial-land. The following might make more sense if you're already familiar with building Mozilla in the old-school CVS world. But even if you're not, you can give it a try: | | Things work slightly differently in Mercurial-land. The following might make more sense if you're already familiar with building Mozilla in the old-school CVS world. But even if you're not, you can give it a try: |
|
| |
|
| ==== Mac ====
| | * Install Python 2.4 or later. |
| | | * Install [http://www.selenic.com/mercurial/wiki/index.cgi/BinaryPackages Mercurial]. |
| * Install Python 2.4 or later. (<tt>sudo port install python24</tt>) | | * Install GNU make 3.81 or later. |
| * Install Mercurial perquisites (ASCIIDOC and a three way merge program) http://www.selenic.com/mercurial/
| |
| * Install Mercurial. (On Mac with MacPorts, <tt>sudo port install mercurial</tt>)
| |
| * Install GNU make 3.81 or later. (<tt>sudo port install gmake</tt>, but watch out: an older version is probably still in your <tt>PATH</tt>.) | |
| * <tt>hg clone http://hg.mozilla.org/actionmonkey</tt>
| |
| * <tt>cd actionmonkey</tt>
| |
| * <tt>python client.py checkout</tt> ''(The <tt>actionmonkey</tt> repository doesn't contain all the source files you need. This Python script grabs all the other source files (from other repositories, both CVS and hg) and puts them into your tree in the right places.)''
| |
| * Then build as you normally would. (Hint: For a quick debug build of <tt>[http://developer.mozilla.org/en/docs/Introduction_to_the_JavaScript_shell js]</tt>, try <tt>cd js/src; make -f Makefile.ref</tt>.)
| |
| | |
| ==== Windows ====
| |
| | |
| * Install MozillaBuild, from the [http://developer.mozilla.org/en/docs/Build_Documentation Mozilla build instructions]
| |
| * Use xemacs to add the contents of the script at [http://www.selenic.com/mercurial/wiki/index.cgi/MergingManuallyInEditor] to ~/.hgmerge using the command <code>xemacs ~/.hgmerge</code>.
| |
| * Run the following commands in MozillaBuild:
| |
| | |
| echo -e '[ui]\nmerge = ~/.hgmerge' > ~/.hgrc
| |
| chmod +x ~/.hgmerge
| |
| echo -e '\nexport PATH=$PATH:/c/Mercurial' >> ~/.bash_login
| |
| | |
| * Install Mercurial from http://www.selenic.com/mercurial/wiki/index.cgi/BinaryPackages (use the first Windows site, and the release version), and make sure the "change environment" checkbox in the installer's final page is checked.
| |
| <!--* Install GNU make 3.81 or later. (<tt>sudo port install gmake</tt>, but watch out: an older version is probably still in your <tt>PATH</tt>.)-->
| |
| * <tt>hg clone http://hg.mozilla.org/actionmonkey</tt> | | * <tt>hg clone http://hg.mozilla.org/actionmonkey</tt> |
| * <tt>cd actionmonkey</tt> | | * <tt>cd actionmonkey</tt> |
| Line 53: |
Line 33: |
| * Then build as you normally would. (Hint: For a quick debug build of <tt>[http://developer.mozilla.org/en/docs/Introduction_to_the_JavaScript_shell js]</tt>, try <tt>cd js/src; make -f Makefile.ref</tt>.) | | * Then build as you normally would. (Hint: For a quick debug build of <tt>[http://developer.mozilla.org/en/docs/Introduction_to_the_JavaScript_shell js]</tt>, try <tt>cd js/src; make -f Makefile.ref</tt>.) |
|
| |
|
| ==== Linux ====
| | You should be able to build a working JS shell or Firefox this way. If it doesn't work for you, please file a bug with "ActionMonkey" in the summary and assign it to <tt>jorendorff</tt>. |
| | |
| * Make sure you have Python 2.4, Mercurial, and GNU make installed, via whatever system your distribution uses (as well as gcc and g++).
| |
| * Use xemacs to add the contents of the script at [http://www.selenic.com/mercurial/wiki/index.cgi/MergingManuallyInEditor] to ~/.hgmerge using the command <code>xemacs ~/.hgmerge</code>.
| |
| * Run the following command in MozillaBuild to hook up merge functionality:
| |
| | |
| echo -e '[ui]\nmerge = ~/.hgmerge' > ~/.hgrc
| |
| chmod +x ~/.hgmerge
| |
| | |
| * <tt>hg clone http://hg.mozilla.org/actionmonkey</tt>
| |
| * <tt>cd actionmonkey</tt>
| |
| * <tt>python client.py checkout</tt> ''(The <tt>actionmonkey</tt> repository doesn't contain all the source files you need. This Python script grabs all the other source files (from other repositories, both CVS and hg) and puts them into your tree in the right places.)''
| |
| * Then build as you normally would. (Hint: For a quick debug build of <tt>[http://developer.mozilla.org/en/docs/Introduction_to_the_JavaScript_shell js]</tt>, try <tt>cd js/src; make -f Makefile.ref</tt>.)
| |
|
| |
|
| You should be able to build a working JS shell, Firefox, or other app this way. If it doesn't work for you, please file a bug with "ActionMonkey" in the summary and assign it to <tt>jorendorff</tt>.
| | ''Note: If you plan on using Mercurial for active development, you should consider installing a 3-way merge program, as described [http://www.selenic.com/mercurial/wiki/index.cgi/MergeProgram here].'' |
|
| |
|
| === Common errors === | | === Common errors === |