New submission from Zachary Ware: PCbuild\readme.txt has a comment from Trent Nelson dated 2-April-2008 suggesting moving the external library location for Windows from "<cpython checkout>\..\" to "<cpython checkout>\external\" to make switching between versions easier. I've gotten rather annoyed with having all of the external libs cluttering the folder holding my cpython checkout, so I've written a patch that moves them :).
The patch actually moves the external libs into "<checkout>\external-34", because in most cases it's best to have separately built externals for each Python version. The idea is to then have an "external-35" after 3.4 is released, and possibly "external-27" and "external-33" if it is permissible to backport this kind of change. There are only four places that would need to be changed in other versions; PCbuild/pyproject.props:19, PCbuild/rt.bat:41, Tools/buildbot/external-common.bat:4 and 5, and Lib/tkinter/_fix.py:52. All four are simple replacements which I believe could be automated by the release script. PCbuild/build_ssl.py is patched to find the externals dir in PCbuild/pyproject.props while finding the OpenSSL version there. A few of the benefits to this that have occurred to me are: - the fact that the dir holding your cpython checkout doesn't get cluttered up with external libs - it becomes very easy to rebuild all of the externals (just `rmdir /s /q external-34` and run external(-amd64).bat again) - no possibility of problems arising from one version trying to use an external lib built by/for another version The only real downsides I'm aware of are that it is a change from what everyone is accustomed to, and that it will use up a bit more disk space (which could be mitigated by using junctions, as Trent suggested in the comment in readme.txt). Also, committing this would cause an extra long build time on the buildbots due to having to recompile Tcl/Tk and OpenSSL. Everything builds and works for me using the buildbot scripts after the patch. All comments welcome :) Thanks, Zach ---------- components: Build, Extension Modules, Windows files: move_externals.diff keywords: patch messages: 188309 nosy: brian.curtin, tim.golden, trent, zach.ware priority: normal severity: normal status: open title: Move Windows external libs from <src>\..\ to <src>\externals type: enhancement versions: Python 3.4 Added file: http://bugs.python.org/file30113/move_externals.diff _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue17896> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com