make.py (and the
pymake modules that support it) are an implementation of the
make tool which are mostly compatible with makefiles written for GNU
If running Windows, you need to have a Windows build environment installed for using
pymake to build Mozilla.
On other operating systems (Linux, OS X, etc),
pymake itself only requires Python 2.6 or higher (but not Python 3). Please note that Python 2.7 is strongly recommended.
If you use mach for everything, you don't have to worry about gmake and pymake: mach will run whatever is best for the current machine.
Note: On Windows, you must take special care to be able to switch back and forth between gmake and pymake on the same object dir. See Gmake vs. Pymake for more information.
Anywhere you would normally type
make, instead type
python /path/to/srcdir/build/pymake/make.py. For example:
- Instead of
make -f client.mkto start a build, you would type
python build/pymake/make.py -f client.mk.
- To run tests instead of typing
make mochitest-plainin the object directory, you would type
python ../build/pymake/make.py mochitest-plain.
Alternately, if you would like to simply type in
pymake -f client.mk from within the MINGW32 shell.
- While in the shell type
cd ~(without quotes).
- Using any appropriate text editor open .profile and add the following line in the file (assuming your mozilla-central is at
C:/mozilla-central, if not, adjust your path accordingly.)
- Save your .profile edit and close the shell, then restart the shell.
- Try typing just
pymakeinto the shell and press enter. This should come back with "No makefile found." If it does, your
pymakealias is connected and you are ready to type in
pymake -f client.mkto start the build.
gmake on Windows,
pymake is capable of doing parallel builds, so you can set a
MOZ_MAKE_FLAGS=-jN in your .
mozconfig without risk of deadlocks.
.mozconfig, it must be a Windows-style (i.e. c:/foo/bar) rather than an MSYS-style (i.e.