cpython/Tools/msi
Gregory P. Smith 51ee270876 issue7213: Open the pipes used by subprocesses with the FD_CLOEXEC flag from
the C code, using pipe2() when available.  Adds unittests for close_fds and
cloexec behaviors.
2010-12-13 07:59:39 +00:00
..
README.txt
crtlicense.txt Merged revisions 67859 via svnmerge from 2008-12-19 22:58:37 +00:00
msi.py issue7213: Open the pipes used by subprocesses with the FD_CLOEXEC flag from 2010-12-13 07:59:39 +00:00
msilib.py Drop cabarc artifact. 2010-09-04 22:12:46 +00:00
msisupport.c Recorded merge of revisions 81029 via svnmerge from 2010-05-09 15:52:27 +00:00
msisupport.mak
schema.py Revert r63378. These files need to stay compatible with Python 2.x (until Python 3.0 is actually used to package Python). 2008-07-18 18:40:42 +00:00
sequence.py Revert r63378. These files need to stay compatible with Python 2.x (until Python 3.0 is actually used to package Python). 2008-07-18 18:40:42 +00:00
uisample.py Revert r63378. These files need to stay compatible with Python 2.x (until Python 3.0 is actually used to package Python). 2008-07-18 18:40:42 +00:00
uuids.py Add UUID for 3.2a4 2010-11-12 17:20:02 +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.