cpython/Tools/msi
Thomas Wouters bca548061a Merged revisions 58053-58090 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r58061 | ronald.oussoren | 2007-09-09 13:13:42 +0200 (Sun, 09 Sep 2007) | 12 lines

  Newer autoconf versions (from 2.60) want a 'datarootdir' definition in
  (Make-)files that use mandir (and other data directory macros).

  This patch solves a warning during configure, specifically:

  ...
  config.status: creating Makefile.pre
  config.status: WARNING:  ../Makefile.pre.in seems to ignore the --datarootdir setting
  ...

  See also: <http://www.gnu.org/software/automake/manual/autoconf/Changed-Directory-Variables.html>
........
  r58064 | gregory.p.smith | 2007-09-09 22:25:00 +0200 (Sun, 09 Sep 2007) | 2 lines

  email address update
........
  r58067 | gregory.p.smith | 2007-09-10 01:36:46 +0200 (Mon, 10 Sep 2007) | 22 lines

  Change socket.error to inherit from IOError rather than being a stand
  alone class.  This addresses the primary concern in

   http://bugs.python.org/issue1706815

  python-dev discussion here:

   http://mail.python.org/pipermail/python-dev/2007-July/073749.html

  I chose IOError rather than EnvironmentError as the base class since
  socket objects are often used as transparent duck typed file objects
  in code already prepared to deal with IOError exceptions.

  also a minor fix:

   urllib2 - fix a couple places where IOError was raised rather than URLError.
             for better or worse, URLError already inherits from IOError so
             this won't break any existing code.

   test_urllib2net - replace bad ftp urls.
........
  r58084 | martin.v.loewis | 2007-09-10 08:18:32 +0200 (Mon, 10 Sep 2007) | 3 lines

  tr a-z A-Z does not work on Solaris (would require
  /usr/xpg4/bin/tr); make the character ranges explicit.
........
  r58086 | martin.v.loewis | 2007-09-10 12:21:22 +0200 (Mon, 10 Sep 2007) | 1 line

  Take chm file from build/htmlhelp/pydoc.chm.
........
  r58087 | martin.v.loewis | 2007-09-10 12:22:05 +0200 (Mon, 10 Sep 2007) | 1 line

  Beginnings of a "build MSI" step.
........
  r58088 | martin.v.loewis | 2007-09-10 15:19:10 +0200 (Mon, 10 Sep 2007) | 1 line

  Allow making update with no prior checkout.
........
  r58089 | martin.v.loewis | 2007-09-10 15:20:03 +0200 (Mon, 10 Sep 2007) | 1 line

  Update before making htmlhelp.
........
  r58090 | martin.v.loewis | 2007-09-10 15:30:38 +0200 (Mon, 10 Sep 2007) | 1 line

  Require that bash.exe is on the path, along with the rest of Cygwin.
........
2007-09-10 19:32:14 +00:00
..
README.txt Move msi from sandbox to Tools. 2004-08-22 13:34:34 +00:00
msi.py Merged revisions 58053-58090 via svnmerge from 2007-09-10 19:32:14 +00:00
msilib.py Port to Python 3.0. 2007-08-30 15:23:04 +00:00
msisupport.c Avoid using *W functions on Win95. Backported to 2.4. 2005-02-18 16:18:09 +00:00
msisupport.mak Add build support for AMD64. 2006-02-14 20:42:55 +00:00
schema.py Whitespace normalization. 2004-08-22 19:42:56 +00:00
sequence.py Move msi from sandbox to Tools. 2004-08-22 13:34:34 +00:00
uisample.py fix typos, mostly in comments 2005-10-28 14:39:47 +00:00
uuids.py Add uuids for 3.0. 2007-08-30 05:45:17 +00:00

README.txt

Packaging Python as a Microsoft Installer Package (MSI)
=======================================================

Using this library, Python can be packaged as a MS-Windows
MSI file. To generate an installer package, you need
a build tree. By default, the build tree root directory
is assumed to be in "../..". This location can be changed
by adding a file config.py; see the beginning of msi.py
for additional customization options.

The packaging process assumes that binaries have been 
generated according to the instructions in PCBuild/README.txt,
and that you have either Visual Studio or the Platform SDK
installed. In addition, you need the Python COM extensions,
either from PythonWin, or from ActivePython.

To invoke the script, open a cmd.exe window which has 
cabarc.exe in its PATH (e.g. "Visual Studio .NET 2003
Command Prompt"). Then invoke

<path-to-python.exe> msi.py

If everything succeeds, pythonX.Y.Z.msi is generated
in the current directory.