[Python-Dev] wininst-*.exe files in Lib/distutils/command (original) (raw)
Petr Viktorin encukou at gmail.com
Thu Oct 18 12:26:34 EDT 2018
- Previous message (by thread): [Python-Dev] wininst-*.exe files in Lib/distutils/command
- Next message (by thread): [Python-Dev] wininst-*.exe files in Lib/distutils/command
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 10/18/18 4:40 PM, Zachary Ware wrote:
On Thu, Oct 18, 2018 at 9:09 AM VanL <van.lindberg at gmail.com> wrote:
Hi all,
I am looking into an issue associated with the wininst-*.exe files in the distutils/command subdirectory. It looks like these are the executable stubs used to create self-extracting zips for installation - but I am not 100% sure. It also looks like they include the calls to standard Windows functions to display the installer window. I have a couple questions I need help with: 1) Am I correct about the function, and if not, what are they? You are correct. IIUC, they are checked in to allow creating those installers from non-Windows platforms.
Is that the only reason for them? At least on Linux, bdist_wininst does not work since at least Python 3.2, as it tries to use a Windows-only encoding internally. https://bugs.python.org/issue10945
If they're only there for non-Windows platforms, they're useless.
2) Where did these come from, and where is their source code? Source can be found here: https://github.com/python/cpython/tree/master/PC/bdistwininst The individual checked-in .exe files were each originally built by whoever updated the Windows toolchain to a new version of MSVC (Christian Heimes, Brian Curtin, or Steve Dower; though the oldest ones were added by Thomas Heller, presumably using whatever the current toolchain(s) was (were) at the time). A few of them have been rebuilt after bug fixes in the source since they were added, mostly by the same people, though I also see Mark Hammond and Raymond Hettinger in the history (and Georg Brandl via svnmerge). I notice that there are a few very minor code cleanups (the three latest commits here https://github.com/python/cpython/commits/master/PC/bdistwininst/install.c) that have not made it into a rebuilt exe yet. FTR, we really ought to remove all but the 14.0 version from the master branch. We don't support building Python with any toolchain older than 14.0 anymore, and the older toolchains are nigh impossible to find anymore anyway.
- Previous message (by thread): [Python-Dev] wininst-*.exe files in Lib/distutils/command
- Next message (by thread): [Python-Dev] wininst-*.exe files in Lib/distutils/command
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]