diff options
| author | ruki <[email protected]> | 2020-12-14 22:39:29 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2020-12-14 22:39:29 +0800 |
| commit | 4030bf655cd5bbf3af26b682078f4354eb2cb86c (patch) | |
| tree | 5e860e3c4abd5769489de9d6dcae6d514d29e03c /xmake/modules/detect | |
| parent | 007b2200be5b2a8e5d784829782b56793e93e572 (diff) | |
remove __vcvarsall
Diffstat (limited to 'xmake/modules/detect')
| -rw-r--r-- | xmake/modules/detect/sdks/find_dotnet.lua | 17 | ||||
| -rw-r--r-- | xmake/modules/detect/sdks/find_wdk.lua | 22 | ||||
| -rw-r--r-- | xmake/modules/detect/tools/find_devenv.lua | 12 |
3 files changed, 24 insertions, 27 deletions
diff --git a/xmake/modules/detect/sdks/find_dotnet.lua b/xmake/modules/detect/sdks/find_dotnet.lua index bb8180f57..284925f04 100644 --- a/xmake/modules/detect/sdks/find_dotnet.lua +++ b/xmake/modules/detect/sdks/find_dotnet.lua @@ -21,6 +21,7 @@ -- imports import("lib.detect.cache") import("lib.detect.find_file") +import("core.tool.toolchain") import("core.base.option") import("core.base.global") import("core.project.config") @@ -28,14 +29,16 @@ import("core.project.config") -- find dotnet directory function _find_sdkdir(sdkdir) - -- get sdk directory from vsvars + -- get sdk directory from vcvars if not sdkdir then - local arch = config.arch() - local vcvarsall = config.get("__vcvarsall") - if vcvarsall then - sdkdir = (vcvarsall[arch] or {}).WindowsSdkDir - if sdkdir then - sdkdir = path.join(path.directory(path.translate(sdkdir)), "NETFXSDK") + local msvc = toolchain.load("msvc") + if msvc and msvc:check() then + local vcvars = msvc:config("vcvars") + if vcvars then + sdkdir = vcvars.WindowsSdkDir + if sdkdir then + sdkdir = path.join(path.directory(path.translate(sdkdir)), "NETFXSDK") + end end end end diff --git a/xmake/modules/detect/sdks/find_wdk.lua b/xmake/modules/detect/sdks/find_wdk.lua index f91e9a1b7..d9844146a 100644 --- a/xmake/modules/detect/sdks/find_wdk.lua +++ b/xmake/modules/detect/sdks/find_wdk.lua @@ -24,6 +24,7 @@ import("lib.detect.find_file") import("core.base.option") import("core.base.global") import("core.project.config") +import("core.tool.toolchain") import("detect.sdks.find_vstudio") -- find WDK directory @@ -34,24 +35,15 @@ function _find_sdkdir(sdkdir) sdkdir = os.getenv("WindowsSdkDir") end - -- get sdk directory from vsvars + -- get sdk directory from vcvars if not sdkdir then - local arch = config.arch() or os.arch() - local vcvarsall = config.get("__vcvarsall") - if not vcvarsall then - local vstudio = find_vstudio() - if vstudio then - for _, vsinfo in pairs(vstudio) do - if vsinfo.vcvarsall then - vcvarsall = vsinfo.vcvarsall - break - end - end + local msvc = toolchain.load("msvc") + if msvc and msvc:check() then + local vcvars = msvc:config("vcvars") + if vcvars then + sdkdir = vcvars.WindowsSdkDir end end - if vcvarsall then - sdkdir = (vcvarsall[arch] or {}).WindowsSdkDir - end end return sdkdir end diff --git a/xmake/modules/detect/tools/find_devenv.lua b/xmake/modules/detect/tools/find_devenv.lua index 745c26099..1111c92a3 100644 --- a/xmake/modules/detect/tools/find_devenv.lua +++ b/xmake/modules/detect/tools/find_devenv.lua @@ -20,6 +20,7 @@ -- imports import("core.project.config") +import("core.tool.toolchain") -- find devenv -- @@ -48,11 +49,12 @@ function main(opt) -- e.g. C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE -- local program = nil - local vcvarsall = config.get("__vcvarsall") - if vcvarsall then - for _, vsvars in pairs(vcvarsall) do - if vsvars.DevEnvdir and os.isexec(path.join(vsvars.DevEnvdir, "devenv.exe")) then - program = path.join(vsvars.DevEnvdir, "devenv.exe") + local msvc = toolchain.load("msvc") + if msvc then + local vcvars = msvc:config("vcvars") + if vcvars then + if vcvars.DevEnvdir and os.isexec(path.join(vcvars.DevEnvdir, "devenv.exe")) then + program = path.join(vcvars.DevEnvdir, "devenv.exe") end end end |
