Switch windows openssl binaries to ones generated by vcpkg.

This commit is contained in:
Josh Matthews 2019-05-31 12:47:13 -04:00
parent 5e461853a1
commit 3162c9a1d7
3 changed files with 16 additions and 8 deletions

View file

@ -617,15 +617,14 @@ class MachCommands(CommandBase):
if sys.platform == "win32":
servo_exe_dir = path.join(base_path, "debug" if dev else "release")
msvc_x64 = "64" if "x86_64" in (target or host_triple()) else ""
# on msvc builds, use editbin to change the subsystem to windows, but only
# on release builds -- on debug builds, it hides log output
if not dev:
call(["editbin", "/nologo", "/subsystem:windows", path.join(servo_exe_dir, "servo.exe")],
verbose=verbose)
# on msvc, we need to copy in some DLLs in to the servo.exe dir
for ssl_lib in ["libcryptoMD.dll", "libsslMD.dll"]:
shutil.copy(path.join(env['OPENSSL_LIB_DIR'], "../bin" + msvc_x64, ssl_lib),
for ssl_lib in ["libeay32.dll", "ssleay32.dll"]:
shutil.copy(path.join(env['OPENSSL_LIB_DIR'], "../bin", ssl_lib),
servo_exe_dir)
# Search for the generated nspr4.dll
build_path = path.join(servo_exe_dir, "build")
@ -647,6 +646,7 @@ class MachCommands(CommandBase):
package_generated_shared_libraries(["nspr4.dll", "libEGL.dll"], build_path, servo_exe_dir)
# copy needed gstreamer DLLs in to servo.exe dir
msvc_x64 = "64" if "x86_64" in (target or host_triple()) else ""
gst_x64 = "X86_64" if msvc_x64 == "64" else "X86"
gst_root = ""
gst_default_path = path.join("C:\\gstreamer\\1.0", gst_x64)

View file

@ -584,7 +584,6 @@ install them, let us know by filing a bug!")
extra_path = []
extra_lib = []
if "msvc" in (target or host_triple()):
msvc_x64 = "64" if "x86_64" in (target or host_triple()) else ""
msvc_deps_dir = path.join(self.context.sharedir, "msvc-dependencies")
def package_dir(package):
@ -593,10 +592,19 @@ install them, let us know by filing a bug!")
extra_path += [path.join(package_dir("cmake"), "bin")]
extra_path += [path.join(package_dir("llvm"), "bin")]
extra_path += [path.join(package_dir("ninja"), "bin")]
arch = (target or host_triple()).split('-')[0]
vcpkg_arch = {
"x86_64": "x64-windows",
"i686": "x86-windows",
"aarch64": "arm64-windows",
}
openssl_base_dir = path.join(package_dir("openssl"), vcpkg_arch[arch])
# Link openssl
env["OPENSSL_INCLUDE_DIR"] = path.join(package_dir("openssl"), "include")
env["OPENSSL_LIB_DIR"] = path.join(package_dir("openssl"), "lib" + msvc_x64)
env["OPENSSL_LIBS"] = "libsslMD:libcryptoMD"
env["OPENSSL_INCLUDE_DIR"] = path.join(openssl_base_dir, "include")
env["OPENSSL_LIB_DIR"] = path.join(openssl_base_dir, "lib")
env["OPENSSL_LIBS"] = "libeay32:ssleay32"
# Link moztools, used for building SpiderMonkey
env["MOZTOOLS_PATH"] = os.pathsep.join([
path.join(package_dir("moztools"), "bin"),

View file

@ -7,5 +7,5 @@ WINDOWS_MSVC = {
"llvm": "7.0.0",
"moztools": "3.2",
"ninja": "1.7.1",
"openssl": "1.1.0e-vs2015",
"openssl": "1.0.2q-vs2017",
}