Uploaded image for project: 'Coin'
  1. Coin
  2. COIN-432

Set visual studio environment variables in agent process

    XMLWordPrintable

Details

    • Task
    • Resolution: Done
    • P2: Important
    • 1.3
    • None
    • Agent
    • None
    • f9369d0f3f393a810dcad819ea688440f402e982

    Description

      Instead of having vcvarsall.bat run all over the place, let's run it once in the agent, like

      "c:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat" amd64 >NUL && set
      

      and use the output of that to set all the environment variables again. This list will this time include all environment variables that the batch file would set, but they would be set by the agent to this parent process. Any command run by the agent now would be a sub process and would contain the correct visual studio env variables.

      This instruction for the agent would come from platform_configuration's yaml files, like:

          Template: 'qtci-windows-10-x86_64-14'
          Compiler: 'Clang_msvc2017'
          Features: ['DisableTests']
          MSVC_batch: ['"c:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat" amd64']
          Environment variables: ['PATH=C:\Utils\LLVM-7.1.0-win64\bin;C:\Utils\jom;$PATH', 'TARGET_ARCHITECTURE=amd64']
          Configure arguments: '-opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -force-debug-info
      

      This change cleans up a lot of code from platforminstructions and yaml files under the modules and makes it possible to define new visual studios without touching Coin itself.

      Attachments

        Activity

          People

            tosaario Toni Saario
            tosaraja Tony Sarajärvi
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: