aboutsummaryrefslogtreecommitdiff
path: root/src/build_settings.cpp
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2025-07-14 16:50:57 +0100
committerGitHub <noreply@github.com>2025-07-14 16:50:57 +0100
commit362c146f9dd995c7880a2a7a63e13784ee940dad (patch)
treeb0f4f4b260e32f051907274fc0645e28cc92a413 /src/build_settings.cpp
parent924d29208d0a95478ff6cefa4c94f57cdbfb3d2b (diff)
parent4d2d890b4c87f3376626b88782e64f97e749eaa8 (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.cpp35
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) {