cpython/Tools/buildbot
Trent Nelson 61828c725a Merged revisions 62129,62131,62133 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r62129 | trent.nelson | 2008-04-03 19:27:06 +0100 (Thu, 03 Apr 2008) | 16 lines

  Reimplement kill_python.  The existing version had a number of flaws, namely, it didn't work for x64 and it wasn't precise about which python_d.exe it was killing -- it just killed the first one it came across that happened to have 'pcbuild\python_d.exe' or 'build\python_d.exe' in it's path.  The new version has been rewritten from the ground up and now lives in PCbuild, instead of Tools\buildbot, and it has also been incorporated into the Visual Studio solution (pcbuild.sln) as 'kill_python'.  The solution has also been altered such that kill_python is called where necessary in the build process in order to prevent any linking errors due to open file locks.  In lieu of this, all of the existing bits and pieces in Tools\buildbot that called out to kill_python at various points have also been removed as they are now obsolete.  Tested on both Win32 and x64.

  Change set (included to improve usefulness of svnmerge log entry):
  M      PCbuild\pythoncore.vcproj
  M      PCbuild\pcbuild.sln
  M      PCbuild\release.vsprops
  A      PCbuild\kill_python.vcproj
  M      PCbuild\debug.vsprops
  A      PCbuild\kill_python.c
  D      Tools\buildbot\kill_python.bat
  D      Tools\buildbot\kill_python.mak
  M      Tools\buildbot\build.bat
  D      Tools\buildbot\Makefile
  M      Tools\buildbot\build-amd64.bat
  M      Tools\buildbot\buildmsi.bat
  D      Tools\buildbot\kill_python.c
........
  r62131 | trent.nelson | 2008-04-03 19:48:53 +0100 (Thu, 03 Apr 2008) | 1 line

  Add the correct OutputFile values for debug builds.  Fixes r62129's commit.
........
  r62133 | trent.nelson | 2008-04-03 21:00:08 +0100 (Thu, 03 Apr 2008) | 1 line

  Make kill_python a little more forgiving if it can't obtain a snapshot of module information for a given python[_d].exe process.  Failing here was too pessimistic; the python[_d].exe process may be owned by another user, which is the case in some buildbot environments.
........
2008-04-03 20:47:30 +00:00
..
README.tcltk-AMD64 Merged revisions 55962-56019 via svnmerge from 2007-06-18 17:58:50 +00:00
build-amd64.bat Merged revisions 62129,62131,62133 via svnmerge from 2008-04-03 20:47:30 +00:00
build.bat Merged revisions 62129,62131,62133 via svnmerge from 2008-04-03 20:47:30 +00:00
buildmsi.bat Merged revisions 62129,62131,62133 via svnmerge from 2008-04-03 20:47:30 +00:00
clean-amd64.bat Merged revisions 61639 via svnmerge from 2008-03-20 01:18:35 +00:00
clean.bat Merged revisions 61239-61249,61252-61257,61260-61264,61269-61275,61278-61279,61285-61286,61288-61290,61298,61303-61305,61312-61314,61317,61329,61332,61344,61350-61351,61363-61376,61378-61379,61382-61383,61387-61388,61392,61395-61396,61402-61403 via svnmerge from 2008-03-16 00:07:10 +00:00
external-amd64.bat Merged revisions 61639 via svnmerge from 2008-03-20 01:18:35 +00:00
external-common.bat Bring over external-commit.bat manually, wasn't picked up via svnmerge. 2008-03-20 01:20:22 +00:00
external.bat Merged revisions 61538-61540,61556,61559-61560,61563,61565,61571,61575-61576,61580-61582,61586,61591,61593,61595,61605-61606,61613-61616,61618,61621-61623,61625,61627,61631-61634 via svnmerge from 2008-03-19 21:50:51 +00:00
test-amd64.bat Merged revisions 61239-61249,61252-61257,61260-61264,61269-61275,61278-61279,61285-61286,61288-61290,61298,61303-61305,61312-61314,61317,61329,61332,61344,61350-61351,61363-61376,61378-61379,61382-61383,61387-61388,61392,61395-61396,61402-61403 via svnmerge from 2008-03-16 00:07:10 +00:00
test.bat Merged revisions 59642-59665 via svnmerge from 2008-01-02 18:30:52 +00:00

README.tcltk-AMD64

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 ..\..