Allow configuring iOS build with CMake (#3234)
This commit is contained in:
19
.github/workflows/ios-ci.yml
vendored
19
.github/workflows/ios-ci.yml
vendored
@@ -332,13 +332,30 @@ jobs:
|
||||
run: |
|
||||
VERSION=${{ env.version }} COCOAPODS_TRUNK_TOKEN=${{ secrets.COCOAPODS_PASSWORD }} pod trunk push MapLibre.podspec
|
||||
|
||||
ios-build-cmake:
|
||||
needs: pre_job
|
||||
runs-on: macos-latest
|
||||
if: needs.pre_job.outputs.should_skip != 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Configure build with CMake
|
||||
run: cmake --preset ios
|
||||
|
||||
- name: Build mbgl-core
|
||||
run: cmake --build build-ios --target mbgl-core ios-sdk-static app
|
||||
|
||||
ios-ci-result:
|
||||
runs-on: ubuntu-latest
|
||||
if: needs.pre_job.outputs.should_skip != 'true' && always()
|
||||
needs:
|
||||
- pre_job
|
||||
- ios-build
|
||||
- ios-build-cmake
|
||||
steps:
|
||||
- name: Mark result as failed
|
||||
if: needs.ios-build.result != 'success'
|
||||
if: needs.ios-build.result != 'success' || needs.ios-build-cmake.result != 'success'
|
||||
run: exit 1
|
||||
|
||||
13
.github/workflows/node-ci.yml
vendored
13
.github/workflows/node-ci.yml
vendored
@@ -167,7 +167,7 @@ jobs:
|
||||
if: ${{contains(runner.name, 'GitHub Actions')}}
|
||||
uses: jwlawson/actions-setup-cmake@v2
|
||||
with:
|
||||
cmake-version: '3.29.2'
|
||||
cmake-version: '3.31'
|
||||
|
||||
- name: cmake version
|
||||
run: |
|
||||
@@ -204,16 +204,7 @@ jobs:
|
||||
- name: Configure maplibre-native (MacOS)
|
||||
if: runner.os == 'MacOS'
|
||||
run: |
|
||||
cmake . -B build \
|
||||
-G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=${{ env.BUILDTYPE }} \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
||||
-DMLN_WITH_NODE=ON \
|
||||
-DMLN_WITH_OPENGL=OFF \
|
||||
-DMLN_WITH_METAL=ON \
|
||||
-DMLN_LEGACY_RENDERER=OFF \
|
||||
-DMLN_DRAWABLE_RENDERER=ON \
|
||||
-DMLN_WITH_WERROR=OFF
|
||||
cmake --preset macos-node -DCMAKE_BUILD_TYPE=${{ env.BUILDTYPE }}
|
||||
|
||||
- name: Configure maplibre-native (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
|
||||
@@ -86,7 +86,7 @@ target_compile_options(
|
||||
$<$<STREQUAL:${MLN_WITH_SANITIZER},undefined>:-fsanitize=float-divide-by-zero,
|
||||
-fsanitize-blacklist=${UBSAN_BLACKLIST}>
|
||||
$<$<PLATFORM_ID:iOS>:-fembed-bitcode>
|
||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<NOT:$<OR:$<BOOL:${MLN_WITH_RTTI}>,$<CXX_COMPILER_ID:MSVC>>>>:-fno-rtti>
|
||||
$<$<AND:$<OR:$<COMPILE_LANGUAGE:CXX>,$<COMPILE_LANGUAGE:OBJCXX>>,$<NOT:$<OR:$<BOOL:${MLN_WITH_RTTI}>,$<CXX_COMPILER_ID:MSVC>>>>:-fno-rtti>
|
||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<NOT:$<PLATFORM_ID:Windows>>>:-Wall>
|
||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<NOT:$<PLATFORM_ID:Windows>>>:-Wshadow>
|
||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<NOT:$<PLATFORM_ID:Windows>>>:-Wextra>
|
||||
@@ -1268,6 +1268,7 @@ if(MLN_WITH_METAL)
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/shaders/mtl/raster.cpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/shaders/mtl/symbol.cpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/shaders/mtl/widevector.cpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/mtl/custom_layer_render_parameters.cpp
|
||||
)
|
||||
|
||||
find_library(METAL_FRAMEWORK Metal)
|
||||
@@ -1372,12 +1373,12 @@ endif()
|
||||
if(MLN_DRAWABLE_RENDERER)
|
||||
list(APPEND
|
||||
SRC_FILES
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/custom_drawable_layer.cpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/custom_drawable_layer_factory.cpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/custom_drawable_layer_impl.cpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/custom_drawable_layer_impl.hpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_custom_drawable_layer.cpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_custom_drawable_layer.hpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/custom_drawable_layer_impl.cpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/custom_drawable_layer_impl.hpp
|
||||
${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/custom_drawable_layer.cpp
|
||||
)
|
||||
endif()
|
||||
|
||||
@@ -1579,7 +1580,11 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL Android)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL Linux)
|
||||
include(${PROJECT_SOURCE_DIR}/platform/linux/linux.cmake)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
include(${PROJECT_SOURCE_DIR}/platform/darwin/darwin.cmake)
|
||||
include(${PROJECT_SOURCE_DIR}/platform/macos/macos.cmake)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL iOS)
|
||||
include(${PROJECT_SOURCE_DIR}/platform/darwin/darwin.cmake)
|
||||
include(${PROJECT_SOURCE_DIR}/platform/ios/ios.cmake)
|
||||
elseif(WIN32)
|
||||
include(${PROJECT_SOURCE_DIR}/platform/windows/windows.cmake)
|
||||
else()
|
||||
|
||||
59
CMakePresets.json
Normal file
59
CMakePresets.json
Normal file
@@ -0,0 +1,59 @@
|
||||
{
|
||||
"version": 10,
|
||||
"cmakeMinimumRequired": {
|
||||
"major": 3,
|
||||
"minor": 21,
|
||||
"patch": 0
|
||||
},
|
||||
"configurePresets": [
|
||||
{
|
||||
"name": "ios",
|
||||
"displayName": "iOS",
|
||||
"generator": "Xcode",
|
||||
"description": "Create Xcode project for iOS",
|
||||
"binaryDir": "${sourceDir}/build-ios",
|
||||
"cacheVariables": {
|
||||
"CMAKE_SYSTEM_NAME": "iOS",
|
||||
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache",
|
||||
"MLN_WITH_METAL": "ON",
|
||||
"MLN_WITH_OPENGL": "OFF",
|
||||
"MLN_DRAWABLE_RENDERER": "ON"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos",
|
||||
"displayName": "macOS",
|
||||
"generator": "Ninja",
|
||||
"binaryDir": "${sourceDir}/build-macos",
|
||||
"cacheVariables": {
|
||||
"CMAKE_SYSTEM_NAME": "Darwin",
|
||||
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache",
|
||||
"MLN_WITH_METAL": "ON",
|
||||
"MLN_WITH_OPENGL": "OFF",
|
||||
"MLN_DRAWABLE_RENDERER": "ON"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-vulkan",
|
||||
"displayName": "macOS",
|
||||
"generator": "Ninja",
|
||||
"binaryDir": "${sourceDir}/build-macos-vulkan",
|
||||
"cacheVariables": {
|
||||
"CMAKE_SYSTEM_NAME": "Darwin",
|
||||
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache",
|
||||
"MLN_WITH_VULKAN": "ON",
|
||||
"MLN_WITH_OPENGL": "OFF",
|
||||
"MLN_DRAWABLE_RENDERER": "ON"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-node",
|
||||
"inherits": "macos",
|
||||
"binaryDir": "${sourceDir}/build",
|
||||
"cacheVariables": {
|
||||
"MLN_WITH_NODE": "ON",
|
||||
"MLN_WITH_WERROR": "OFF"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -73,6 +73,20 @@ bazel run //platform/ios:App --//:renderer=metal
|
||||
|
||||
You can also build targets from the command line. For example, if you want to build your own XCFramework, see the 'Build XCFramework' step in the [iOS CI workflow](../../.github/workflows/ios-ci.yml).
|
||||
|
||||
## Swift App
|
||||
## CMake
|
||||
|
||||
There is also an example app built with Swift instead of Objective-C. The target is called `MapLibreApp` and the source code lives in `platform/ios/app-swift`.
|
||||
It is also possible to generate an Xcode project using CMake. As of February 2025, targets `mbgl-core`, `ios-sdk-static` and `app` (Objective-C development app) are supported.
|
||||
|
||||
```
|
||||
cmake --preset ios -DDEVELOPMENT_TEAM_ID=YOUR_TEAM_ID
|
||||
xed build-ios/MapLibre\ Native.xcodeproj
|
||||
```
|
||||
|
||||
## Distribution
|
||||
|
||||
MapLibre iOS is distributed as an XCFramework via the [maplibre/maplibre-gl-native-distribution](https://github.com/maplibre/maplibre-gl-native-distribution) repository. See [Release MapLibre iOS](./release.md) for the release process. Refer to the [`ios-ci.yml`](https://github.com/maplibre/maplibre-native/blob/main/.github/workflows/ios-ci.yml) workflow for an up-to-date recipe for building an XCFramework. As of February 2025 we use:
|
||||
|
||||
```
|
||||
bazel build --compilation_mode=opt --features=dead_strip,thin_lto --objc_enable_binary_stripping \
|
||||
--apple_generate_dsym --output_groups=+dsyms --//:renderer=metal //platform/ios:MapLibre.dynamic --embed_label=maplibre_ios_"$(cat VERSION)"
|
||||
```
|
||||
|
||||
@@ -48,9 +48,12 @@ In 2023 we co-opted Bazel as a build tool (generator), mostly due to it having b
|
||||
| Platform | CMake | Bazel |
|
||||
|---|---|---|
|
||||
| Android | ✅ (via Gradle) | ❌ |
|
||||
| iOS | ❌ | ✅ |
|
||||
| iOS | ✅[^3] | ✅ |
|
||||
| Linux | ✅ | ✅ |
|
||||
| Windows | ✅ | ❌ |
|
||||
| Windows | ✅ | ✅ |
|
||||
| macOS | ✅ | ✅ |
|
||||
| Node.js | ✅ | ❌ |
|
||||
| Qt | ✅ | ❌ |
|
||||
|
||||
|
||||
[^3]: Some targets are supported, see [here](ios/README.md#cmake).
|
||||
|
||||
@@ -8,7 +8,7 @@ namespace mtl {
|
||||
|
||||
class IndexBufferResource : public gfx::IndexBufferResource {
|
||||
public:
|
||||
IndexBufferResource() noexcept = default;
|
||||
IndexBufferResource() noexcept = delete;
|
||||
IndexBufferResource(BufferResource&&) noexcept;
|
||||
IndexBufferResource(IndexBufferResource&& other) noexcept
|
||||
: buffer(std::move(other.buffer)) {}
|
||||
|
||||
@@ -10,7 +10,7 @@ namespace mtl {
|
||||
|
||||
class VertexBufferResource : public gfx::VertexBufferResource {
|
||||
public:
|
||||
VertexBufferResource() noexcept = default;
|
||||
VertexBufferResource() noexcept = delete;
|
||||
VertexBufferResource(BufferResource&&) noexcept;
|
||||
VertexBufferResource(VertexBufferResource&& other) noexcept
|
||||
: buffer(std::move(other.buffer)) {}
|
||||
|
||||
@@ -200,7 +200,7 @@ cc_library(
|
||||
objc_library(
|
||||
name = "darwin-objc",
|
||||
srcs = [
|
||||
"src/native_apple_interface.m",
|
||||
"core/native_apple_interface.m",
|
||||
],
|
||||
hdrs = [
|
||||
"include/mbgl/interface/native_apple_interface.h",
|
||||
@@ -227,15 +227,15 @@ objc_library(
|
||||
objc_library(
|
||||
name = "darwin-objcpp",
|
||||
srcs = [
|
||||
"core/collator.mm",
|
||||
"core/http_file_source.mm",
|
||||
"core/image.mm",
|
||||
"core/local_glyph_rasterizer.mm",
|
||||
"core/logging_nslog.mm",
|
||||
"core/nsthread.mm",
|
||||
"core/number_format.mm",
|
||||
"core/string_nsstring.mm",
|
||||
"src/CFHandle.hpp",
|
||||
"src/collator.mm",
|
||||
"src/http_file_source.mm",
|
||||
"src/image.mm",
|
||||
"src/local_glyph_rasterizer.mm",
|
||||
"src/logging_nslog.mm",
|
||||
"src/nsthread.mm",
|
||||
"src/number_format.mm",
|
||||
"src/string_nsstring.mm",
|
||||
] + select({
|
||||
"//:metal_renderer": [],
|
||||
"//conditions:default": ["src/headless_backend_eagl.mm"],
|
||||
@@ -252,6 +252,7 @@ objc_library(
|
||||
],
|
||||
includes = [
|
||||
"include",
|
||||
"src",
|
||||
],
|
||||
sdk_frameworks = [
|
||||
"CoreText",
|
||||
@@ -269,9 +270,9 @@ objc_library(
|
||||
objc_library(
|
||||
name = "darwin-loop",
|
||||
srcs = [
|
||||
"src/async_task.cpp",
|
||||
"src/run_loop.cpp",
|
||||
"src/timer.cpp",
|
||||
"core/async_task.cpp",
|
||||
"core/run_loop.cpp",
|
||||
"core/timer.cpp",
|
||||
] + select({
|
||||
"//:metal_renderer": [],
|
||||
"//conditions:default": ["src/gl_functions.cpp"],
|
||||
|
||||
@@ -86,7 +86,6 @@ class HTTPFileSource::Impl {
|
||||
public:
|
||||
Impl(const ResourceOptions& resourceOptions_, const ClientOptions& clientOptions_)
|
||||
: resourceOptions(resourceOptions_.clone()), clientOptions(clientOptions_.clone()) {
|
||||
@autoreleasepool {
|
||||
NSURLSessionConfiguration *sessionConfig = MLNNativeNetworkManager.sharedManager.sessionConfiguration;
|
||||
session = [NSURLSession sessionWithConfiguration:sessionConfig];
|
||||
|
||||
@@ -95,8 +94,6 @@ public:
|
||||
} else {
|
||||
userAgent = sessionConfig.HTTPAdditionalHeaders[@"User-Agent"];
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
void setResourceOptions(ResourceOptions options);
|
||||
@@ -280,7 +277,7 @@ std::unique_ptr<AsyncRequest> HTTPFileSource::request(const Resource& resource,
|
||||
[MLNNativeNetworkManager.sharedManager startDownloadEvent:url.relativePath type:@"tile"];
|
||||
}
|
||||
|
||||
__block NSURLSession *session;
|
||||
__block NSURLSession *session = nil;
|
||||
|
||||
// Use the delegate's session if there is one, otherwise use the one that
|
||||
// was created when this class was constructed.
|
||||
167
platform/darwin/darwin.cmake
Normal file
167
platform/darwin/darwin.cmake
Normal file
@@ -0,0 +1,167 @@
|
||||
enable_language(OBJC OBJCXX Swift)
|
||||
|
||||
target_link_libraries(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
"-framework CoreGraphics"
|
||||
"-framework CoreLocation"
|
||||
"-framework CoreImage"
|
||||
"-framework SystemConfiguration"
|
||||
mbgl-vendor-icu
|
||||
sqlite3
|
||||
z
|
||||
)
|
||||
|
||||
target_sources(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/async_task.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/collator.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/http_file_source.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/image.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/local_glyph_rasterizer.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/logging_nslog.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/native_apple_interface.m
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/nsthread.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/number_format.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/run_loop.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/string_nsstring.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/core/timer.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/gfx/headless_backend.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/gfx/headless_frontend.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/layermanager/layer_manager.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/map/map_snapshotter.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/platform/time.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/asset_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/mbtiles_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/database_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/file_source_manager.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/file_source_request.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/local_file_request.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/local_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/main_resource_loader.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/offline.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/offline_database.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/offline_download.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/online_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/$<IF:$<BOOL:${MLN_WITH_PMTILES}>,pmtiles_file_source.cpp,pmtiles_file_source_stub.cpp>
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/sqlite3.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/text/bidi.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/compression.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/filesystem.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/monotonic_timer.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/png_writer.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/thread_local.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/utf.cpp
|
||||
)
|
||||
|
||||
target_include_directories(
|
||||
mbgl-core
|
||||
PUBLIC
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/include
|
||||
${PROJECT_SOURCE_DIR}/platform/default/include
|
||||
PRIVATE
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src ${PROJECT_SOURCE_DIR}/platform/macos/src
|
||||
)
|
||||
|
||||
if(MLN_WITH_METAL)
|
||||
target_sources(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/mtl/headless_backend.cpp
|
||||
)
|
||||
endif()
|
||||
|
||||
include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
|
||||
|
||||
set(CMAKE_OBJC_FLAGS "-fobjc-arc")
|
||||
set(CMAKE_OBJCXX_FLAGS "-fobjc-arc")
|
||||
|
||||
set(MLN_GENERATED_DARWIN_CODE_DIR
|
||||
${CMAKE_BINARY_DIR}/generated-darwin-code/src
|
||||
)
|
||||
|
||||
set(MLN_GENERATED_DARWIN_STYLE_SOURCE
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNLight.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNBackgroundStyleLayer.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNCircleStyleLayer.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNFillExtrusionStyleLayer.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNFillStyleLayer.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNHeatmapStyleLayer.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNHillshadeStyleLayer.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNLineStyleLayer.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNRasterStyleLayer.mm"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNSymbolStyleLayer.mm"
|
||||
)
|
||||
|
||||
set(MLN_GENERATED_DARWIN_STYLE_PUBLIC_HEADERS
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNBackgroundStyleLayer.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNFillExtrusionStyleLayer.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNHeatmapStyleLayer.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNLight.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNLineStyleLayer.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNSymbolStyleLayer.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNCircleStyleLayer.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNFillStyleLayer.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNHillshadeStyleLayer.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNRasterStyleLayer.h"
|
||||
)
|
||||
|
||||
set(MLN_GENERATED_DARWIN_STYLE_HEADERS
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNRasterStyleLayer_Private.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNBackgroundStyleLayer_Private.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNFillExtrusionStyleLayer_Private.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNHeatmapStyleLayer_Private.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNLineStyleLayer_Private.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNSymbolStyleLayer_Private.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNCircleStyleLayer_Private.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNFillStyleLayer_Private.h"
|
||||
"${MLN_GENERATED_DARWIN_CODE_DIR}/MLNHillshadeStyleLayer_Private.h"
|
||||
${MLN_GENERATED_DARWIN_STYLE_PUBLIC_HEADERS}
|
||||
)
|
||||
|
||||
find_program(BAZEL bazel REQUIRED)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${MLN_GENERATED_DARWIN_STYLE_SOURCE} ${MLN_GENERATED_DARWIN_STYLE_HEADERS}
|
||||
COMMAND ${CMAKE_COMMAND} -E rm -Rf
|
||||
"${PROJECT_SOURCE_DIR}/bazel-bin/platform/darwin/src"
|
||||
COMMAND ${BAZEL} build //platform/darwin:generated_code
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory
|
||||
"${PROJECT_SOURCE_DIR}/bazel-bin/platform/darwin/src"
|
||||
${MLN_GENERATED_DARWIN_CODE_DIR}
|
||||
COMMENT "Generating Darwin style source and header files"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
add_custom_target(mbgl-darwin-style-code
|
||||
DEPENDS ${MLN_GENERATED_DARWIN_STYLE_SOURCE} ${MLN_GENERATED_DARWIN_STYLE_HEADERS}
|
||||
)
|
||||
|
||||
add_library(
|
||||
custom-layer-examples
|
||||
EXCLUDE_FROM_ALL
|
||||
"${CMAKE_CURRENT_LIST_DIR}/app/ExampleCustomDrawableStyleLayer.mm"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/app/CustomStyleLayerExample.m"
|
||||
)
|
||||
|
||||
target_link_libraries(
|
||||
custom-layer-examples
|
||||
PUBLIC ios-sdk-static
|
||||
PRIVATE mbgl-compiler-options mbgl-core
|
||||
)
|
||||
|
||||
if(MLN_WITH_METAL)
|
||||
target_compile_definitions(
|
||||
custom-layer-examples
|
||||
PRIVATE MLN_RENDER_BACKEND_METAL=1
|
||||
)
|
||||
endif()
|
||||
|
||||
target_include_directories(
|
||||
custom-layer-examples
|
||||
PUBLIC
|
||||
"${CMAKE_CURRENT_LIST_DIR}/app"
|
||||
PRIVATE
|
||||
"${PROJECT_SOURCE_DIR}/src" # FIXME: should not use private headers
|
||||
)
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"//": "This file can be edited manually and is the canonical source.",
|
||||
"sources": [
|
||||
"platform/darwin/src/async_task.cpp",
|
||||
"platform/darwin/src/run_loop.cpp",
|
||||
"platform/darwin/src/timer.cpp"
|
||||
],
|
||||
"public_headers": {},
|
||||
"private_headers": {}
|
||||
}
|
||||
@@ -18,7 +18,7 @@ const MLNExceptionName MLNBundleNotFoundException = @"MLNBundleNotFoundException
|
||||
bundle = [self bundleWithPath:bundlePath];
|
||||
} else {
|
||||
[NSException raise:MLNBundleNotFoundException
|
||||
format:@"The MapLibre framework bundle could not be found. If using the MapLibre Native for iOS as a static framework, make sure that MapLibre bundle is copied into the root of the app bundle."];
|
||||
format:@"The MapLibre framework bundle could not be found. If using MapLibre iOS as a static framework, make sure that MapLibre bundle is copied into the root of the app bundle."];
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -119,7 +119,7 @@ public:
|
||||
req,
|
||||
tileID,
|
||||
header.root_dir_offset,
|
||||
header.root_dir_bytes,
|
||||
static_cast<uint32_t>(header.root_dir_bytes),
|
||||
0,
|
||||
[=, this](std::pair<uint64_t, uint32_t> tileAddress, std::unique_ptr<Response::Error> tileError) {
|
||||
if (tileError) {
|
||||
|
||||
@@ -18,7 +18,7 @@ load(
|
||||
"MLN_IOS_PUBLIC_OBJCPP_SOURCE",
|
||||
"MLN_IOS_PUBLIC_OBJC_SOURCE",
|
||||
"MLN_IOS_SDK_HEADERS",
|
||||
"MLN_PUBLIC_IOS_APP_SOPURCE",
|
||||
"MLN_PUBLIC_IOS_APP_SOURCE",
|
||||
)
|
||||
load("//platform/ios/bazel:macros.bzl", "info_plist")
|
||||
load("//platform/ios/bazel:provisioning.bzl", "configure_device_profiles")
|
||||
@@ -60,7 +60,7 @@ filegroup(
|
||||
|
||||
filegroup(
|
||||
name = "ios_app_srcs",
|
||||
srcs = MLN_PUBLIC_IOS_APP_SOPURCE,
|
||||
srcs = MLN_PUBLIC_IOS_APP_SOURCE,
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
@@ -350,7 +350,7 @@ exports_files(
|
||||
MLN_IOS_PUBLIC_OBJCPP_METAL_SOURCE +
|
||||
MLN_IOS_PUBLIC_OBJCPP_OPENGL_SOURCE +
|
||||
MLN_IOS_PUBLIC_OBJC_SOURCE +
|
||||
MLN_PUBLIC_IOS_APP_SOPURCE,
|
||||
MLN_PUBLIC_IOS_APP_SOURCE,
|
||||
)
|
||||
|
||||
js_library(
|
||||
|
||||
62
platform/ios/app/CMakeLists.txt
Normal file
62
platform/ios/app/CMakeLists.txt
Normal file
@@ -0,0 +1,62 @@
|
||||
cmake_minimum_required(VERSION 3.20)
|
||||
project(app LANGUAGES C CXX OBJC OBJCXX)
|
||||
|
||||
set(CMAKE_OSX_ARCHITECTURES "arm64")
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "14.0")
|
||||
|
||||
file(GLOB APP_SOURCES CONFIGURE_DEPENDS
|
||||
"*.m" "*.mm"
|
||||
)
|
||||
|
||||
set(APP_RESOURCES
|
||||
Assets.xcassets
|
||||
Base.lproj
|
||||
LaunchScreen.storyboard
|
||||
Main.storyboard
|
||||
Settings.bundle
|
||||
)
|
||||
|
||||
add_executable(app
|
||||
${APP_SOURCES}
|
||||
${APP_RESOURCES}
|
||||
)
|
||||
|
||||
target_include_directories(
|
||||
app PRIVATE
|
||||
"${PROJECT_SOURCE_DIR}"
|
||||
)
|
||||
|
||||
set_target_properties(app PROPERTIES
|
||||
MACOSX_BUNDLE YES
|
||||
MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_LIST_DIR}/Info.plist"
|
||||
XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "org.maplibre.app"
|
||||
XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "YES"
|
||||
XCODE_ATTRIBUTE_DEVELOPMENT_TEAM "${DEVELOPMENT_TEAM_ID}"
|
||||
XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "iPhone Developer"
|
||||
XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC "YES"
|
||||
)
|
||||
|
||||
add_custom_command(TARGET app POST_BUILD
|
||||
COMMAND plutil -insert CFBundleShortVersionString -string "1.0.0" "$<TARGET_BUNDLE_DIR:app>/Info.plist"
|
||||
COMMENT "Injecting CFBundleShortVersionString..."
|
||||
)
|
||||
|
||||
add_custom_command(TARGET app POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory
|
||||
"$<TARGET_BUNDLE_DIR:ios-sdk-static>/Mapbox.bundle"
|
||||
"$<TARGET_BUNDLE_DIR:app>/Mapbox.bundle"
|
||||
COMMAND ls "$<TARGET_BUNDLE_DIR:app>"
|
||||
)
|
||||
|
||||
target_link_libraries(
|
||||
app
|
||||
custom-layer-examples # ios-sdk-static transitive dependency
|
||||
)
|
||||
|
||||
foreach(resource_file ${APP_RESOURCES})
|
||||
set_source_files_properties(
|
||||
${resource_file}
|
||||
PROPERTIES
|
||||
MACOSX_PACKAGE_LOCATION "Resources"
|
||||
)
|
||||
endforeach()
|
||||
@@ -13,7 +13,7 @@
|
||||
#import "MBXState.h"
|
||||
#import "MLNSettings.h"
|
||||
|
||||
#import "platform/ios/src/MLNMapView_Private.h"
|
||||
#import "MLNMapView_Private.h"
|
||||
|
||||
#import "CustomStyleLayerExample.h"
|
||||
|
||||
|
||||
@@ -78,7 +78,7 @@ MLN_IOS_PUBLIC_OBJCPP_METAL_SOURCE = [
|
||||
"src/MLNMapView+Metal.mm",
|
||||
]
|
||||
|
||||
MLN_PUBLIC_IOS_APP_SOPURCE = [
|
||||
MLN_PUBLIC_IOS_APP_SOURCE = [
|
||||
"app/MBXAnnotationView.m",
|
||||
"app/MBXAppDelegate.m",
|
||||
"app/MBXCustomCalloutView.h",
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
{
|
||||
"//": "This file can be edited manually and is the canonical source.",
|
||||
"sources": [
|
||||
"platform/darwin/src/collator.mm",
|
||||
"platform/darwin/src/gl_functions.cpp",
|
||||
"platform/darwin/src/headless_backend_eagl.mm",
|
||||
"platform/darwin/src/image.mm",
|
||||
"platform/darwin/src/local_glyph_rasterizer.mm",
|
||||
"platform/darwin/src/logging_nslog.mm",
|
||||
"platform/darwin/src/number_format.mm",
|
||||
"platform/darwin/src/nsthread.mm",
|
||||
"platform/darwin/src/reachability.m",
|
||||
"platform/darwin/src/string_nsstring.mm",
|
||||
"platform/default/src/mbgl/gfx/headless_backend.cpp",
|
||||
"platform/default/src/mbgl/gfx/headless_frontend.cpp",
|
||||
"platform/default/src/mbgl/gl/headless_backend.cpp",
|
||||
"platform/default/src/mbgl/map/map_snapshotter.cpp",
|
||||
"platform/default/src/mbgl/text/bidi.cpp",
|
||||
"platform/default/src/mbgl/util/compression.cpp",
|
||||
"platform/default/src/mbgl/util/png_writer.cpp",
|
||||
"platform/default/src/mbgl/util/thread_local.cpp",
|
||||
"platform/default/src/mbgl/util/utf.cpp"
|
||||
],
|
||||
"public_headers": {
|
||||
"mbgl/storage/reachability.h": "platform/darwin/include/mbgl/storage/reachability.h",
|
||||
"mbgl/util/image+MLNAdditions.hpp": "platform/darwin/include/mbgl/util/image+MLNAdditions.hpp",
|
||||
"mbgl/gfx/headless_backend.hpp": "platform/default/include/mbgl/gfx/headless_backend.hpp",
|
||||
"mbgl/gfx/headless_frontend.hpp": "platform/default/include/mbgl/gfx/headless_frontend.hpp",
|
||||
"mbgl/gl/headless_backend.hpp": "platform/default/include/mbgl/gl/headless_backend.hpp",
|
||||
"mbgl/map/map_snapshotter.hpp": "platform/default/include/mbgl/map/map_snapshotter.hpp"
|
||||
},
|
||||
"private_headers": {
|
||||
"CFHandle.hpp": "platform/darwin/src/CFHandle.hpp"
|
||||
}
|
||||
}
|
||||
128
platform/ios/ios.cmake
Normal file
128
platform/ios/ios.cmake
Normal file
@@ -0,0 +1,128 @@
|
||||
target_include_directories(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
${PROJECT_SOURCE_DIR}/platform/ios/src
|
||||
)
|
||||
|
||||
file(GLOB_RECURSE IOS_SDK_SOURCE_FILES
|
||||
"${PROJECT_SOURCE_DIR}/platform/darwin/src/*.m"
|
||||
"${PROJECT_SOURCE_DIR}/platform/darwin/src/*.mm"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/src/*.m"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/src/*.mm"
|
||||
)
|
||||
|
||||
file(GLOB_RECURSE IOS_SDK_RESOURCE_FILES
|
||||
"${CMAKE_CURRENT_LIST_DIR}/resources/*"
|
||||
)
|
||||
|
||||
|
||||
if(NOT MLN_WITH_OPENGL)
|
||||
list(FILTER IOS_SDK_SOURCE_FILES EXCLUDE REGEX ".*(OpenGL|gl).*")
|
||||
elseif(NOT MLN_WITH_METAL)
|
||||
list(FILTER IOS_SDK_SOURCE_FILES EXCLUDE REGEX ".*Metal.*")
|
||||
endif()
|
||||
|
||||
set(FRAMEWORK_BUNDLE_DIR ${CMAKE_CURRENT_BINARY_DIR}/Mapbox.bundle)
|
||||
|
||||
find_program(ACTOOL_EXECUTABLE actool
|
||||
HINTS
|
||||
/Applications/Xcode.app/Contents/Developer/usr/bin
|
||||
DOC "Xcode Asset Catalog Compiler (actool)"
|
||||
)
|
||||
if(NOT ACTOOL_EXECUTABLE)
|
||||
message(FATAL_ERROR "Could not find actool. Ensure Xcode is installed.")
|
||||
endif()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/Mapbox.bundle/Assets.car
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/Mapbox.bundle
|
||||
COMMAND ${ACTOOL_EXECUTABLE}
|
||||
--compile ${FRAMEWORK_BUNDLE_DIR}
|
||||
--platform iphoneos
|
||||
--minimum-deployment-target 12.0
|
||||
${CMAKE_CURRENT_LIST_DIR}/resources/Images.xcassets
|
||||
COMMAND ${CMAKE_COMMAND} -E copy
|
||||
${CMAKE_CURRENT_LIST_DIR}/framework/Info-static.plist
|
||||
${CMAKE_CURRENT_BINARY_DIR}/Mapbox.bundle/Info.plist
|
||||
DEPENDS ${CMAKE_CURRENT_LIST_DIR}/resources/Images.xcassets
|
||||
COMMENT "Compiling Images.xcassets into Mapbox.bundle/Assets.car"
|
||||
)
|
||||
|
||||
list(APPEND IOS_SDK_RESOURCE_FILES ${FRAMEWORK_BUNDLE_DIR})
|
||||
|
||||
add_custom_target(create-framework-bundle
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/Mapbox.bundle/Assets.car
|
||||
)
|
||||
|
||||
add_library(
|
||||
ios-sdk-static
|
||||
STATIC ${IOS_SDK_SOURCE_FILES} ${MLN_GENERATED_DARWIN_STYLE_SOURCE}
|
||||
${IOS_SDK_RESOURCE_FILES}
|
||||
)
|
||||
|
||||
set_source_files_properties(
|
||||
${FRAMEWORK_BUNDLE_DIR}
|
||||
PROPERTIES
|
||||
MACOSX_PACKAGE_LOCATION "Resources"
|
||||
GENERATED TRUE
|
||||
)
|
||||
|
||||
add_dependencies(ios-sdk-static create-framework-bundle)
|
||||
|
||||
set_target_properties(ios-sdk-static PROPERTIES
|
||||
FRAMEWORK TRUE
|
||||
# This makes the .framework contain a static library instead of a dynamic one:
|
||||
XCODE_ATTRIBUTE_MACH_O_TYPE "staticlib"
|
||||
|
||||
# Provide a unique bundle identifier
|
||||
MACOSX_FRAMEWORK_IDENTIFIER "org.maplibre.ios"
|
||||
|
||||
# FIXME: versioning
|
||||
MACOSX_FRAMEWORK_BUNDLE_VERSION "1.0"
|
||||
MACOSX_FRAMEWORK_SHORT_VERSION_STRING "1.0"
|
||||
)
|
||||
|
||||
if(MLN_WITH_METAL)
|
||||
message(STATUS "Configuring Metal renderer backend")
|
||||
target_compile_definitions(
|
||||
ios-sdk-static
|
||||
PRIVATE MLN_RENDER_BACKEND_METAL=1
|
||||
)
|
||||
endif()
|
||||
|
||||
target_include_directories(
|
||||
ios-sdk-static
|
||||
PUBLIC ${MLN_GENERATED_DARWIN_CODE_DIR} ${CMAKE_CURRENT_LIST_DIR}/src ${PROJECT_SOURCE_DIR}/platform/darwin/src
|
||||
PRIVATE ${PROJECT_SOURCE_DIR}/src
|
||||
)
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/vendor/calloutview.cmake")
|
||||
|
||||
target_link_libraries(
|
||||
ios-sdk-static
|
||||
PUBLIC mbgl-core
|
||||
PRIVATE mbgl-compiler-options mbgl-vendor-calloutview mbgl-vendor-metal-cpp mbgl-vendor-polylabel
|
||||
"-framework CoreText"
|
||||
"-framework CoreImage"
|
||||
"-framework CoreGraphics"
|
||||
"-framework QuartzCore"
|
||||
"-framework UIKit"
|
||||
"-framework MetalKit"
|
||||
"-framework ImageIO"
|
||||
)
|
||||
|
||||
target_link_options(ios-sdk-static INTERFACE -ObjC)
|
||||
|
||||
add_dependencies(ios-sdk-static mbgl-darwin-style-code)
|
||||
|
||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/app")
|
||||
|
||||
set(DEVELOPMENT_TEAM_ID "" CACHE STRING "Apple Development Team ID")
|
||||
|
||||
if(NOT DEVELOPMENT_TEAM_ID)
|
||||
message(STATUS "No Apple Developer Team ID set (-DDEVELOPMENT_TEAM_ID=YOUR_TEAM_ID). Configuring build without signing.")
|
||||
set(CMAKE_OSX_SYSROOT iphonesimulator)
|
||||
set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "NO")
|
||||
set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO")
|
||||
set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "")
|
||||
endif()
|
||||
@@ -1,157 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
const child_process = require('child_process');
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const xcode = require('xcode');
|
||||
|
||||
require('../../../scripts/style-code');
|
||||
|
||||
const classifier = /^(?:(?:(?:platform|vendor)\/(?:(?!include|src).)*\/|(?:test|benchmark)\/)?(?:(include|src)\/)?)?(.+\.h(?:pp|xx)?)$/;
|
||||
|
||||
function generateFileList(filename, roots, regex, patterns) {
|
||||
writeFileList(
|
||||
filename,
|
||||
[].concat.apply([], roots.map(function(root) {
|
||||
return child_process
|
||||
.execSync(`git -C ${root} ls-files ${patterns.map((p) => '"' + p + '"').join(' ')}`)
|
||||
.toString()
|
||||
.trim()
|
||||
.split('\n')
|
||||
.map(file => path.join(root, file))
|
||||
})))
|
||||
}
|
||||
|
||||
function writeFileList(filename, files) {
|
||||
const json = {
|
||||
"//": "This file is generated. Do not edit. Regenerate it with scripts/generate-file-lists.js",
|
||||
sources: [],
|
||||
public_headers: {},
|
||||
private_headers: {}
|
||||
};
|
||||
files.sort();
|
||||
for (const file of files) {
|
||||
const match = file.match(classifier);
|
||||
if (!match) {
|
||||
json.sources.push(file);
|
||||
} else if (match[1] === 'src') {
|
||||
json.private_headers[match[2]] = file;
|
||||
} else {
|
||||
if (match[1] !== 'include') {
|
||||
console.warn(`* ${file} is not in include or src directory. Treating as public header.`);
|
||||
}
|
||||
json.public_headers[match[2]] = file;
|
||||
}
|
||||
}
|
||||
writeIfModified(filename, JSON.stringify(json, null, 4) + '\n');
|
||||
}
|
||||
|
||||
function generateXcodeSourceList(project, target, name) {
|
||||
const projectPath = path.dirname(project);
|
||||
let objects = xcode.project(path.join(project, 'project.pbxproj')).parseSync().hash.project.objects;
|
||||
|
||||
// Build reverse lookup table for file => group
|
||||
let objToGroup = {};
|
||||
Object.keys(objects.PBXGroup)
|
||||
.filter(name => !/_comment$/.test(name))
|
||||
.forEach(name => objects.PBXGroup[name].children
|
||||
.forEach(child => objToGroup[child.value] = name));
|
||||
|
||||
// Retrieve the target
|
||||
const targetObj = Object.keys(objects.PBXNativeTarget)
|
||||
.filter(name => !/_comment$/.test(name))
|
||||
.map(name => objects.PBXNativeTarget[name])
|
||||
.filter(project => project.name == target)[0];
|
||||
|
||||
// Retrieve the sources associated with the target.
|
||||
const sourcesObjs = targetObj.buildPhases
|
||||
.map(phase => objects.PBXSourcesBuildPhase[phase.value] || objects.PBXHeadersBuildPhase[phase.value])
|
||||
.filter(phase => phase);
|
||||
|
||||
const json = {
|
||||
"//": "This file is generated. Do not edit. Regenerate it with scripts/generate-file-lists.js",
|
||||
sources: [],
|
||||
public_headers: {},
|
||||
private_headers: {}
|
||||
};
|
||||
|
||||
sourcesObjs
|
||||
.forEach(sourcesObj => sourcesObj.files
|
||||
.map(file => objects.PBXBuildFile[file.value])
|
||||
.forEach(buildFile => {
|
||||
// const isPublic = buildFile.settings && buildFile.settings.ATTRIBUTES && buildFile.settings.ATTRIBUTES.indexOf('Public') >= 0 || false;
|
||||
const fileRef = buildFile.fileRef;
|
||||
// Look up the full path, and fully qualified group name for every source reference
|
||||
let fileObj = objects.PBXFileReference[fileRef];
|
||||
|
||||
// Ascend the group tree to find the full path.
|
||||
let fullPath = [ fileObj.path.replace(/^"(.+)"$/, '$1') ];
|
||||
for (let ref = fileRef, obj = fileObj; obj.sourceTree != 'SOURCE_ROOT' && ref in objToGroup;) {
|
||||
ref = objToGroup[ref];
|
||||
obj = objects.PBXGroup[ref];
|
||||
if (obj.path) {
|
||||
fullPath.unshift(obj.path.replace(/^"(.+)"$/, '$1'));
|
||||
}
|
||||
}
|
||||
fullPath.unshift(projectPath);
|
||||
|
||||
const fullPathName = path.join.apply(path, fullPath);
|
||||
|
||||
if (sourcesObj.isa === 'PBXHeadersBuildPhase') {
|
||||
const isPublic = buildFile.settings && buildFile.settings.ATTRIBUTES && buildFile.settings.ATTRIBUTES.indexOf('Public') >= 0 || false;
|
||||
json[isPublic ? 'public_headers' : 'private_headers'][path.basename(fullPathName)] = fullPathName;
|
||||
} else {
|
||||
json.sources.push(fullPathName);
|
||||
}
|
||||
})
|
||||
);
|
||||
|
||||
json.public_headers['Mapbox/Mapbox.h'] = json.public_headers['Mapbox.h'];
|
||||
delete json.public_headers['Mapbox.h'];
|
||||
|
||||
writeIfModified(`${projectPath}/${name || target}-files.json`, JSON.stringify(json, null, 4) + '\n');
|
||||
}
|
||||
|
||||
generateFileList('src/core-files.json', [ '.' ], /^(?:src|include)\/(?:mbgl\/)?(.+)\/[^\/]+$/,
|
||||
[ 'include/*.hpp', 'include/*.h', 'src/*.hpp', 'src/*.cpp', 'src/*.h', 'src/*.c' ]);
|
||||
|
||||
generateFileList('benchmark/benchmark-files.json', [ '.' ], /^benchmark\/(?:(?:src|include)\/)?(?:mbgl\/)?(?:(.+)\/)?[^\/]+$/,
|
||||
[ 'benchmark/*.hpp', 'benchmark/*.cpp', 'benchmark/*.host', 'benchmark/*.c' ]);
|
||||
|
||||
generateFileList('test/test-files.json', [ '.' ], /^test\/(?:(?:src|include)\/)?(?:mbgl\/)?(?:(.+)\/)?[^\/]+$/,
|
||||
[ 'test/*.hpp', 'test/*.cpp', 'test/*.h', 'test/*.c' ]);
|
||||
|
||||
generateXcodeSourceList('platform/macos/macos.xcodeproj', 'dynamic', 'sdk');
|
||||
|
||||
generateXcodeSourceList('platform/ios/ios.xcodeproj', 'dynamic', 'sdk');
|
||||
|
||||
const vendorRegex = /^(?:(?:src|include)\/)?(?:(.+)\/)?[^\/]+$/
|
||||
generateFileList('vendor/boost-files.json', [ 'vendor/boost' ], vendorRegex, [ "include/**/*.hpp", "include/**/*.h" ]);
|
||||
generateFileList('vendor/cheap-ruler-cpp-files.json', [ 'vendor/cheap-ruler-cpp' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
generateFileList('vendor/earcut.hpp-files.json', [ 'vendor/earcut.hpp' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
generateFileList('vendor/eternal-files.json', [ 'vendor/eternal' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
generateFileList('vendor/expected-files.json', [ 'vendor/expected' ], vendorRegex, [ "include/expected.hpp" ]);
|
||||
generateFileList('vendor/geojson-vt-cpp-files.json', [ 'vendor/geojson-vt-cpp' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
generateFileList('vendor/icu-files.json', [ 'vendor/icu' ], vendorRegex, [ "include/**/*.h", "src/*.h", "src/*.cpp" ]);
|
||||
generateFileList('vendor/mapbox-base-files.json',
|
||||
[ 'vendor/mapbox-base/extras/kdbush.hpp',
|
||||
'vendor/mapbox-base/extras/filesystem',
|
||||
'vendor/mapbox-base/extras/rapidjson',
|
||||
'vendor/mapbox-base/mapbox/pixelmatch-cpp',
|
||||
'vendor/mapbox-base/mapbox/geometry.hpp',
|
||||
'vendor/mapbox-base/mapbox/variant',
|
||||
'vendor/mapbox-base/mapbox/optional',
|
||||
'vendor/mapbox-base/mapbox/supercluster.hpp',
|
||||
'vendor/mapbox-base/mapbox/geojson.hpp',
|
||||
'vendor/mapbox-base/mapbox/jni.hpp',
|
||||
'vendor/mapbox-base/mapbox/weak',
|
||||
'vendor/mapbox-base/mapbox/typewrapper',
|
||||
'vendor/mapbox-base/mapbox/value'],
|
||||
vendorRegex, [ "include/*.hpp", "include/**/*.hpp", "include/**/*.h", ":!:include/jni/string_conversion.hpp" ]);
|
||||
generateFileList('vendor/polylabel-files.json', [ 'vendor/polylabel' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
generateFileList('vendor/protozero-files.json', [ 'vendor/protozero' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
generateFileList('vendor/shelf-pack-cpp-files.json', [ 'vendor/shelf-pack-cpp' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
generateFileList('vendor/sqlite-files.json', [ 'vendor/sqlite' ], vendorRegex, [ "include/*.h", "src/*.c" ]);
|
||||
generateFileList('vendor/unique_resource-files.json', [ 'vendor/unique_resource' ], vendorRegex, [ "unique_resource.hpp" ]);
|
||||
generateFileList('vendor/vector-tile-files.json', [ 'vendor/vector-tile' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
generateFileList('vendor/wagyu-files.json', [ 'vendor/wagyu' ], vendorRegex, [ "include/**/*.hpp" ]);
|
||||
@@ -1,315 +0,0 @@
|
||||
{
|
||||
"//": "This file is generated. Do not edit. Regenerate it with scripts/generate-file-lists.js",
|
||||
"sources": [
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEDate.m",
|
||||
"platform/darwin/src/MLNBackgroundStyleLayer.mm",
|
||||
"platform/darwin/src/NSComparisonPredicate+MLNAdditions.mm",
|
||||
"platform/darwin/src/NSURL+MLNAdditions.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEvent.m",
|
||||
"platform/ios/src/MLNUserLocationAnnotationView.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEventsConfiguration.m",
|
||||
"platform/ios/src/MLNFaux3DUserLocationAnnotationView.m",
|
||||
"platform/darwin/src/MLNFeature.mm",
|
||||
"platform/ios/src/UIImage+MLNAdditions.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEMetricsManager.m",
|
||||
"platform/ios/src/MLNMapView+Impl.mm",
|
||||
"platform/ios/src/MLNAnnotationContainerView.m",
|
||||
"platform/ios/src/MLNCompactCalloutView.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEDependencyManager.m",
|
||||
"platform/darwin/src/MLNPointAnnotation.mm",
|
||||
"platform/ios/src/MLNMapView+OpenGL.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEConstants.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEPinningConfigurationProvider.m",
|
||||
"platform/ios/src/MLNAnnotationView.mm",
|
||||
"platform/darwin/src/MLNCircleStyleLayer.mm",
|
||||
"platform/ios/src/UIViewController+MLNAdditions.m",
|
||||
"platform/darwin/src/NSValue+MLNStyleAttributeAdditions.mm",
|
||||
"platform/darwin/src/MLNVectorStyleLayer.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEUniqueIdentifier.m",
|
||||
"platform/darwin/src/MLNShapeSource.mm",
|
||||
"platform/ios/src/UIDevice+MLNAdditions.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMECertPin.m",
|
||||
"platform/darwin/src/NSArray+MLNAdditions.mm",
|
||||
"platform/ios/src/UIView+MLNAdditions.m",
|
||||
"platform/ios/src/NSOrthography+MLNAdditions.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEDispatchManager.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMETimerManager.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/CLLocation+MMEMobileEvents.m",
|
||||
"platform/darwin/src/MLNRasterStyleLayer.mm",
|
||||
"platform/darwin/src/MLNForegroundStyleLayer.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEventLogReportViewController.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEConfigurator.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/NSData+MMEGZIP.m",
|
||||
"platform/darwin/src/MLNAttributionInfo.mm",
|
||||
"platform/darwin/src/NSBundle+MLNAdditions.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEUINavigation.m",
|
||||
"platform/ios/src/MLNUserLocationHeadingArrowLayer.m",
|
||||
"platform/ios/src/MLNUserLocation.m",
|
||||
"platform/darwin/src/MLNMapSnapshotter.mm",
|
||||
"platform/darwin/src/MLNVectorTileSource.mm",
|
||||
"platform/darwin/src/MLNRasterTileSource.mm",
|
||||
"platform/ios/vendor/SMCalloutView/SMCalloutView.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/MMECategoryLoader.m",
|
||||
"platform/darwin/src/MLNSource.mm",
|
||||
"platform/darwin/src/MLNLight.mm",
|
||||
"platform/darwin/src/MLNClockDirectionFormatter.m",
|
||||
"platform/darwin/src/MLNShapeCollection.mm",
|
||||
"platform/darwin/src/MLNHillshadeStyleLayer.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/UIKit+MMEMobileEvents.m",
|
||||
"platform/darwin/src/MLNSymbolStyleLayer.mm",
|
||||
"platform/darwin/src/MLNLoggingConfiguration.mm",
|
||||
"platform/darwin/src/MLNStyleValue.mm",
|
||||
"platform/darwin/src/MLNOfflinePack.mm",
|
||||
"platform/darwin/src/MLNComputedShapeSource.mm",
|
||||
"platform/darwin/src/MLNDistanceFormatter.m",
|
||||
"platform/ios/src/MLNMapboxEvents.m",
|
||||
"platform/darwin/src/MLNSDKMetricsManager.m",
|
||||
"platform/ios/src/MLNCompassButton.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEAPIClient.m",
|
||||
"platform/ios/src/MLNMapView.mm",
|
||||
"platform/ios/src/MLNAnnotationImage.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMELocationManager.m",
|
||||
"platform/darwin/src/MLNShape.mm",
|
||||
"platform/darwin/src/MLNCompassDirectionFormatter.m",
|
||||
"platform/darwin/src/MLNNetworkConfiguration.mm",
|
||||
"platform/darwin/src/MLNStyleLayer.mm",
|
||||
"platform/darwin/src/MLNStyleLayerManager.mm",
|
||||
"platform/darwin/src/NSValue+MLNAdditions.m",
|
||||
"platform/darwin/src/MLNImageSource.mm",
|
||||
"platform/darwin/src/NSString+MLNAdditions.m",
|
||||
"platform/darwin/src/NSDictionary+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNCoordinateFormatter.m",
|
||||
"platform/darwin/src/MLNShapeOfflineRegion.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEMetrics.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEUIApplicationWrapper.m",
|
||||
"platform/darwin/src/MLNStyle.mm",
|
||||
"platform/darwin/src/NSCoder+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNAttributedExpression.m",
|
||||
"platform/darwin/src/MLNGeometry.mm",
|
||||
"platform/darwin/src/MLNFoundation.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMECommonEventData.m",
|
||||
"platform/darwin/src/NSExpression+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNMultiPoint.mm",
|
||||
"platform/darwin/src/MLNTypes.m",
|
||||
"platform/darwin/src/MLNFillExtrusionStyleLayer.mm",
|
||||
"platform/darwin/src/MLNTileSource.mm",
|
||||
"platform/ios/src/MLNScaleBar.mm",
|
||||
"platform/darwin/src/MLNMapCamera.mm",
|
||||
"platform/darwin/src/MLNRasterDEMSource.mm",
|
||||
"platform/darwin/src/MLNPolygon.mm",
|
||||
"platform/darwin/src/NSPredicate+MLNAdditions.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Reachability/MMEReachability.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMENSURLSessionWrapper.m",
|
||||
"platform/ios/src/MLNUserLocationHeadingBeamLayer.m",
|
||||
"platform/darwin/src/MLNHeatmapStyleLayer.mm",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEventLogger.m",
|
||||
"platform/darwin/src/NSDate+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNLocationManager.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/CLLocationManager+MMEMobileEvents.m",
|
||||
"platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEventsManager.m",
|
||||
"platform/darwin/src/MLNFillStyleLayer.mm",
|
||||
"platform/darwin/src/MLNOfflineStorage.mm",
|
||||
"platform/darwin/src/MLNTilePyramidOfflineRegion.mm",
|
||||
"platform/darwin/src/MLNPointCollection.mm",
|
||||
"platform/darwin/src/MLNLineStyleLayer.mm",
|
||||
"platform/ios/src/MLNMapAccessibilityElement.mm",
|
||||
"platform/darwin/src/MLNCustomStyleLayer.mm",
|
||||
"platform/darwin/src/MLNSettings.mm",
|
||||
"platform/darwin/src/NSCompoundPredicate+MLNAdditions.mm",
|
||||
"platform/ios/src/MLNTelemetryConfig.m",
|
||||
"platform/darwin/src/MLNPolyline.mm",
|
||||
"platform/ios/src/UIColor+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNRendererConfiguration.mm"
|
||||
],
|
||||
"public_headers": {
|
||||
"MLNFoundation.h": "platform/darwin/src/MLNFoundation.h",
|
||||
"MLNShapeOfflineRegion.h": "platform/darwin/src/MLNShapeOfflineRegion.h",
|
||||
"MLNFillStyleLayer.h": "platform/darwin/src/MLNFillStyleLayer.h",
|
||||
"MLNAnnotationImage.h": "platform/ios/src/MLNAnnotationImage.h",
|
||||
"MLNHillshadeStyleLayer.h": "platform/darwin/src/MLNHillshadeStyleLayer.h",
|
||||
"MLNCluster.h": "platform/darwin/src/MLNCluster.h",
|
||||
"MLNClockDirectionFormatter.h": "platform/darwin/src/MLNClockDirectionFormatter.h",
|
||||
"MLNSymbolStyleLayer.h": "platform/darwin/src/MLNSymbolStyleLayer.h",
|
||||
"MLNAttributionInfo.h": "platform/darwin/src/MLNAttributionInfo.h",
|
||||
"MLNPolyline.h": "platform/darwin/src/MLNPolyline.h",
|
||||
"MLNStyleLayer.h": "platform/darwin/src/MLNStyleLayer.h",
|
||||
"MLNCameraChangeReason.h": "platform/ios/src/MLNCameraChangeReason.h",
|
||||
"MLNCalloutView.h": "platform/ios/src/MLNCalloutView.h",
|
||||
"NSExpression+MLNAdditions.h": "platform/darwin/src/NSExpression+MLNAdditions.h",
|
||||
"MLNShape.h": "platform/darwin/src/MLNShape.h",
|
||||
"MLNBackgroundStyleLayer.h": "platform/darwin/src/MLNBackgroundStyleLayer.h",
|
||||
"MLNStyle.h": "platform/darwin/src/MLNStyle.h",
|
||||
"MLNUserLocationAnnotationView.h": "platform/ios/src/MLNUserLocationAnnotationView.h",
|
||||
"MLNAnnotation.h": "platform/darwin/src/MLNAnnotation.h",
|
||||
"MLNCompassButton.h": "platform/ios/src/MLNCompassButton.h",
|
||||
"MLNLight.h": "platform/darwin/src/MLNLight.h",
|
||||
"MLNPointCollection.h": "platform/darwin/src/MLNPointCollection.h",
|
||||
"MLNAnnotationView.h": "platform/ios/src/MLNAnnotationView.h",
|
||||
"MLNFillExtrusionStyleLayer.h": "platform/darwin/src/MLNFillExtrusionStyleLayer.h",
|
||||
"MLNRasterStyleLayer.h": "platform/darwin/src/MLNRasterStyleLayer.h",
|
||||
"MLNSettings.h": "platform/darwin/src/MLNSettings.h",
|
||||
"NSValue+MLNAdditions.h": "platform/darwin/src/NSValue+MLNAdditions.h",
|
||||
"MLNVectorStyleLayer.h": "platform/darwin/src/MLNVectorStyleLayer.h",
|
||||
"MLNNetworkConfiguration.h": "platform/darwin/src/MLNNetworkConfiguration.h",
|
||||
"MLNComputedShapeSource.h": "platform/darwin/src/MLNComputedShapeSource.h",
|
||||
"MLNSDKMetricsManager.h": "platform/darwin/src/MLNSDKMetricsManager.h",
|
||||
"MLNLoggingConfiguration.h": "platform/darwin/src/MLNLoggingConfiguration.h",
|
||||
"MLNLocationManager.h": "platform/darwin/src/MLNLocationManager.h",
|
||||
"MLNRasterDEMSource.h": "platform/darwin/src/MLNRasterDEMSource.h",
|
||||
"MLNLineStyleLayer.h": "platform/darwin/src/MLNLineStyleLayer.h",
|
||||
"MLNImageSource.h": "platform/darwin/src/MLNImageSource.h",
|
||||
"MLNOfflinePack.h": "platform/darwin/src/MLNOfflinePack.h",
|
||||
"MLNUserLocation.h": "platform/ios/src/MLNUserLocation.h",
|
||||
"MLNMapView+IBAdditions.h": "platform/ios/src/MLNMapView+IBAdditions.h",
|
||||
"MLNShapeCollection.h": "platform/darwin/src/MLNShapeCollection.h",
|
||||
"MLNShapeSource.h": "platform/darwin/src/MLNShapeSource.h",
|
||||
"NSPredicate+MLNAdditions.h": "platform/darwin/src/NSPredicate+MLNAdditions.h",
|
||||
"MLNMapSnapshotter.h": "platform/darwin/src/MLNMapSnapshotter.h",
|
||||
"MLNCoordinateFormatter.h": "platform/darwin/src/MLNCoordinateFormatter.h",
|
||||
"MLNStyleValue.h": "platform/darwin/src/MLNStyleValue.h",
|
||||
"MLNOverlay.h": "platform/darwin/src/MLNOverlay.h",
|
||||
"MLNCompassDirectionFormatter.h": "platform/darwin/src/MLNCompassDirectionFormatter.h",
|
||||
"MLNTypes.h": "platform/darwin/src/MLNTypes.h",
|
||||
"MLNGeometry.h": "platform/darwin/src/MLNGeometry.h",
|
||||
"MLNSource.h": "platform/darwin/src/MLNSource.h",
|
||||
"MLNRasterTileSource.h": "platform/darwin/src/MLNRasterTileSource.h",
|
||||
"MLNPolygon.h": "platform/darwin/src/MLNPolygon.h",
|
||||
"MLNPointAnnotation.h": "platform/darwin/src/MLNPointAnnotation.h",
|
||||
"MLNHeatmapStyleLayer.h": "platform/darwin/src/MLNHeatmapStyleLayer.h",
|
||||
"MLNCircleStyleLayer.h": "platform/darwin/src/MLNCircleStyleLayer.h",
|
||||
"MLNMultiPoint.h": "platform/darwin/src/MLNMultiPoint.h",
|
||||
"MLNAttributedExpression.h": "platform/darwin/src/MLNAttributedExpression.h",
|
||||
"MLNFeature.h": "platform/darwin/src/MLNFeature.h",
|
||||
"MLNMapCamera.h": "platform/darwin/src/MLNMapCamera.h",
|
||||
"MLNForegroundStyleLayer.h": "platform/darwin/src/MLNForegroundStyleLayer.h",
|
||||
"MLNOfflineRegion.h": "platform/darwin/src/MLNOfflineRegion.h",
|
||||
"MLNTileOperation.h": "platform/darwin/src/MLNTileOperation.h",
|
||||
"MLNMapViewDelegate.h": "platform/ios/src/MLNMapViewDelegate.h",
|
||||
"MLNDistanceFormatter.h": "platform/darwin/src/MLNDistanceFormatter.h",
|
||||
"MLNCustomStyleLayer.h": "platform/darwin/src/MLNCustomStyleLayer.h",
|
||||
"MLNTileSource.h": "platform/darwin/src/MLNTileSource.h",
|
||||
"MLNTilePyramidOfflineRegion.h": "platform/darwin/src/MLNTilePyramidOfflineRegion.h",
|
||||
"MLNVectorTileSource.h": "platform/darwin/src/MLNVectorTileSource.h",
|
||||
"MLNOfflineStorage.h": "platform/darwin/src/MLNOfflineStorage.h",
|
||||
"MLNScaleBar.h": "platform/ios/src/MLNScaleBar.h",
|
||||
"MLNMapView.h": "platform/ios/src/MLNMapView.h",
|
||||
"Mapbox/Mapbox.h": "platform/ios/src/Mapbox.h"
|
||||
},
|
||||
"private_headers": {
|
||||
"MLNFillStyleLayer_Private.h": "platform/darwin/src/MLNFillStyleLayer_Private.h",
|
||||
"MLNOfflinePack_Private.h": "platform/darwin/src/MLNOfflinePack_Private.h",
|
||||
"MLNCompassButton_Private.h": "platform/ios/src/MLNCompassButton_Private.h",
|
||||
"MLNSource_Private.h": "platform/darwin/src/MLNSource_Private.h",
|
||||
"MLNAnnotationView_Private.h": "platform/ios/src/MLNAnnotationView_Private.h",
|
||||
"MLNValueEvaluator.h": "platform/darwin/src/MLNValueEvaluator.h",
|
||||
"NSBundle+MLNAdditions.h": "platform/darwin/src/NSBundle+MLNAdditions.h",
|
||||
"MLNBackgroundStyleLayer_Private.h": "platform/darwin/src/MLNBackgroundStyleLayer_Private.h",
|
||||
"MLNHillshadeStyleLayer_Private.h": "platform/darwin/src/MLNHillshadeStyleLayer_Private.h",
|
||||
"NSCoder+MLNAdditions.h": "platform/darwin/src/NSCoder+MLNAdditions.h",
|
||||
"MLNComputedShapeSource_Private.h": "platform/darwin/src/MLNComputedShapeSource_Private.h",
|
||||
"MLNPolyline_Private.h": "platform/darwin/src/MLNPolyline_Private.h",
|
||||
"MLNShapeSource_Private.h": "platform/darwin/src/MLNShapeSource_Private.h",
|
||||
"NSData+MMEGZIP.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/NSData+MMEGZIP.h",
|
||||
"NSValue+MLNStyleAttributeAdditions.h": "platform/darwin/src/NSValue+MLNStyleAttributeAdditions.h",
|
||||
"MLNLineStyleLayer_Private.h": "platform/darwin/src/MLNLineStyleLayer_Private.h",
|
||||
"MLNRasterStyleLayer_Private.h": "platform/darwin/src/MLNRasterStyleLayer_Private.h",
|
||||
"MLNOfflineStorage_Private.h": "platform/darwin/src/MLNOfflineStorage_Private.h",
|
||||
"MLNAnnotationContainerView_Private.h": "platform/ios/src/MLNAnnotationContainerView_Private.h",
|
||||
"MLNStyle_Private.h": "platform/darwin/src/MLNStyle_Private.h",
|
||||
"MMECategoryLoader.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/MMECategoryLoader.h",
|
||||
"MLNHeatmapStyleLayer_Private.h": "platform/darwin/src/MLNHeatmapStyleLayer_Private.h",
|
||||
"NSPredicate+MLNPrivateAdditions.h": "platform/darwin/src/NSPredicate+MLNPrivateAdditions.h",
|
||||
"MLNSDKMetricsManager_Private.h": "platform/darwin/src/MLNSDKMetricsManager_Private.h",
|
||||
"MLNNetworkConfiguration_Private.h": "platform/darwin/src/MLNNetworkConfiguration_Private.h",
|
||||
"NSDate+MLNAdditions.h": "platform/darwin/src/NSDate+MLNAdditions.h",
|
||||
"MLNCompactCalloutView.h": "platform/ios/src/MLNCompactCalloutView.h",
|
||||
"MLNStyleLayerManager.h": "platform/darwin/src/MLNStyleLayerManager.h",
|
||||
"MLNUserLocation_Private.h": "platform/ios/src/MLNUserLocation_Private.h",
|
||||
"MLNUserLocationHeadingArrowLayer.h": "platform/ios/src/MLNUserLocationHeadingArrowLayer.h",
|
||||
"MLNSettings_Private.h": "platform/darwin/src/MLNSettings_Private.h",
|
||||
"UIViewController+MLNAdditions.h": "platform/ios/src/UIViewController+MLNAdditions.h",
|
||||
"MLNVectorTileSource_Private.h": "platform/darwin/src/MLNVectorTileSource_Private.h",
|
||||
"MLNCircleStyleLayer_Private.h": "platform/darwin/src/MLNCircleStyleLayer_Private.h",
|
||||
"NSArray+MLNAdditions.h": "platform/darwin/src/NSArray+MLNAdditions.h",
|
||||
"MLNShape_Private.h": "platform/darwin/src/MLNShape_Private.h",
|
||||
"MLNPolygon_Private.h": "platform/darwin/src/MLNPolygon_Private.h",
|
||||
"MLNStyleLayer_Private.h": "platform/darwin/src/MLNStyleLayer_Private.h",
|
||||
"UIView+MLNAdditions.h": "platform/ios/src/UIView+MLNAdditions.h",
|
||||
"MLNLocationManager_Private.h": "platform/darwin/src/MLNLocationManager_Private.h",
|
||||
"MLNMapView+OpenGL.h": "platform/ios/src/MLNMapView+OpenGL.h",
|
||||
"MLNLoggingConfiguration_Private.h": "platform/darwin/src/MLNLoggingConfiguration_Private.h",
|
||||
"NSComparisonPredicate+MLNAdditions.h": "platform/darwin/src/NSComparisonPredicate+MLNAdditions.h",
|
||||
"MLNMapAccessibilityElement.h": "platform/ios/src/MLNMapAccessibilityElement.h",
|
||||
"MMEDate.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEDate.h",
|
||||
"NSString+MLNAdditions.h": "platform/darwin/src/NSString+MLNAdditions.h",
|
||||
"UIDevice+MLNAdditions.h": "platform/ios/src/UIDevice+MLNAdditions.h",
|
||||
"MLNMapSnapshotter_Private.h": "platform/darwin/src/MLNMapSnapshotter_Private.h",
|
||||
"MLNRendererFrontend.h": "platform/darwin/src/MLNRendererFrontend.h",
|
||||
"MLNStyleValue_Private.h": "platform/darwin/src/MLNStyleValue_Private.h",
|
||||
"MLNFillExtrusionStyleLayer_Private.h": "platform/darwin/src/MLNFillExtrusionStyleLayer_Private.h",
|
||||
"NSException+MLNAdditions.h": "platform/darwin/src/NSException+MLNAdditions.h",
|
||||
"MLNSymbolStyleLayer_Private.h": "platform/darwin/src/MLNSymbolStyleLayer_Private.h",
|
||||
"MLNTilePyramidOfflineRegion_Private.h": "platform/darwin/src/MLNTilePyramidOfflineRegion_Private.h",
|
||||
"MLNUserLocationHeadingIndicator.h": "platform/ios/src/MLNUserLocationHeadingIndicator.h",
|
||||
"NSDictionary+MLNAdditions.h": "platform/darwin/src/NSDictionary+MLNAdditions.h",
|
||||
"UIKit+MMEMobileEvents.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/UIKit+MMEMobileEvents.h",
|
||||
"MLNFoundation_Private.h": "platform/darwin/src/MLNFoundation_Private.h",
|
||||
"MLNUserLocationHeadingBeamLayer.h": "platform/ios/src/MLNUserLocationHeadingBeamLayer.h",
|
||||
"MMECertPin.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMECertPin.h",
|
||||
"MLNMapView_Private.h": "platform/ios/src/MLNMapView_Private.h",
|
||||
"MLNMapboxEvents.h": "platform/ios/src/MLNMapboxEvents.h",
|
||||
"NSURL+MLNAdditions.h": "platform/darwin/src/NSURL+MLNAdditions.h",
|
||||
"MLNMultiPoint_Private.h": "platform/darwin/src/MLNMultiPoint_Private.h",
|
||||
"UIColor+MLNAdditions.h": "platform/ios/src/UIColor+MLNAdditions.h",
|
||||
"MLNAttributionInfo_Private.h": "platform/darwin/src/MLNAttributionInfo_Private.h",
|
||||
"MBXSKUToken.h": "platform/ios/vendor/mapbox-accounts-ios/MBXSKUToken.h",
|
||||
"SMCalloutView.h": "platform/ios/vendor/SMCalloutView/SMCalloutView.h",
|
||||
"MLNOfflineRegion_Private.h": "platform/darwin/src/MLNOfflineRegion_Private.h",
|
||||
"MMEPinningConfigurationProvider.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEPinningConfigurationProvider.h",
|
||||
"MLNPointCollection_Private.h": "platform/darwin/src/MLNPointCollection_Private.h",
|
||||
"UIImage+MLNAdditions.h": "platform/ios/src/UIImage+MLNAdditions.h",
|
||||
"NSOrthography+MLNAdditions.h": "platform/ios/src/NSOrthography+MLNAdditions.h",
|
||||
"MLNLight_Private.h": "platform/darwin/src/MLNLight_Private.h",
|
||||
"MLNAnnotationContainerView.h": "platform/ios/src/MLNAnnotationContainerView.h",
|
||||
"MLNAnnotationImage_Private.h": "platform/ios/src/MLNAnnotationImage_Private.h",
|
||||
"MLNConversion.h": "platform/darwin/src/MLNConversion.h",
|
||||
"MLNShapeOfflineRegion_Private.h": "platform/darwin/src/MLNShapeOfflineRegion_Private.h",
|
||||
"MLNTelemetryConfig.h": "platform/ios/src/MLNTelemetryConfig.h",
|
||||
"MLNGeometry_Private.h": "platform/darwin/src/MLNGeometry_Private.h",
|
||||
"NSCompoundPredicate+MLNAdditions.h": "platform/darwin/src/NSCompoundPredicate+MLNAdditions.h",
|
||||
"NSExpression+MLNPrivateAdditions.h": "platform/darwin/src/NSExpression+MLNPrivateAdditions.h",
|
||||
"MLNCustomStyleLayer_Private.h": "platform/darwin/src/MLNCustomStyleLayer_Private.h",
|
||||
"MLNTileSource_Private.h": "platform/darwin/src/MLNTileSource_Private.h",
|
||||
"MLNFaux3DUserLocationAnnotationView.h": "platform/ios/src/MLNFaux3DUserLocationAnnotationView.h",
|
||||
"MLNUserLocationAnnotationView_Private.h": "platform/ios/src/MLNUserLocationAnnotationView_Private.h",
|
||||
"MLNRasterTileSource_Private.h": "platform/darwin/src/MLNRasterTileSource_Private.h",
|
||||
"MLNFeature_Private.h": "platform/darwin/src/MLNFeature_Private.h",
|
||||
"MLNRendererConfiguration.h": "platform/darwin/src/MLNRendererConfiguration.h",
|
||||
"MMEReachability.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Reachability/MMEReachability.h",
|
||||
"MMENamespacedDependencies.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMENamespacedDependencies.h",
|
||||
"MapboxMobileEvents.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MapboxMobileEvents.h",
|
||||
"MMEAPIClient.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEAPIClient.h",
|
||||
"MMECommonEventData.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMECommonEventData.h",
|
||||
"MMEConstants.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEConstants.h",
|
||||
"MMEDependencyManager.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEDependencyManager.h",
|
||||
"MMEEvent.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEvent.h",
|
||||
"CLLocation+MMEMobileEvents.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/CLLocation+MMEMobileEvents.h",
|
||||
"MMEEventLogger.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEventLogger.h",
|
||||
"MMEEventLogReportViewController.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEventLogReportViewController.h",
|
||||
"MMEEventsConfiguration.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEventsConfiguration.h",
|
||||
"MMEConfigurator.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEConfigurator.h",
|
||||
"MMELocationManager.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMELocationManager.h",
|
||||
"MMEMetrics.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEMetrics.h",
|
||||
"MMEMetricsManager.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEMetricsManager.h",
|
||||
"MMENSURLSessionWrapper.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMENSURLSessionWrapper.h",
|
||||
"MLNMapView+Impl.h": "platform/ios/src/MLNMapView+Impl.h",
|
||||
"MMETimerManager.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMETimerManager.h",
|
||||
"MMETypes.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMETypes.h",
|
||||
"CLLocationManager+MMEMobileEvents.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/Categories/CLLocationManager+MMEMobileEvents.h",
|
||||
"MMEUIApplicationWrapper.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEUIApplicationWrapper.h",
|
||||
"MMEUINavigation.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEUINavigation.h",
|
||||
"MMEUniqueIdentifier.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEUniqueIdentifier.h",
|
||||
"MMEDispatchManager.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEDispatchManager.h",
|
||||
"MMEEventsManager.h": "platform/ios/vendor/mapbox-events-ios/MapboxMobileEvents/MMEEventsManager.h"
|
||||
}
|
||||
}
|
||||
176
platform/ios/vendor/SMCalloutView/LICENSE
vendored
Normal file
176
platform/ios/vendor/SMCalloutView/LICENSE
vendored
Normal file
@@ -0,0 +1,176 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
21
platform/ios/vendor/calloutview.cmake
vendored
Normal file
21
platform/ios/vendor/calloutview.cmake
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
if(TARGET mbgl-vendor-calloutview)
|
||||
return()
|
||||
endif()
|
||||
|
||||
add_library(
|
||||
mbgl-vendor-calloutview ${CMAKE_CURRENT_LIST_DIR}/SMCalloutView/SMCalloutView.m
|
||||
)
|
||||
|
||||
target_include_directories(
|
||||
mbgl-vendor-calloutview SYSTEM
|
||||
INTERFACE ${CMAKE_CURRENT_LIST_DIR}/SMCalloutView
|
||||
)
|
||||
|
||||
set_target_properties(
|
||||
mbgl-vendor-calloutview
|
||||
PROPERTIES
|
||||
INTERFACE_MAPLIBRE_NAME "Boost C++ Libraries"
|
||||
INTERFACE_MAPLIBRE_URL "https://github.com/nfarina/calloutview"
|
||||
INTERFACE_MAPLIBRE_AUTHOR "Nick Farina"
|
||||
INTERFACE_MAPLIBRE_LICENSE ${CMAKE_CURRENT_LIST_DIR}/SMCalloutView/LICENSE
|
||||
)
|
||||
@@ -1,30 +0,0 @@
|
||||
Pod::Spec.new do |m|
|
||||
|
||||
version = '0.16.0'
|
||||
|
||||
m.name = 'Mapbox-macOS-SDK-symbols'
|
||||
m.version = "#{version}-symbols"
|
||||
|
||||
m.summary = 'Open-source, interactive, fully customizable vector maps.'
|
||||
m.description = 'Interactive, fully customizable vector maps with tight platform integration and high-performance OpenGL rendering.'
|
||||
m.homepage = 'https://mapbox.github.io/mapbox-gl-native/macos/'
|
||||
m.license = { :type => 'BSD', :file => 'LICENSE.md' }
|
||||
m.author = { 'Mapbox' => 'mobile@mapbox.com' }
|
||||
m.screenshot = "https://mapbox.github.io/mapbox-gl-native/macos/#{version}/img/screenshot.jpg"
|
||||
m.social_media_url = 'https://twitter.com/mapbox'
|
||||
m.documentation_url = 'https://mapbox.github.io/mapbox-gl-native/macos/'
|
||||
|
||||
m.source = {
|
||||
:http => "https://github.com/mapbox/mapbox-gl-native-ios/releases/download/macos-v#{version}/mapbox-macos-sdk-#{m.version.to_s}.zip",
|
||||
:flatten => true
|
||||
}
|
||||
|
||||
m.platform = :osx
|
||||
m.osx.deployment_target = '10.11'
|
||||
|
||||
m.requires_arc = true
|
||||
|
||||
m.vendored_frameworks = 'Mapbox.framework'
|
||||
m.module_name = 'Mapbox'
|
||||
|
||||
end
|
||||
@@ -1,30 +0,0 @@
|
||||
Pod::Spec.new do |m|
|
||||
|
||||
version = '0.16.0'
|
||||
|
||||
m.name = 'Mapbox-macOS-SDK'
|
||||
m.version = version
|
||||
|
||||
m.summary = 'Open-source, interactive, fully customizable vector maps.'
|
||||
m.description = 'Interactive, fully customizable vector maps with tight platform integration and high-performance OpenGL rendering.'
|
||||
m.homepage = 'https://mapbox.github.io/mapbox-gl-native/macos/'
|
||||
m.license = { :type => 'BSD', :file => 'LICENSE.md' }
|
||||
m.author = { 'Mapbox' => 'mobile@mapbox.com' }
|
||||
m.screenshot = "https://mapbox.github.io/mapbox-gl-native/macos/#{version}/img/screenshot.jpg"
|
||||
m.social_media_url = 'https://twitter.com/mapbox'
|
||||
m.documentation_url = 'https://mapbox.github.io/mapbox-gl-native/macos/'
|
||||
|
||||
m.source = {
|
||||
:http => "https://github.com/mapbox/mapbox-gl-native-ios/releases/download/macos-v#{version}/mapbox-macos-sdk-#{m.version.to_s}.zip",
|
||||
:flatten => true
|
||||
}
|
||||
|
||||
m.platform = :osx
|
||||
m.osx.deployment_target = '10.11'
|
||||
|
||||
m.requires_arc = true
|
||||
|
||||
m.vendored_frameworks = 'Mapbox.framework'
|
||||
m.module_name = 'Mapbox'
|
||||
|
||||
end
|
||||
@@ -1,34 +0,0 @@
|
||||
{
|
||||
"//": "This file can be edited manually and is the canonical source.",
|
||||
"sources": [
|
||||
"platform/darwin/src/collator.mm",
|
||||
"platform/darwin/src/gl_functions.cpp",
|
||||
"platform/darwin/src/image.mm",
|
||||
"platform/darwin/src/local_glyph_rasterizer.mm",
|
||||
"platform/darwin/src/logging_nslog.mm",
|
||||
"platform/darwin/src/nsthread.mm",
|
||||
"platform/darwin/src/number_format.mm",
|
||||
"platform/darwin/src/reachability.m",
|
||||
"platform/darwin/src/string_nsstring.mm",
|
||||
"platform/default/src/mbgl/gfx/headless_backend.cpp",
|
||||
"platform/default/src/mbgl/gfx/headless_frontend.cpp",
|
||||
"platform/default/src/mbgl/gl/headless_backend.cpp",
|
||||
"platform/default/src/mbgl/map/map_snapshotter.cpp",
|
||||
"platform/default/src/mbgl/text/bidi.cpp",
|
||||
"platform/default/src/mbgl/util/compression.cpp",
|
||||
"platform/default/src/mbgl/util/png_writer.cpp",
|
||||
"platform/default/src/mbgl/util/thread_local.cpp",
|
||||
"platform/default/src/mbgl/util/utf.cpp"
|
||||
],
|
||||
"public_headers": {
|
||||
"mbgl/storage/reachability.h": "platform/darwin/include/mbgl/storage/reachability.h",
|
||||
"mbgl/util/image+MLNAdditions.hpp": "platform/darwin/include/mbgl/util/image+MLNAdditions.hpp",
|
||||
"mbgl/gfx/headless_backend.hpp": "platform/default/include/mbgl/gfx/headless_backend.hpp",
|
||||
"mbgl/gfx/headless_frontend.hpp": "platform/default/include/mbgl/gfx/headless_frontend.hpp",
|
||||
"mbgl/gl/headless_backend.hpp": "platform/default/include/mbgl/gl/headless_backend.hpp",
|
||||
"mbgl/map/map_snapshotter.hpp": "platform/default/include/mbgl/map/map_snapshotter.hpp"
|
||||
},
|
||||
"private_headers": {
|
||||
"CFHandle.hpp": "platform/darwin/src/CFHandle.hpp"
|
||||
}
|
||||
}
|
||||
@@ -11,6 +11,13 @@ set_target_properties(mbgl-core PROPERTIES XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH[vari
|
||||
|
||||
set_target_properties(mbgl-core PROPERTIES XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES)
|
||||
|
||||
target_link_libraries(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
"-framework AppKit"
|
||||
)
|
||||
|
||||
|
||||
if(MLN_WITH_OPENGL)
|
||||
find_package(OpenGL REQUIRED)
|
||||
|
||||
@@ -30,16 +37,6 @@ if(MLN_WITH_OPENGL)
|
||||
)
|
||||
endif()
|
||||
|
||||
if(MLN_WITH_METAL)
|
||||
find_package(OpenGL REQUIRED)
|
||||
|
||||
target_sources(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/mtl/headless_backend.cpp
|
||||
)
|
||||
endif()
|
||||
|
||||
if(MLN_WITH_VULKAN)
|
||||
find_package(Vulkan REQUIRED)
|
||||
|
||||
@@ -60,49 +57,6 @@ if(MLN_WITH_VULKAN)
|
||||
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
|
||||
endif()
|
||||
|
||||
target_sources(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/async_task.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/collator.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/http_file_source.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/image.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/local_glyph_rasterizer.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/logging_nslog.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/native_apple_interface.m
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/nsthread.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/number_format.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/run_loop.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/string_nsstring.mm
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/src/timer.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/gfx/headless_backend.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/gfx/headless_frontend.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/layermanager/layer_manager.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/map/map_snapshotter.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/platform/time.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/asset_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/mbtiles_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/database_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/file_source_manager.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/file_source_request.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/local_file_request.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/local_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/main_resource_loader.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/offline.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/offline_database.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/offline_download.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/online_file_source.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/$<IF:$<BOOL:${MLN_WITH_PMTILES}>,pmtiles_file_source.cpp,pmtiles_file_source_stub.cpp>
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/sqlite3.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/text/bidi.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/compression.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/filesystem.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/monotonic_timer.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/png_writer.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/thread_local.cpp
|
||||
${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/utf.cpp
|
||||
)
|
||||
|
||||
target_compile_options(mbgl-core PRIVATE -fobjc-arc)
|
||||
|
||||
# FIXME: Should not be needed, but now needed by node because of the headless frontend.
|
||||
@@ -114,21 +68,7 @@ target_include_directories(
|
||||
target_include_directories(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
${PROJECT_SOURCE_DIR}/platform/darwin/include ${PROJECT_SOURCE_DIR}/platform/darwin/src ${PROJECT_SOURCE_DIR}/platform/macos/src
|
||||
)
|
||||
|
||||
include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
|
||||
|
||||
target_link_libraries(
|
||||
mbgl-core
|
||||
PRIVATE
|
||||
"-framework AppKit"
|
||||
"-framework CoreGraphics"
|
||||
"-framework CoreLocation"
|
||||
"-framework SystemConfiguration"
|
||||
mbgl-vendor-icu
|
||||
sqlite3
|
||||
z
|
||||
${PROJECT_SOURCE_DIR}/platform/macos/src
|
||||
)
|
||||
|
||||
add_subdirectory(${PROJECT_SOURCE_DIR}/bin)
|
||||
|
||||
@@ -1,216 +0,0 @@
|
||||
{
|
||||
"//": "This file is generated. Do not edit. Regenerate it with scripts/generate-file-lists.js",
|
||||
"sources": [
|
||||
"platform/darwin/src/MLNImageSource.mm",
|
||||
"platform/darwin/src/MLNMapSnapshotter.mm",
|
||||
"platform/macos/src/NSImage+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNHillshadeStyleLayer.mm",
|
||||
"platform/darwin/src/MLNPointAnnotation.mm",
|
||||
"platform/darwin/src/MLNSDKMetricsManager.m",
|
||||
"platform/darwin/src/NSBundle+MLNAdditions.mm",
|
||||
"platform/macos/src/MLNMapView.mm",
|
||||
"platform/macos/src/MLNMapView+OpenGL.mm",
|
||||
"platform/darwin/src/NSArray+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNOfflinePack.mm",
|
||||
"platform/darwin/src/NSDate+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNLoggingConfiguration.mm",
|
||||
"platform/darwin/src/MLNNetworkConfiguration.mm",
|
||||
"platform/darwin/src/MLNLight.mm",
|
||||
"platform/macos/src/MLNAnnotationImage.m",
|
||||
"platform/darwin/src/NSExpression+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNFeature.mm",
|
||||
"platform/darwin/src/MLNCustomStyleLayer.mm",
|
||||
"platform/macos/src/NSColor+MLNAdditions.mm",
|
||||
"platform/macos/src/MLNAttributionButton.mm",
|
||||
"platform/darwin/src/MLNFillStyleLayer.mm",
|
||||
"platform/darwin/src/MLNShape.mm",
|
||||
"platform/darwin/src/MLNRasterTileSource.mm",
|
||||
"platform/darwin/src/MLNFoundation.mm",
|
||||
"platform/darwin/src/NSString+MLNAdditions.m",
|
||||
"platform/darwin/src/NSCoder+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNStyleLayerManager.mm",
|
||||
"platform/darwin/src/MLNStyle.mm",
|
||||
"platform/darwin/src/MLNGeometry.mm",
|
||||
"platform/darwin/src/MLNHeatmapStyleLayer.mm",
|
||||
"platform/darwin/src/MLNCircleStyleLayer.mm",
|
||||
"platform/darwin/src/MLNForegroundStyleLayer.mm",
|
||||
"platform/darwin/src/NSDictionary+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNBackgroundStyleLayer.mm",
|
||||
"platform/darwin/src/MLNTileSource.mm",
|
||||
"platform/macos/src/MLNMapView+IBAdditions.mm",
|
||||
"platform/darwin/src/NSValue+MLNAdditions.m",
|
||||
"platform/darwin/src/MLNStyleLayer.mm",
|
||||
"platform/darwin/src/MLNClockDirectionFormatter.m",
|
||||
"platform/darwin/src/MLNComputedShapeSource.mm",
|
||||
"platform/macos/src/MLNOpenGLLayer.mm",
|
||||
"platform/darwin/src/MLNMultiPoint.mm",
|
||||
"platform/darwin/src/MLNTypes.m",
|
||||
"platform/darwin/src/MLNPointCollection.mm",
|
||||
"platform/darwin/src/MLNCoordinateFormatter.m",
|
||||
"platform/darwin/src/MLNSource.mm",
|
||||
"platform/darwin/src/MLNMapCamera.mm",
|
||||
"platform/darwin/src/MLNVectorStyleLayer.mm",
|
||||
"platform/darwin/src/MLNAttributedExpression.m",
|
||||
"platform/darwin/src/NSValue+MLNStyleAttributeAdditions.mm",
|
||||
"platform/darwin/src/MLNPolygon.mm",
|
||||
"platform/darwin/src/MLNDistanceFormatter.m",
|
||||
"platform/macos/src/NSProcessInfo+MLNAdditions.m",
|
||||
"platform/darwin/src/MLNFillExtrusionStyleLayer.mm",
|
||||
"platform/darwin/src/MLNOfflineStorage.mm",
|
||||
"platform/darwin/src/NSURL+MLNAdditions.m",
|
||||
"platform/darwin/src/NSCompoundPredicate+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNTilePyramidOfflineRegion.mm",
|
||||
"platform/darwin/src/MLNSettings.mm",
|
||||
"platform/darwin/src/MLNAttributionInfo.mm",
|
||||
"platform/darwin/src/MLNPolyline.mm",
|
||||
"platform/darwin/src/MLNShapeSource.mm",
|
||||
"platform/macos/src/MLNCompassCell.m",
|
||||
"platform/darwin/src/MLNRasterStyleLayer.mm",
|
||||
"platform/darwin/src/MLNShapeCollection.mm",
|
||||
"platform/darwin/src/MLNShapeOfflineRegion.mm",
|
||||
"platform/darwin/src/NSComparisonPredicate+MLNAdditions.mm",
|
||||
"platform/macos/src/MLNMapView+Impl.mm",
|
||||
"platform/darwin/src/MLNCompassDirectionFormatter.m",
|
||||
"platform/darwin/src/MLNRasterDEMSource.mm",
|
||||
"platform/darwin/src/MLNLineStyleLayer.mm",
|
||||
"platform/darwin/src/MLNSymbolStyleLayer.mm",
|
||||
"platform/darwin/src/NSPredicate+MLNAdditions.mm",
|
||||
"platform/darwin/src/MLNVectorTileSource.mm",
|
||||
"platform/darwin/src/MLNStyleValue.mm",
|
||||
"platform/darwin/src/MLNRendererConfiguration.mm"
|
||||
],
|
||||
"public_headers": {
|
||||
"MLNFoundation.h": "platform/darwin/src/MLNFoundation.h",
|
||||
"MLNComputedShapeSource.h": "platform/darwin/src/MLNComputedShapeSource.h",
|
||||
"MLNRasterStyleLayer.h": "platform/darwin/src/MLNRasterStyleLayer.h",
|
||||
"NSExpression+MLNAdditions.h": "platform/darwin/src/NSExpression+MLNAdditions.h",
|
||||
"MLNAttributedExpression.h": "platform/darwin/src/MLNAttributedExpression.h",
|
||||
"MLNAnnotation.h": "platform/darwin/src/MLNAnnotation.h",
|
||||
"MLNHillshadeStyleLayer.h": "platform/darwin/src/MLNHillshadeStyleLayer.h",
|
||||
"MLNMapSnapshotter.h": "platform/darwin/src/MLNMapSnapshotter.h",
|
||||
"MLNCircleStyleLayer.h": "platform/darwin/src/MLNCircleStyleLayer.h",
|
||||
"MLNAttributionInfo.h": "platform/darwin/src/MLNAttributionInfo.h",
|
||||
"MLNFillExtrusionStyleLayer.h": "platform/darwin/src/MLNFillExtrusionStyleLayer.h",
|
||||
"MLNAnnotationImage.h": "platform/macos/src/MLNAnnotationImage.h",
|
||||
"MLNMapView.h": "platform/macos/src/MLNMapView.h",
|
||||
"MLNOfflineStorage.h": "platform/darwin/src/MLNOfflineStorage.h",
|
||||
"MLNStyleValue.h": "platform/darwin/src/MLNStyleValue.h",
|
||||
"MLNSDKMetricsManager.h": "platform/darwin/src/MLNSDKMetricsManager.h",
|
||||
"MLNMultiPoint.h": "platform/darwin/src/MLNMultiPoint.h",
|
||||
"MLNShapeCollection.h": "platform/darwin/src/MLNShapeCollection.h",
|
||||
"MLNPointAnnotation.h": "platform/darwin/src/MLNPointAnnotation.h",
|
||||
"MLNOfflinePack.h": "platform/darwin/src/MLNOfflinePack.h",
|
||||
"MLNLoggingConfiguration.h": "platform/darwin/src/MLNLoggingConfiguration.h",
|
||||
"NSPredicate+MLNAdditions.h": "platform/darwin/src/NSPredicate+MLNAdditions.h",
|
||||
"MLNVectorTileSource.h": "platform/darwin/src/MLNVectorTileSource.h",
|
||||
"MLNRasterDEMSource.h": "platform/darwin/src/MLNRasterDEMSource.h",
|
||||
"MLNTypes.h": "platform/darwin/src/MLNTypes.h",
|
||||
"MLNBackgroundStyleLayer.h": "platform/darwin/src/MLNBackgroundStyleLayer.h",
|
||||
"MLNPointCollection.h": "platform/darwin/src/MLNPointCollection.h",
|
||||
"MLNShape.h": "platform/darwin/src/MLNShape.h",
|
||||
"MLNCustomStyleLayer.h": "platform/darwin/src/MLNCustomStyleLayer.h",
|
||||
"MLNSource.h": "platform/darwin/src/MLNSource.h",
|
||||
"MLNPolygon.h": "platform/darwin/src/MLNPolygon.h",
|
||||
"MLNClockDirectionFormatter.h": "platform/darwin/src/MLNClockDirectionFormatter.h",
|
||||
"MLNFillStyleLayer.h": "platform/darwin/src/MLNFillStyleLayer.h",
|
||||
"MLNCoordinateFormatter.h": "platform/darwin/src/MLNCoordinateFormatter.h",
|
||||
"MLNShapeOfflineRegion.h": "platform/darwin/src/MLNShapeOfflineRegion.h",
|
||||
"MLNNetworkConfiguration.h": "platform/darwin/src/MLNNetworkConfiguration.h",
|
||||
"MLNOverlay.h": "platform/darwin/src/MLNOverlay.h",
|
||||
"MLNPolyline.h": "platform/darwin/src/MLNPolyline.h",
|
||||
"MLNLineStyleLayer.h": "platform/darwin/src/MLNLineStyleLayer.h",
|
||||
"MLNDistanceFormatter.h": "platform/darwin/src/MLNDistanceFormatter.h",
|
||||
"MLNHeatmapStyleLayer.h": "platform/darwin/src/MLNHeatmapStyleLayer.h",
|
||||
"MLNOfflineRegion.h": "platform/darwin/src/MLNOfflineRegion.h",
|
||||
"MLNTilePyramidOfflineRegion.h": "platform/darwin/src/MLNTilePyramidOfflineRegion.h",
|
||||
"NSValue+MLNAdditions.h": "platform/darwin/src/NSValue+MLNAdditions.h",
|
||||
"MLNTileOperation.h": "platform/darwin/src/MLNTileOperation.h",
|
||||
"MLNMapViewDelegate.h": "platform/macos/src/MLNMapViewDelegate.h",
|
||||
"MLNCluster.h": "platform/darwin/src/MLNCluster.h",
|
||||
"MLNFeature.h": "platform/darwin/src/MLNFeature.h",
|
||||
"MLNStyleLayer.h": "platform/darwin/src/MLNStyleLayer.h",
|
||||
"MLNGeometry.h": "platform/darwin/src/MLNGeometry.h",
|
||||
"MLNSettings.h": "platform/darwin/src/MLNSettings.h",
|
||||
"MLNTileSource.h": "platform/darwin/src/MLNTileSource.h",
|
||||
"MLNForegroundStyleLayer.h": "platform/darwin/src/MLNForegroundStyleLayer.h",
|
||||
"MLNMapCamera.h": "platform/darwin/src/MLNMapCamera.h",
|
||||
"MLNImageSource.h": "platform/darwin/src/MLNImageSource.h",
|
||||
"MLNSymbolStyleLayer.h": "platform/darwin/src/MLNSymbolStyleLayer.h",
|
||||
"MLNMapView+IBAdditions.h": "platform/macos/src/MLNMapView+IBAdditions.h",
|
||||
"MLNCompassDirectionFormatter.h": "platform/darwin/src/MLNCompassDirectionFormatter.h",
|
||||
"MLNRasterTileSource.h": "platform/darwin/src/MLNRasterTileSource.h",
|
||||
"MLNVectorStyleLayer.h": "platform/darwin/src/MLNVectorStyleLayer.h",
|
||||
"MLNShapeSource.h": "platform/darwin/src/MLNShapeSource.h",
|
||||
"MLNLight.h": "platform/darwin/src/MLNLight.h",
|
||||
"MLNStyle.h": "platform/darwin/src/MLNStyle.h",
|
||||
"Mapbox/Mapbox.h": "platform/macos/src/Mapbox.h"
|
||||
},
|
||||
"private_headers": {
|
||||
"MLNOfflineRegion_Private.h": "platform/darwin/src/MLNOfflineRegion_Private.h",
|
||||
"MLNRasterTileSource_Private.h": "platform/darwin/src/MLNRasterTileSource_Private.h",
|
||||
"MLNBackgroundStyleLayer_Private.h": "platform/darwin/src/MLNBackgroundStyleLayer_Private.h",
|
||||
"MLNConversion.h": "platform/darwin/src/MLNConversion.h",
|
||||
"MLNFillExtrusionStyleLayer_Private.h": "platform/darwin/src/MLNFillExtrusionStyleLayer_Private.h",
|
||||
"MLNStyleValue_Private.h": "platform/darwin/src/MLNStyleValue_Private.h",
|
||||
"MLNMapView_Private.h": "platform/macos/src/MLNMapView_Private.h",
|
||||
"MLNRasterStyleLayer_Private.h": "platform/darwin/src/MLNRasterStyleLayer_Private.h",
|
||||
"MLNHeatmapStyleLayer_Private.h": "platform/darwin/src/MLNHeatmapStyleLayer_Private.h",
|
||||
"MLNAttributionButton.h": "platform/macos/src/MLNAttributionButton.h",
|
||||
"NSArray+MLNAdditions.h": "platform/darwin/src/NSArray+MLNAdditions.h",
|
||||
"NSComparisonPredicate+MLNAdditions.h": "platform/darwin/src/NSComparisonPredicate+MLNAdditions.h",
|
||||
"MLNStyleLayerManager.h": "platform/darwin/src/MLNStyleLayerManager.h",
|
||||
"MLNStyleLayer_Private.h": "platform/darwin/src/MLNStyleLayer_Private.h",
|
||||
"MLNShapeOfflineRegion_Private.h": "platform/darwin/src/MLNShapeOfflineRegion_Private.h",
|
||||
"MLNAttributionInfo_Private.h": "platform/darwin/src/MLNAttributionInfo_Private.h",
|
||||
"NSBundle+MLNAdditions.h": "platform/darwin/src/NSBundle+MLNAdditions.h",
|
||||
"NSURL+MLNAdditions.h": "platform/darwin/src/NSURL+MLNAdditions.h",
|
||||
"MLNAnnotationImage_Private.h": "platform/macos/src/MLNAnnotationImage_Private.h",
|
||||
"MLNLoggingConfiguration_Private.h": "platform/darwin/src/MLNLoggingConfiguration_Private.h",
|
||||
"NSPredicate+MLNPrivateAdditions.h": "platform/darwin/src/NSPredicate+MLNPrivateAdditions.h",
|
||||
"NSString+MLNAdditions.h": "platform/darwin/src/NSString+MLNAdditions.h",
|
||||
"MLNCircleStyleLayer_Private.h": "platform/darwin/src/MLNCircleStyleLayer_Private.h",
|
||||
"MLNVectorTileSource_Private.h": "platform/darwin/src/MLNVectorTileSource_Private.h",
|
||||
"MLNGeometry_Private.h": "platform/darwin/src/MLNGeometry_Private.h",
|
||||
"MLNSettings_Private.h": "platform/darwin/src/MLNSettings_Private.h",
|
||||
"MLNComputedShapeSource_Private.h": "platform/darwin/src/MLNComputedShapeSource_Private.h",
|
||||
"NSException+MLNAdditions.h": "platform/darwin/src/NSException+MLNAdditions.h",
|
||||
"MLNTileSource_Private.h": "platform/darwin/src/MLNTileSource_Private.h",
|
||||
"NSExpression+MLNPrivateAdditions.h": "platform/darwin/src/NSExpression+MLNPrivateAdditions.h",
|
||||
"MLNSDKMetricsManager_Private.h": "platform/darwin/src/MLNSDKMetricsManager_Private.h",
|
||||
"MLNNetworkConfiguration_Private.h": "platform/darwin/src/MLNNetworkConfiguration_Private.h",
|
||||
"NSCompoundPredicate+MLNAdditions.h": "platform/darwin/src/NSCompoundPredicate+MLNAdditions.h",
|
||||
"MLNSymbolStyleLayer_Private.h": "platform/darwin/src/MLNSymbolStyleLayer_Private.h",
|
||||
"MLNMapView+OpenGL.h": "platform/macos/src/MLNMapView+OpenGL.h",
|
||||
"NSProcessInfo+MLNAdditions.h": "platform/macos/src/NSProcessInfo+MLNAdditions.h",
|
||||
"MLNRendererFrontend.h": "platform/darwin/src/MLNRendererFrontend.h",
|
||||
"NSValue+MLNStyleAttributeAdditions.h": "platform/darwin/src/NSValue+MLNStyleAttributeAdditions.h",
|
||||
"NSImage+MLNAdditions.h": "platform/macos/src/NSImage+MLNAdditions.h",
|
||||
"MLNLight_Private.h": "platform/darwin/src/MLNLight_Private.h",
|
||||
"MLNMapView+Impl.h": "platform/macos/src/MLNMapView+Impl.h",
|
||||
"NSCoder+MLNAdditions.h": "platform/darwin/src/NSCoder+MLNAdditions.h",
|
||||
"MLNOfflineStorage_Private.h": "platform/darwin/src/MLNOfflineStorage_Private.h",
|
||||
"MLNLineStyleLayer_Private.h": "platform/darwin/src/MLNLineStyleLayer_Private.h",
|
||||
"MLNHillshadeStyleLayer_Private.h": "platform/darwin/src/MLNHillshadeStyleLayer_Private.h",
|
||||
"MLNValueEvaluator.h": "platform/darwin/src/MLNValueEvaluator.h",
|
||||
"MLNOfflinePack_Private.h": "platform/darwin/src/MLNOfflinePack_Private.h",
|
||||
"MLNFoundation_Private.h": "platform/darwin/src/MLNFoundation_Private.h",
|
||||
"MLNCompassCell.h": "platform/macos/src/MLNCompassCell.h",
|
||||
"MLNShapeSource_Private.h": "platform/darwin/src/MLNShapeSource_Private.h",
|
||||
"MLNStyle_Private.h": "platform/darwin/src/MLNStyle_Private.h",
|
||||
"MLNSource_Private.h": "platform/darwin/src/MLNSource_Private.h",
|
||||
"MLNOpenGLLayer.h": "platform/macos/src/MLNOpenGLLayer.h",
|
||||
"MLNPointCollection_Private.h": "platform/darwin/src/MLNPointCollection_Private.h",
|
||||
"NSDate+MLNAdditions.h": "platform/darwin/src/NSDate+MLNAdditions.h",
|
||||
"NSColor+MLNAdditions.h": "platform/macos/src/NSColor+MLNAdditions.h",
|
||||
"MLNMultiPoint_Private.h": "platform/darwin/src/MLNMultiPoint_Private.h",
|
||||
"MLNCustomStyleLayer_Private.h": "platform/darwin/src/MLNCustomStyleLayer_Private.h",
|
||||
"MLNPolygon_Private.h": "platform/darwin/src/MLNPolygon_Private.h",
|
||||
"MLNShape_Private.h": "platform/darwin/src/MLNShape_Private.h",
|
||||
"MLNTilePyramidOfflineRegion_Private.h": "platform/darwin/src/MLNTilePyramidOfflineRegion_Private.h",
|
||||
"MLNFeature_Private.h": "platform/darwin/src/MLNFeature_Private.h",
|
||||
"MLNPolyline_Private.h": "platform/darwin/src/MLNPolyline_Private.h",
|
||||
"MLNFillStyleLayer_Private.h": "platform/darwin/src/MLNFillStyleLayer_Private.h",
|
||||
"NSDictionary+MLNAdditions.h": "platform/darwin/src/NSDictionary+MLNAdditions.h",
|
||||
"MLNRendererConfiguration.h": "platform/darwin/src/MLNRendererConfiguration.h"
|
||||
}
|
||||
}
|
||||
@@ -366,7 +366,6 @@ bool Context::renderTileClippingMasks(gfx::RenderPass& renderPass,
|
||||
vertDesc->layouts()->setObject(layoutDesc.get(), ShaderClass::attributes[0].index);
|
||||
|
||||
// Create a render pipeline state, telling Metal how to render the primitives
|
||||
const auto& renderPassDescriptor = mtlRenderPass.getDescriptor();
|
||||
const std::size_t hash = mbgl::util::hash(ShaderClass::attributes[0].index,
|
||||
0,
|
||||
MTL::VertexFormatShort2,
|
||||
|
||||
@@ -252,7 +252,8 @@ void Drawable::draw(PaintParameters& parameters) const {
|
||||
const auto stencilMode = enableStencil ? parameters.stencilModeForClipping(tileID->toUnwrapped())
|
||||
: gfx::StencilMode::disabled();
|
||||
impl->depthStencilState = context.makeDepthStencilState(depthMode, stencilMode, renderable);
|
||||
impl->previousStencilMode = *newStencilMode;
|
||||
// FIXME: https://github.com/maplibre/maplibre-native/issues/3248
|
||||
if (newStencilMode) impl->previousStencilMode = *newStencilMode;
|
||||
}
|
||||
renderPass.setDepthStencilState(impl->depthStencilState);
|
||||
renderPass.setStencilReference(impl->previousStencilMode.ref);
|
||||
@@ -387,8 +388,6 @@ void Drawable::setVertexAttrId(const size_t id) {
|
||||
}
|
||||
|
||||
void Drawable::bindAttributes(RenderPass& renderPass) const noexcept {
|
||||
const auto& encoder = renderPass.getMetalEncoder();
|
||||
|
||||
NS::UInteger attributeIndex = 0;
|
||||
for (const auto& binding : impl->attributeBindings) {
|
||||
const auto* buffer = static_cast<const mtl::VertexBufferResource*>(binding ? binding->vertexBufferResource
|
||||
@@ -402,8 +401,6 @@ void Drawable::bindAttributes(RenderPass& renderPass) const noexcept {
|
||||
}
|
||||
|
||||
void Drawable::bindInstanceAttributes(RenderPass& renderPass) const noexcept {
|
||||
const auto& encoder = renderPass.getMetalEncoder();
|
||||
|
||||
NS::UInteger attributeIndex = 0;
|
||||
for (const auto& binding : impl->instanceBindings) {
|
||||
if (binding.has_value()) {
|
||||
@@ -520,7 +517,6 @@ void Drawable::upload(gfx::UploadPass& uploadPass_) {
|
||||
assert(false);
|
||||
return;
|
||||
}
|
||||
const auto& shaderMTL = static_cast<const ShaderProgram&>(*shader);
|
||||
|
||||
auto& uploadPass = static_cast<UploadPass&>(uploadPass_);
|
||||
auto& contextBase = uploadPass.getContext();
|
||||
|
||||
@@ -43,7 +43,6 @@ void LayerGroup::render(RenderOrchestrator&, PaintParameters& parameters) {
|
||||
const auto debugGroup = parameters.encoder->createDebugGroup(getName() + "-render");
|
||||
#endif
|
||||
|
||||
auto& context = static_cast<Context&>(parameters.context);
|
||||
auto& renderPass = static_cast<RenderPass&>(*parameters.renderPass);
|
||||
|
||||
bool bindUBOs = false;
|
||||
|
||||
@@ -111,7 +111,6 @@ void TileLayerGroup::render(RenderOrchestrator&, PaintParameters& parameters) {
|
||||
}
|
||||
};
|
||||
|
||||
const auto depthMode = parameters.depthModeFor3D();
|
||||
if (stencil3d) {
|
||||
stencilMode3d = parameters.stencilModeFor3D();
|
||||
encoder->setStencilReferenceValue(stencilMode3d.ref);
|
||||
|
||||
@@ -165,11 +165,6 @@ gfx::AttributeBindingArray UploadPass::buildAttributeBindings(
|
||||
gfx::AttributeBindingArray bindings;
|
||||
bindings.resize(defaults.allocatedSize());
|
||||
|
||||
constexpr std::size_t align = 16;
|
||||
constexpr std::uint8_t padding = 0;
|
||||
|
||||
uint32_t vertexStride = 0;
|
||||
|
||||
// For each attribute in the program, with the corresponding default and optional override...
|
||||
const auto resolveAttr = [&](const size_t id, auto& default_, auto& override_) -> void {
|
||||
auto& effectiveAttr = override_ ? *override_ : default_;
|
||||
|
||||
Reference in New Issue
Block a user