mirror of https://github.com/python/cpython
Issue #15968: Incorporated Tcl, Tk, and Tix builds into the Windows build
solution. Currently, Tix is not built in Debug configuration. This change also: - simplifies some Tcl/Tk-related msbuild properties for _tkinter - copies the Tcl and Tk DLLs into the build output directory, meaning they will always be available after a build without having to copy them manually or change PATH - removes PCbuild/build_tkinter.py: the solution does the build without needing to invoke Python (so Tcl/Tk/Tix can be built in parallel with the rest of the build using the `/m` msbuild command line switch) - removes an outdated README concerning building Tcl/Tk on AMD64
This commit is contained in:
parent
04ea84a20d
commit
a191b91a43
|
@ -103,6 +103,12 @@ Tools/Demos
|
|||
- Issue #20535: PYTHONWARNING no longer affects the run_tests.py script.
|
||||
Patch by Arfrever Frehtes Taifersar Arahesis.
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
- Issue #15968: Incorporated Tcl, Tk, and Tix builds into the Windows build
|
||||
solution.
|
||||
|
||||
|
||||
What's New in Python 3.4.0?
|
||||
===========================
|
||||
|
|
|
@ -85,41 +85,49 @@
|
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyd.props" />
|
||||
<Import Project="pgupdate.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyd.props" />
|
||||
<Import Project="pginstrument.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyd.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyd_d.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyd.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="pgupdate.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyd.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="pginstrument.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyd.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyd_d.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
|
@ -155,7 +163,7 @@
|
|||
<PreprocessorDefinitions>WITH_APPINIT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>$(tcltkLibDebug);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>$(tcltkLib);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
|
@ -163,11 +171,11 @@
|
|||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>$(tcltk64Dir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(tcltkDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WITH_APPINIT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>$(tcltk64LibDebug);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>$(tcltkLib);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
|
@ -184,11 +192,11 @@
|
|||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>$(tcltk64Dir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(tcltkDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WITH_APPINIT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>$(tcltk64Lib);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>$(tcltkLib);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'">
|
||||
|
@ -205,11 +213,11 @@
|
|||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>$(tcltk64Dir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(tcltkDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WITH_APPINIT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>$(tcltk64Lib);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>$(tcltkLib);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
|
@ -227,11 +235,11 @@
|
|||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>$(tcltk64Dir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(tcltkDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WITH_APPINIT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>$(tcltk64Lib);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>$(tcltkLib);%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
|
@ -244,6 +252,12 @@
|
|||
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>
|
||||
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="tcl.vcxproj">
|
||||
<Project>{b5fd6f1d-129e-4bff-9340-03606fac7283}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="tk.vcxproj">
|
||||
<Project>{7e85eccf-a72c-4da4-9e52-884508e80ba1}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
|
|
|
@ -1,78 +0,0 @@
|
|||
"""Script to compile the dependencies of _tkinter
|
||||
|
||||
Copyright (c) 2007 by Christian Heimes <christian@cheimes.de>
|
||||
|
||||
Licensed to PSF under a Contributor Agreement.
|
||||
"""
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
here = os.path.abspath(os.path.dirname(__file__))
|
||||
par = os.path.pardir
|
||||
|
||||
TCL = "tcl8.6.1"
|
||||
TK = "tk8.6.1"
|
||||
TIX = "tix-8.4.3.3"
|
||||
|
||||
ROOT = os.path.abspath(os.path.join(here, par, par))
|
||||
NMAKE = ('nmake /nologo /f %s %s %s')
|
||||
|
||||
def nmake(makefile, command="", **kw):
|
||||
defines = ' '.join(k+'='+str(v) for k, v in kw.items())
|
||||
cmd = NMAKE % (makefile, defines, command)
|
||||
print("\n\n"+cmd+"\n")
|
||||
if os.system(cmd) != 0:
|
||||
raise RuntimeError(cmd)
|
||||
|
||||
def build(platform, clean):
|
||||
if platform == "Win32":
|
||||
dest = os.path.join(ROOT, "tcltk")
|
||||
machine = "IX86"
|
||||
elif platform == "AMD64":
|
||||
dest = os.path.join(ROOT, "tcltk64")
|
||||
machine = "AMD64"
|
||||
else:
|
||||
raise ValueError(platform)
|
||||
|
||||
# TCL
|
||||
tcldir = os.path.join(ROOT, TCL)
|
||||
if 1:
|
||||
os.chdir(os.path.join(tcldir, "win"))
|
||||
if clean:
|
||||
nmake("makefile.vc", "clean")
|
||||
nmake("makefile.vc", MACHINE=machine)
|
||||
nmake("makefile.vc", "install", INSTALLDIR=dest, MACHINE=machine)
|
||||
|
||||
# TK
|
||||
if 1:
|
||||
os.chdir(os.path.join(ROOT, TK, "win"))
|
||||
if clean:
|
||||
nmake("makefile.vc", "clean", DEBUG=0, TCLDIR=tcldir)
|
||||
nmake("makefile.vc", DEBUG=0, MACHINE=machine, TCLDIR=tcldir)
|
||||
nmake("makefile.vc", "install", DEBUG=0, INSTALLDIR=dest, MACHINE=machine, TCLDIR=tcldir)
|
||||
|
||||
# TIX
|
||||
if 1:
|
||||
# python9.mak is available at http://svn.python.org
|
||||
os.chdir(os.path.join(ROOT, TIX, "win"))
|
||||
if clean:
|
||||
nmake("python.mak", "clean")
|
||||
nmake("python.mak", MACHINE=machine, INSTALL_DIR=dest)
|
||||
nmake("python.mak", "install", MACHINE=machine, INSTALL_DIR=dest)
|
||||
|
||||
def main():
|
||||
if len(sys.argv) < 2 or sys.argv[1] not in ("Win32", "AMD64"):
|
||||
print("%s Win32|AMD64" % sys.argv[0])
|
||||
sys.exit(1)
|
||||
|
||||
if "-c" in sys.argv:
|
||||
clean = True
|
||||
else:
|
||||
clean = False
|
||||
|
||||
build(sys.argv[1], clean)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
|
@ -3,6 +3,7 @@
|
|||
<PropertyGroup Label="UserMacros">
|
||||
<PyDebugExt>_d</PyDebugExt>
|
||||
<KillPythonExe>$(OutDir)kill_python_d.exe</KillPythonExe>
|
||||
<TclDebugExt>g</TclDebugExt>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
|
@ -23,5 +24,8 @@
|
|||
<BuildMacro Include="KillPythonExe">
|
||||
<Value>$(KillPythonExe)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="TclDebugExt">
|
||||
<Value>$(TclDebugExt)</Value>
|
||||
</BuildMacro>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -78,6 +78,12 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_overlapped", "_overlapped.
|
|||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testembed", "_testembed.vcxproj", "{6DAC66D9-E703-4624-BE03-49112AB5AA62}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tcl", "tcl.vcxproj", "{B5FD6F1D-129E-4BFF-9340-03606FAC7283}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tk", "tk.vcxproj", "{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tix", "tix.vcxproj", "{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
|
@ -645,6 +651,52 @@ Global
|
|||
{6DAC66D9-E703-4624-BE03-49112AB5AA62}.Release|Win32.Build.0 = Release|Win32
|
||||
{6DAC66D9-E703-4624-BE03-49112AB5AA62}.Release|x64.ActiveCfg = Release|x64
|
||||
{6DAC66D9-E703-4624-BE03-49112AB5AA62}.Release|x64.Build.0 = Release|x64
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.Build.0 = Debug|x64
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.ActiveCfg = Release|Win32
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.Build.0 = Release|Win32
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.ActiveCfg = PGInstrument|x64
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.Build.0 = PGInstrument|x64
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.ActiveCfg = Release|Win32
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.Build.0 = Release|Win32
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.ActiveCfg = PGUpdate|x64
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.Build.0 = PGUpdate|x64
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.Build.0 = Release|Win32
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.ActiveCfg = Release|x64
|
||||
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.Build.0 = Release|x64
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.Build.0 = Debug|x64
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.ActiveCfg = Release|Win32
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.Build.0 = Release|Win32
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.ActiveCfg = PGInstrument|x64
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.Build.0 = PGInstrument|x64
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.ActiveCfg = Release|Win32
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.Build.0 = Release|Win32
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.ActiveCfg = PGUpdate|x64
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.Build.0 = PGUpdate|x64
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.Build.0 = Release|Win32
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.ActiveCfg = Release|x64
|
||||
{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.Build.0 = Release|x64
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.Build.0 = PGInstrument|Win32
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.ActiveCfg = PGInstrument|x64
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.Build.0 = PGInstrument|x64
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.Build.0 = PGUpdate|Win32
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.ActiveCfg = PGUpdate|x64
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.Build.0 = PGUpdate|x64
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.Build.0 = Release|Win32
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.ActiveCfg = Release|x64
|
||||
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.Build.0 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
|
@ -21,12 +21,10 @@
|
|||
<bz2Dir>$(externalsDir)\bzip2-1.0.6</bz2Dir>
|
||||
<lzmaDir>$(externalsDir)\xz-5.0.5</lzmaDir>
|
||||
<opensslDir>$(externalsDir)\openssl-1.0.1e</opensslDir>
|
||||
<tclDir>$(externalsDir)\tcl-8.6.1.0</tclDir>
|
||||
<tkDir>$(externalsDir)\tk-8.6.1.0</tkDir>
|
||||
<tixDir>$(externalsDir)\tix-8.4.3.3</tixDir>
|
||||
<tcltkDir>$(externalsDir)\tcltk</tcltkDir>
|
||||
<tcltk64Dir>$(externalsDir)\tcltk64</tcltk64Dir>
|
||||
<tcltkLib>$(tcltkDir)\lib\tcl86t.lib;$(tcltkDir)\lib\tk86t.lib</tcltkLib>
|
||||
<tcltkLibDebug>$(tcltkDir)\lib\tcl86tg.lib;$(tcltkDir)\lib\tk86tg.lib</tcltkLibDebug>
|
||||
<tcltk64Lib>$(tcltk64Dir)\lib\tcl86t.lib;$(tcltk64Dir)\lib\tk86t.lib</tcltk64Lib>
|
||||
<tcltk64LibDebug>$(tcltk64Dir)\lib\tcl86tg.lib;$(tcltk64Dir)\lib\tk86tg.lib</tcltk64LibDebug>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
|
@ -82,23 +80,17 @@
|
|||
<BuildMacro Include="opensslDir">
|
||||
<Value>$(opensslDir)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tclDir">
|
||||
<Value>$(tclDir)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tkDir">
|
||||
<Value>$(tkDir)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tixDir">
|
||||
<Value>$(tixDir)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tcltkDir">
|
||||
<Value>$(tcltkDir)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tcltk64Dir">
|
||||
<Value>$(tcltk64Dir)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tcltkLib">
|
||||
<Value>$(tcltkLib)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tcltkLibDebug">
|
||||
<Value>$(tcltkLibDebug)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tcltk64Lib">
|
||||
<Value>$(tcltk64Lib)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tcltk64LibDebug">
|
||||
<Value>$(tcltk64LibDebug)</Value>
|
||||
</BuildMacro>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
|
@ -217,11 +217,19 @@ _tkinter
|
|||
Homepage:
|
||||
http://www.tcl.tk/
|
||||
|
||||
Unlike the other external libraries listed above, Tk must be built
|
||||
separately before the _tkinter module can be built. This means that
|
||||
a pre-built Tcl/Tk installation is expected in ..\..\tcltk (tcltk64
|
||||
for 64-bit) relative to this directory. See "Getting External
|
||||
Sources" below for the easiest method to ensure Tcl/Tk is built.
|
||||
Tkinter's dependencies are built by the tcl.vcxproj and tk.vcxproj
|
||||
projects. The tix.vcxproj project also builds the Tix extended
|
||||
widget set for use with Tkinter.
|
||||
|
||||
Those three projects install their respective components in a
|
||||
directory alongside the source directories called "tcltk" on
|
||||
Win32 and "tcltk64" on x64. They also copy the Tcl and Tk DLLs
|
||||
into the current output directory, which should ensure that Tkinter
|
||||
is able to load Tcl/Tk without having to change your PATH.
|
||||
|
||||
The tcl, tk, and tix sub-projects do not have the ability to clean
|
||||
their builds; if you need to rebuild, you'll have to clean them by
|
||||
hand.
|
||||
|
||||
|
||||
Getting External Sources
|
||||
|
@ -250,26 +258,6 @@ XZ Utils, you would need to extract the archive into ..\..\xz-5.0.5
|
|||
anyway, since that is where the solution is set to look for xz. The
|
||||
same is true for all other external projects.
|
||||
|
||||
The external(-amd64).bat scripts will also build a debug build of
|
||||
Tcl/Tk, but there aren't any equivalent batch files for building release
|
||||
versions of Tcl/Tk currently available. If you need to build a release
|
||||
version of Tcl/Tk, just take a look at the relevant external(-amd64).bat
|
||||
file and find the two nmake lines, then call each one without the
|
||||
'DEBUG=1' parameter, i.e.:
|
||||
|
||||
The external-amd64.bat file contains this for tcl:
|
||||
nmake -f makefile.vc DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 clean all install
|
||||
|
||||
So for a release build, you'd call it as:
|
||||
nmake -f makefile.vc MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 clean all install
|
||||
|
||||
Note that the above command is called from within ..\..\tcl-8.6.1.0\win
|
||||
(relative to this directory); don't forget to build Tk as well as Tcl!
|
||||
|
||||
This will be cleaned up in the future; http://bugs.python.org/issue15968
|
||||
tracks adding a new tcltk.vcxproj file that will build Tcl/Tk and Tix
|
||||
the same way the other external projects listed above are built.
|
||||
|
||||
|
||||
Building for AMD64
|
||||
------------------
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Label="UserMacros">
|
||||
<PyDebugExt />
|
||||
<TclDebugExt />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
|
@ -15,5 +16,8 @@
|
|||
<BuildMacro Include="PyDebugExt">
|
||||
<Value>$(PyDebugExt)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="TclDebugExt">
|
||||
<Value>$(TclDebugExt)</Value>
|
||||
</BuildMacro>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -30,15 +30,13 @@ set prefix=.\
|
|||
set suffix=
|
||||
set qmode=
|
||||
set dashO=
|
||||
set tcltk=tcltk
|
||||
|
||||
:CheckOpts
|
||||
if "%1"=="-O" (set dashO=-O) & shift & goto CheckOpts
|
||||
if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts
|
||||
if "%1"=="-d" (set suffix=_d) & shift & goto CheckOpts
|
||||
if "%1"=="-x64" (set prefix=amd64) & (set tcltk=tcltk64) & shift & goto CheckOpts
|
||||
if "%1"=="-x64" (set prefix=amd64) & shift & goto CheckOpts
|
||||
|
||||
PATH %PATH%;%~dp0..\..\%tcltk%\bin
|
||||
set exe=%prefix%\python%suffix%
|
||||
set cmd=%exe% %dashO% -Wd -E -bb ../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
|
||||
if defined qmode goto Qmode
|
||||
|
|
|
@ -0,0 +1,175 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGInstrument|Win32">
|
||||
<Configuration>PGInstrument</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGInstrument|x64">
|
||||
<Configuration>PGInstrument</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGUpdate|Win32">
|
||||
<Configuration>PGUpdate</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGUpdate|x64">
|
||||
<Configuration>PGUpdate</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{B5FD6F1D-129E-4BFF-9340-03606FAC7283}</ProjectGuid>
|
||||
<RootNamespace>tcl</RootNamespace>
|
||||
<Keyword>MakeFileProj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="pgupdate.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="pginstrument.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="release.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="debug.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="pgupdate.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="pginstrument.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="release.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="debug.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<NMakeBuildCommandLine>
|
||||
IF EXIST $(tcltkDir)\include\tcl.h (
|
||||
IF EXIST $(tcltkDir)\bin\$(tclDLLName) (
|
||||
IF EXIST $(OutDir)$(tclDLLName) (
|
||||
echo Tcl is already built and available.
|
||||
exit /b 0
|
||||
) ELSE (
|
||||
echo Copying tcl dll to $(OutDir)
|
||||
xcopy $(tcltkDir)\bin\$(tclDLLName) $(OutDir)
|
||||
exit /b 0
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
IF NOT EXIST $(tclDir) (
|
||||
echo error: $(tclDir) doesn't exist.
|
||||
exit 1
|
||||
)
|
||||
|
||||
IF "$(Platform)" EQU "Win32" set TclMachine=IX86
|
||||
IF "$(Platform)" EQU "x64" set TclMachine=AMD64
|
||||
|
||||
IF "$(Configuration)" EQU "Debug" (
|
||||
set TclOpts=symbols
|
||||
) ELSE (
|
||||
set TclOpts=
|
||||
)
|
||||
|
||||
cd $(tclDir)\win
|
||||
|
||||
nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% core shell dlls && nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% INSTALLDIR=$(SolutionDir)$(tcltkDir) install-binaries install-libraries && xcopy /y $(SolutionDir)$(tcltkDir)\bin\$(tclDLLName) $(OutDir)
|
||||
</NMakeBuildCommandLine>
|
||||
<NMakeCleanCommandLine>del $(OutDir)$(tclDLLName)
|
||||
echo Tcl must be cleaned manually if you want to rebuild it.</NMakeCleanCommandLine>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,30 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets" />
|
||||
<PropertyGroup Label="UserMacros">
|
||||
<MSDEVDIR>Dummy value to avoid patching Tcl/Tk's makefile.vc</MSDEVDIR>
|
||||
<tclDLLName>tcl86t$(TclDebugExt).dll</tclDLLName>
|
||||
<tkDLLName>tk86t$(TclDebugExt).dll</tkDLLName>
|
||||
<tixDLLName>tix84$(TclDebugExt).dll</tixDLLName>
|
||||
<tcltkLib>$(tcltkDir)\lib\tcl86t$(TclDebugExt).lib;$(tcltkDir)\lib\tk86t$(TclDebugExt).lib</tcltkLib>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup />
|
||||
<ItemGroup>
|
||||
<BuildMacro Include="MSDEVDIR">
|
||||
<Value>$(MSDEVDIR)</Value>
|
||||
<EnvironmentVariable>true</EnvironmentVariable>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tclDLLName">
|
||||
<Value>$(tclDLLName)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tkDLLName">
|
||||
<Value>$(tkDLLName)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tixDLLName">
|
||||
<Value>$(tixDLLName)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tcltkLib">
|
||||
<Value>$(tcltkLib)</Value>
|
||||
</BuildMacro>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,171 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGInstrument|Win32">
|
||||
<Configuration>PGInstrument</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGInstrument|x64">
|
||||
<Configuration>PGInstrument</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGUpdate|Win32">
|
||||
<Configuration>PGUpdate</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGUpdate|x64">
|
||||
<Configuration>PGUpdate</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}</ProjectGuid>
|
||||
<RootNamespace>tix</RootNamespace>
|
||||
<Keyword>MakeFileProj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="pgupdate.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="pginstrument.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="release.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="debug.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="pgupdate.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="pginstrument.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="release.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="debug.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<NMakeBuildCommandLine>
|
||||
IF EXIST $(tcltkDir)\lib\tix8.4.3\$(tixDLLName) (
|
||||
echo Tix is already built and available.
|
||||
exit /b 0
|
||||
)
|
||||
|
||||
IF NOT EXIST $(tixDir) (
|
||||
echo error: $(tixDir) doesn't exist.
|
||||
exit 1
|
||||
)
|
||||
|
||||
IF "$(Platform)" EQU "Win32" set TclMachine=IX86
|
||||
IF "$(Platform)" EQU "x64" set TclMachine=AMD64
|
||||
|
||||
IF "$(Configuration)" EQU "Debug" (
|
||||
set TixDebug=1
|
||||
) ELSE (
|
||||
set TixDebug=0
|
||||
)
|
||||
|
||||
cd $(tixDir)\win
|
||||
nmake -f python.mak MACHINE=%TclMachine% DEBUG=%TixDebug% TCL_DIR=$(SolutionDir)$(tclDir) TK_DIR=$(SolutionDir)$(tkDir) all && nmake -f python.mak MACHINE=%TclMachine% DEBUG=%TixDebug% TCL_DIR=$(SolutionDir)$(tclDir) TK_DIR=$(SolutionDir)$(tkDir) INSTALL_DIR=$(SolutionDir)$(tcltkDir) install
|
||||
</NMakeBuildCommandLine>
|
||||
<NMakeCleanCommandLine>echo Tix must be cleaned manually if you want to rebuild it.</NMakeCleanCommandLine>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="tcl.vcxproj">
|
||||
<Project>{b5fd6f1d-129e-4bff-9340-03606fac7283}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="tk.vcxproj">
|
||||
<Project>{7e85eccf-a72c-4da4-9e52-884508e80ba1}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,178 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGInstrument|Win32">
|
||||
<Configuration>PGInstrument</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGInstrument|x64">
|
||||
<Configuration>PGInstrument</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGUpdate|Win32">
|
||||
<Configuration>PGUpdate</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="PGUpdate|x64">
|
||||
<Configuration>PGUpdate</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}</ProjectGuid>
|
||||
<RootNamespace>tk</RootNamespace>
|
||||
<Keyword>MakeFileProj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Makefile</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="pgupdate.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="pginstrument.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="release.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="debug.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="pgupdate.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="pginstrument.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="release.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="pyproject.props" />
|
||||
<Import Project="x64.props" />
|
||||
<Import Project="debug.props" />
|
||||
<Import Project="tcltk.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<NMakeBuildCommandLine>
|
||||
IF EXIST $(tcltkDir)\include\tk.h (
|
||||
IF EXIST $(tcltkDir)\bin\$(tkDLLName) (
|
||||
IF EXIST $(OutDir)$(tkDLLName) (
|
||||
echo Tk is already built and available.
|
||||
exit /b 0
|
||||
) ELSE (
|
||||
echo Copying tk dll to $(OutDir)
|
||||
xcopy $(tcltkDir)\bin\$(tkDLLName) $(OutDir)
|
||||
exit /b 0
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
IF NOT EXIST $(tkDir) (
|
||||
echo error: $(tkDir) doesn't exist.
|
||||
exit 1
|
||||
)
|
||||
|
||||
IF "$(Platform)" EQU "Win32" set TclMachine=IX86
|
||||
IF "$(Platform)" EQU "x64" set TclMachine=AMD64
|
||||
|
||||
IF "$(Configuration)" EQU "Debug" (
|
||||
set TclOpts=symbols,noxp
|
||||
) ELSE (
|
||||
set TclOpts=noxp
|
||||
)
|
||||
|
||||
cd $(tkDir)\win
|
||||
|
||||
nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% TCLDIR=$(SolutionDir)$(tclDir) all && nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% TCLDIR=$(SolutionDir)$(tclDir) INSTALLDIR=$(SolutionDir)$(tcltkDir) install-binaries install-libraries && xcopy /y $(SolutionDir)$(tcltkDir)\bin\$(tkDLLName) $(OutDir)
|
||||
</NMakeBuildCommandLine>
|
||||
<NMakeCleanCommandLine>del $(OutDir)$(tkDLLName)
|
||||
echo Tk must be cleaned manually if you want to rebuild it.</NMakeCleanCommandLine>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="tcl.vcxproj">
|
||||
<Project>{b5fd6f1d-129e-4bff-9340-03606fac7283}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -3,6 +3,9 @@
|
|||
<PropertyGroup Label="UserMacros" Condition="'$(HOST_PYTHON)'!=''">
|
||||
<PythonExe>$(HOST_PYTHON)</PythonExe>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="UserMacros">
|
||||
<tcltkDir>$(externalsDir)\tcltk64</tcltkDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
|
@ -16,5 +19,8 @@
|
|||
<BuildMacro Include="PythonExe">
|
||||
<Value>$(PythonExe)</Value>
|
||||
</BuildMacro>
|
||||
<BuildMacro Include="tcltkDir">
|
||||
<Value>$(tcltkDir)</Value>
|
||||
</BuildMacro>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
|
@ -1,36 +0,0 @@
|
|||
Comments on building tcl/tk for AMD64 with the MS SDK compiler
|
||||
==============================================================
|
||||
|
||||
I did have to build tcl/tk manually.
|
||||
|
||||
First, I had to build the nmakehlp.exe helper utility manually by executing
|
||||
cl nmakehlp.c /link bufferoverflowU.lib
|
||||
in both the tcl8.4.12\win and tk8.4.12\win directories.
|
||||
|
||||
Second, the AMD64 compiler refuses to compile the file
|
||||
tcl8.4.12\generic\tclExecute.c because it insists on using intrinsics
|
||||
for the 'ceil' and 'floor' functions:
|
||||
|
||||
..\generic\tclExecute.c(394) : error C2099: initializer is not a constant
|
||||
..\generic\tclExecute.c(398) : error C2099: initializer is not a constant
|
||||
|
||||
I did comment out these lines; an alternative would have been to use
|
||||
the /Oi- compiler flag to disable the intrinsic functions.
|
||||
The commands then used were these:
|
||||
|
||||
svn export http://svn.python.org/projects/external/tcl8.4.12
|
||||
cd tcl8.4.12\win
|
||||
REM
|
||||
echo patch the tcl8.4.12\generic\tclExecute.c file
|
||||
pause
|
||||
REM
|
||||
cl nmakehlp.c /link bufferoverflowU.lib
|
||||
nmake -f makefile.vc MACHINE=AMD64
|
||||
nmake -f makefile.vc INSTALLDIR=..\..\tcltk install
|
||||
cd ..\..
|
||||
svn export http://svn.python.org/projects/external/tk8.4.12
|
||||
cd tk8.4.12\win
|
||||
cl nmakehlp.c /link bufferoverflowU.lib
|
||||
nmake -f makefile.vc TCLDIR=..\..\tcl8.4.12 MACHINE=AMD64
|
||||
nmake -f makefile.vc TCLDIR=..\..\tcl8.4.12 INSTALLDIR=..\..\tcltk install
|
||||
cd ..\..
|
|
@ -2,20 +2,5 @@
|
|||
|
||||
@rem Assume we start inside the Python source directory
|
||||
call "Tools\buildbot\external-common.bat"
|
||||
call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64
|
||||
|
||||
if not exist tcltk64\bin\tcl86tg.dll (
|
||||
cd tcl-8.6.1.0\win
|
||||
nmake -f makefile.vc DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 clean all
|
||||
nmake -f makefile.vc DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 install
|
||||
cd ..\..
|
||||
)
|
||||
|
||||
if not exist tcltk64\bin\tk86tg.dll (
|
||||
cd tk-8.6.1.0\win
|
||||
nmake -f makefile.vc OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.6.1.0 clean
|
||||
nmake -f makefile.vc OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.6.1.0 all
|
||||
nmake -f makefile.vc OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.6.1.0 install
|
||||
cd ..\..
|
||||
)
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ cd ..
|
|||
@rem if exist tk-8.4.18.1 rd /s/q tk-8.4.18.1
|
||||
@rem if exist db-4.4.20 rd /s/q db-4.4.20
|
||||
@rem if exist openssl-1.0.1e rd /s/q openssl-1.0.1e
|
||||
@rem if exist sqlite-3.7.12 rd /s/q sqlite-3.7.12
|
||||
@rem if exist sqlite-3.7.12 rd /s/q sqlite-3.7.12
|
||||
|
||||
@rem bzip
|
||||
if not exist bzip2-1.0.6 (
|
||||
|
@ -29,12 +29,13 @@ if not exist openssl-1.0.1e (
|
|||
svn export http://svn.python.org/projects/external/openssl-1.0.1e
|
||||
)
|
||||
|
||||
@rem tcl/tk
|
||||
@rem tcl/tk/tix
|
||||
if not exist tcl-8.6.1.0 (
|
||||
rd /s/q tcltk tcltk64 tcl-8.5.11.0 tk-8.5.11.0
|
||||
rd /s/q tcltk tcltk64 tcl-8.5.11.0 tk-8.5.11.0 tix-8.4.3.3
|
||||
svn export http://svn.python.org/projects/external/tcl-8.6.1.0
|
||||
)
|
||||
if not exist tk-8.6.1.0 svn export http://svn.python.org/projects/external/tk-8.6.1.0
|
||||
if not exist tix-8.4.3.3 svn export http://svn.python.org/projects/external/tix-8.4.3.3
|
||||
|
||||
@rem sqlite3
|
||||
if not exist sqlite-3.8.3.1 (
|
||||
|
|
|
@ -2,20 +2,4 @@
|
|||
|
||||
@rem Assume we start inside the Python source directory
|
||||
call "Tools\buildbot\external-common.bat"
|
||||
call "%VS100COMNTOOLS%\vsvars32.bat"
|
||||
|
||||
if not exist tcltk\bin\tcl86tg.dll (
|
||||
@rem all and install need to be separate invocations, otherwise nmakehlp is not found on install
|
||||
cd tcl-8.6.1.0\win
|
||||
nmake -f makefile.vc DEBUG=1 INSTALLDIR=..\..\tcltk clean all
|
||||
nmake -f makefile.vc DEBUG=1 INSTALLDIR=..\..\tcltk install
|
||||
cd ..\..
|
||||
)
|
||||
|
||||
if not exist tcltk\bin\tk86tg.dll (
|
||||
cd tk-8.6.1.0\win
|
||||
nmake -f makefile.vc OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.6.1.0 clean
|
||||
nmake -f makefile.vc OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.6.1.0 all
|
||||
nmake -f makefile.vc OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.6.1.0 install
|
||||
cd ..\..
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue