mirror of
https://github.com/servo/servo.git
synced 2025-06-08 00:23:30 +00:00
Package DLLs correctly for Windows cross builds.
This commit is contained in:
parent
8ae287375f
commit
96c51cf173
4 changed files with 11 additions and 4 deletions
|
@ -358,14 +358,17 @@ def android_x86_wpt():
|
||||||
|
|
||||||
def windows_x86():
|
def windows_x86():
|
||||||
return (
|
return (
|
||||||
windows_build_task("Dev build", package=False, arch="x86")
|
windows_build_task("Dev build", arch="x86")
|
||||||
.with_treeherder("Windows x86")
|
.with_treeherder("Windows x86")
|
||||||
.with_env(**{
|
.with_env(**{
|
||||||
"VCVARSALL_PATH": "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildTools\\VC\\Auxiliary\\Build"
|
"VCVARSALL_PATH": "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildTools\\VC\\Auxiliary\\Build"
|
||||||
})
|
})
|
||||||
.with_script(
|
.with_script(
|
||||||
"python mach build --dev --target i686-pc-windows-msvc",
|
"python mach build --dev --target i686-pc-windows-msvc",
|
||||||
|
"python mach package --dev --target i686-pc-windows-msvc",
|
||||||
)
|
)
|
||||||
|
.with_artifacts("repo/target/i686-pc-windows-msvc/debug/msi/Servo.exe",
|
||||||
|
"repo/target/i686-pc-windows-msvc/debug/msi/Servo.zip")
|
||||||
.find_or_create("build.windows_x86_dev." + CONFIG.task_id())
|
.find_or_create("build.windows_x86_dev." + CONFIG.task_id())
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -615,7 +615,8 @@ class MachCommands(CommandBase):
|
||||||
return rv
|
return rv
|
||||||
|
|
||||||
if sys.platform == "win32":
|
if sys.platform == "win32":
|
||||||
servo_exe_dir = path.join(base_path, "debug" if dev else "release")
|
servo_exe_dir = os.path.dirname(self.get_binary_path(release, dev, target=target))
|
||||||
|
assert os.path.exists(servo_exe_dir)
|
||||||
|
|
||||||
msvc_x64 = "64" if "x86_64" in (target or host_triple()) else ""
|
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 msvc builds, use editbin to change the subsystem to windows, but only
|
||||||
|
@ -629,6 +630,7 @@ class MachCommands(CommandBase):
|
||||||
servo_exe_dir)
|
servo_exe_dir)
|
||||||
# Search for the generated nspr4.dll
|
# Search for the generated nspr4.dll
|
||||||
build_path = path.join(servo_exe_dir, "build")
|
build_path = path.join(servo_exe_dir, "build")
|
||||||
|
assert os.path.exists(build_path)
|
||||||
|
|
||||||
def package_generated_shared_libraries(libs, build_path, servo_exe_dir):
|
def package_generated_shared_libraries(libs, build_path, servo_exe_dir):
|
||||||
for root, dirs, files in os.walk(build_path):
|
for root, dirs, files in os.walk(build_path):
|
||||||
|
|
|
@ -367,7 +367,7 @@ class CommandBase(object):
|
||||||
def get_gstreamer_path(self):
|
def get_gstreamer_path(self):
|
||||||
return path.join(self.context.topdir, "support", "linux", "gstreamer", "gst")
|
return path.join(self.context.topdir, "support", "linux", "gstreamer", "gst")
|
||||||
|
|
||||||
def get_binary_path(self, release, dev, android=False, magicleap=False):
|
def get_binary_path(self, release, dev, target=None, android=False, magicleap=False):
|
||||||
# TODO(autrilla): this function could still use work - it shouldn't
|
# TODO(autrilla): this function could still use work - it shouldn't
|
||||||
# handle quitting, or printing. It should return the path, or an error.
|
# handle quitting, or printing. It should return the path, or an error.
|
||||||
base_path = self.get_target_dir()
|
base_path = self.get_target_dir()
|
||||||
|
@ -380,6 +380,8 @@ class CommandBase(object):
|
||||||
elif android:
|
elif android:
|
||||||
base_path = path.join(base_path, "android", self.config["android"]["target"])
|
base_path = path.join(base_path, "android", self.config["android"]["target"])
|
||||||
binary_name = "libsimpleservo.so"
|
binary_name = "libsimpleservo.so"
|
||||||
|
elif target:
|
||||||
|
base_path = path.join(base_path, target)
|
||||||
|
|
||||||
release_path = path.join(base_path, "release", binary_name)
|
release_path = path.join(base_path, "release", binary_name)
|
||||||
dev_path = path.join(base_path, "debug", binary_name)
|
dev_path = path.join(base_path, "debug", binary_name)
|
||||||
|
|
|
@ -219,7 +219,7 @@ class PackageCommands(CommandBase):
|
||||||
if magicleap:
|
if magicleap:
|
||||||
target = "aarch64-linux-android"
|
target = "aarch64-linux-android"
|
||||||
env = self.build_env(target=target)
|
env = self.build_env(target=target)
|
||||||
binary_path = self.get_binary_path(release, dev, android=android, magicleap=magicleap)
|
binary_path = self.get_binary_path(release, dev, target=target, android=android, magicleap=magicleap)
|
||||||
dir_to_root = self.get_top_dir()
|
dir_to_root = self.get_top_dir()
|
||||||
target_dir = path.dirname(binary_path)
|
target_dir = path.dirname(binary_path)
|
||||||
if magicleap:
|
if magicleap:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue