mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Launch vcvarsall.bat for the recognized VS Installation Directory from python instead of making mach.bat try that on hardcoded paths.
This commit is contained in:
parent
43a5f65940
commit
215177d791
2 changed files with 11 additions and 57 deletions
|
@ -10,6 +10,7 @@
|
|||
from __future__ import print_function, unicode_literals
|
||||
|
||||
import datetime
|
||||
import locale
|
||||
import os
|
||||
import os.path as path
|
||||
import platform
|
||||
|
@ -318,6 +319,16 @@ class MachCommands(CommandBase):
|
|||
"lib", "pkgconfig"
|
||||
)
|
||||
|
||||
if 'windows' in host:
|
||||
process = subprocess.Popen('("%s" %s > nul) && "python" -c "import os; print(repr(os.environ))"' %
|
||||
(os.path.join(vs_dirs['vcdir'], "Auxiliary", "Build", "vcvarsall.bat"), "x64"),
|
||||
stdout=subprocess.PIPE, shell=True)
|
||||
stdout, _ = process.communicate()
|
||||
exitcode = process.wait()
|
||||
encoding = locale.getpreferredencoding() # See https://stackoverflow.com/a/9228117
|
||||
if exitcode == 0:
|
||||
os.environ.update(eval(stdout.decode(encoding)))
|
||||
|
||||
# Ensure that GStreamer libraries are accessible when linking.
|
||||
if 'windows' in target_triple:
|
||||
gst_root = gstreamer_root(target_triple, env)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue