This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author cgohlke
Recipients cgohlke, koen, loewis, mhammond, tarek
Date 2010-04-27.18:03:41
SpamBayes Score 0.0
Marked as misclassified No
Message-id <1272391424.98.0.394441217483.issue7833@psf.upfronthosting.co.za>
In-reply-to
Content
> I have some doubts about option #4: it is a very specific use case, and then the whole benefit of issue 4120 is lost

Pythoncom are pywintypes are indeed special cases: Out of the 170 DLL files in my Python site-packages directory, these seem to be the only ones built with distutils. All other DLLs are apparently built without  Python involvement using make, nmake, CMake, or Visual Studio and most of them contain embedded manifests, which is the default when using nmake, CMake, or Visual Studio. Practically, to make a standalone distribution of any Python 2.6/3.1 application with external DLL dependencies likely requires to provide external manifest files. The issue4120 patch does not change this situation and I don't see any sane way to patch Python/distutils that could. The main benefit of the issue4120 patch, as I see it, is that PYD files produced by distutils work in a standalone distribution without any further attention. Msvc9compiler_stripruntimes_revised.patch does not change this.

My reasoning for this patch (besides fixing the bdist_wininst installer issue) was to allow the popular pywin32 package to build without changes, and offer a way for other extension packages to exclude manifests from DLL files if required (apparently not that common). Alternatively one could provide a mechanism to embed specific manifests into DLLs. Is that currently possible? Then pywin32 setup.py could be fixed.


> Why is putting a separate manifest file next to the DLL not an option?

Because the pythoncom dll is currently installed into the Windows system directory. Putting manifest files there will pollute the system directory even more and possibly interfere with other system components if not done right (not tested). But again, pywin32 setup.py could be fixed to not install the DLL/manifest files into the system directory.


Which Python packages other than pywin32 build DLL files via distutils? I don't know any.

Can anyone provide a minimal setup.py script and C file that produces a DLL file for testing?
History
Date User Action Args
2010-04-27 18:03:45cgohlkesetrecipients: + cgohlke, loewis, mhammond, koen, tarek
2010-04-27 18:03:44cgohlkesetmessageid: <1272391424.98.0.394441217483.issue7833@psf.upfronthosting.co.za>
2010-04-27 18:03:43cgohlkelinkissue7833 messages
2010-04-27 18:03:41cgohlkecreate