summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorJohn W. Parent <45471568+johnwparent@users.noreply.github.com>2023-08-30 19:19:38 -0400
committerGitHub <noreply@github.com>2023-08-30 23:19:38 +0000
commit1ee7c735ec98c3a810d0280a33bb05ca6bc79987 (patch)
tree2ca784e3729d68d4d633d0af9d8ae1d4aa07371b /var
parent22deed708e8168a9fafee27380774e13273ec1b7 (diff)
downloadspack-1ee7c735ec98c3a810d0280a33bb05ca6bc79987.tar.gz
spack-1ee7c735ec98c3a810d0280a33bb05ca6bc79987.tar.bz2
spack-1ee7c735ec98c3a810d0280a33bb05ca6bc79987.tar.xz
spack-1ee7c735ec98c3a810d0280a33bb05ca6bc79987.zip
Windows: oneapi/msvc consistency (#39180)
Currently, OneAPI's setvars scripts effectively disregard any arguments we're passing to the MSVC vcvars env setup script, and additionally, completely ignore the requested version of OneAPI, defaulting to whatever the latest installed on the system is. This leads to a scenario where we have improperly constructed Windows native development environments, with potentially multiple versions of MSVC and OneAPI being loaded or called in the same env. Obviously this is far from ideal and leads to some fairly inscrutable errors such as overlapping header files between MSVC and OneAPI and a different version of OneAPI being called than the env was setup for. This PR solves this issue by creating a structured invocation of each relevant script in an order that ensures the correct values are set in the resultant build env. The order needs to be: 1. MSVC vcvarsall 2. The compiler specific env.bat script for the relevant version of the oneapi compiler we're looking for. The root setvars scripts seems to respect this as well, although it is less explicit 3. The root oneapi setvars script, which sets up everything else the oneapi env needs and seems to respect previous env invocations.
Diffstat (limited to 'var')
0 files changed, 0 insertions, 0 deletions