Add support for cross-compiling in create-exe with zig cc WIP (#3076)

* Add support for cross-compiling in create-exe with zig cc WIP

zig version must be at least 0.10.0-dev.3431+4a4f3c50c

Closes #3042

* Add support for cross-compiling in create-exe with zig cc WIP

zig version must be at least 0.10.0-dev.3431+4a4f3c50c

Closes #3042

* Add SSE2 features to the CPU

* Add SSE2 features to the CPU

* create_exe: locate zig binary and check minimum version

Check that `zig` binary version is at least `0.10.0`

* create-exe: refactor cross-comp cli parsing and error checks

* create-exe: add -lunwind for cross-comp with zig

* Set the proper library for windows

* create-exe: add path exists check for --tarball value

* create-exe: add -msvc environment in triple_to_zig_triple()

Co-authored-by: Syrus Akbary <me@syrusakbary.com>
This commit is contained in:
Manos Pitsidianakis
2022-08-08 16:32:15 +03:00
committed by GitHub
parent 3b67f8d17f
commit ba543fc4f7
6 changed files with 774 additions and 106 deletions

View File

@@ -69,7 +69,9 @@ impl CreateObj {
.fold(CpuFeature::set(), |a, b| a | b);
// Cranelift requires SSE2, so we have this "hack" for now to facilitate
// usage
features |= CpuFeature::SSE2;
if target_triple.architecture == Architecture::X86_64 {
features |= CpuFeature::SSE2;
}
Target::new(target_triple.clone(), features)
})
.unwrap_or_default();