[PATCH 2 of 2 v3] makefile: add wheel build target

Gregory Szorc gregory.szorc at gmail.com
Tue Oct 13 13:59:57 CDT 2015


On Tue, Oct 13, 2015 at 11:53 AM, Matt Mackall <mpm at selenic.com> wrote:

> On Mon, 2015-10-12 at 20:36 -0700, Gregory Szorc wrote:
> > On Mon, Oct 12, 2015 at 11:42 AM, Gregory Szorc <gregory.szorc at gmail.com
> >
> > wrote:
> >
> > > On Mon, Oct 12, 2015 at 7:39 AM, Augie Fackler <raf at durin42.com>
> wrote:
> > >
> > >> On Fri, Oct 09, 2015 at 12:31:16PM -0500, Nathan Goldbaum wrote:
> > >> > # HG changeset patch
> > >> > # User Nathan Goldbaum <ngoldbau at ucsc.edu>
> > >> > # Date 1444411846 18000
> > >> > #      Fri Oct 09 12:30:46 2015 -0500
> > >> > # Node ID c630785461f0465adebce581eb25a503f654333a
> > >> > # Parent  d27f31183f4ca4af2a0a96af32a631181b501b5a
> > >> > makefile: add wheel build target
> > >>
> > >> Queued. How well does the wheel work on Windows?
> > >>
> > >
> > > When I attempted this several months ago, I think it "just worked."
> > > However, I'm not sure hg.exe was produced. However, if you are
> installing
> > > Mercurial via wheels/pip on Windows, chances are you have a UNIX-like
> env
> > > (such as cygwin) and don't need the .exe wrapper.
> > >
> > > I can probably find time to investigate this on my Windows machine this
> > > week if there is any interest in producing wheels as part of the 3.6
> > > release.
> > >
> >
> > `python.exe setup.py bdist_wheel` seems to produce a correct wheel,
> > compiled C extensions .pyd files and all! I did a `pip.exe install
> > mercurial-3.5.2-cp27-none-win_amd64.whl` into a virtualenv and it seemed
> to
> > "just work." `hg debuginstall` was happy. `hg serve` has access to
> > templates.
> >
> > The one thing that isn't in the wheel is a hg.exe. But there is a hg.bat,
> > which is sufficient for `hg` to work in cmd.exe. As I mentioned in my
> > previous message, if you are installing a wheel, you probably have a
> > "proper" Python environment and don't need the standalone /
> Python-bundled
> > Mercurial that hg.exe/py2exe provides. So I don't think this is a
> problem.
>
> Disagree. Unlike on Unix, batch files are not just a type of executable.
> They have a whole ton of little foibles in argument passing and such
> that having an exe avoids. So while this isn't completely essential,
> it's a significant deficiency.


FWIW I'm pretty sure if you `pip install Mercurial` on Windows today you
don't get hg.exe. So there is no net change in behavior for pip users.

But, yeah, we should totally provide hg.exe as part of the binary
distribution on Windows.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20151013/e47d07c6/attachment.html>


More information about the Mercurial-devel mailing list