##// END OF EJS Templates
Merge with crew-stable
Matt Mackall -
r4402:249e2603 merge default
parent child Browse files
Show More
@@ -1,47 +1,71 b''
1 The standalone Windows installer for Mercurial is built in a somewhat
1 The standalone Windows installer for Mercurial is built in a somewhat
2 jury-rigged fashion.
2 jury-rigged fashion.
3
3
4 It has the following prerequisites, at least as I build it:
4 It has the following prerequisites, at least as I build it:
5
5
6 Python for Windows
6 Python for Windows
7 http://www.python.org/ftp/python/2.4.1/python-2.4.1.msi
7 http://www.python.org/ftp/python/2.4.3/python-2.4.3.msi
8
8
9 MinGW
9 MinGW
10 http://www.mingw.org/
10 http://www.mingw.org/
11
11
12 Python for Windows Extensions
12 Python for Windows Extensions
13 http://sourceforge.net/projects/pywin32/
13 http://sourceforge.net/projects/pywin32/
14
14
15 mfc71.dll (just download, don't install)
15 mfc71.dll (just download, don't install)
16 http://starship.python.net/crew/mhammond/win32/
16 http://starship.python.net/crew/mhammond/win32/
17
17
18 The py2exe distutils extension
18 The py2exe distutils extension
19 http://sourceforge.net/projects/py2exe/
19 http://sourceforge.net/projects/py2exe/
20
20
21 Inno Setup
21 Inno Setup
22 http://www.jrsoftware.org/isinfo.php
22 http://www.jrsoftware.org/isinfo.php
23
23
24 ISTool
24 ISTool - optional
25 http://www.istool.org/default.aspx/
25 http://www.istool.org/default.aspx/
26
26
27 add_path (you need only add_path.exe in the zip file)
27 add_path (you need only add_path.exe in the zip file)
28 http://www.barisione.org/apps.html#add_path
28 http://www.barisione.org/apps.html#add_path
29
29
30 And, of course, Mercurial itself.
30 And, of course, Mercurial itself.
31
31
32 Once you have all this installed and built, clone a copy of the
32 Once you have all this installed and built, clone a copy of the
33 Mercurial repository you want to package, and name the repo
33 Mercurial repository you want to package, and name the repo
34 C:\hg\hg-release.
34 C:\hg\hg-release.
35
35
36 In a shell, build a standalone copy of the hg.exe program:
36 In a shell, build a standalone copy of the hg.exe program:
37
37
38 python setup.py build -c mingw32 py2exe -b 1
38 python setup.py build -c mingw32
39 python setup.py py2exe -b 1
40
41 Note: the previously suggested combined command of "python setup.py build -c
42 mingw32 py2exe -b 1" doesn't work correctly anymore as it doesn't include the
43 extensions in the mercurial subdirectory.
39
44
40 Copy mfc71.dll and add_path.exe into the dist directory that just
45 If you want to create a file named setup.cfg with the contents:
41 got created.
46
47 [build]
48 compiler=mingw32
49
50 you can skip the first build step.
51
52 Copy mfc71.dll and add_path.exe into the dist directory that just got created.
42
53
43 Run ISTool, and open the C:\hg\hg-release\contrib\win32\mercurial.iss
54 If you use ISTool, you open the C:\hg\hg-release\contrib\win32\mercurial.iss
44 file.
55 file and type Ctrl-F9 to compile the installer file.
56
57 Otherwise you run the Inno Setup compiler. Assuming it's on the path you run:
58
59 iscc contrib\win32\mercurial.iss
60
61 The actual installer will be in the C:\hg\hg-release\Output directory.
45
62
46 In ISTool, type Ctrl-F9 to compile the installer file. The actual
63 To automate the steps above you may want to create a batchfile based on the
47 installer will be in the C:\hg\hg-release\Output directory.
64 following:
65
66 echo [build] > setup.cfg
67 echo compiler=mingw32 >> setup.cfg
68 python setup.py py2exe -b 1
69 iscc contrib\win32\mercurial.iss
70
71 and run it from the root of the hg repository (c:\hg\hg-release).
General Comments 0
You need to be logged in to leave comments. Login now