Commit a5e31091 authored by Martin v. Löwis's avatar Martin v. Löwis

Issue #1303434: Include PDBs in release.

Patch by James Lee and Daniel Stutzbach.
parent cc645b9a
......@@ -381,6 +381,8 @@ Tests
Build
-----
- Issue #1303434: Generate ZIP file containing all PDBs.
- Issue #9193: PEP 3149 is accepted.
- Issue #3101: Helper functions _add_one_to_index_C() and
......
# 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 @@ PCBUILD="PCbuild"
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 *
......@@ -1316,6 +1318,16 @@ def add_registry(db):
])
db.Commit()
def build_pdbzip():
pdbexclude = ['kill_python.pdb', 'make_buildinfo.pdb',
'make_versioninfo.pdb']
path = "python-%s%s-pdb.zip" % (full_current_version, msilib.arch_ext)
pdbzip = zipfile.ZipFile(path, 'w')
for f in glob.glob1(os.path.join(srcdir, PCBUILD), "*.pdb"):
if f not in pdbexclude and not f.endswith('_d.pdb'):
pdbzip.write(os.path.join(srcdir, PCBUILD, f), f)
pdbzip.close()
db,msiname = build_database()
try:
add_features(db)
......@@ -1398,3 +1410,6 @@ merge(msiname, "SharedCRT", "TARGETDIR", modules)
# 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()
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment