now need to get m2

This commit is contained in:
2026-01-11 15:38:14 +02:00
parent 8f022da4ef
commit 6604c67ec5
10 changed files with 177 additions and 82 deletions

View File

@@ -16,47 +16,15 @@ CUtlString Target_t::GetTriplet()
{
CUtlString triplet = "";
if ( cpu == TARGET_CPU_AMD64 )
triplet.AppendTail("x86_64");
if ( cpu == TARGET_CPU_80386 )
triplet.AppendTail("i386");
if ( cpu == TARGET_CPU_80486 )
triplet.AppendTail("i486");
if ( cpu == TARGET_CPU_80586 )
triplet.AppendTail("i586");
if ( cpu == TARGET_CPU_80686 )
triplet.AppendTail("i686");
if ( cpu == TARGET_CPU_AARCH64 )
triplet.AppendTail("aarch64");
if ( cpu == TARGET_CPU_WASM32 )
triplet.AppendTail("wasm32");
triplet.AppendTail(StringFromCPU(cpu));
triplet.AppendTail("-");
if ( kernel == TARGET_KERNEL_UNKNOWN )
triplet.AppendTail("unknown-unknown");
if ( kernel == TARGET_KERNEL_UNKNOWN_LINUX )
triplet.AppendTail("unknown-linux");
if ( kernel == TARGET_KERNEL_PC_LINUX )
triplet.AppendTail("pc-linux");
if ( kernel == TARGET_KERNEL_ALPINE_LINUX )
triplet.AppendTail("alpine-linux");
if ( kernel == TARGET_KERNEL_WINDOWS )
triplet.AppendTail("pc-windows");
if ( kernel == TARGET_KERNEL_DARWIN )
triplet.AppendTail("apple-darwin");
if ( kernel == TARGET_KERNEL_IOS )
triplet.AppendTail("apple-ios");
if ( kernel == TARGET_KERNEL_ANDROID )
triplet.AppendTail("linux-android");
if ( kernel == TARGET_KERNEL_WASI )
triplet.AppendTail("unknown-wasi");
if ( kernel == TARGET_KERNEL_EMSCRIPTEN )
triplet.AppendTail("unknown-emscripten");
if ( abi != TARGET_ABI_DEFAULT )
triplet.AppendTail(StringFromKernel(kernel));
if ( abi != TARGET_ABI_UNDEFINED && abi != TARGET_ABI_DEFAULT )
{
triplet.AppendTail("-");
if ( abi == TARGET_ABI_GNU )
triplet.AppendTail("gnu");
if ( abi == TARGET_ABI_MUSL )
triplet.AppendTail("musl");
triplet.AppendTail(StringFromABI(abi));
}
return triplet;
@@ -65,7 +33,7 @@ CUtlString Target_t::GetTriplet()
const char *Target_t::GetExecutableFileFormat()
{
if (kernel & TARGET_KERNEL_POSIX)
return "";
return "%s";
if (kernel & TARGET_KERNEL_WINDOWS_DEVICES)
{
@@ -180,6 +148,59 @@ Target_t Target_t::DefaultTarget()
.optimization = TARGET_DEBUG,
};
}
const char *Target_t::StringFromCPU( ETargetCPU cpu )
{
if ( cpu == TARGET_CPU_AMD64 )
return "x86_64";
if ( cpu == TARGET_CPU_80386 )
return "i386";
if ( cpu == TARGET_CPU_80486 )
return "i486";
if ( cpu == TARGET_CPU_80586 )
return "i586";
if ( cpu == TARGET_CPU_80686 )
return "i686";
if ( cpu == TARGET_CPU_AARCH64 )
return "aarch64";
if ( cpu == TARGET_CPU_WASM32 )
return "wasm32";
return NULL;
}
const char *Target_t::StringFromKernel( ETargetKernel kernel )
{
if ( kernel == TARGET_KERNEL_UNKNOWN )
return "unknown-unknown";
if ( kernel == TARGET_KERNEL_UNKNOWN_LINUX )
return "unknown-linux";
if ( kernel == TARGET_KERNEL_PC_LINUX )
return "pc-linux";
if ( kernel == TARGET_KERNEL_ALPINE_LINUX )
return "alpine-linux";
if ( kernel == TARGET_KERNEL_WINDOWS )
return "pc-windows";
if ( kernel == TARGET_KERNEL_DARWIN )
return "apple-darwin";
if ( kernel == TARGET_KERNEL_IOS )
return "apple-ios";
if ( kernel == TARGET_KERNEL_ANDROID )
return "linux-android";
if ( kernel == TARGET_KERNEL_WASI )
return "unknown-wasi";
if ( kernel == TARGET_KERNEL_EMSCRIPTEN )
return "unknown-emscripten";
return NULL;
}
const char *Target_t::StringFromABI( ETargetABI abi )
{
if ( abi == TARGET_ABI_GNU )
return "gnu";
if ( abi == TARGET_ABI_MUSL )
return "musl";
return NULL;
}
ETargetCPU Target_t::CPUFromString( const char *szName )
{
CUtlString szUtlName = szName;