Testsuite with x64 Mercurial on Windows

Mads Kiilerich mads at kiilerich.com
Tue Jun 19 04:25:37 CDT 2012


On 19/06/12 08:23, Adrian Buehlmann wrote:
> I compiled my
> exemaker.exe (or hg.exe) from https://bitbucket.org/timeless/exemaker
> using the MS C compiler. I've just uploaded it to
> https://bitbucket.org/abuehl/downloads/downloads/hg-x86-385eaa517487.exe
> in case you want to try it.

If it is better than the old exemaker and fixes the issue with relative 
paths then please reference it on the wiki.

> Compiling Mercurial's C files with the MS C compiler is as simple as
> doing (in MSYS shell):
>
>    $ make local
>
> in the root dir of a clone of the mercurial source repo. For that, you
> need Python installed and on the path (I currently use 2.7.3, note that
> the python msi installers don't set the PATH). Entering "python" in MSYS
> should give you the python prompt:
>
>    $ python
>    Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit
> (Intel)] on win32
>    Type "help", "copyright", "credits" or "license" for more information.
>    >>>
>
> I have a Windows 7 symbolic link C:\Python here, which points to
> C:\Python27_x86, where I have the x86 Python. I can switch the symlink
> to Python27_x64, where I have the x64 2.7.3 Python (both installed from
> the official msi installers provided by the Python folks).
>
> Depending on what python is on path, 'make local' will either compile
> the mercurial C files for x86 or x64.
>
> To run the testsuite, you need to copy the 'hg' python script in the
> root dir of the to-be-tested clone of mercurial to hg.py and edit the
> first line to
>
>    #!C:\Windows\system32\python27.dll
>
> Then in MSYS shell:
>
>    $ cd tests
>    $ PATH="/mingw/bin:/bin:/c/python:/c/cygwin/bin"
> PYTHONPATH="/c/python/lib:/c/Python/DLLs" ./run-tests.py --local

Please document your non-hackable way of running the test suite on the 
wiki. (But it seems strange that you have to set PYTHONPATH.)

> The cygwin thing is currently required here for those tests that need
> dd.exe (e.g. test-verify.t). I happended to have cycgwin installed here,
> which has dd.exe, but otherwise cygwin is not needed for running the
> testsuite (I should get rid of that dependency, haven't yet figured out
> how to get dd.exe from elsewhere).

How about following the existing description on the wiki? That will give 
you dd from msys / mingw. There is no need for cygwin and there never 
has been.

/Mads


More information about the Mercurial-devel mailing list