annotate PCbuild/build_tkinter.py @ 78069:a8aa77458e12 3.2

Add c_size_t and c_ssize_t to the ctypes summary table.
author Antoine Pitrou <solipsis@pitrou.net>
date Thu, 12 Jul 2012 20:31:50 +0200
parents 0550a2447c1e
children 99786479dafb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
1 """Script to compile the dependencies of _tkinter
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
2
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
3 Copyright (c) 2007 by Christian Heimes <christian@cheimes.de>
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
4
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
5 Licensed to PSF under a Contributor Agreement.
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
6 """
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
7
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
8 import os
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
9 import sys
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
10
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
11 here = os.path.abspath(os.path.dirname(__file__))
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
12 par = os.path.pardir
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
13
66993
0550a2447c1e Upgrade Tcl/Tk to 8.5.9.
Martin v. Löwis <martin@v.loewis.de>
parents: 64294
diff changeset
14 TCL = "tcl8.5.9"
0550a2447c1e Upgrade Tcl/Tk to 8.5.9.
Martin v. Löwis <martin@v.loewis.de>
parents: 64294
diff changeset
15 TK = "tk8.5.9"
64294
9fac1970d380 Fix various build problems.
Martin v. Löwis <martin@v.loewis.de>
parents: 51750
diff changeset
16 TIX = "tix-8.4.3.x"
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
17
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
18 ROOT = os.path.abspath(os.path.join(here, par, par))
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
19 # Windows 2000 compatibility: WINVER 0x0500
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
20 # http://msdn2.microsoft.com/en-us/library/aa383745.aspx
44535
420fe6d7d5f4 Merged revisions 59703-59773 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 44396
diff changeset
21 NMAKE = ('nmake /nologo /f %s '
44643
d8e4342c145e Merged revisions 59883-59920 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 44535
diff changeset
22 'COMPILERFLAGS=\"-DWINVER=0x0500 -D_WIN32_WINNT=0x0500 -DNTDDI_VERSION=NTDDI_WIN2KSP4\" '
44535
420fe6d7d5f4 Merged revisions 59703-59773 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 44396
diff changeset
23 '%s %s')
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
24
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
25 def nmake(makefile, command="", **kw):
64294
9fac1970d380 Fix various build problems.
Martin v. Löwis <martin@v.loewis.de>
parents: 51750
diff changeset
26 defines = ' '.join(k+'='+str(v) for k, v in kw.items())
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
27 cmd = NMAKE % (makefile, defines, command)
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
28 print("\n\n"+cmd+"\n")
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
29 if os.system(cmd) != 0:
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
30 raise RuntimeError(cmd)
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
31
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
32 def build(platform, clean):
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
33 if platform == "Win32":
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
34 dest = os.path.join(ROOT, "tcltk")
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
35 machine = "X86"
47683
4da8b7a8cf2e Merged revisions 64185-64196 via svnmerge from
Martin v. Löwis <martin@v.loewis.de>
parents: 45471
diff changeset
36 elif platform == "AMD64":
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
37 dest = os.path.join(ROOT, "tcltk64")
47683
4da8b7a8cf2e Merged revisions 64185-64196 via svnmerge from
Martin v. Löwis <martin@v.loewis.de>
parents: 45471
diff changeset
38 machine = "AMD64"
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
39 else:
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
40 raise ValueError(platform)
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
41
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
42 # TCL
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
43 tcldir = os.path.join(ROOT, TCL)
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
44 if 1:
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
45 os.chdir(os.path.join(tcldir, "win"))
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
46 if clean:
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
47 nmake("makefile.vc", "clean")
47683
4da8b7a8cf2e Merged revisions 64185-64196 via svnmerge from
Martin v. Löwis <martin@v.loewis.de>
parents: 45471
diff changeset
48 nmake("makefile.vc", MACHINE=machine)
4da8b7a8cf2e Merged revisions 64185-64196 via svnmerge from
Martin v. Löwis <martin@v.loewis.de>
parents: 45471
diff changeset
49 nmake("makefile.vc", "install", INSTALLDIR=dest, MACHINE=machine)
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
50
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
51 # TK
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
52 if 1:
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
53 os.chdir(os.path.join(ROOT, TK, "win"))
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
54 if clean:
51750
db8db31fdb4c Merged revisions 69415,69591,69593 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 47683
diff changeset
55 nmake("makefile.vc", "clean", DEBUG=0, TCLDIR=tcldir)
64294
9fac1970d380 Fix various build problems.
Martin v. Löwis <martin@v.loewis.de>
parents: 51750
diff changeset
56 nmake("makefile.vc", DEBUG=0, MACHINE=machine, TCLDIR=tcldir)
9fac1970d380 Fix various build problems.
Martin v. Löwis <martin@v.loewis.de>
parents: 51750
diff changeset
57 nmake("makefile.vc", "install", DEBUG=0, INSTALLDIR=dest, MACHINE=machine, TCLDIR=tcldir)
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
58
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
59 # TIX
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
60 if 1:
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
61 # python9.mak is available at http://svn.python.org
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
62 os.chdir(os.path.join(ROOT, TIX, "win"))
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
63 if clean:
51750
db8db31fdb4c Merged revisions 69415,69591,69593 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 47683
diff changeset
64 nmake("python.mak", "clean")
db8db31fdb4c Merged revisions 69415,69591,69593 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 47683
diff changeset
65 nmake("python.mak", MACHINE=machine, INSTALL_DIR=dest)
64294
9fac1970d380 Fix various build problems.
Martin v. Löwis <martin@v.loewis.de>
parents: 51750
diff changeset
66 nmake("python.mak", "install", MACHINE=machine, INSTALL_DIR=dest)
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
67
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
68 def main():
47683
4da8b7a8cf2e Merged revisions 64185-64196 via svnmerge from
Martin v. Löwis <martin@v.loewis.de>
parents: 45471
diff changeset
69 if len(sys.argv) < 2 or sys.argv[1] not in ("Win32", "AMD64"):
4da8b7a8cf2e Merged revisions 64185-64196 via svnmerge from
Martin v. Löwis <martin@v.loewis.de>
parents: 45471
diff changeset
70 print("%s Win32|AMD64" % sys.argv[0])
44396
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
71 sys.exit(1)
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
72
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
73 if "-c" in sys.argv:
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
74 clean = True
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
75 else:
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
76 clean = False
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
77
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
78 build(sys.argv[1], clean)
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
79
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
80
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
81 if __name__ == '__main__':
6556f3f22c19 Merged revisions 59605-59624 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
82 main()