diff options
| author | gingerBill <gingerBill@users.noreply.github.com> | 2025-07-14 16:50:57 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-14 16:50:57 +0100 |
| commit | 362c146f9dd995c7880a2a7a63e13784ee940dad (patch) | |
| tree | b0f4f4b260e32f051907274fc0645e28cc92a413 /src/build_settings.cpp | |
| parent | 924d29208d0a95478ff6cefa4c94f57cdbfb3d2b (diff) | |
| parent | 4d2d890b4c87f3376626b88782e64f97e749eaa8 (diff) | |
Merge pull request #5462 from harold-b/hb.ios-support-2025
Add iOS & iPhoneSimulator subtargets for Darwin target
Diffstat (limited to 'src/build_settings.cpp')
| -rw-r--r-- | src/build_settings.cpp | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/src/build_settings.cpp b/src/build_settings.cpp index ebe57bf1e..312512568 100644 --- a/src/build_settings.cpp +++ b/src/build_settings.cpp @@ -172,6 +172,7 @@ struct TargetMetrics { enum Subtarget : u32 { Subtarget_Default, Subtarget_iOS, + Subtarget_iPhoneSimulator, Subtarget_Android, Subtarget_COUNT, @@ -180,6 +181,7 @@ enum Subtarget : u32 { gb_global String subtarget_strings[Subtarget_COUNT] = { str_lit(""), str_lit("ios"), + str_lit("iphonesimulator"), str_lit("android"), }; @@ -1824,16 +1826,29 @@ gb_internal void init_build_context(TargetMetrics *cross_target, Subtarget subta } } - if (metrics->os == TargetOs_darwin && subtarget == Subtarget_iOS) { - switch (metrics->arch) { - case TargetArch_arm64: - bc->metrics.target_triplet = str_lit("arm64-apple-ios"); - break; - case TargetArch_amd64: - bc->metrics.target_triplet = str_lit("x86_64-apple-ios"); - break; - default: - GB_PANIC("Unknown architecture for darwin"); + if (metrics->os == TargetOs_darwin) { + switch (subtarget) { + case Subtarget_iOS: + switch (metrics->arch) { + case TargetArch_arm64: + bc->metrics.target_triplet = str_lit("arm64-apple-ios"); + break; + default: + GB_PANIC("Unknown architecture for -subtarget:ios"); + } + break; + case Subtarget_iPhoneSimulator: + switch (metrics->arch) { + case TargetArch_arm64: + bc->metrics.target_triplet = str_lit("arm64-apple-ios-simulator"); + break; + case TargetArch_amd64: + bc->metrics.target_triplet = str_lit("x86_64-apple-ios-simulator"); + break; + default: + GB_PANIC("Unknown architecture for -subtarget:iphonesimulator"); + } + break; } } else if (metrics->os == TargetOs_linux && subtarget == Subtarget_Android) { switch (metrics->arch) { |