MS Compiler for py27 + virtual env support + 5.1 extension updates
Was already merged in Bitbucket before import, marked as merged by the import user
Long term I’d like to be able to install dependencies and build like the new core hg packaging functionality. But this at least gets things working on my Windows 10 machine (excluding some api-ms-*.dll changes that differ on my machine), once I got PyQt5 built.
-
adjust
sphinx
detection to support running in a virtualenv -
add support for the Windows 7.1 SDK
-
add support for building with 'Microsoft Visual C++ Compiler for Python 2.7'
The build process already builds Mercurial with this compiler if it is installed, so we might as well use this to compile the shell extension if it is available. The only manual change needed is to download these merge modules:
vc9-crt-x64-msm vc9-crt-x64-msm-policy
create 'Redist\VC' here:
%LOCALAPPDATA%\Programs\Common\Microsoft\Visual C++ for Python\9.0\WinSDK\
and name them:
Microsoft.VCxx.CRT.x64_msm.msm policy.x.xx.Microsoft.VCxx.CRT.x64_msm.msm
I have no idea why, but DISTUTILS_USE_SDK can't be set, otherwise Mercurial fails to build its C extensions. The strange thing is that the new packaging scripts do set this.
-
run the equivalent of vcvarsall.bat when using 'Visual C++ for Python 2.7'
This means that any command prompt will properly build everything, whereas before the 'Visual C++ 2008 64-bit Cross Tools Command Prompt' was required. The goal is to remove a point of failure (the plain 64-bit prompt fails), and to move towards automated builds like core Mercurial. I've only got the Express edition at home (which fails to build this), so I'm not doing the same for Visual Studio 2008.
-
bump extensions