ยปCore Development>Code coverage>PC/VS8.0/build_tkinter.py

Python code coverage for PC/VS8.0/build_tkinter.py

#countcontent
1n/a"""Script to compile the dependencies of _tkinter
2n/a
3n/aCopyright (c) 2007 by Christian Heimes <christian@cheimes.de>
4n/a
5n/aLicensed to PSF under a Contributor Agreement.
6n/a"""
7n/a
8n/aimport os
9n/aimport sys
10n/a
11n/ahere = os.path.abspath(os.path.dirname(__file__))
12n/apar = os.path.pardir
13n/a
14n/aif 1:
15n/a TCL = "tcl8.4.16"
16n/a TK = "tk8.4.16"
17n/a TIX = "tix-8.4.0"
18n/aelse:
19n/a TCL = "tcl8.5b3"
20n/a TK = "tcl8.5b3"
21n/a TIX = "Tix8.4.2"
22n/a
23n/aROOT = os.path.abspath(os.path.join(here, par, par, par))
24n/a# Windows 2000 compatibility: WINVER 0x0500
25n/a# http://msdn2.microsoft.com/en-us/library/aa383745.aspx
26n/aNMAKE = "nmake /nologo /f %s COMPILERFLAGS=-DWINVER=0x0500 %s %s"
27n/a
28n/adef nmake(makefile, command="", **kw):
29n/a defines = ' '.join(k+'='+v for k, v in kw.items())
30n/a cmd = NMAKE % (makefile, defines, command)
31n/a print("\n\n"+cmd+"\n")
32n/a if os.system(cmd) != 0:
33n/a raise RuntimeError(cmd)
34n/a
35n/adef build(platform, clean):
36n/a if platform == "Win32":
37n/a dest = os.path.join(ROOT, "tcltk")
38n/a machine = "X86"
39n/a elif platform == "x64":
40n/a dest = os.path.join(ROOT, "tcltk64")
41n/a machine = "X64"
42n/a else:
43n/a raise ValueError(platform)
44n/a
45n/a # TCL
46n/a tcldir = os.path.join(ROOT, TCL)
47n/a if 1:
48n/a os.chdir(os.path.join(tcldir, "win"))
49n/a if clean:
50n/a nmake("makefile.vc", "clean")
51n/a nmake("makefile.vc")
52n/a nmake("makefile.vc", "install", INSTALLDIR=dest)
53n/a
54n/a # TK
55n/a if 1:
56n/a os.chdir(os.path.join(ROOT, TK, "win"))
57n/a if clean:
58n/a nmake("makefile.vc", "clean", TCLDIR=tcldir)
59n/a nmake("makefile.vc", TCLDIR=tcldir)
60n/a nmake("makefile.vc", "install", TCLDIR=tcldir, INSTALLDIR=dest)
61n/a
62n/a # TIX
63n/a if 1:
64n/a # python9.mak is available at http://svn.python.org
65n/a os.chdir(os.path.join(ROOT, TIX, "win"))
66n/a if clean:
67n/a nmake("python9.mak", "clean")
68n/a nmake("python9.mak", MACHINE=machine)
69n/a nmake("python9.mak", "install")
70n/a
71n/adef main():
72n/a if len(sys.argv) < 2 or sys.argv[1] not in ("Win32", "x64"):
73n/a print("%s Win32|x64" % sys.argv[0])
74n/a sys.exit(1)
75n/a
76n/a if "-c" in sys.argv:
77n/a clean = True
78n/a else:
79n/a clean = False
80n/a
81n/a build(sys.argv[1], clean)
82n/a
83n/a
84n/aif __name__ == '__main__':
85n/a main()