[issue7020] regression in pywin32 build due to 2.6.3rc1

Tarek Ziadé report at bugs.python.org
Wed Sep 30 12:22:41 CEST 2009


Tarek Ziadé <ziade.tarek at gmail.com> added the comment:

Pywin32 is patching "build_ext.get_ext_filename", making the assumption
that it will be called only in a certain way (namespaces names)
by "build_ext.build_extension", to force the name of the output from
"pywintypes.pyd" to "pywintypes.dll".

But this API, even if its doctest doesn't make it clear (I will change
it to make it clearer) is used for both namespaced names and non
namespaced names by the community.

Lately we had a bug with inplace building of namespaced and non
namespaced extensions. To fix it, "build_ext.build_extension" is now
calling "get_ext_filename" differently and when it calls the pywin32
patched version, it fails because pywin32 fails to recognize the
"pywintypes" name and pass it to the non-patched
build_ext.get_ext_filename, leading to the problem.

The fix has to be done on pywin32 side, by making "get_ext_filename"
works as it is supposed : returning an extension name for any filename,
wheter it's namespaced or not.

I can help on it, it's a very simple fix.

But at the end, if pywin32 has to do such patches, there's a problem in
the way distutils plays with the MSVC linker : we should be able to work
with .dll's and .pyd's whithout having to patch build_ext behavior like
this.

----------
resolution: accepted -> invalid

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue7020>
_______________________________________


More information about the Python-bugs-list mailing list