aboutsummaryrefslogtreecommitdiff
path: root/tools/win_build.py
diff options
context:
space:
mode:
author杨宇千 <crupest@outlook.com>2019-07-10 17:23:29 +0800
committer杨宇千 <crupest@outlook.com>2019-07-10 17:23:29 +0800
commitd163bafa461779a3795818aa8c8b5238880ede24 (patch)
tree9eadf181655e293158cab095bb688cad9c0b1f18 /tools/win_build.py
parente37dd256e5bca4caf819d18c73cd2d11e06683df (diff)
downloadcru-d163bafa461779a3795818aa8c8b5238880ede24.tar.gz
cru-d163bafa461779a3795818aa8c8b5238880ede24.tar.bz2
cru-d163bafa461779a3795818aa8c8b5238880ede24.zip
...
Diffstat (limited to 'tools/win_build.py')
-rw-r--r--tools/win_build.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/tools/win_build.py b/tools/win_build.py
index c3f1ec57..ab1c7107 100644
--- a/tools/win_build.py
+++ b/tools/win_build.py
@@ -1,6 +1,7 @@
import argparse
import os
import os.path
+import shutil
import subprocess
import sys
@@ -17,6 +18,20 @@ args = parser.parse_args()
project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
+def init_vc_environment(arch):
+ arch_bat_map = {
+ 'x86': 'vcvarsamd64_x86',
+ 'x64': 'vcvars64'
+ }
+ vars = subprocess.check_output(['C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Auxiliary\\Build\\{}'.format(
+ arch_bat_map[arch]), '&&', 'set'], shell=True, text=True)
+ for var in vars.splitlines():
+ k, _, v = map(str.strip, var.strip().partition('='))
+ if k.startswith('?'):
+ continue
+ os.environ[k] = v
+
+
def configure():
generater_vs_arch_map = {
'x86': 'Win32',
@@ -33,7 +48,7 @@ def build():
os.chdir(project_root)
-configure()
+configure()
if args.command == 'build':
build()