Add a target triple for 32-bit musl linux

This commit is contained in:
Richard Feldman 2022-04-13 00:45:22 -04:00
parent c7f5beb0ad
commit e1a88f190c
No known key found for this signature in database
GPG key ID: 7E4127D1E4241798
2 changed files with 8 additions and 2 deletions

View file

@ -558,7 +558,7 @@ impl Target {
architecture: Architecture::X86_64, architecture: Architecture::X86_64,
vendor: Vendor::Unknown, vendor: Vendor::Unknown,
operating_system: OperatingSystem::Linux, operating_system: OperatingSystem::Linux,
environment: Environment::Gnu, environment: Environment::Musl,
binary_format: BinaryFormat::Elf, binary_format: BinaryFormat::Elf,
}, },
Wasm32 => Triple { Wasm32 => Triple {

View file

@ -5,7 +5,7 @@ use inkwell::{
}; };
#[cfg(feature = "llvm")] #[cfg(feature = "llvm")]
use roc_mono::ir::OptLevel; use roc_mono::ir::OptLevel;
use target_lexicon::{Architecture, OperatingSystem, Triple}; use target_lexicon::{Architecture, Environment, OperatingSystem, Triple};
pub fn target_triple_str(target: &Triple) -> &'static str { pub fn target_triple_str(target: &Triple) -> &'static str {
// Best guide I've found on how to determine these magic strings: // Best guide I've found on how to determine these magic strings:
@ -62,6 +62,12 @@ pub fn target_zig_str(target: &Triple) -> &'static str {
operating_system: OperatingSystem::Linux, operating_system: OperatingSystem::Linux,
.. ..
} => "x86_64-linux-gnu", } => "x86_64-linux-gnu",
Triple {
architecture: Architecture::X86_32(target_lexicon::X86_32Architecture::I386),
operating_system: OperatingSystem::Linux,
environment: Environment::Musl,
..
} => "i386-linux-musl",
Triple { Triple {
architecture: Architecture::X86_32(target_lexicon::X86_32Architecture::I386), architecture: Architecture::X86_32(target_lexicon::X86_32Architecture::I386),
operating_system: OperatingSystem::Linux, operating_system: OperatingSystem::Linux,