Zachary Ware added the comment:

I was rather off about kill_python, wasn't I?

Anyway, I've finally gotten another version put together that I'd like to get 
comments on.  Major differences between this patch and the previous one, in no 
particular order:

- Add a 'configure.bat' script to increase the parallel with Unix building.  
Currently only has 2 options, --with-pydebug and --with(out)-64-bit, which 
affect how PY_PLATFORM and PY_CONFIGURATION are set in make.bat, which allows 
for building any combination of Debug, Release, 32 bit, and 64 bit with 
make.bat.

- Add 'win-config.dat' to .hgignore; this file stores configure.bat's options 
for make.bat's use.

- Update documentation: PCbuild/readme.txt gets significant updates, including 
some that apply without make.bat and which I can split out into a separate 
patch if someone wants to commit those separately.  Doc/using/windows.rst also 
gets a small update which actually just goes with one of the PCbuild/readme.txt 
updates and isn't affected by make.bat.

- make.bat is now stand-alone; it does not rely on any other batch scripts 
except configure.bat (namely Tools/buildbot/*).

- Renamed "ready" target to "external", as promised.

- Reimplemented "test" target to match the Unix implementation.  Also added 
"buildbottest" target, which matches Unix implementation.

- Added separate "tcltk" target to build tcltk and copy the built .dlls to the 
appropriate place for the built Python to find them.

- Added "all" alias to "build" target (to match Unix).  "build" calls :external 
on its own, and calls :tcltk if it can't find the appropriate tcl/tk .dlls.

- Added "clobber" target, which does its best to obliterate everything make.bat 
can create.  The only way I've thought of to be more thorough is to actually 
delete the entire contents of the PCbuild directory and do an ``hg revert -C 
PCbuild`` to get it back, but that does have the possibility to be more 
destructive than desired.

- Added variables to the top of the file to set the versions of the external 
projects.  This means there's only one place to update when an external is 
updated, and for easy testing one could do something akin to ``make 
"OPENSSLVERSION=openssl-1.0.1e"``

- Added "msi" target to perform the task of Tools/buildbot/buildmsi.bat.  Note 
that this one is hard for me to test, as buildmsi.bat does not work properly 
for me.  However, the msi target works as well or better than buildmsi.bat for 
me, and should work assuming msi.py can do what it is meant to.  I wonder, 
though; does anybody use buildmsi.bat?  I noticed that it has information in it 
hard-coded for Python 2.6a3...

Several things have gone through an iteration or two since the last patch; I'll 
try to go through and add some comments on Rietveld myself.

Since make.bat is now stand-alone, if it is accepted (and it is deemed 
desirable to do so), the Windows buildbots could be converted to use make.bat 
instead of Tools/buildbot/*, and that directory could actually be removed.  
This would also make it easy to set up a buildbot that tests a Release 
configuration of Python.

All comments welcome :)

----------
Added file: http://bugs.python.org/file29667/win_configure-make.diff

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue16895>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to