view contrib/win32/win32-build.txt @ 3755:05120e210c65

Use unsigned version format. This way can use one additional bit, and when encountering invalid revlogs with the first bit set don't produce python warnings or strange error messages.
author Thomas Arendsen Hein <thomas@intevation.de>
date Fri, 01 Dec 2006 23:27:53 +0100
parents 068b32d06873
children d1dd16256114
line wrap: on
line source

The standalone Windows installer for Mercurial is built in a somewhat
jury-rigged fashion.

It has the following prerequisites, at least as I build it:

  Python for Windows
      http://www.python.org/ftp/python/2.4.1/python-2.4.1.msi

  MinGW
      http://www.mingw.org/

  Python for Windows Extensions
      http://sourceforge.net/projects/pywin32/

  mfc71.dll (just download, don't install)
      http://starship.python.net/crew/mhammond/win32/

  The py2exe distutils extension
      http://sourceforge.net/projects/py2exe/

  Inno Setup
      http://www.jrsoftware.org/isinfo.php

  ISTool
      http://www.istool.org/default.aspx/

  add_path (you need only add_path.exe in the zip file)
      http://www.barisione.org/apps.html#add_path

And, of course, Mercurial itself.

Once you have all this installed and built, clone a copy of the
Mercurial repository you want to package, and name the repo
C:\hg\hg-release.

In a shell, build a standalone copy of the hg.exe program:

  python setup.py build -c mingw32 py2exe -b 1

Copy mfc71.dll and add_path.exe into the dist directory that just
got created.

Run ISTool, and open the C:\hg\hg-release\contrib\win32\mercurial.iss
file.

In ISTool, type Ctrl-F9 to compile the installer file.  The actual
installer will be in the C:\hg\hg-release\Output directory.