[Distutils] Improving distutils' script and GUI app handling
Phillip J. Eby
pje at telecommunity.com
Sat Sep 17 19:17:59 CEST 2005
At 10:00 PM 9/16/2005 +0100, Paul Moore wrote:
>On 9/16/05, Trent Mick <trentm at activestate.com> wrote:
> > > The only missing piece so far, for me at least, is that it's not
> > > possible to use dotted module names with the -m option:
> > >
> > > p24 -m ctypes.wrap.h2xml windows.h
> >
> > That's too bad. I didn't know "-m" didn't support that... but then I
> > haven't really used it that much yet.
>
>There's a patch on SF to implement that (1043356 ) and a corresponding
>PEP (338), but I don't know what's required to get it added.
>
>Another annoyance with -m is that it doesn't support modules in
>zipfiles (e.g., zipped eggs).
Really, the only reasonable way to solve both problems is something like
'python -m run foo.bar ....'. That is, have a bootstrap module to do the
rest. (Or alternately, have -m fallback to using the bootstrap module if
it's unsuccessful.)
However, after reflection, I think now that -m probably only really makes
sense for stdlib modules, since projects using setuptools can now get all
the benefits of -m without any of the drawbacks, without even writing any
__name__=='__main__' code. For example defining an entry point thus:
[console_scripts]
h2xml = ctypes.wrap.h2xml:main
automatically creates 'h2xml.exe' on Windows and a #!-prefixed 'h2xml'
script on any other platform. (Using the current CVS version of
setuptools, that is.)
More information about the Distutils-SIG
mailing list