
On 19 September 2000, Thomas Heller said:
Modified Files: bdist_wininst.py Log Message: Set the 'nt' installation scheme for the install command even if run on other systems, so that data, headers, scripts are included in the installer.
Ahh good, I was hoping you'd take care of this. But:
*** bdist_wininst.py 2000/09/16 15:56:32 1.12 --- bdist_wininst.py 2000/09/19 11:10:23 1.13
*** 75,78 **** --- 75,89 ---- install = self.reinitialize_command('install') install.root = self.bdist_dir
if os.name != 'nt':
# must force install to use the 'nt' scheme
install.select_scheme ('nt')
# change the backslash to the current pathname separator
for key in ('purelib', 'platlib', 'headers', 'scripts',
'data'):
attrname = 'install_' + key
attr = getattr (install, attrname)
if attr:
attr = string.replace (attr, '\\', os.sep)
setattr (install, attrname, attr)
I think we can get rid of this hack by changing the INSTALL_SCHEMES dictionary in install.py to store paths in Unix form, and then convert to native when they're needed. That is, the install path "templates" in install.py would be treated just like install paths in the setup script (or on the command line) -- convert from foo/bar/baz to foo\bar\baz on Windows, and foo:bar:baz on Mac OS. (Modulo Mac OS' peculiar convention for absolute/relative directories: not sure if 'convert_path()' handles that completely right.)
Greg Greg