Issue #17896: Move Windows external lib sources from .. to externals.
This commit is contained in:
parent
91f01e175a
commit
4b2b1de0bd
|
@ -70,4 +70,5 @@ tags
|
||||||
TAGS
|
TAGS
|
||||||
.coverage
|
.coverage
|
||||||
coverage/
|
coverage/
|
||||||
|
externals/
|
||||||
htmlcov/
|
htmlcov/
|
||||||
|
|
|
@ -92,6 +92,7 @@ Modules/_freeze_importlib
|
||||||
Modules/_testembed
|
Modules/_testembed
|
||||||
.coverage
|
.coverage
|
||||||
coverage/
|
coverage/
|
||||||
|
externals/
|
||||||
htmlcov/
|
htmlcov/
|
||||||
*.gcda
|
*.gcda
|
||||||
*.gcno
|
*.gcno
|
||||||
|
|
|
@ -48,8 +48,8 @@ else:
|
||||||
|
|
||||||
prefix = os.path.join(sys.base_prefix,"tcl")
|
prefix = os.path.join(sys.base_prefix,"tcl")
|
||||||
if not os.path.exists(prefix):
|
if not os.path.exists(prefix):
|
||||||
# devdir/../tcltk/lib
|
# devdir/externals/tcltk/lib
|
||||||
prefix = os.path.join(sys.base_prefix, os.path.pardir, "tcltk", "lib")
|
prefix = os.path.join(sys.base_prefix, "externals", "tcltk", "lib")
|
||||||
prefix = os.path.abspath(prefix)
|
prefix = os.path.abspath(prefix)
|
||||||
# if this does not exist, no further search is needed
|
# if this does not exist, no further search is needed
|
||||||
if os.path.exists(prefix):
|
if os.path.exists(prefix):
|
||||||
|
|
|
@ -128,6 +128,9 @@ Build
|
||||||
Windows
|
Windows
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
- Issue #17896: The Windows build scripts now expect external library sources
|
||||||
|
to be in ``PCbuild\..\externals`` rather than ``PCbuild\..\..``.
|
||||||
|
|
||||||
- Issue #17717: The Windows build scripts now use a copy of NASM pulled from
|
- Issue #17717: The Windows build scripts now use a copy of NASM pulled from
|
||||||
svn.python.org to build OpenSSL.
|
svn.python.org to build OpenSSL.
|
||||||
|
|
||||||
|
|
|
@ -68,7 +68,7 @@ def get_ssl_dir():
|
||||||
propfile = (os.path.join(os.path.dirname(__file__), 'pyproject.props'))
|
propfile = (os.path.join(os.path.dirname(__file__), 'pyproject.props'))
|
||||||
with open(propfile, encoding='utf-8-sig') as f:
|
with open(propfile, encoding='utf-8-sig') as f:
|
||||||
m = re.search('openssl-([^<]+)<', f.read())
|
m = re.search('openssl-([^<]+)<', f.read())
|
||||||
return "..\..\openssl-"+m.group(1)
|
return "..\externals\openssl-"+m.group(1)
|
||||||
|
|
||||||
|
|
||||||
def create_makefile64(makefile, m32):
|
def create_makefile64(makefile, m32):
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
<PyDllName>python34$(PyDebugExt)</PyDllName>
|
<PyDllName>python34$(PyDebugExt)</PyDllName>
|
||||||
<PythonExe>$(OutDir)python$(PyDebugExt).exe</PythonExe>
|
<PythonExe>$(OutDir)python$(PyDebugExt).exe</PythonExe>
|
||||||
<KillPythonExe>$(OutDir)kill_python$(PyDebugExt).exe</KillPythonExe>
|
<KillPythonExe>$(OutDir)kill_python$(PyDebugExt).exe</KillPythonExe>
|
||||||
<externalsDir>..\..</externalsDir>
|
<externalsDir>..\externals</externalsDir>
|
||||||
<sqlite3Dir>$(externalsDir)\sqlite-3.8.3.1</sqlite3Dir>
|
<sqlite3Dir>$(externalsDir)\sqlite-3.8.3.1</sqlite3Dir>
|
||||||
<bz2Dir>$(externalsDir)\bzip2-1.0.6</bz2Dir>
|
<bz2Dir>$(externalsDir)\bzip2-1.0.6</bz2Dir>
|
||||||
<lzmaDir>$(externalsDir)\xz-5.0.5</lzmaDir>
|
<lzmaDir>$(externalsDir)\xz-5.0.5</lzmaDir>
|
||||||
|
|
|
@ -224,9 +224,10 @@ _tkinter
|
||||||
|
|
||||||
Unlike the other external libraries listed above, Tk must be built
|
Unlike the other external libraries listed above, Tk must be built
|
||||||
separately before the _tkinter module can be built. This means that
|
separately before the _tkinter module can be built. This means that
|
||||||
a pre-built Tcl/Tk installation is expected in ..\..\tcltk (tcltk64
|
a pre-built Tcl/Tk installation is expected in ..\externals\tcltk
|
||||||
for 64-bit) relative to this directory. See "Getting External
|
(tcltk64 for 64-bit) relative to this directory. See "Getting
|
||||||
Sources" below for the easiest method to ensure Tcl/Tk is built.
|
External Sources" below for the easiest method to ensure Tcl/Tk is
|
||||||
|
built.
|
||||||
|
|
||||||
|
|
||||||
Getting External Sources
|
Getting External Sources
|
||||||
|
@ -246,12 +247,12 @@ directory from ..\, i.e.:
|
||||||
This extracts all the external sub-projects from
|
This extracts all the external sub-projects from
|
||||||
http://svn.python.org/projects/external
|
http://svn.python.org/projects/external
|
||||||
via Subversion (so you'll need an svn.exe on your PATH) and places them
|
via Subversion (so you'll need an svn.exe on your PATH) and places them
|
||||||
in ..\.. (relative to this directory).
|
in ..\externals (relative to this directory).
|
||||||
|
|
||||||
It is also possible to download sources from each project's homepage,
|
It is also possible to download sources from each project's homepage,
|
||||||
though you may have to change the names of some folders in order to make
|
though you may have to change the names of some folders in order to make
|
||||||
things work. For instance, if you were to download a version 5.0.7 of
|
things work. For instance, if you were to download a version 5.0.7 of
|
||||||
XZ Utils, you would need to extract the archive into ..\..\xz-5.0.5
|
XZ Utils, you would need to extract the archive into ..\externals\xz-5.0.5
|
||||||
anyway, since that is where the solution is set to look for xz. The
|
anyway, since that is where the solution is set to look for xz. The
|
||||||
same is true for all other external projects.
|
same is true for all other external projects.
|
||||||
|
|
||||||
|
@ -268,7 +269,7 @@ The external-amd64.bat file contains this for tcl:
|
||||||
So for a release build, you'd call it as:
|
So for a release build, you'd call it as:
|
||||||
nmake -f makefile.vc MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 clean all install
|
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
|
Note that the above command is called from within ..\externals\tcl-8.6.1.0\win
|
||||||
(relative to this directory); don't forget to build Tk as well as Tcl!
|
(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
|
This will be cleaned up in the future; http://bugs.python.org/issue15968
|
||||||
|
|
|
@ -38,7 +38,7 @@ if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts
|
||||||
if "%1"=="-d" (set suffix=_d) & 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) & (set tcltk=tcltk64) & shift & goto CheckOpts
|
||||||
|
|
||||||
PATH %PATH%;%~dp0..\..\%tcltk%\bin
|
PATH %PATH%;%~dp0..\externals\%tcltk%\bin
|
||||||
set exe=%prefix%\python%suffix%
|
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
|
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
|
if defined qmode goto Qmode
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
@rem Common file shared between external.bat and external-amd64.bat. Responsible for
|
@rem Common file shared between external.bat and external-amd64.bat. Responsible for
|
||||||
@rem fetching external components into the root\.. buildbot directories.
|
@rem fetching external components into the root\.. buildbot directories.
|
||||||
|
|
||||||
cd ..
|
if not exist externals mkdir externals
|
||||||
|
cd externals
|
||||||
@rem XXX: If you need to force the buildbots to start from a fresh environment, uncomment
|
@rem XXX: If you need to force the buildbots to start from a fresh environment, uncomment
|
||||||
@rem the following, check it in, then check it out, comment it out, then check it back in.
|
@rem the following, check it in, then check it out, comment it out, then check it back in.
|
||||||
@rem if exist bzip2-1.0.6 rd /s/q bzip2-1.0.6
|
@rem if exist bzip2-1.0.6 rd /s/q bzip2-1.0.6
|
||||||
|
|
Loading…
Reference in New Issue