diff options
author | Georg Brandl <georg@python.org> | 2011-03-05 14:04:01 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2011-03-05 14:04:01 (GMT) |
commit | b5c93e9cadb4311ec3a267d18979d7a5e59d8422 (patch) | |
tree | d4f9834162147eff8e88101ce75d6a19ca47a724 | |
parent | 6feb9003e52ebff37e439ae711af9b6f4f604df1 (diff) | |
download | cpython-b5c93e9cadb4311ec3a267d18979d7a5e59d8422.zip cpython-b5c93e9cadb4311ec3a267d18979d7a5e59d8422.tar.gz cpython-b5c93e9cadb4311ec3a267d18979d7a5e59d8422.tar.bz2 |
Add .hgeol file and fix newlines in the 2.6 branch.
-rw-r--r-- | .hgeol | 39 | ||||
-rw-r--r-- | Doc/make.bat | 116 | ||||
-rw-r--r-- | PC/VS7.1/build_ssl.bat | 24 | ||||
-rw-r--r-- | PC/VS8.0/build.bat | 34 | ||||
-rw-r--r-- | PC/VS8.0/build_env.bat | 2 | ||||
-rw-r--r-- | PC/VS8.0/build_pgo.bat | 82 | ||||
-rw-r--r-- | PC/VS8.0/build_ssl.bat | 24 | ||||
-rw-r--r-- | PC/VS8.0/env.bat | 10 | ||||
-rw-r--r-- | PC/VS8.0/idle.bat | 30 | ||||
-rw-r--r-- | PC/VS8.0/rt.bat | 104 | ||||
-rw-r--r-- | Tools/buildbot/build-amd64.bat | 12 | ||||
-rw-r--r-- | Tools/buildbot/build.bat | 14 | ||||
-rw-r--r-- | Tools/buildbot/buildmsi.bat | 40 | ||||
-rw-r--r-- | Tools/buildbot/clean-amd64.bat | 14 | ||||
-rw-r--r-- | Tools/buildbot/clean.bat | 14 | ||||
-rw-r--r-- | Tools/buildbot/external-amd64.bat | 40 | ||||
-rw-r--r-- | Tools/buildbot/external-common.bat | 90 | ||||
-rw-r--r-- | Tools/buildbot/external.bat | 42 | ||||
-rw-r--r-- | Tools/buildbot/test-amd64.bat | 6 | ||||
-rw-r--r-- | Tools/buildbot/test.bat | 6 | ||||
-rw-r--r-- | Tools/msi/merge.py | 168 |
21 files changed, 475 insertions, 436 deletions
@@ -0,0 +1,39 @@ +[patterns] + +# Non human-editable files are binary + +**.dsp = BIN +**.dsw = BIN +**.mk = BIN +**.sln = BIN +**.vcproj = BIN +**.vsprops = BIN + +**.aif = BIN +**.au = BIN +**.bmp = BIN +**.db = BIN +**.exe = BIN +**.icns = BIN +**.gif = BIN +**.ico = BIN +**.info = BIN +**.jpg = BIN +**.pck = BIN +**.png = BIN +**.psd = BIN +**.tar = BIN +**.xar = BIN +**.zip = BIN + +Lib/email/test/data/msg_26.txt = BIN +Lib/test/sndhdrdata/sndhdr.* = BIN +Lib/test/decimaltestdata/*.decTest = BIN + +# All other files (which presumably are human-editable) are "native". +# This must be the last rule! + +** = native + +[repository] +native = LF diff --git a/Doc/make.bat b/Doc/make.bat index 7026951..80ac806 100644 --- a/Doc/make.bat +++ b/Doc/make.bat @@ -1,58 +1,58 @@ -@@echo off
-setlocal
-
-set SVNROOT=http://svn.python.org/projects
-if "%PYTHON%" EQU "" set PYTHON=..\pcbuild\python
-if "%HTMLHELP%" EQU "" set HTMLHELP=%ProgramFiles%\HTML Help Workshop\hhc.exe
-if "%DISTVERSION%" EQU "" for /f "usebackq" %%v in (`%PYTHON% tools/sphinxext/patchlevel.py`) do set DISTVERSION=%%v
-
-if "%1" EQU "" goto help
-if "%1" EQU "html" goto build
-if "%1" EQU "htmlhelp" goto build
-if "%1" EQU "latex" goto build
-if "%1" EQU "text" goto build
-if "%1" EQU "suspicious" goto build
-if "%1" EQU "linkcheck" goto build
-if "%1" EQU "changes" goto build
-if "%1" EQU "checkout" goto checkout
-if "%1" EQU "update" goto update
-
-:help
-set this=%~n0
-echo HELP
-echo.
-echo %this% checkout
-echo %this% update
-echo %this% html
-echo %this% htmlhelp
-echo %this% latex
-echo %this% text
-echo %this% suspicious
-echo %this% linkcheck
-echo %this% changes
-echo.
-goto end
-
-:checkout
-svn co %SVNROOT%/external/Sphinx-0.6.5/sphinx tools/sphinx
-svn co %SVNROOT%/external/docutils-0.6/docutils tools/docutils
-svn co %SVNROOT%/external/Jinja-2.3.1/jinja2 tools/jinja2
-svn co %SVNROOT%/external/Pygments-1.3.1/pygments tools/pygments
-goto end
-
-:update
-svn update tools/sphinx
-svn update tools/docutils
-svn update tools/jinja2
-svn update tools/pygments
-goto end
-
-:build
-if not exist build mkdir build
-if not exist build\%1 mkdir build\%1
-if not exist build\doctrees mkdir build\doctrees
-cmd /C %PYTHON% tools\sphinx-build.py -b%1 -dbuild\doctrees . build\%*
-if "%1" EQU "htmlhelp" "%HTMLHELP%" build\htmlhelp\python%DISTVERSION:.=%.hhp
-goto end
-
-:end
+@@echo off +setlocal + +set SVNROOT=http://svn.python.org/projects +if "%PYTHON%" EQU "" set PYTHON=..\pcbuild\python +if "%HTMLHELP%" EQU "" set HTMLHELP=%ProgramFiles%\HTML Help Workshop\hhc.exe +if "%DISTVERSION%" EQU "" for /f "usebackq" %%v in (`%PYTHON% tools/sphinxext/patchlevel.py`) do set DISTVERSION=%%v + +if "%1" EQU "" goto help +if "%1" EQU "html" goto build +if "%1" EQU "htmlhelp" goto build +if "%1" EQU "latex" goto build +if "%1" EQU "text" goto build +if "%1" EQU "suspicious" goto build +if "%1" EQU "linkcheck" goto build +if "%1" EQU "changes" goto build +if "%1" EQU "checkout" goto checkout +if "%1" EQU "update" goto update + +:help +set this=%~n0 +echo HELP +echo. +echo %this% checkout +echo %this% update +echo %this% html +echo %this% htmlhelp +echo %this% latex +echo %this% text +echo %this% suspicious +echo %this% linkcheck +echo %this% changes +echo. +goto end + +:checkout +svn co %SVNROOT%/external/Sphinx-0.6.5/sphinx tools/sphinx +svn co %SVNROOT%/external/docutils-0.6/docutils tools/docutils +svn co %SVNROOT%/external/Jinja-2.3.1/jinja2 tools/jinja2 +svn co %SVNROOT%/external/Pygments-1.3.1/pygments tools/pygments +goto end + +:update +svn update tools/sphinx +svn update tools/docutils +svn update tools/jinja2 +svn update tools/pygments +goto end + +:build +if not exist build mkdir build +if not exist build\%1 mkdir build\%1 +if not exist build\doctrees mkdir build\doctrees +cmd /C %PYTHON% tools\sphinx-build.py -b%1 -dbuild\doctrees . build\%* +if "%1" EQU "htmlhelp" "%HTMLHELP%" build\htmlhelp\python%DISTVERSION:.=%.hhp +goto end + +:end diff --git a/PC/VS7.1/build_ssl.bat b/PC/VS7.1/build_ssl.bat index 9aad441..f6be3c0 100644 --- a/PC/VS7.1/build_ssl.bat +++ b/PC/VS7.1/build_ssl.bat @@ -1,12 +1,12 @@ -if "%1" == "ReleaseAMD64" call "%MSSdk%\SetEnv" /XP64 /RETAIL
-
-@echo off
-if not defined HOST_PYTHON (
- if %1 EQU Debug (
- set HOST_PYTHON=python_d.exe
- ) ELSE (
- set HOST_PYTHON=python.exe
- )
-)
-%HOST_PYTHON% build_ssl.py %1 %2
-
+if "%1" == "ReleaseAMD64" call "%MSSdk%\SetEnv" /XP64 /RETAIL + +@echo off +if not defined HOST_PYTHON ( + if %1 EQU Debug ( + set HOST_PYTHON=python_d.exe + ) ELSE ( + set HOST_PYTHON=python.exe + ) +) +%HOST_PYTHON% build_ssl.py %1 %2 + diff --git a/PC/VS8.0/build.bat b/PC/VS8.0/build.bat index a6d961e..9bc8186 100644 --- a/PC/VS8.0/build.bat +++ b/PC/VS8.0/build.bat @@ -1,17 +1,17 @@ -@echo off
-rem A batch program to build or rebuild a particular configuration.
-rem just for convenience.
-
-setlocal
-set platf=Win32
-set conf=Release
-set build=/build
-
-:CheckOpts
-if "%1"=="-c" (set conf=%2) & shift & shift & goto CheckOpts
-if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts
-if "%1"=="-r" (set build=/rebuild) & shift & goto CheckOpts
-
-set cmd=devenv pcbuild.sln %build% "%conf%|%platf%"
-echo %cmd%
-%cmd%
+@echo off +rem A batch program to build or rebuild a particular configuration. +rem just for convenience. + +setlocal +set platf=Win32 +set conf=Release +set build=/build + +:CheckOpts +if "%1"=="-c" (set conf=%2) & shift & shift & goto CheckOpts +if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts +if "%1"=="-r" (set build=/rebuild) & shift & goto CheckOpts + +set cmd=devenv pcbuild.sln %build% "%conf%|%platf%" +echo %cmd% +%cmd% diff --git a/PC/VS8.0/build_env.bat b/PC/VS8.0/build_env.bat index 01024cf..4c67ae3 100644 --- a/PC/VS8.0/build_env.bat +++ b/PC/VS8.0/build_env.bat @@ -1 +1 @@ -@%comspec% /k env.bat %*
+@%comspec% /k env.bat %* diff --git a/PC/VS8.0/build_pgo.bat b/PC/VS8.0/build_pgo.bat index d28a767..a37b5bf 100644 --- a/PC/VS8.0/build_pgo.bat +++ b/PC/VS8.0/build_pgo.bat @@ -1,41 +1,41 @@ -@echo off
-rem A batch program to build PGO (Profile guided optimization) by first
-rem building instrumented binaries, then running the testsuite, and
-rem finally building the optimized code.
-rem Note, after the first instrumented run, one can just keep on
-rem building the PGUpdate configuration while developing.
-
-setlocal
-set platf=Win32
-
-rem use the performance testsuite. This is quick and simple
-set job1=..\..\tools\pybench\pybench.py -n 1 -C 1 --with-gc
-set path1=..\..\tools\pybench
-
-rem or the whole testsuite for more thorough testing
-set job2=..\..\lib\test\regrtest.py
-set path2=..\..\lib
-
-set job=%job1%
-set clrpath=%path1%
-
-:CheckOpts
-if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts
-if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts
-
-set PGI=%platf%-pgi
-set PGO=%platf%-pgo
-
-@echo on
-rem build the instrumented version
-call build -p %platf% -c PGInstrument
-
-rem remove .pyc files, .pgc files and execute the job
-%PGI%\python.exe rmpyc.py %clrpath%
-del %PGI%\*.pgc
-%PGI%\python.exe %job%
-
-rem finally build the optimized version
-if exist %PGO% del /s /q %PGO%
-call build -p %platf% -c PGUpdate
-
+@echo off +rem A batch program to build PGO (Profile guided optimization) by first +rem building instrumented binaries, then running the testsuite, and +rem finally building the optimized code. +rem Note, after the first instrumented run, one can just keep on +rem building the PGUpdate configuration while developing. + +setlocal +set platf=Win32 + +rem use the performance testsuite. This is quick and simple +set job1=..\..\tools\pybench\pybench.py -n 1 -C 1 --with-gc +set path1=..\..\tools\pybench + +rem or the whole testsuite for more thorough testing +set job2=..\..\lib\test\regrtest.py +set path2=..\..\lib + +set job=%job1% +set clrpath=%path1% + +:CheckOpts +if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts +if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts + +set PGI=%platf%-pgi +set PGO=%platf%-pgo + +@echo on +rem build the instrumented version +call build -p %platf% -c PGInstrument + +rem remove .pyc files, .pgc files and execute the job +%PGI%\python.exe rmpyc.py %clrpath% +del %PGI%\*.pgc +%PGI%\python.exe %job% + +rem finally build the optimized version +if exist %PGO% del /s /q %PGO% +call build -p %platf% -c PGUpdate + diff --git a/PC/VS8.0/build_ssl.bat b/PC/VS8.0/build_ssl.bat index 676f113..cb5a797 100644 --- a/PC/VS8.0/build_ssl.bat +++ b/PC/VS8.0/build_ssl.bat @@ -1,12 +1,12 @@ -@echo off
-if not defined HOST_PYTHON (
- if %1 EQU Debug (
- set HOST_PYTHON=python_d.exe
- if not exist python26_d.dll exit 1
- ) ELSE (
- set HOST_PYTHON=python.exe
- if not exist python26.dll exit 1
- )
-)
-%HOST_PYTHON% build_ssl.py %1 %2 %3
-
+@echo off +if not defined HOST_PYTHON ( + if %1 EQU Debug ( + set HOST_PYTHON=python_d.exe + if not exist python26_d.dll exit 1 + ) ELSE ( + set HOST_PYTHON=python.exe + if not exist python26.dll exit 1 + ) +) +%HOST_PYTHON% build_ssl.py %1 %2 %3 + diff --git a/PC/VS8.0/env.bat b/PC/VS8.0/env.bat index 7717d01..a4990a8 100644 --- a/PC/VS8.0/env.bat +++ b/PC/VS8.0/env.bat @@ -1,5 +1,5 @@ -@echo off
-set VS8=%ProgramFiles%\Microsoft Visual Studio 8
-echo Build environments: x86, ia64, amd64, x86_amd64, x86_ia64
-echo.
-call "%VS8%\VC\vcvarsall.bat" %1
+@echo off +set VS8=%ProgramFiles%\Microsoft Visual Studio 8 +echo Build environments: x86, ia64, amd64, x86_amd64, x86_ia64 +echo. +call "%VS8%\VC\vcvarsall.bat" %1 diff --git a/PC/VS8.0/idle.bat b/PC/VS8.0/idle.bat index 274ae1a..123e704 100644 --- a/PC/VS8.0/idle.bat +++ b/PC/VS8.0/idle.bat @@ -1,15 +1,15 @@ -@echo off
-rem start idle
-rem Usage: idle [-d]
-rem -d Run Debug build (python_d.exe). Else release build.
-
-setlocal
-set exe=python
-PATH %PATH%;..\..\..\tcltk\bin
-
-if "%1"=="-d" (set exe=python_d) & shift
-
-set cmd=%exe% ../../Lib/idlelib/idle.py %1 %2 %3 %4 %5 %6 %7 %8 %9
-
-echo on
-%cmd%
+@echo off +rem start idle +rem Usage: idle [-d] +rem -d Run Debug build (python_d.exe). Else release build. + +setlocal +set exe=python +PATH %PATH%;..\..\..\tcltk\bin + +if "%1"=="-d" (set exe=python_d) & shift + +set cmd=%exe% ../../Lib/idlelib/idle.py %1 %2 %3 %4 %5 %6 %7 %8 %9 + +echo on +%cmd% diff --git a/PC/VS8.0/rt.bat b/PC/VS8.0/rt.bat index 90fd794..767af76 100644 --- a/PC/VS8.0/rt.bat +++ b/PC/VS8.0/rt.bat @@ -1,52 +1,52 @@ -@echo off
-rem Run Tests. Run the regression test suite.
-rem Usage: rt [-d] [-O] [-q] regrtest_args
-rem -d Run Debug build (python_d.exe). Else release build.
-rem -O Run python.exe or python_d.exe (see -d) with -O.
-rem -q "quick" -- normally the tests are run twice, the first time
-rem after deleting all the .py[co] files reachable from Lib/.
-rem -q runs the tests just once, and without deleting .py[co] files.
-rem All leading instances of these switches are shifted off, and
-rem whatever remains is passed to regrtest.py. For example,
-rem rt -O -d -x test_thread
-rem runs
-rem python_d -O ../lib/test/regrtest.py -x test_thread
-rem twice, and
-rem rt -q -g test_binascii
-rem runs
-rem python_d ../lib/test/regrtest.py -g test_binascii
-rem to generate the expected-output file for binascii quickly.
-rem
-rem Confusing: if you want to pass a comma-separated list, like
-rem -u network,largefile
-rem then you have to quote it on the rt line, like
-rem rt -u "network,largefile"
-
-setlocal
-
-set exe=python
-set qmode=
-set dashO=
-PATH %PATH%;..\..\..\tcltk\bin
-
-:CheckOpts
-if "%1"=="-O" (set dashO=-O) & shift & goto CheckOpts
-if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts
-if "%1"=="-d" (set exe=python_d) & shift & goto CheckOpts
-
-set cmd=%exe% %dashO% -E -tt ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
-if defined qmode goto Qmode
-
-echo Deleting .pyc/.pyo files ...
-%exe% rmpyc.py
-
-echo on
-%cmd%
-@echo off
-
-echo About to run again without deleting .pyc/.pyo first:
-pause
-
-:Qmode
-echo on
-%cmd%
+@echo off +rem Run Tests. Run the regression test suite. +rem Usage: rt [-d] [-O] [-q] regrtest_args +rem -d Run Debug build (python_d.exe). Else release build. +rem -O Run python.exe or python_d.exe (see -d) with -O. +rem -q "quick" -- normally the tests are run twice, the first time +rem after deleting all the .py[co] files reachable from Lib/. +rem -q runs the tests just once, and without deleting .py[co] files. +rem All leading instances of these switches are shifted off, and +rem whatever remains is passed to regrtest.py. For example, +rem rt -O -d -x test_thread +rem runs +rem python_d -O ../lib/test/regrtest.py -x test_thread +rem twice, and +rem rt -q -g test_binascii +rem runs +rem python_d ../lib/test/regrtest.py -g test_binascii +rem to generate the expected-output file for binascii quickly. +rem +rem Confusing: if you want to pass a comma-separated list, like +rem -u network,largefile +rem then you have to quote it on the rt line, like +rem rt -u "network,largefile" + +setlocal + +set exe=python +set qmode= +set dashO= +PATH %PATH%;..\..\..\tcltk\bin + +:CheckOpts +if "%1"=="-O" (set dashO=-O) & shift & goto CheckOpts +if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts +if "%1"=="-d" (set exe=python_d) & shift & goto CheckOpts + +set cmd=%exe% %dashO% -E -tt ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9 +if defined qmode goto Qmode + +echo Deleting .pyc/.pyo files ... +%exe% rmpyc.py + +echo on +%cmd% +@echo off + +echo About to run again without deleting .pyc/.pyo first: +pause + +:Qmode +echo on +%cmd% diff --git a/Tools/buildbot/build-amd64.bat b/Tools/buildbot/build-amd64.bat index 8ec3328..5175c62 100644 --- a/Tools/buildbot/build-amd64.bat +++ b/Tools/buildbot/build-amd64.bat @@ -1,6 +1,6 @@ -@rem Used by the buildbot "compile" step.
-cmd /c Tools\buildbot\external-amd64.bat
-call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64
-cmd /c Tools\buildbot\clean-amd64.bat
-vcbuild /useenv PCbuild\kill_python.vcproj "Debug|x64" && PCbuild\amd64\kill_python_d.exe
-vcbuild PCbuild\pcbuild.sln "Debug|x64"
+@rem Used by the buildbot "compile" step. +cmd /c Tools\buildbot\external-amd64.bat +call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 +cmd /c Tools\buildbot\clean-amd64.bat +vcbuild /useenv PCbuild\kill_python.vcproj "Debug|x64" && PCbuild\amd64\kill_python_d.exe +vcbuild PCbuild\pcbuild.sln "Debug|x64" diff --git a/Tools/buildbot/build.bat b/Tools/buildbot/build.bat index 976ce72..ab3ea7d 100644 --- a/Tools/buildbot/build.bat +++ b/Tools/buildbot/build.bat @@ -1,7 +1,7 @@ -@rem Used by the buildbot "compile" step.
-cmd /c Tools\buildbot\external.bat
-call "%VS90COMNTOOLS%vsvars32.bat"
-cmd /c Tools\buildbot\clean.bat
-vcbuild /useenv PCbuild\kill_python.vcproj "Debug|Win32" && PCbuild\kill_python_d.exe
-vcbuild /useenv PCbuild\pcbuild.sln "Debug|Win32"
-
+@rem Used by the buildbot "compile" step. +cmd /c Tools\buildbot\external.bat +call "%VS90COMNTOOLS%vsvars32.bat" +cmd /c Tools\buildbot\clean.bat +vcbuild /useenv PCbuild\kill_python.vcproj "Debug|Win32" && PCbuild\kill_python_d.exe +vcbuild /useenv PCbuild\pcbuild.sln "Debug|Win32" + diff --git a/Tools/buildbot/buildmsi.bat b/Tools/buildbot/buildmsi.bat index 5fb458a..23f1535 100644 --- a/Tools/buildbot/buildmsi.bat +++ b/Tools/buildbot/buildmsi.bat @@ -1,20 +1,20 @@ -@rem Used by the buildbot "buildmsi" step.
-
-cmd /c Tools\buildbot\external.bat
-@rem build release versions of things
-call "%VS90COMNTOOLS%vsvars32.bat"
-
-@rem build Python
-vcbuild /useenv PCbuild\pcbuild.sln "Release|Win32"
-
-@rem build the documentation
-bash.exe -c 'cd Doc;make PYTHON=python2.5 update htmlhelp'
-"%ProgramFiles%\HTML Help Workshop\hhc.exe" Doc\build\htmlhelp\python26a3.hhp
-
-@rem buold the MSI file
-cd PC
-nmake /f icons.mak
-cd ..\Tools\msi
-del *.msi
-nmake /f msisupport.mak
-%HOST_PYTHON% msi.py
+@rem Used by the buildbot "buildmsi" step. + +cmd /c Tools\buildbot\external.bat +@rem build release versions of things +call "%VS90COMNTOOLS%vsvars32.bat" + +@rem build Python +vcbuild /useenv PCbuild\pcbuild.sln "Release|Win32" + +@rem build the documentation +bash.exe -c 'cd Doc;make PYTHON=python2.5 update htmlhelp' +"%ProgramFiles%\HTML Help Workshop\hhc.exe" Doc\build\htmlhelp\python26a3.hhp + +@rem buold the MSI file +cd PC +nmake /f icons.mak +cd ..\Tools\msi +del *.msi +nmake /f msisupport.mak +%HOST_PYTHON% msi.py diff --git a/Tools/buildbot/clean-amd64.bat b/Tools/buildbot/clean-amd64.bat index 1ce1605..9fb35e9 100644 --- a/Tools/buildbot/clean-amd64.bat +++ b/Tools/buildbot/clean-amd64.bat @@ -1,7 +1,7 @@ -@rem Used by the buildbot "clean" step.
-call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64
-cd PCbuild
-@echo Deleting .pyc/.pyo files ...
-del /s Lib\*.pyc Lib\*.pyo
-vcbuild /clean pcbuild.sln "Release|x64"
-vcbuild /clean pcbuild.sln "Debug|x64"
+@rem Used by the buildbot "clean" step. +call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 +cd PCbuild +@echo Deleting .pyc/.pyo files ... +del /s Lib\*.pyc Lib\*.pyo +vcbuild /clean pcbuild.sln "Release|x64" +vcbuild /clean pcbuild.sln "Debug|x64" diff --git a/Tools/buildbot/clean.bat b/Tools/buildbot/clean.bat index 0d4d12e..ec71804 100644 --- a/Tools/buildbot/clean.bat +++ b/Tools/buildbot/clean.bat @@ -1,7 +1,7 @@ -@rem Used by the buildbot "clean" step.
-call "%VS90COMNTOOLS%vsvars32.bat"
-@echo Deleting .pyc/.pyo files ...
-del /s Lib\*.pyc Lib\*.pyo
-cd PCbuild
-vcbuild /clean pcbuild.sln "Release|Win32"
-vcbuild /clean pcbuild.sln "Debug|Win32"
+@rem Used by the buildbot "clean" step. +call "%VS90COMNTOOLS%vsvars32.bat" +@echo Deleting .pyc/.pyo files ... +del /s Lib\*.pyc Lib\*.pyo +cd PCbuild +vcbuild /clean pcbuild.sln "Release|Win32" +vcbuild /clean pcbuild.sln "Debug|Win32" diff --git a/Tools/buildbot/external-amd64.bat b/Tools/buildbot/external-amd64.bat index 902e37a..e9c7011 100644 --- a/Tools/buildbot/external-amd64.bat +++ b/Tools/buildbot/external-amd64.bat @@ -1,20 +1,20 @@ -@rem Fetches (and builds if necessary) external dependencies
-
-@rem Assume we start inside the Python source directory
-call "Tools\buildbot\external-common.bat"
-call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64
-
-if not exist tcltk64\bin\tcl85g.dll (
- cd tcl-8.5.2.1\win
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 clean all
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 install
- cd ..\..
-)
-
-if not exist tcltk64\bin\tk85g.dll (
- cd tk-8.5.2.0\win
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.5.2.1 clean
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.5.2.1 all
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.5.2.1 install
- cd ..\..
-)
+@rem Fetches (and builds if necessary) external dependencies + +@rem Assume we start inside the Python source directory +call "Tools\buildbot\external-common.bat" +call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 + +if not exist tcltk64\bin\tcl85g.dll ( + cd tcl-8.5.2.1\win + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 clean all + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 install + cd ..\.. +) + +if not exist tcltk64\bin\tk85g.dll ( + cd tk-8.5.2.0\win + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.5.2.1 clean + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.5.2.1 all + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 TCLDIR=..\..\tcl-8.5.2.1 install + cd ..\.. +) diff --git a/Tools/buildbot/external-common.bat b/Tools/buildbot/external-common.bat index 839a4cd..c67efdf 100644 --- a/Tools/buildbot/external-common.bat +++ b/Tools/buildbot/external-common.bat @@ -1,45 +1,45 @@ -@rem Common file shared between external.bat and external-amd64.bat. Responsible for
-@rem fetching external components into the root\.. buildbot directories.
-
-cd ..
-@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 if exist bzip2-1.0.5 rd /s/q bzip2-1.0.5
-@rem if exist tcltk rd /s/q tcltk
-@rem if exist tcltk64 rd /s/q tcltk64
-@rem if exist tcl8.4.12 rd /s/q tcl8.4.12
-@rem if exist tcl8.4.16 rd /s/q tcl8.4.16
-@rem if exist tcl-8.4.18.1 rd /s/q tcl-8.4.18.1
-@rem if exist tk8.4.12 rd /s/q tk8.4.12
-@rem if exist tk8.4.16 rd /s/q tk8.4.16
-@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 db-4.7.25.0 rd /s/q db-4.7.25.0
-@rem if exist openssl-0.9.8l rd /s/q openssl-0.9.8l
-@rem if exist sqlite-3.5.9 rd /s/q sqlite-3.5.9
-
-@rem bzip
-if not exist bzip2-1.0.5 (
- rd /s/q bzip2-1.0.3
- svn export http://svn.python.org/projects/external/bzip2-1.0.5
-)
-
-@rem Berkeley DB
-if exist db-4.4.20 rd /s/q db-4.4.20
-if not exist db-4.7.25.0 svn export http://svn.python.org/projects/external/db-4.7.25.0
-
-@rem OpenSSL
-if not exist openssl-0.9.8l svn export http://svn.python.org/projects/external/openssl-0.9.8l
-
-@rem tcl/tk
-if not exist tcl-8.5.2.1 (
- rd /s/q tcltk tcltk64
- svn export http://svn.python.org/projects/external/tcl-8.5.2.1
-)
-if not exist tk-8.5.2.0 svn export http://svn.python.org/projects/external/tk-8.5.2.0
-
-@rem sqlite3
-if not exist sqlite-3.5.9 (
- rd /s/q sqlite-source-3.3.4
- svn export http://svn.python.org/projects/external/sqlite-3.5.9
-)
+@rem Common file shared between external.bat and external-amd64.bat. Responsible for +@rem fetching external components into the root\.. buildbot directories. + +cd .. +@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 if exist bzip2-1.0.5 rd /s/q bzip2-1.0.5 +@rem if exist tcltk rd /s/q tcltk +@rem if exist tcltk64 rd /s/q tcltk64 +@rem if exist tcl8.4.12 rd /s/q tcl8.4.12 +@rem if exist tcl8.4.16 rd /s/q tcl8.4.16 +@rem if exist tcl-8.4.18.1 rd /s/q tcl-8.4.18.1 +@rem if exist tk8.4.12 rd /s/q tk8.4.12 +@rem if exist tk8.4.16 rd /s/q tk8.4.16 +@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 db-4.7.25.0 rd /s/q db-4.7.25.0 +@rem if exist openssl-0.9.8l rd /s/q openssl-0.9.8l +@rem if exist sqlite-3.5.9 rd /s/q sqlite-3.5.9 + +@rem bzip +if not exist bzip2-1.0.5 ( + rd /s/q bzip2-1.0.3 + svn export http://svn.python.org/projects/external/bzip2-1.0.5 +) + +@rem Berkeley DB +if exist db-4.4.20 rd /s/q db-4.4.20 +if not exist db-4.7.25.0 svn export http://svn.python.org/projects/external/db-4.7.25.0 + +@rem OpenSSL +if not exist openssl-0.9.8l svn export http://svn.python.org/projects/external/openssl-0.9.8l + +@rem tcl/tk +if not exist tcl-8.5.2.1 ( + rd /s/q tcltk tcltk64 + svn export http://svn.python.org/projects/external/tcl-8.5.2.1 +) +if not exist tk-8.5.2.0 svn export http://svn.python.org/projects/external/tk-8.5.2.0 + +@rem sqlite3 +if not exist sqlite-3.5.9 ( + rd /s/q sqlite-source-3.3.4 + svn export http://svn.python.org/projects/external/sqlite-3.5.9 +) diff --git a/Tools/buildbot/external.bat b/Tools/buildbot/external.bat index d6b18ae..d90e8ce 100644 --- a/Tools/buildbot/external.bat +++ b/Tools/buildbot/external.bat @@ -1,21 +1,21 @@ -@rem Fetches (and builds if necessary) external dependencies
-
-@rem Assume we start inside the Python source directory
-call "Tools\buildbot\external-common.bat"
-call "%VS90COMNTOOLS%\vsvars32.bat"
-
-if not exist tcltk\bin\tcl85g.dll (
- @rem all and install need to be separate invocations, otherwise nmakehlp is not found on install
- cd tcl-8.5.2.1\win
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 DEBUG=1 INSTALLDIR=..\..\tcltk clean all
- nmake -f makefile.vc DEBUG=1 INSTALLDIR=..\..\tcltk install
- cd ..\..
-)
-
-if not exist tcltk\bin\tk85g.dll (
- cd tk-8.5.2.0\win
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.2.1 clean
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.2.1 all
- nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.2.1 install
- cd ..\..
-)
+@rem Fetches (and builds if necessary) external dependencies + +@rem Assume we start inside the Python source directory +call "Tools\buildbot\external-common.bat" +call "%VS90COMNTOOLS%\vsvars32.bat" + +if not exist tcltk\bin\tcl85g.dll ( + @rem all and install need to be separate invocations, otherwise nmakehlp is not found on install + cd tcl-8.5.2.1\win + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 DEBUG=1 INSTALLDIR=..\..\tcltk clean all + nmake -f makefile.vc DEBUG=1 INSTALLDIR=..\..\tcltk install + cd ..\.. +) + +if not exist tcltk\bin\tk85g.dll ( + cd tk-8.5.2.0\win + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.2.1 clean + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.2.1 all + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.2.1 install + cd ..\.. +) diff --git a/Tools/buildbot/test-amd64.bat b/Tools/buildbot/test-amd64.bat index 6124b51..d178c92 100644 --- a/Tools/buildbot/test-amd64.bat +++ b/Tools/buildbot/test-amd64.bat @@ -1,3 +1,3 @@ -@rem Used by the buildbot "test" step.
-cd PCbuild
-call rt.bat -q -d -x64 -uall -rw
+@rem Used by the buildbot "test" step. +cd PCbuild +call rt.bat -q -d -x64 -uall -rw diff --git a/Tools/buildbot/test.bat b/Tools/buildbot/test.bat index 3764b43..c8b1937 100644 --- a/Tools/buildbot/test.bat +++ b/Tools/buildbot/test.bat @@ -1,3 +1,3 @@ -@rem Used by the buildbot "test" step.
-cd PCbuild
-call rt.bat -d -q -uall -rw
+@rem Used by the buildbot "test" step. +cd PCbuild +call rt.bat -d -q -uall -rw diff --git a/Tools/msi/merge.py b/Tools/msi/merge.py index def3964..85de209 100644 --- a/Tools/msi/merge.py +++ b/Tools/msi/merge.py @@ -1,84 +1,84 @@ -import msilib,os,win32com,tempfile,sys
-PCBUILD="PCBuild"
-certname = None
-from config import *
-
-Win64 = "amd64" in PCBUILD
-
-mod_dir = os.path.join(os.environ["ProgramFiles"], "Common Files", "Merge Modules")
-msi = None
-if len(sys.argv)==2:
- msi = sys.argv[1]
-if Win64:
- modules = ["Microsoft_VC90_CRT_x86_x64.msm", "policy_9_0_Microsoft_VC90_CRT_x86_x64.msm"]
- if not msi: msi = "python-%s.amd64.msi" % full_current_version
-else:
- modules = ["Microsoft_VC90_CRT_x86.msm","policy_9_0_Microsoft_VC90_CRT_x86.msm"]
- if not msi: msi = "python-%s.msi" % full_current_version
-for i, n in enumerate(modules):
- modules[i] = os.path.join(mod_dir, n)
-
-def merge(msi, feature, rootdir, modules):
- cab_and_filecount = []
- # Step 1: Merge databases, extract cabfiles
- m = msilib.MakeMerge2()
- m.OpenLog("merge.log")
- print "Opened Log"
- m.OpenDatabase(msi)
- print "Opened DB"
- for module in modules:
- print module
- m.OpenModule(module,0)
- print "Opened Module",module
- m.Merge(feature, rootdir)
- print "Errors:"
- for e in m.Errors:
- print e.Type, e.ModuleTable, e.DatabaseTable
- print " Modkeys:",
- for s in e.ModuleKeys: print s,
- print
- print " DBKeys:",
- for s in e.DatabaseKeys: print s,
- print
- cabname = tempfile.mktemp(suffix=".cab")
- m.ExtractCAB(cabname)
- cab_and_filecount.append((cabname, len(m.ModuleFiles)))
- m.CloseModule()
- m.CloseDatabase(True)
- m.CloseLog()
-
- # Step 2: Add CAB files
- i = msilib.MakeInstaller()
- db = i.OpenDatabase(msi, win32com.client.constants.msiOpenDatabaseModeTransact)
-
- v = db.OpenView("SELECT LastSequence FROM Media")
- v.Execute(None)
- maxmedia = -1
- while 1:
- r = v.Fetch()
- if not r: break
- seq = r.IntegerData(1)
- if seq > maxmedia:
- maxmedia = seq
- print "Start of Media", maxmedia
-
- for cabname, count in cab_and_filecount:
- stream = "merged%d" % maxmedia
- msilib.add_data(db, "Media",
- [(maxmedia+1, maxmedia+count, None, "#"+stream, None, None)])
- msilib.add_stream(db, stream, cabname)
- os.unlink(cabname)
- maxmedia += count
- # The merge module sets ALLUSERS to 1 in the property table.
- # This is undesired; delete that
- v = db.OpenView("DELETE FROM Property WHERE Property='ALLUSERS'")
- v.Execute(None)
- v.Close()
- db.Commit()
-
-merge(msi, "SharedCRT", "TARGETDIR", modules)
-
-# certname (from config.py) should be (a substring of)
-# the certificate subject, e.g. "Python Software Foundation"
-if certname:
- os.system('signtool sign /n "%s" /t http://timestamp.verisign.com/scripts/timestamp.dll %s' % (certname, msi))
+import msilib,os,win32com,tempfile,sys +PCBUILD="PCBuild" +certname = None +from config import * + +Win64 = "amd64" in PCBUILD + +mod_dir = os.path.join(os.environ["ProgramFiles"], "Common Files", "Merge Modules") +msi = None +if len(sys.argv)==2: + msi = sys.argv[1] +if Win64: + modules = ["Microsoft_VC90_CRT_x86_x64.msm", "policy_9_0_Microsoft_VC90_CRT_x86_x64.msm"] + if not msi: msi = "python-%s.amd64.msi" % full_current_version +else: + modules = ["Microsoft_VC90_CRT_x86.msm","policy_9_0_Microsoft_VC90_CRT_x86.msm"] + if not msi: msi = "python-%s.msi" % full_current_version +for i, n in enumerate(modules): + modules[i] = os.path.join(mod_dir, n) + +def merge(msi, feature, rootdir, modules): + cab_and_filecount = [] + # Step 1: Merge databases, extract cabfiles + m = msilib.MakeMerge2() + m.OpenLog("merge.log") + print "Opened Log" + m.OpenDatabase(msi) + print "Opened DB" + for module in modules: + print module + m.OpenModule(module,0) + print "Opened Module",module + m.Merge(feature, rootdir) + print "Errors:" + for e in m.Errors: + print e.Type, e.ModuleTable, e.DatabaseTable + print " Modkeys:", + for s in e.ModuleKeys: print s, + print + print " DBKeys:", + for s in e.DatabaseKeys: print s, + print + cabname = tempfile.mktemp(suffix=".cab") + m.ExtractCAB(cabname) + cab_and_filecount.append((cabname, len(m.ModuleFiles))) + m.CloseModule() + m.CloseDatabase(True) + m.CloseLog() + + # Step 2: Add CAB files + i = msilib.MakeInstaller() + db = i.OpenDatabase(msi, win32com.client.constants.msiOpenDatabaseModeTransact) + + v = db.OpenView("SELECT LastSequence FROM Media") + v.Execute(None) + maxmedia = -1 + while 1: + r = v.Fetch() + if not r: break + seq = r.IntegerData(1) + if seq > maxmedia: + maxmedia = seq + print "Start of Media", maxmedia + + for cabname, count in cab_and_filecount: + stream = "merged%d" % maxmedia + msilib.add_data(db, "Media", + [(maxmedia+1, maxmedia+count, None, "#"+stream, None, None)]) + msilib.add_stream(db, stream, cabname) + os.unlink(cabname) + maxmedia += count + # The merge module sets ALLUSERS to 1 in the property table. + # This is undesired; delete that + v = db.OpenView("DELETE FROM Property WHERE Property='ALLUSERS'") + v.Execute(None) + v.Close() + db.Commit() + +merge(msi, "SharedCRT", "TARGETDIR", modules) + +# certname (from config.py) should be (a substring of) +# the certificate subject, e.g. "Python Software Foundation" +if certname: + os.system('signtool sign /n "%s" /t http://timestamp.verisign.com/scripts/timestamp.dll %s' % (certname, msi)) |