Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
thg-winbuild
thg-winbuild
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 24
    • Issues 24
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • mercurial
  • TortoiseHg
  • thg-winbuildthg-winbuild
  • Merge Requests
  • !7

Merged
Opened Aug 02, 2019 by Matt Harbison@mharbison72Owner

MS Compiler for py27 + virtual env support + 5.1 extension updates

  • Overview 2
  • Commits 5
  • Changes 2

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.

    [1] https://github.com/indygreg/vc90-merge-modules

  • 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

Assignee
Assign to
Reviewer
Request review from
None
Milestone
None
Assign milestone
Time tracking
Reference: mercurial/tortoisehg/thg-winbuild!7
Source branch: bitbucket/merged-pr-7