Index: msi.py =================================================================== --- msi.py (revision 83690) +++ msi.py (working copy) @@ -1,7 +1,7 @@ # Python MSI Generator # (C) 2003 Martin v. Loewis # See "FOO" in comments refers to MSDN sections with the title FOO. -import msilib, schema, sequence, os, glob, time, re, shutil +import msilib, schema, sequence, os, glob, time, re, shutil, zipfile from msilib import Feature, CAB, Directory, Dialog, Binary, add_data import uisample from win32com.client import constants @@ -31,6 +31,8 @@ MSVCR = "90" # Name of certificate in default store to sign MSI with certname = None +# Make a zip file containing the PDB files for this build? +pdbzip = True try: from config import * @@ -1315,6 +1317,15 @@ None, None, None, None, None, None), ]) db.Commit() + +def build_pdbzip(): + pdbexclude = ['kill_python.pdb', 'make_buildinfo.pdb', 'make_versioninfo.pdb'] + pdbzip = zipfile.ZipFile("python-%s%s-pdb.zip" % (full_current_version, msilib.arch_ext), 'w') + for f in glob.glob1(srcdir+"/"+PCBUILD, "*.pdb"): + if f not in pdbexclude: + pdbzip.write(srcdir+"/"+PCBUILD+"/"+f, f) + pdbzip.close() + db,msiname = build_database() try: @@ -1398,3 +1409,6 @@ # the certificate subject, e.g. "Python Software Foundation" if certname: os.system('signtool sign /n "%s" /t http://timestamp.verisign.com/scripts/timestamp.dll %s' % (certname, msiname)) + +if pdbzip: + build_pdbzip() \ No newline at end of file