-
-
Notifications
You must be signed in to change notification settings - Fork 348
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow configuring iOS build with CMake #3234
base: main
Are you sure you want to change the base?
Conversation
Bloaty Results 🐋Compared to main
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-3234-compared-to-main.txtCompared to d387090 (legacy)
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-3234-compared-to-legacy.txt |
Benchmark Results ⚡
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/benchmark-results/pr-3234-compared-to-main.txt |
Bloaty Results (iOS) 🐋Compared to main
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results-ios/pr-3234-compared-to-main.txt |
src/mbgl/mtl/drawable.cpp
Outdated
@@ -252,6 +252,7 @@ void Drawable::draw(PaintParameters& parameters) const { | |||
const auto stencilMode = enableStencil ? parameters.stencilModeForClipping(tileID->toUnwrapped()) | |||
: gfx::StencilMode::disabled(); | |||
impl->depthStencilState = context.makeDepthStencilState(depthMode, stencilMode, renderable); | |||
assert(newStencilMode); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Issue: #3248
@@ -86,7 +86,6 @@ void cancel() { | |||
public: | |||
Impl(const ResourceOptions& resourceOptions_, const ClientOptions& clientOptions_) | |||
: resourceOptions(resourceOptions_.clone()), clientOptions(clientOptions_.clone()) { | |||
@autoreleasepool { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was causing a crash. I don't think this @autoreleasepool
is needed because we use ARC?
|
||
add_custom_command( | ||
OUTPUT ${MLN_GENERATED_DARWIN_STYLE_SOURCE} ${MLN_GENERATED_DARWIN_STYLE_HEADERS} | ||
COMMAND ${BAZEL} build //platform/darwin:generated_code |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I use Bazel to generate the code so I don't have to redo all that build logic in CMake... Also nice way to make sure that the output is the same as for the Bazel build.
@@ -0,0 +1,164 @@ | |||
enable_language(OBJC OBJCXX Swift) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Common code ios.cmake
and macos.cmake
.
I had to upgrade to the latest CMake, maybe the The Team ID |
@TimSylvester Yes if you use the CMakePresets.json you need CMake 3.31. @TimSylvester That's the one on CI. Yes I'll fix that. |
ios-ci
that builds thembgl-core
,ios-sdk-static
andapp
CMake targets for iOS.platform/darwin/core
to better separate out the iOS SDK.MLN_PUBLIC_IOS_APP_SOPURCE
.CMakePresets.json
. Other platforms will be added in a follow-up PR. Info here: https://martin-fieber.de/blog/cmake-presets/