ยปCore Development>Code coverage>PCbuild/build_tkinter.py

Python code coverage for PCbuild/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/aTCL = "tcl8.5.11"
15n/aTK = "tk8.5.11"
16n/aTIX = "tix-8.4.3.x"
17n/a
18n/aROOT = os.path.abspath(os.path.join(here, par, par))
19n/aNMAKE = ('nmake /nologo /f %s %s %s')
20n/a
21n/adef nmake(makefile, command="", **kw):
22n/a defines = ' '.join(k+'='+str(v) for k, v in kw.items())
23n/a cmd = NMAKE % (makefile, defines, command)
24n/a print("\n\n"+cmd+"\n")
25n/a if os.system(cmd) != 0:
26n/a raise RuntimeError(cmd)
27n/a
28n/adef build(platform, clean):
29n/a if platform == "Win32":
30n/a dest = os.path.join(ROOT, "tcltk")
31n/a machine = "IX86"
32n/a elif platform == "AMD64":
33n/a dest = os.path.join(ROOT, "tcltk64")
34n/a machine = "AMD64"
35n/a else:
36n/a raise ValueError(platform)
37n/a
38n/a # TCL
39n/a tcldir = os.path.join(ROOT, TCL)
40n/a if 1:
41n/a os.chdir(os.path.join(tcldir, "win"))
42n/a if clean:
43n/a nmake("makefile.vc", "clean")
44n/a nmake("makefile.vc", MACHINE=machine)
45n/a nmake("makefile.vc", "install", INSTALLDIR=dest, MACHINE=machine)
46n/a
47n/a # TK
48n/a if 1:
49n/a os.chdir(os.path.join(ROOT, TK, "win"))
50n/a if clean:
51n/a nmake("makefile.vc", "clean", DEBUG=0, TCLDIR=tcldir)
52n/a nmake("makefile.vc", DEBUG=0, MACHINE=machine, TCLDIR=tcldir)
53n/a nmake("makefile.vc", "install", DEBUG=0, INSTALLDIR=dest, MACHINE=machine, TCLDIR=tcldir)
54n/a
55n/a # TIX
56n/a if 1:
57n/a # python9.mak is available at http://svn.python.org
58n/a os.chdir(os.path.join(ROOT, TIX, "win"))
59n/a if clean:
60n/a nmake("python.mak", "clean")
61n/a nmake("python.mak", MACHINE=machine, INSTALL_DIR=dest)
62n/a nmake("python.mak", "install", MACHINE=machine, INSTALL_DIR=dest)
63n/a
64n/adef main():
65n/a if len(sys.argv) < 2 or sys.argv[1] not in ("Win32", "AMD64"):
66n/a print("%s Win32|AMD64" % sys.argv[0])
67n/a sys.exit(1)
68n/a
69n/a if "-c" in sys.argv:
70n/a clean = True
71n/a else:
72n/a clean = False
73n/a
74n/a build(sys.argv[1], clean)
75n/a
76n/a
77n/aif __name__ == '__main__':
78n/a main()