summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThiago Marcos P. Santos <tmpsantos@gmail.com>2020-02-07 16:38:14 +0200
committerThiago Marcos P. Santos <tmpsantos@gmail.com>2020-02-07 20:12:44 +0200
commitf7fef70e9ddb9f52b071703d3ff0683b921606ac (patch)
treebbb1c1bf6f9d9a871c8d45e69286f9a0c44224ca
parent489adb8d8713928fbbd1f511640417b1dd2aaa8a (diff)
downloadqtlocation-mapboxgl-f7fef70e9ddb9f52b071703d3ff0683b921606ac.tar.gz
[build] Move the `next` buildsystem to the root
This will make the `next` buildsystem no longer the `next`, but the `actual`. The idea is to simplify the build, removing scripts, to make the platform buildsystem generated by CMake more compatible with IDEs and make development more streamlined. It will also make cross compilation easier.
-rw-r--r--CMakeLists.txt1166
-rw-r--r--README.md48
-rw-r--r--appveyor.yml4
-rw-r--r--benchmark/CMakeLists.txt38
-rw-r--r--benchmark/android/app/build.gradle2
-rw-r--r--bin/CMakeLists.txt (renamed from next/bin/CMakeLists.txt)10
-rw-r--r--circle.yml13
-rw-r--r--expression-test/CMakeLists.txt38
-rw-r--r--next/CMakeLists.txt1008
-rw-r--r--next/README.md42
-rw-r--r--next/benchmark/CMakeLists.txt38
-rw-r--r--next/expression-test/CMakeLists.txt38
-rw-r--r--next/platform/android/android.cmake483
-rw-r--r--next/platform/ios/ios.cmake192
-rw-r--r--next/platform/linux/linux.cmake134
-rw-r--r--next/platform/macos/macos.cmake213
-rw-r--r--next/platform/node/CMakeLists.txt52
-rw-r--r--next/platform/qt/qt.cmake214
-rw-r--r--next/render-test/CMakeLists.txt52
-rw-r--r--next/test/CMakeLists.txt188
l---------next/vendor1
-rw-r--r--platform/android/android.cmake483
-rw-r--r--platform/glfw/CMakeLists.txt (renamed from next/platform/glfw/CMakeLists.txt)12
-rw-r--r--platform/ios/ios.cmake193
-rw-r--r--platform/linux/linux.cmake134
-rw-r--r--platform/macos/macos.cmake213
-rw-r--r--platform/node/CMakeLists.txt52
-rw-r--r--platform/qt/qt.cmake214
-rw-r--r--render-test/CMakeLists.txt52
-rw-r--r--render-test/android/app/build.gradle2
-rwxr-xr-xrender-test/ios/setup_test_data.sh29
-rw-r--r--test/CMakeLists.txt188
-rw-r--r--test/android/app/build.gradle2
33 files changed, 2653 insertions, 2895 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9244a5e501..e16dd9da05 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,215 +1,1005 @@
-cmake_minimum_required(VERSION 3.9)
-project(mbgl LANGUAGES CXX C)
+cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
+project("Mapbox GL Native" LANGUAGES CXX C)
-set(CMAKE_CONFIGURATION_TYPES Debug Release RelWithDebInfo Sanitize)
+set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER Core)
+
+set(
+ MEMORYCHECK_COMMAND_OPTIONS
+ "--leak-check=full --gen-suppressions=all --error-exitcode=1 --suppressions=${PROJECT_SOURCE_DIR}/scripts/valgrind.sup"
+)
+
+include(CTest)
+
+if(NOT CMAKE_BUILD_TYPE)
+ set(CMAKE_BUILD_TYPE Release)
+endif()
+
+option(MBGL_WITH_CORE_ONLY "Build only the core bits, no platform code" OFF)
+option(MBGL_WITH_COVERAGE "Enable code coverage collection" OFF)
+option(MBGL_WITH_QT "Build Mapbox GL Qt bindings" OFF)
+option(MBGL_WITH_SANITIZER "Use [address|thread|undefined] here" OFF)
+option(MBGL_WITH_RTTI "Compile with runtime type information" OFF)
+option(MBGL_WITH_OPENGL "Build with OpenGL renderer" ON)
+
+add_library(
+ mbgl-compiler-options INTERFACE
+)
+
+target_compile_options(
+ mbgl-compiler-options
+ INTERFACE
+ $<$<BOOL:${MBGL_WITH_COVERAGE}>:--coverage>
+ $<$<BOOL:${MBGL_WITH_SANITIZER}>:-DSANITIZE>
+ $<$<BOOL:${MBGL_WITH_SANITIZER}>:-fno-omit-frame-pointer>
+ $<$<BOOL:${MBGL_WITH_SANITIZER}>:-fno-optimize-sibling-calls>
+ $<$<STREQUAL:${MBGL_WITH_SANITIZER},address>:-fsanitize=address>
+ $<$<STREQUAL:${MBGL_WITH_SANITIZER},thread>:-fsanitize=thread>
+ $<$<STREQUAL:${MBGL_WITH_SANITIZER},undefined>:-fsanitize=implicit-conversion>
+ $<$<STREQUAL:${MBGL_WITH_SANITIZER},undefined>:-fsanitize=undefined>
+ $<$<STREQUAL:${MBGL_WITH_SANITIZER},undefined>:-fsanitize=unsigned-integer-overflow>
+ $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<NOT:$<BOOL:${MBGL_WITH_RTTI}>>>:-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>
+ $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<NOT:$<PLATFORM_ID:Windows>>>:-Werror>
+ $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<PLATFORM_ID:Android>>:-Wno-error=tautological-constant-compare>
+ $<$<CXX_COMPILER_ID:GNU>:-Wno-error=maybe-uninitialized>
+ $<$<CXX_COMPILER_ID:GNU>:-Wno-error=return-type>
+ $<$<CXX_COMPILER_ID:GNU>:-Wno-error=unknown-pragmas>
+ $<$<CXX_COMPILER_ID:AppleClang>:-Wno-error=deprecated-declarations>
+ $<$<CXX_COMPILER_ID:AppleClang>:-Wno-error=unused-parameter>
+ $<$<CXX_COMPILER_ID:AppleClang>:-Wno-error=unused-property-ivar>
+)
+
+target_link_libraries(
+ mbgl-compiler-options
+ INTERFACE
+ $<$<BOOL:${MBGL_WITH_COVERAGE}>:--coverage>
+ $<$<STREQUAL:${MBGL_WITH_SANITIZER},address>:-fsanitize=address>
+ $<$<STREQUAL:${MBGL_WITH_SANITIZER},thread>:-fsanitize=thread>
+ $<$<STREQUAL:${MBGL_WITH_SANITIZER},undefined>:-fsanitize=undefined>
+)
-# Compiler configuration
+cmake_policy(SET CMP0063 NEW)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
+set(CMAKE_CXX_VISIBILITY_PRESET hidden)
set(CMAKE_C_EXTENSIONS OFF)
set(CMAKE_C_STANDARD 99)
set(CMAKE_C_STANDARD_REQUIRED ON)
-set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
-
-# Required to avoid warnings when setting visibility
-cmake_policy(SET CMP0063 NEW)
-set(CMAKE_CXX_VISIBILITY_PRESET hidden)
set(CMAKE_C_VISIBILITY_PRESET hidden)
-
+set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
+set(CMAKE_INTERPROCEDURAL_OPTIMIZATION_MINSIZEREL ON)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
-set(CMAKE_OSX_DEPLOYMENT_TARGET 10.11)
-
-option(WITH_COVERAGE "Enable coverage reports" OFF)
-option(WITH_OSMESA "Use OSMesa headless backend" OFF)
-option(WITH_EGL "Use EGL backend" OFF)
-option(WITH_NODEJS "Download test dependencies like NPM and Node.js" ON)
-option(WITH_ERROR "Add -Werror flag to build (turns warnings into errors)" ON)
-option(WITH_NO_RTTI "Disable RTTI" ON)
-
-if (WITH_ERROR)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
+if(MBGL_WITH_QT)
+ find_package(Qt5Core REQUIRED)
+ set(CMAKE_AUTOMOC ON)
+ set(CMAKE_AUTORCC ON)
endif()
-include(cmake/mbgl.cmake)
-include(cmake/vendor.cmake)
-include(cmake/mason.cmake)
-include(cmake/xcode.cmake)
-include(cmake/doxygen.cmake)
-
-if(WITH_OSMESA AND WITH_EGL)
- message(FATAL_ERROR "WITH_OSMESA and WITH_EGL are mutually exclusive.")
-endif()
-
-if(WITH_EGL)
- set(USE_GLES2 ON)
-endif()
-
-if($ENV{CI})
- add_compile_options(-DCI_BUILD=1)
+add_library(
+ mbgl-core STATIC
+ ${PROJECT_SOURCE_DIR}/include/mbgl/actor/actor.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/actor/actor_ref.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/actor/aspiring_actor.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/actor/established_actor.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/actor/mailbox.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/actor/message.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/actor/scheduler.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/annotation/annotation.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gfx/backend_scope.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gfx/renderable.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gfx/renderer_backend.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gfx/rendering_stats.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/background_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/circle_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/fill_extrusion_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/fill_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/heatmap_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/hillshade_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/layer_manager.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/line_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/raster_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/layermanager/symbol_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/map/bound_options.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/map/camera.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/map/change.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/map/map.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/map/map_observer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/map/map_options.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/map/mode.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/map/projection_mode.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/math/clamp.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/math/log2.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/math/minmax.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/math/wrap.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/platform/settings.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/platform/thread.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/renderer/query.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/renderer/renderer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/renderer/renderer_frontend.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/renderer/renderer_observer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/renderer/renderer_state.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/database_file_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/file_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/file_source_manager.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/network_status.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/offline.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/online_file_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/resource.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/resource_options.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/resource_transform.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/storage/response.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/color_ramp_property_value.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/color_ramp_property_value.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/constant.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/coordinate.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/custom_geometry_source_options.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/filter.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/function.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/geojson.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/geojson_options.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/get_json_type.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/light.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/position.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/property_value.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/tileset.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion/transition_options.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/conversion_impl.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/assertion.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/at.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/boolean_operator.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/case.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/check_subtype.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/coalesce.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/coercion.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/collator.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/collator_expression.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/comparison.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/compound_expression.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/dsl.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/error.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/expression.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/find_zoom_curve.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/format_expression.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/format_section_override.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/formatted.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/get_covering_stops.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/image.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/image_expression.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/interpolate.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/interpolator.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/is_constant.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/is_expression.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/length.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/let.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/literal.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/match.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/number_format.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/parsing_context.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/step.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/type.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/expression/value.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/filter.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/image.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/background_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/circle_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/fill_extrusion_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/fill_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/heatmap_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/hillshade_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/line_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/raster_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/layers/symbol_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/light.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/position.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/property_expression.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/property_value.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/sources/custom_geometry_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/sources/geojson_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/sources/image_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/sources/raster_dem_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/sources/raster_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/sources/vector_source.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/style.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/style_property.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/transition_options.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/types.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/style/undefined.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/tile/tile_id.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/tile/tile_necessity.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/async_request.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/async_task.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/char_array_buffer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/chrono.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/color.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/compression.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/constants.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/convert.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/enum.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/event.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/exception.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/expected.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/feature.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/font_stack.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/geo.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/geojson.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/geometry.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/ignore.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/image.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/immutable.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/indexed_tuple.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/interpolate.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/logging.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/noncopyable.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/optional.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/platform.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/premultiply.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/projection.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/range.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/run_loop.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/size.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/string.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/thread.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/tileset.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/timer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/traits.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/type_list.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/unitbezier.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/util.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/variant.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/work_request.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/work_task.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/work_task_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/csscolorparser/csscolorparser.cpp
+ ${PROJECT_SOURCE_DIR}/src/csscolorparser/csscolorparser.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/actor/mailbox.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/actor/scheduler.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/algorithm/update_renderables.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/algorithm/update_tile_masks.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/annotation_manager.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/annotation_manager.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/annotation_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/annotation_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/annotation_tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/annotation_tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/fill_annotation_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/fill_annotation_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/line_annotation_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/line_annotation_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/render_annotation_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/render_annotation_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/shape_annotation_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/shape_annotation_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/symbol_annotation_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/annotation/symbol_annotation_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/geometry/anchor.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/geometry/debug_font_data.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/geometry/dem_data.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/geometry/dem_data.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/geometry/feature_index.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/geometry/feature_index.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/geometry/line_atlas.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/geometry/line_atlas.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/attribute.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/attribute.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/color_mode.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/command_encoder.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/context.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/cull_face_mode.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/debug_group.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/depth_mode.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/draw_mode.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/draw_scope.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/index_buffer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/index_vector.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/offscreen_texture.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/render_pass.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/renderbuffer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/renderer_backend.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/rendering_stats.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/stencil_mode.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/texture.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/types.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/uniform.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/upload_pass.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/vertex_buffer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gfx/vertex_vector.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/background_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/circle_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/fill_extrusion_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/fill_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/heatmap_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/hillshade_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/layer_manager.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/line_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/raster_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layermanager/symbol_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/clip_lines.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/clip_lines.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/layout.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/merge_lines.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/merge_lines.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/pattern_layout.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/symbol_feature.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/symbol_instance.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/symbol_instance.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/symbol_layout.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/symbol_layout.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/symbol_projection.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/layout/symbol_projection.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/map.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/map_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/map_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/map_options.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/transform.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/transform.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/transform_state.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/transform_state.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/map/zoom_history.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/math/log2.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/platform/settings.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/attributes.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/background_pattern_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/background_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/background_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/circle_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/circle_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/clipping_mask_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/clipping_mask_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/collision_box_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/collision_box_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/collision_circle_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/debug_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/debug_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/fill_extrusion_pattern_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/fill_extrusion_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/fill_extrusion_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/fill_outline_pattern_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/fill_outline_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/fill_pattern_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/fill_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/fill_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/heatmap_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/heatmap_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/heatmap_texture_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/heatmap_texture_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/hillshade_prepare_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/hillshade_prepare_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/hillshade_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/hillshade_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/line_gradient_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/line_pattern_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/line_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/line_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/line_sdf_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/program_parameters.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/program_parameters.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/programs.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/programs.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/raster_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/raster_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/segment.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/symbol_icon_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/symbol_program.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/symbol_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/symbol_sdf_icon_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/symbol_sdf_text_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/symbol_text_and_icon_program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/textures.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/uniforms.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/backend_scope.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/bucket_parameters.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/bucket_parameters.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/circle_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/circle_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/debug_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/debug_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/fill_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/fill_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/fill_extrusion_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/fill_extrusion_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/heatmap_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/heatmap_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/hillshade_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/hillshade_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/line_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/line_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/raster_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/raster_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/symbol_bucket.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/buckets/symbol_bucket.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/cross_faded_property_evaluator.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/cross_faded_property_evaluator.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/data_driven_property_evaluator.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/group_by_layout.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/group_by_layout.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/image_atlas.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/image_atlas.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/image_manager.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/image_manager.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/image_manager_observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_background_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_background_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_circle_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_circle_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_fill_extrusion_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_fill_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_fill_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_heatmap_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_heatmap_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_hillshade_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_hillshade_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_line_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_line_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_raster_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_raster_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_symbol_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/layers/render_symbol_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/paint_parameters.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/paint_parameters.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/paint_property_binder.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/paint_property_statistics.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/pattern_atlas.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/pattern_atlas.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/possibly_evaluated_property_value.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/property_evaluation_parameters.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/property_evaluator.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_light.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_light.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_orchestrator.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_orchestrator.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_pass.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_source_observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_static_data.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_static_data.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/render_tree.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/renderer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/renderer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/renderer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/renderer_state.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_custom_geometry_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_custom_geometry_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_geojson_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_geojson_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_image_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_image_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_raster_dem_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_raster_dem_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_raster_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_raster_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_tile_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_tile_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_vector_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/sources/render_vector_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/source_state.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/source_state.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/style_diff.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/style_diff.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/tile_mask.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/tile_parameters.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/tile_pyramid.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/tile_pyramid.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/tile_render_data.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/tile_render_data.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/transition_parameters.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/update_parameters.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/renderer/upload_parameters.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_loader.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_loader.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_loader_observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_loader_worker.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_loader_worker.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_parser.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_parser.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/asset_file_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/file_source_manager.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/http_file_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/local_file_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/main_resource_loader.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/network_status.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/resource.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/resource_options.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/resource_transform.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/response.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/collection.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/color_ramp_property_value.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/constant.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/coordinate.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/custom_geometry_source_options.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/filter.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/function.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/geojson.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/geojson_options.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/get_json_type.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/json.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/light.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/position.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/property_value.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/stringify.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/tileset.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/conversion/transition_options.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/custom_tile_loader.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/custom_tile_loader.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/assertion.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/at.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/boolean_operator.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/case.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/check_subtype.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/coalesce.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/coercion.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/collator.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/collator_expression.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/comparison.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/compound_expression.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/dsl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/dsl_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/expression.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/find_zoom_curve.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/format_expression.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/formatted.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/get_covering_stops.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/image.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/image_expression.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/interpolate.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/is_constant.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/is_expression.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/length.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/let.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/literal.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/match.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/number_format.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/parsing_context.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/step.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/util.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/util.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/expression/value.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/filter.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/image.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/image_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/image_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layer_observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/background_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/background_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/background_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/background_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/background_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/circle_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/circle_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/circle_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/circle_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/circle_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_extrusion_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_extrusion_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_extrusion_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_extrusion_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_extrusion_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/fill_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/heatmap_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/heatmap_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/heatmap_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/heatmap_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/heatmap_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/hillshade_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/hillshade_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/hillshade_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/hillshade_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/hillshade_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/line_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/line_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/line_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/line_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/line_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/raster_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/raster_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/raster_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/raster_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/raster_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/symbol_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/symbol_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/symbol_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/symbol_layer_properties.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layers/symbol_layer_properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/layout_property.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/light.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/light_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/light_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/light_observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/paint_property.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/parser.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/parser.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/properties.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/property_expression.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/rapidjson_conversion.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/source_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/source_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/source_observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/custom_geometry_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/custom_geometry_source_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/custom_geometry_source_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/geojson_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/geojson_source_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/geojson_source_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/image_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/image_source_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/image_source_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/raster_dem_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/raster_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/raster_source_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/raster_source_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/vector_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/vector_source_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/sources/vector_source_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/style.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/style_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/style_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/style/types.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/bidi.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/check_max_angle.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/check_max_angle.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/collision_feature.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/collision_feature.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/collision_index.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/collision_index.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/cross_tile_symbol_index.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/cross_tile_symbol_index.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/get_anchors.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/get_anchors.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph_atlas.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph_atlas.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph_manager.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph_manager.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph_manager_observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph_pbf.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph_pbf.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/glyph_range.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/language_tag.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/language_tag.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/local_glyph_rasterizer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/placement.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/placement.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/quads.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/quads.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/shaping.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/shaping.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/tagged_string.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/text/tagged_string.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/custom_geometry_tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/custom_geometry_tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geojson_tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geojson_tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geojson_tile_data.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geometry_tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geometry_tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geometry_tile_data.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geometry_tile_data.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geometry_tile_worker.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/geometry_tile_worker.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/raster_dem_tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/raster_dem_tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/raster_dem_tile_worker.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/raster_dem_tile_worker.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/raster_tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/raster_tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/raster_tile_worker.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/raster_tile_worker.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile_cache.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile_cache.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile_id_hash.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile_id_io.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile_loader.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile_loader_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/tile_observer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/vector_tile.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/vector_tile.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/vector_tile_data.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/tile/vector_tile_data.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/chrono.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/color.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/constants.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/convert.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/dtoa.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/dtoa.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/event.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/font_stack.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/geo.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/geojson_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/grid_index.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/grid_index.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/hash.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/http_header.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/http_header.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/http_timeout.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/http_timeout.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/i18n.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/i18n.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/id.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/id.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/interpolate.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/intersection_tests.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/intersection_tests.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/io.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/io.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/literal.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/logging.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/longest_common_subsequence.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/mapbox.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/mapbox.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/mat2.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/mat2.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/mat3.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/mat3.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/mat4.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/mat4.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/math.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/premultiply.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/rapidjson.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/rapidjson.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/rect.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/std.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/stopwatch.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/stopwatch.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/string.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/thread.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/thread_local.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/thread_pool.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/thread_pool.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_coordinate.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_cover.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_cover.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_cover_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_cover_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_range.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tiny_sdf.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tiny_sdf.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/token.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/url.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/url.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/utf.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/version.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/version.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/work_request.cpp
+ ${PROJECT_SOURCE_DIR}/src/parsedate/parsedate.cpp
+ ${PROJECT_SOURCE_DIR}/src/parsedate/parsedate.hpp
+)
+
+if(MBGL_WITH_OPENGL)
+ message("-- Configuring GL-Native with OpenGL renderer backend")
+ target_compile_definitions(
+ mbgl-core
+ PRIVATE MBGL_RENDER_BACKEND_OPENGL=1
+ )
+ target_sources(
+ mbgl-core
+ PRIVATE
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gfx/backend.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gl/custom_layer.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gl/custom_layer_factory.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gl/renderable_resource.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/gl/renderer_backend.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/platform/gl_functions.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/attribute.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/attribute.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/command_encoder.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/command_encoder.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/context.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/context.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/custom_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/custom_layer_factory.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/custom_layer_impl.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/custom_layer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/debugging_extension.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/debugging_extension.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/defines.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/draw_scope_resource.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/enum.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/enum.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/extension.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/framebuffer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/index_buffer_resource.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/index_buffer_resource.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/object.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/object.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/offscreen_texture.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/offscreen_texture.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/program.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/render_pass.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/render_pass.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/renderbuffer_resource.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/renderer_backend.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/render_custom_layer.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/render_custom_layer.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/state.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/texture.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/texture.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/texture_resource.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/texture_resource.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/types.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/uniform.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/uniform.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/upload_pass.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/upload_pass.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/value.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/value.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/vertex_array.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/vertex_array.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/vertex_array_extension.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/vertex_buffer_resource.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/gl/vertex_buffer_resource.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/platform/gl_functions.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/background.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/background_pattern.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/circle.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/clipping_mask.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/collision_box.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/collision_circle.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/debug.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/fill.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/fill_extrusion.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/fill_extrusion_pattern.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/fill_outline.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/fill_outline_pattern.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/fill_pattern.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/heatmap.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/heatmap_texture.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/hillshade.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/hillshade_prepare.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/line.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/line_gradient.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/line_pattern.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/line_sdf.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/preludes.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/raster.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/shader_source.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/shader_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/shaders.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/shaders.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/symbol_icon.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/symbol_sdf_icon.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/symbol_sdf_text.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/programs/gl/symbol_text_and_icon.cpp
+ )
endif()
-set_property(GLOBAL PROPERTY USE_FOLDERS ON)
-
-if(EXISTS ${CMAKE_SOURCE_DIR}/.git/HEAD)
- exec_program(
- "git"
- ${CMAKE_SOURCE_DIR}
- ARGS "rev-parse --short=8 HEAD"
- OUTPUT_VARIABLE MBGL_VERSION_REV )
+if(EXISTS ${PROJECT_SOURCE_DIR}/.git/HEAD)
+ execute_process(
+ COMMAND
+ git
+ rev-parse
+ --short=8
+ HEAD
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+ OUTPUT_VARIABLE MBGL_VERSION_REV
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
else()
set(MBGL_VERSION_REV 00000000)
endif()
-set_source_files_properties(src/mbgl/util/version.cpp PROPERTIES COMPILE_DEFINITIONS MBGL_VERSION_REV="${MBGL_VERSION_REV}")
-
-include(cmake/mason-dependencies.cmake)
-
-if(WITH_COVERAGE)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage")
- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} --coverage")
-endif(WITH_COVERAGE)
-
-if (CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-backtrace-limit=0 -w")
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w")
-else()
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-depth=1024 -Wall -Wextra -Wshadow -Wnon-virtual-dtor -Wno-variadic-macros -Wno-unknown-pragmas")
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wshadow -Wno-variadic-macros -Wno-unknown-pragmas")
+set_source_files_properties(
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/version.cpp
+ PROPERTIES
+ COMPILE_DEFINITIONS
+ MBGL_VERSION_REV="${MBGL_VERSION_REV}"
+)
+
+target_include_directories(
+ mbgl-core
+ PRIVATE ${PROJECT_SOURCE_DIR}/src
+)
+
+target_include_directories(
+ mbgl-core
+ PUBLIC ${PROJECT_SOURCE_DIR}/include
+)
+
+if(NOT TARGET mapbox-base)
+ add_subdirectory(${PROJECT_SOURCE_DIR}/vendor/mapbox-base/mapbox)
+ add_subdirectory(${PROJECT_SOURCE_DIR}/vendor/mapbox-base/extras)
endif()
-if(WITH_NO_RTTI)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
+include(${PROJECT_SOURCE_DIR}/vendor/boost.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/earcut.hpp.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/eternal.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/geojson-vt-cpp.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/polylabel.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/protozero.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/shelf-pack-cpp.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/unique_resource.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/vector-tile.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/wagyu.cmake)
+
+target_link_libraries(
+ mbgl-core
+ PRIVATE
+ Mapbox::Base::Extras::kdbush.hpp
+ Mapbox::Base::supercluster.hpp
+ mbgl-compiler-options
+ mbgl-vendor-boost
+ mbgl-vendor-earcut.hpp
+ mbgl-vendor-eternal
+ mbgl-vendor-geojson-vt-cpp
+ mbgl-vendor-polylabel
+ mbgl-vendor-protozero
+ mbgl-vendor-shelf-pack-cpp
+ mbgl-vendor-unique_resource
+ mbgl-vendor-vector-tile
+ mbgl-vendor-wagyu
+ PUBLIC
+ Mapbox::Base::Extras::expected-lite
+ Mapbox::Base::Extras::rapidjson
+ Mapbox::Base::geojson.hpp
+ Mapbox::Base::geometry.hpp
+ Mapbox::Base::optional
+ Mapbox::Base::typewrapper
+ Mapbox::Base::value
+ Mapbox::Base::variant
+ Mapbox::Base::weak
+)
+
+set_property(TARGET mbgl-core PROPERTY FOLDER Core)
+
+add_library(
+ Mapbox::Map ALIAS mbgl-core
+)
+
+if(MBGL_WITH_PLATFORM_EXTRAS)
+ include(${MBGL_WITH_PLATFORM_EXTRAS})
endif()
-if(APPLE AND CMAKE_CXX_COMPILER_ID MATCHES ".*Clang")
- # -Wno-error=unused-command-line-argument is required due to https://llvm.org/bugs/show_bug.cgi?id=7798
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=unused-command-line-argument")
-endif()
-
-set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Os -DNDEBUG")
-set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Os -DNDEBUG")
-if(APPLE)
- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -Os -DNDEBUG")
- set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -Os -DNDEBUG")
-else()
- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -O3 -DNDEBUG")
- set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O3 -DNDEBUG")
-endif()
-set(CMAKE_CXX_FLAGS_SANITIZE "${CMAKE_CXX_FLAGS_SANITIZE} -O1 -g -fno-omit-frame-pointer -fno-optimize-sibling-calls")
-set(CMAKE_C_FLAGS_SANITIZE "${CMAKE_C_FLAGS_SANITIZE} -O1 -g -fno-omit-frame-pointer -fno-optimize-sibling-calls")
-
-if(CMAKE_CXX_COMPILER_ID MATCHES ".*Clang")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=unknown-warning-option")
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error=unknown-warning-option")
-elseif(CMAKE_COMPILER_IS_GNUCXX)
- # https://svn.boost.org/trac/boost/ticket/9240
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fext-numeric-literals")
-endif()
-
-set(CMAKE_SHARED_LINKER_FLAGS_SANITIZE "${CMAKE_SHARED_LINKER_FLAGS}")
-set(CMAKE_EXE_LINKER_FLAGS_SANITIZE "${CMAKE_EXE_LINKER_FLAGS}")
-
-# Technique from https://crascit.com/2016/04/09/using-ccache-with-cmake/
-find_program(CCACHE_PROGRAM ccache)
-if(CCACHE_PROGRAM)
- set(C_LAUNCHER "${CCACHE_PROGRAM}")
- set(CXX_LAUNCHER "${CCACHE_PROGRAM}")
-
- if(CMAKE_GENERATOR STREQUAL "Xcode")
- # Set Xcode project attributes to route compilation and linking through our scripts
- # Xcode doesn't include the path to the compiler/linker by default, so we'll have to add it.
- configure_file(scripts/launch-c-xcode.in launch-c @ONLY)
- configure_file(scripts/launch-cxx-xcode.in launch-cxx @ONLY)
-
- set(CMAKE_XCODE_ATTRIBUTE_CC "${CMAKE_BINARY_DIR}/launch-c")
- set(CMAKE_XCODE_ATTRIBUTE_CXX "${CMAKE_BINARY_DIR}/launch-cxx")
- set(CMAKE_XCODE_ATTRIBUTE_LD "${CMAKE_BINARY_DIR}/launch-c")
- set(CMAKE_XCODE_ATTRIBUTE_LDPLUSPLUS "${CMAKE_BINARY_DIR}/launch-cxx")
- else()
- # Support Unix Makefiles and Ninja
- configure_file(scripts/launch-c.in launch-c @ONLY)
- configure_file(scripts/launch-cxx.in launch-cxx @ONLY)
-
- set(CMAKE_C_COMPILER_LAUNCHER "${CMAKE_BINARY_DIR}/launch-c")
- set(CMAKE_CXX_COMPILER_LAUNCHER "${CMAKE_BINARY_DIR}/launch-cxx")
- endif()
-
- execute_process(COMMAND chmod a+rx "${CMAKE_BINARY_DIR}/launch-c" "${CMAKE_BINARY_DIR}/launch-cxx")
-
- if(CMAKE_CXX_COMPILER_ID MATCHES ".*Clang")
- # ccache splits up the compile steps, so we end up with unused arguments in some steps.
- # Clang also thinks that ccache isn't interactive, so we explicitly need to enable color.
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Qunused-arguments -fcolor-diagnostics")
- endif()
-elseif(WIN32)
- find_program(CLCACHE_PROGRAM clcache)
- if(CLCACHE_PROGRAM)
- # clcache doesn't work with external pdb files
- # https://github.com/frerich/clcache/issues/30
- string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
- string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
- endif()
+if(MBGL_WITH_CORE_ONLY)
+ return()
+elseif(MBGL_WITH_QT)
+ include(${PROJECT_SOURCE_DIR}/platform/qt/qt.cmake)
+elseif(CMAKE_SYSTEM_NAME STREQUAL Android)
+ include(${PROJECT_SOURCE_DIR}/platform/android/android.cmake)
+elseif(CMAKE_SYSTEM_NAME STREQUAL iOS)
+ include(${PROJECT_SOURCE_DIR}/platform/ios/ios.cmake)
+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/macos/macos.cmake)
else()
- message(STATUS "Can't find ccache — consider installing ccache to improve recompilation performance")
-endif()
-
-if(NOT EXISTS ${CMAKE_SOURCE_DIR}/platform/${MBGL_PLATFORM}/config.cmake)
- message(ERROR "Can't find config.cmake file for platform ${MBGL_PLATFORM}")
-endif()
-
-include(platform/${MBGL_PLATFORM}/config.cmake)
-
-add_definitions(-DMBGL_RENDER_BACKEND_OPENGL=1)
-
-if(WITH_EGL)
- add_definitions(-DMBGL_WITH_EGL=1)
-endif()
-
-if(USE_GLES2)
- add_definitions(-DMBGL_USE_GLES2=1)
-endif()
-
-if (COMMAND mbgl_filesource)
- include(cmake/filesource.cmake)
+ message(FATAL_ERROR "Unsupported target platform: " ${CMAKE_SYSTEM_NAME})
endif()
-include(cmake/core.cmake)
-
-if(COMMAND mbgl_platform_test)
- include(cmake/test.cmake)
- include(cmake/render-test.cmake)
- include(cmake/expression-test.cmake)
-endif()
-
-if(COMMAND mbgl_platform_benchmark)
- include(cmake/benchmark.cmake)
-endif()
-
-if(COMMAND mbgl_platform_glfw)
- include(cmake/glfw.cmake)
-endif()
-
-if(COMMAND mbgl_platform_render)
- include(cmake/render.cmake)
-endif()
-
-if(COMMAND mbgl_platform_offline)
- include(cmake/offline.cmake)
-endif()
-
-if(WITH_NODEJS AND COMMAND mbgl_platform_node)
- include(cmake/node.cmake)
-endif()
-
-if(CMAKE_GENERATOR STREQUAL "Xcode")
- set_xcconfig_target_properties(mbgl-core)
- set_xcconfig_target_properties(mbgl-filesource)
- file(GENERATE
- OUTPUT "${CMAKE_BINARY_DIR}/config.xcconfig"
- INPUT "${CMAKE_SOURCE_DIR}/scripts/config.xcconfig.in"
- )
-endif()
+add_subdirectory(${PROJECT_SOURCE_DIR}/test)
+add_subdirectory(${PROJECT_SOURCE_DIR}/benchmark)
+add_subdirectory(${PROJECT_SOURCE_DIR}/render-test)
diff --git a/README.md b/README.md
index 39732c2b0b..482919c393 100644
--- a/README.md
+++ b/README.md
@@ -1,24 +1,42 @@
# Mapbox GL Native
-A library for embedding interactive, customizable vector maps into native applications on multiple platforms. It takes stylesheets that conform to the [Mapbox Style Specification](https://github.com/mapbox/mapbox-gl-style-spec/), applies them to vector tiles that conform to the [Mapbox Vector Tile Specification](https://github.com/mapbox/vector-tile-spec), and renders them using OpenGL. [Mapbox GL JS](https://github.com/mapbox/mapbox-gl-js) is the WebGL-based counterpart, designed for use on the Web.
+A library for embedding interactive, customizable vector maps into native applications on multiple platforms. It
+takes stylesheets that conform to the [Mapbox Style Specification](https://github.com/mapbox/mapbox-gl-style-spec/),
+applies them to vector tiles that conform to the [Mapbox Vector Tile Specification](https://github.com/mapbox/vector-tile-spec),
+and renders them using OpenGL. [Mapbox GL JS](https://github.com/mapbox/mapbox-gl-js) is the WebGL-based counterpart,
+designed for use on the Web.
+
+| SDK | Languages | Build status |
+| --------------------------------------------------- | ---------------------------------- | ---------------------------------------- |
+| Mapbox GL Native Core | C++14 | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) [![Coverage Status](https://codecov.io/gh/mapbox/mapbox-gl-native/branch/master/graph/badge.svg)](https://codecov.io/gh/mapbox/mapbox-gl-native) |
+| [Mapbox Maps SDK for Android](../platform/android/) | Java | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
+| [Mapbox Maps SDK for iOS](../platform/ios/) | Objective-C or Swift | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
+| [Mapbox Maps SDK for macOS](../platform/macos/) | Objective-C, Swift, or AppleScript | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
+| [node-mapbox-gl-native](../platform/node/) | Node.js | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
+| [Mapbox Maps SDK for Qt](../platform/qt) | C++03 | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) [![AppVeyor CI build status](https://ci.appveyor.com/api/projects/status/3q12kbcooc6df8uc?svg=true)](https://ci.appveyor.com/project/Mapbox/mapbox-gl-native) |
-## The Mapbox GL ecosystem
+[Additional Mapbox GL Native–based libraries](https://wiki.openstreetmap.org/wiki/Mapbox_GL#Libraries) for **hybrid applications** are developed outside of this repository. If your platform or hybrid application framework isn’t listed there, consider embedding [Mapbox GL JS](https://github.com/mapbox/mapbox-gl-js) using the standard Web capabilities on your platform.
-This repository hosts the cross-platform Mapbox GL Native library, plus convenient SDKs for several platforms. The cross-platform library comes with a [GLFW](https://github.com/glfw/glfw)-based demo application for Ubuntu Linux and macOS. The SDKs target the usual languages on their respective platforms:
+## License
-| SDK | Languages | Build status |
-| --------------------------------------- | ---------------------------------- | ---------------------------------------- |
-| [Mapbox GL Native](INSTALL.md) | C++14 | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) [![Coverage Status](https://codecov.io/gh/mapbox/mapbox-gl-native/branch/master/graph/badge.svg)](https://codecov.io/gh/mapbox/mapbox-gl-native) |
-| [Mapbox Maps SDK for Android](https://github.com/mapbox/mapbox-gl-native-android) | Java | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native-android.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native-android/tree/master) |
-| [Mapbox Maps SDK for iOS](platform/ios/) | Objective-C or Swift | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
-| [Mapbox Maps SDK for macOS](platform/macos/) | Objective-C, Swift, or AppleScript | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
-| [node-mapbox-gl-native](platform/node/) | Node.js | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
-| [Mapbox Maps SDK for Qt](platform/qt) | C++03 | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) [![AppVeyor CI build status](https://ci.appveyor.com/api/projects/status/3q12kbcooc6df8uc?svg=true)](https://ci.appveyor.com/project/Mapbox/mapbox-gl-native) |
+Mapbox GL Native is licensed under the [3-Clause BSD license](../LICENSE.md).
-[Additional Mapbox GL Native–based libraries](https://wiki.openstreetmap.org/wiki/Mapbox_GL#Libraries) for **hybrid applications** are developed outside of this repository. If your platform or hybrid application framework isn’t listed there, consider embedding [Mapbox GL JS](https://github.com/mapbox/mapbox-gl-js) using the standard Web capabilities on your platform.
+## Developing
-## License
+The `next` directory contains the next generation buildsystem for Mapbox GL Native, based solely on CMake with the
+goal of minimizing the use of scripts, increase portability and support building Mapbox GL Native as a subdirectory
+of another CMake project. This new buildsystem is also designed to build offline, making use of pre-installed and
+vendorized dependencies. When using the build bot docker image, the build should produce the exact same results as
+the bots, making it a hermetically sealed build for Linux, Qt and Android.
+
+### Building and running tests
-Mapbox GL Native is licensed under the [2-Clause BSD license](LICENSE.md). The licenses of its dependencies are tracked via [FOSSA](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fmapbox%2Fmapbox-gl-native):
+The following command, executed from the root of this repository tree, will build Mapbox GL Native targeting your
+host architecture given that you have all the dependencies installed.
-[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fmapbox%2Fmapbox-gl-native.svg?type=large)](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fmapbox%2Fmapbox-gl-native)
+```
+$ mkdir build && cd build
+$ cmake ..
+$ make -j8
+$ make test ARGS=-V
+```
diff --git a/appveyor.yml b/appveyor.yml
index 2440c3f601..16e7127098 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -78,13 +78,11 @@ before_build:
build_script:
- call "%VCVARSALL%" amd64
- - cmake -E remove ../next/vendor
- - cmake -E copy_directory ../vendor ../next/vendor
- cmake -G "Ninja"
-DCMAKE_BUILD_TYPE=%CONFIGURATION%
-DCMAKE_MAKE_PROGRAM="%APPVEYOR_BUILD_FOLDER%\platform\qt\ninja.exe"
-DCMAKE_PREFIX_PATH=%QT_PREFIX%
-DMBGL_WITH_QT=ON
- ../next
+ ..
- cmake --build . --target qmapboxgl -- -j %NUMBER_OF_PROCESSORS%
- clcache -s
diff --git a/benchmark/CMakeLists.txt b/benchmark/CMakeLists.txt
new file mode 100644
index 0000000000..a619bfbd36
--- /dev/null
+++ b/benchmark/CMakeLists.txt
@@ -0,0 +1,38 @@
+add_library(
+ mbgl-benchmark STATIC EXCLUDE_FROM_ALL
+ ${PROJECT_SOURCE_DIR}/benchmark/api/query.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/api/render.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/function/camera_function.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/function/composite_function.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/function/source_function.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/parse/filter.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/parse/tile_mask.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/parse/vector_tile.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/src/mbgl/benchmark/benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/storage/offline_database.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/util/dtoa.benchmark.cpp
+ ${PROJECT_SOURCE_DIR}/benchmark/util/tilecover.benchmark.cpp
+)
+
+target_include_directories(
+ mbgl-benchmark
+ PRIVATE ${PROJECT_SOURCE_DIR}/benchmark/src ${PROJECT_SOURCE_DIR}/platform/default/include ${PROJECT_SOURCE_DIR}/src
+)
+
+target_include_directories(
+ mbgl-benchmark
+ PUBLIC ${PROJECT_SOURCE_DIR}/benchmark/include ${PROJECT_SOURCE_DIR}/include
+)
+
+include(${PROJECT_SOURCE_DIR}/vendor/benchmark.cmake)
+
+# Needed for testing private classes
+get_target_property(MBGL_CORE_PRIVATE_LIBRARIES mbgl-core LINK_LIBRARIES)
+
+target_link_libraries(
+ mbgl-benchmark
+ PRIVATE ${MBGL_CORE_PRIVATE_LIBRARIES} mbgl-vendor-benchmark mbgl-compiler-options
+ PUBLIC mbgl-core
+)
+
+set_property(TARGET mbgl-benchmark PROPERTY FOLDER Core)
diff --git a/benchmark/android/app/build.gradle b/benchmark/android/app/build.gradle
index d355286585..d33d19d66f 100644
--- a/benchmark/android/app/build.gradle
+++ b/benchmark/android/app/build.gradle
@@ -33,7 +33,7 @@ android {
externalNativeBuild {
cmake {
version '3.10.2'
- path '../../../next/CMakeLists.txt'
+ path '../../../CMakeLists.txt'
}
}
buildTypes {
diff --git a/next/bin/CMakeLists.txt b/bin/CMakeLists.txt
index b2414a6c82..8f265ecb91 100644
--- a/next/bin/CMakeLists.txt
+++ b/bin/CMakeLists.txt
@@ -1,6 +1,6 @@
add_executable(
mbgl-cache
- ${MBGL_ROOT}/bin/cache.cpp
+ ${PROJECT_SOURCE_DIR}/bin/cache.cpp
)
target_link_libraries(
@@ -14,7 +14,7 @@ target_link_libraries(
add_executable(
mbgl-offline
- ${MBGL_ROOT}/bin/offline.cpp
+ ${PROJECT_SOURCE_DIR}/bin/offline.cpp
)
target_link_libraries(
@@ -24,7 +24,7 @@ target_link_libraries(
add_executable(
mbgl-render
- ${MBGL_ROOT}/bin/render.cpp
+ ${PROJECT_SOURCE_DIR}/bin/render.cpp
)
target_link_libraries(
@@ -37,6 +37,6 @@ install(TARGETS mbgl-offline mbgl-render RUNTIME DESTINATION bin)
# FIXME: CI must have a valid token
#
# add_test(NAME mbgl-offline-tool-test COMMAND mbgl-offline -s mapbox://styles/mapbox/satellite-v9 --maxZoom=0 WORKING_DIRECTORY
-# ${MBGL_ROOT} )
+# ${PROJECT_SOURCE_DIR} )
#
-# add_test(NAME mbgl-render-tool-test COMMAND mbgl-render WORKING_DIRECTORY ${MBGL_ROOT} )
+# add_test(NAME mbgl-render-tool-test COMMAND mbgl-render WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} )
diff --git a/circle.yml b/circle.yml
index 65a37e3bf2..025b58fb00 100644
--- a/circle.yml
+++ b/circle.yml
@@ -226,7 +226,7 @@ commands:
- run:
name: Configure
command: |
- cmake next -B build << parameters.config_params >>
+ cmake . -B build << parameters.config_params >>
build:
parameters:
build_params:
@@ -320,7 +320,7 @@ jobs:
- run:
name: Build
command: |
- cmake next -B Build -G Xcode -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_OSX_SYSROOT=iphonesimulator
+ cmake . -B Build -G Xcode -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_OSX_SYSROOT=iphonesimulator
cd Build && xcodebuild -sdk iphonesimulator -project Mapbox\ GL\ Native.xcodeproj -configuration Release
- save
ios-render-test-runner:
@@ -341,7 +341,7 @@ jobs:
name: Build IOS RenderTestApp
command: |
cd render-test/ios
- cmake ../../next -B Build -G Xcode -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphoneos -DMBGL_IOS_RENDER_TEST=ON
+ cmake ../.. -B Build -G Xcode -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphoneos -DMBGL_IOS_RENDER_TEST=ON
cd Build
xcodebuild -sdk iphoneos -project Mapbox\ GL\ Native.xcodeproj -scheme RenderTestApp build-for-testing -arch arm64 CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO -configuration Release
xcodebuild -sdk iphoneos -project Mapbox\ GL\ Native.xcodeproj build -target RenderTestAppTests -arch arm64 CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO -configuration Release
@@ -391,8 +391,8 @@ jobs:
cd ../.. && mkdir -p /tmp/tests/ios-render-test
if ls render-test-app/TestLogs/*.html 1> /dev/null 2>&1; then cp render-test-app/TestLogs/*.html /tmp/tests/ios-render-test; fi
if [[ -n $(ls render-test-app/TestLogs/*.zip 2>/dev/null) ]]; then
- cp render-test-app/TestLogs/*.zip metrics/next-ios-render-test-runner/
- cd metrics/next-ios-render-test-runner/
+ cp render-test-app/TestLogs/*.zip metrics/ios-render-test-runner/
+ cd metrics/ios-render-test-runner/
unzip *.zip
rm -rf *.zip
fi
@@ -528,7 +528,8 @@ jobs:
- run:
name: CMake Format
command: |
- cmake-format -i $(find next -type f -name CMakeLists.txt -o -name '*.cmake')
+ cmake-format -i $(find -name '*.cmake' -and -not -path './vendor/*/*' -and -not -path './build/*')
+ cmake-format -i $(find -name CMakeLists.txt -and -not -path './vendor/*/*' -and -not -path './build/*')
git diff --exit-code | tee nitpick.patch
- run:
name: Clang Format
diff --git a/expression-test/CMakeLists.txt b/expression-test/CMakeLists.txt
new file mode 100644
index 0000000000..5f8f8758a2
--- /dev/null
+++ b/expression-test/CMakeLists.txt
@@ -0,0 +1,38 @@
+add_executable(
+ mbgl-expression-test
+ ${PROJECT_SOURCE_DIR}/expression-test/expression_test_logger.cpp
+ ${PROJECT_SOURCE_DIR}/expression-test/expression_test_logger.hpp
+ ${PROJECT_SOURCE_DIR}/expression-test/expression_test_parser.cpp
+ ${PROJECT_SOURCE_DIR}/expression-test/expression_test_parser.hpp
+ ${PROJECT_SOURCE_DIR}/expression-test/expression_test_runner.cpp
+ ${PROJECT_SOURCE_DIR}/expression-test/expression_test_runner.hpp
+ ${PROJECT_SOURCE_DIR}/expression-test/test_runner_common.cpp
+ ${PROJECT_SOURCE_DIR}/expression-test/test_runner_common.hpp
+ ${PROJECT_SOURCE_DIR}/expression-test/main.cpp
+)
+
+target_compile_definitions(
+ mbgl-expression-test
+ PRIVATE TEST_RUNNER_ROOT_PATH="${PROJECT_SOURCE_DIR}"
+)
+
+# FIXME: Should not use core private interface
+target_include_directories(
+ mbgl-expression-test
+ PRIVATE ${PROJECT_SOURCE_DIR}/src
+)
+
+target_link_libraries(
+ mbgl-expression-test
+ PRIVATE
+ Mapbox::Base::Extras::args
+ Mapbox::Base::Extras::filesystem
+ Mapbox::Base::io
+ mbgl-core
+)
+
+set_property(TARGET mbgl-expression-test PROPERTY FOLDER Executables)
+
+string(RANDOM LENGTH 5 ALPHABET 0123456789 MBGL_EXPRESSION_TEST_SEED)
+
+add_test(NAME mbgl-expression-test COMMAND mbgl-expression-test -s --seed=${MBGL_EXPRESSION_TEST_SEED} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
diff --git a/next/CMakeLists.txt b/next/CMakeLists.txt
deleted file mode 100644
index 50b1f62ccc..0000000000
--- a/next/CMakeLists.txt
+++ /dev/null
@@ -1,1008 +0,0 @@
-cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
-project("Mapbox GL Native" LANGUAGES CXX C)
-
-# TODO: Remove when PROJECT_SOURCE_DIR becomes the actual root.
-set(MBGL_ROOT ${PROJECT_SOURCE_DIR}/..)
-
-set_property(GLOBAL PROPERTY USE_FOLDERS ON)
-set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER Core)
-
-set(
- MEMORYCHECK_COMMAND_OPTIONS
- "--leak-check=full --gen-suppressions=all --error-exitcode=1 --suppressions=${MBGL_ROOT}/scripts/valgrind.sup"
-)
-
-include(CTest)
-
-if(NOT CMAKE_BUILD_TYPE)
- set(CMAKE_BUILD_TYPE Release)
-endif()
-
-option(MBGL_WITH_CORE_ONLY "Build only the core bits, no platform code" OFF)
-option(MBGL_WITH_COVERAGE "Enable code coverage collection" OFF)
-option(MBGL_WITH_QT "Build Mapbox GL Qt bindings" OFF)
-option(MBGL_WITH_SANITIZER "Use [address|thread|undefined] here" OFF)
-option(MBGL_WITH_RTTI "Compile with runtime type information" OFF)
-option(MBGL_WITH_OPENGL "Build with OpenGL renderer" ON)
-
-add_library(
- mbgl-compiler-options INTERFACE
-)
-
-target_compile_options(
- mbgl-compiler-options
- INTERFACE
- $<$<BOOL:${MBGL_WITH_COVERAGE}>:--coverage>
- $<$<BOOL:${MBGL_WITH_SANITIZER}>:-DSANITIZE>
- $<$<BOOL:${MBGL_WITH_SANITIZER}>:-fno-omit-frame-pointer>
- $<$<BOOL:${MBGL_WITH_SANITIZER}>:-fno-optimize-sibling-calls>
- $<$<STREQUAL:${MBGL_WITH_SANITIZER},address>:-fsanitize=address>
- $<$<STREQUAL:${MBGL_WITH_SANITIZER},thread>:-fsanitize=thread>
- $<$<STREQUAL:${MBGL_WITH_SANITIZER},undefined>:-fsanitize=implicit-conversion>
- $<$<STREQUAL:${MBGL_WITH_SANITIZER},undefined>:-fsanitize=undefined>
- $<$<STREQUAL:${MBGL_WITH_SANITIZER},undefined>:-fsanitize=unsigned-integer-overflow>
- $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<NOT:$<BOOL:${MBGL_WITH_RTTI}>>>:-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>
- $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<NOT:$<PLATFORM_ID:Windows>>>:-Werror>
- $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<PLATFORM_ID:Android>>:-Wno-error=tautological-constant-compare>
- $<$<CXX_COMPILER_ID:GNU>:-Wno-error=maybe-uninitialized>
- $<$<CXX_COMPILER_ID:GNU>:-Wno-error=return-type>
- $<$<CXX_COMPILER_ID:GNU>:-Wno-error=unknown-pragmas>
- $<$<CXX_COMPILER_ID:AppleClang>:-Wno-error=deprecated-declarations>
- $<$<CXX_COMPILER_ID:AppleClang>:-Wno-error=unused-parameter>
- $<$<CXX_COMPILER_ID:AppleClang>:-Wno-error=unused-property-ivar>
-)
-
-target_link_libraries(
- mbgl-compiler-options
- INTERFACE
- $<$<BOOL:${MBGL_WITH_COVERAGE}>:--coverage>
- $<$<STREQUAL:${MBGL_WITH_SANITIZER},address>:-fsanitize=address>
- $<$<STREQUAL:${MBGL_WITH_SANITIZER},thread>:-fsanitize=thread>
- $<$<STREQUAL:${MBGL_WITH_SANITIZER},undefined>:-fsanitize=undefined>
-)
-
-cmake_policy(SET CMP0063 NEW)
-set(CMAKE_CXX_EXTENSIONS OFF)
-set(CMAKE_CXX_STANDARD 14)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_VISIBILITY_PRESET hidden)
-set(CMAKE_C_EXTENSIONS OFF)
-set(CMAKE_C_STANDARD 99)
-set(CMAKE_C_STANDARD_REQUIRED ON)
-set(CMAKE_C_VISIBILITY_PRESET hidden)
-set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
-set(CMAKE_INTERPROCEDURAL_OPTIMIZATION_MINSIZEREL ON)
-set(CMAKE_POSITION_INDEPENDENT_CODE ON)
-set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
-
-if(MBGL_WITH_QT)
- find_package(Qt5Core REQUIRED)
- set(CMAKE_AUTOMOC ON)
- set(CMAKE_AUTORCC ON)
-endif()
-
-add_library(
- mbgl-core STATIC
- ${MBGL_ROOT}/include/mbgl/actor/actor.hpp
- ${MBGL_ROOT}/include/mbgl/actor/actor_ref.hpp
- ${MBGL_ROOT}/include/mbgl/actor/aspiring_actor.hpp
- ${MBGL_ROOT}/include/mbgl/actor/established_actor.hpp
- ${MBGL_ROOT}/include/mbgl/actor/mailbox.hpp
- ${MBGL_ROOT}/include/mbgl/actor/message.hpp
- ${MBGL_ROOT}/include/mbgl/actor/scheduler.hpp
- ${MBGL_ROOT}/include/mbgl/annotation/annotation.hpp
- ${MBGL_ROOT}/include/mbgl/gfx/backend_scope.hpp
- ${MBGL_ROOT}/include/mbgl/gfx/renderable.hpp
- ${MBGL_ROOT}/include/mbgl/gfx/renderer_backend.hpp
- ${MBGL_ROOT}/include/mbgl/gfx/rendering_stats.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/background_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/circle_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/fill_extrusion_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/fill_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/heatmap_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/hillshade_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/layer_manager.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/line_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/raster_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/layermanager/symbol_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/map/bound_options.hpp
- ${MBGL_ROOT}/include/mbgl/map/camera.hpp
- ${MBGL_ROOT}/include/mbgl/map/change.hpp
- ${MBGL_ROOT}/include/mbgl/map/map.hpp
- ${MBGL_ROOT}/include/mbgl/map/map_observer.hpp
- ${MBGL_ROOT}/include/mbgl/map/map_options.hpp
- ${MBGL_ROOT}/include/mbgl/map/mode.hpp
- ${MBGL_ROOT}/include/mbgl/map/projection_mode.hpp
- ${MBGL_ROOT}/include/mbgl/math/clamp.hpp
- ${MBGL_ROOT}/include/mbgl/math/log2.hpp
- ${MBGL_ROOT}/include/mbgl/math/minmax.hpp
- ${MBGL_ROOT}/include/mbgl/math/wrap.hpp
- ${MBGL_ROOT}/include/mbgl/platform/settings.hpp
- ${MBGL_ROOT}/include/mbgl/platform/thread.hpp
- ${MBGL_ROOT}/include/mbgl/renderer/query.hpp
- ${MBGL_ROOT}/include/mbgl/renderer/renderer.hpp
- ${MBGL_ROOT}/include/mbgl/renderer/renderer_frontend.hpp
- ${MBGL_ROOT}/include/mbgl/renderer/renderer_observer.hpp
- ${MBGL_ROOT}/include/mbgl/renderer/renderer_state.hpp
- ${MBGL_ROOT}/include/mbgl/storage/database_file_source.hpp
- ${MBGL_ROOT}/include/mbgl/storage/file_source.hpp
- ${MBGL_ROOT}/include/mbgl/storage/file_source_manager.hpp
- ${MBGL_ROOT}/include/mbgl/storage/network_status.hpp
- ${MBGL_ROOT}/include/mbgl/storage/offline.hpp
- ${MBGL_ROOT}/include/mbgl/storage/online_file_source.hpp
- ${MBGL_ROOT}/include/mbgl/storage/resource.hpp
- ${MBGL_ROOT}/include/mbgl/storage/resource_options.hpp
- ${MBGL_ROOT}/include/mbgl/storage/resource_transform.hpp
- ${MBGL_ROOT}/include/mbgl/storage/response.hpp
- ${MBGL_ROOT}/include/mbgl/style/color_ramp_property_value.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/color_ramp_property_value.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/constant.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/coordinate.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/custom_geometry_source_options.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/filter.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/function.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/geojson.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/geojson_options.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/get_json_type.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/light.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/position.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/property_value.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/source.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/tileset.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion/transition_options.hpp
- ${MBGL_ROOT}/include/mbgl/style/conversion_impl.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/assertion.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/at.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/boolean_operator.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/case.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/check_subtype.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/coalesce.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/coercion.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/collator.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/collator_expression.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/comparison.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/compound_expression.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/dsl.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/error.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/expression.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/find_zoom_curve.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/format_expression.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/format_section_override.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/formatted.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/get_covering_stops.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/image.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/image_expression.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/interpolate.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/interpolator.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/is_constant.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/is_expression.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/length.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/let.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/literal.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/match.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/number_format.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/parsing_context.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/step.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/type.hpp
- ${MBGL_ROOT}/include/mbgl/style/expression/value.hpp
- ${MBGL_ROOT}/include/mbgl/style/filter.hpp
- ${MBGL_ROOT}/include/mbgl/style/image.hpp
- ${MBGL_ROOT}/include/mbgl/style/layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layer_properties.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/background_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/circle_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/fill_extrusion_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/fill_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/heatmap_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/hillshade_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/line_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/raster_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/layers/symbol_layer.hpp
- ${MBGL_ROOT}/include/mbgl/style/light.hpp
- ${MBGL_ROOT}/include/mbgl/style/position.hpp
- ${MBGL_ROOT}/include/mbgl/style/property_expression.hpp
- ${MBGL_ROOT}/include/mbgl/style/property_value.hpp
- ${MBGL_ROOT}/include/mbgl/style/source.hpp
- ${MBGL_ROOT}/include/mbgl/style/sources/custom_geometry_source.hpp
- ${MBGL_ROOT}/include/mbgl/style/sources/geojson_source.hpp
- ${MBGL_ROOT}/include/mbgl/style/sources/image_source.hpp
- ${MBGL_ROOT}/include/mbgl/style/sources/raster_dem_source.hpp
- ${MBGL_ROOT}/include/mbgl/style/sources/raster_source.hpp
- ${MBGL_ROOT}/include/mbgl/style/sources/vector_source.hpp
- ${MBGL_ROOT}/include/mbgl/style/style.hpp
- ${MBGL_ROOT}/include/mbgl/style/style_property.hpp
- ${MBGL_ROOT}/include/mbgl/style/transition_options.hpp
- ${MBGL_ROOT}/include/mbgl/style/types.hpp
- ${MBGL_ROOT}/include/mbgl/style/undefined.hpp
- ${MBGL_ROOT}/include/mbgl/tile/tile_id.hpp
- ${MBGL_ROOT}/include/mbgl/tile/tile_necessity.hpp
- ${MBGL_ROOT}/include/mbgl/util/async_request.hpp
- ${MBGL_ROOT}/include/mbgl/util/async_task.hpp
- ${MBGL_ROOT}/include/mbgl/util/char_array_buffer.hpp
- ${MBGL_ROOT}/include/mbgl/util/chrono.hpp
- ${MBGL_ROOT}/include/mbgl/util/color.hpp
- ${MBGL_ROOT}/include/mbgl/util/compression.hpp
- ${MBGL_ROOT}/include/mbgl/util/constants.hpp
- ${MBGL_ROOT}/include/mbgl/util/convert.hpp
- ${MBGL_ROOT}/include/mbgl/util/enum.hpp
- ${MBGL_ROOT}/include/mbgl/util/event.hpp
- ${MBGL_ROOT}/include/mbgl/util/exception.hpp
- ${MBGL_ROOT}/include/mbgl/util/expected.hpp
- ${MBGL_ROOT}/include/mbgl/util/feature.hpp
- ${MBGL_ROOT}/include/mbgl/util/font_stack.hpp
- ${MBGL_ROOT}/include/mbgl/util/geo.hpp
- ${MBGL_ROOT}/include/mbgl/util/geojson.hpp
- ${MBGL_ROOT}/include/mbgl/util/geometry.hpp
- ${MBGL_ROOT}/include/mbgl/util/ignore.hpp
- ${MBGL_ROOT}/include/mbgl/util/image.hpp
- ${MBGL_ROOT}/include/mbgl/util/immutable.hpp
- ${MBGL_ROOT}/include/mbgl/util/indexed_tuple.hpp
- ${MBGL_ROOT}/include/mbgl/util/interpolate.hpp
- ${MBGL_ROOT}/include/mbgl/util/logging.hpp
- ${MBGL_ROOT}/include/mbgl/util/noncopyable.hpp
- ${MBGL_ROOT}/include/mbgl/util/optional.hpp
- ${MBGL_ROOT}/include/mbgl/util/platform.hpp
- ${MBGL_ROOT}/include/mbgl/util/premultiply.hpp
- ${MBGL_ROOT}/include/mbgl/util/projection.hpp
- ${MBGL_ROOT}/include/mbgl/util/range.hpp
- ${MBGL_ROOT}/include/mbgl/util/run_loop.hpp
- ${MBGL_ROOT}/include/mbgl/util/size.hpp
- ${MBGL_ROOT}/include/mbgl/util/string.hpp
- ${MBGL_ROOT}/include/mbgl/util/thread.hpp
- ${MBGL_ROOT}/include/mbgl/util/tileset.hpp
- ${MBGL_ROOT}/include/mbgl/util/timer.hpp
- ${MBGL_ROOT}/include/mbgl/util/traits.hpp
- ${MBGL_ROOT}/include/mbgl/util/type_list.hpp
- ${MBGL_ROOT}/include/mbgl/util/unitbezier.hpp
- ${MBGL_ROOT}/include/mbgl/util/util.hpp
- ${MBGL_ROOT}/include/mbgl/util/variant.hpp
- ${MBGL_ROOT}/include/mbgl/util/work_request.hpp
- ${MBGL_ROOT}/include/mbgl/util/work_task.hpp
- ${MBGL_ROOT}/include/mbgl/util/work_task_impl.hpp
- ${MBGL_ROOT}/src/csscolorparser/csscolorparser.cpp
- ${MBGL_ROOT}/src/csscolorparser/csscolorparser.hpp
- ${MBGL_ROOT}/src/mbgl/actor/mailbox.cpp
- ${MBGL_ROOT}/src/mbgl/actor/scheduler.cpp
- ${MBGL_ROOT}/src/mbgl/algorithm/update_renderables.hpp
- ${MBGL_ROOT}/src/mbgl/algorithm/update_tile_masks.hpp
- ${MBGL_ROOT}/src/mbgl/annotation/annotation_manager.cpp
- ${MBGL_ROOT}/src/mbgl/annotation/annotation_manager.hpp
- ${MBGL_ROOT}/src/mbgl/annotation/annotation_source.cpp
- ${MBGL_ROOT}/src/mbgl/annotation/annotation_source.hpp
- ${MBGL_ROOT}/src/mbgl/annotation/annotation_tile.cpp
- ${MBGL_ROOT}/src/mbgl/annotation/annotation_tile.hpp
- ${MBGL_ROOT}/src/mbgl/annotation/fill_annotation_impl.cpp
- ${MBGL_ROOT}/src/mbgl/annotation/fill_annotation_impl.hpp
- ${MBGL_ROOT}/src/mbgl/annotation/line_annotation_impl.cpp
- ${MBGL_ROOT}/src/mbgl/annotation/line_annotation_impl.hpp
- ${MBGL_ROOT}/src/mbgl/annotation/render_annotation_source.cpp
- ${MBGL_ROOT}/src/mbgl/annotation/render_annotation_source.hpp
- ${MBGL_ROOT}/src/mbgl/annotation/shape_annotation_impl.cpp
- ${MBGL_ROOT}/src/mbgl/annotation/shape_annotation_impl.hpp
- ${MBGL_ROOT}/src/mbgl/annotation/symbol_annotation_impl.cpp
- ${MBGL_ROOT}/src/mbgl/annotation/symbol_annotation_impl.hpp
- ${MBGL_ROOT}/src/mbgl/geometry/anchor.hpp
- ${MBGL_ROOT}/src/mbgl/geometry/debug_font_data.hpp
- ${MBGL_ROOT}/src/mbgl/geometry/dem_data.cpp
- ${MBGL_ROOT}/src/mbgl/geometry/dem_data.hpp
- ${MBGL_ROOT}/src/mbgl/geometry/feature_index.cpp
- ${MBGL_ROOT}/src/mbgl/geometry/feature_index.hpp
- ${MBGL_ROOT}/src/mbgl/geometry/line_atlas.cpp
- ${MBGL_ROOT}/src/mbgl/geometry/line_atlas.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/attribute.cpp
- ${MBGL_ROOT}/src/mbgl/gfx/attribute.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/color_mode.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/command_encoder.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/context.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/cull_face_mode.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/debug_group.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/depth_mode.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/draw_mode.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/draw_scope.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/index_buffer.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/index_vector.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/offscreen_texture.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/program.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/render_pass.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/renderbuffer.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/renderer_backend.cpp
- ${MBGL_ROOT}/src/mbgl/gfx/rendering_stats.cpp
- ${MBGL_ROOT}/src/mbgl/gfx/stencil_mode.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/texture.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/types.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/uniform.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/upload_pass.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/vertex_buffer.hpp
- ${MBGL_ROOT}/src/mbgl/gfx/vertex_vector.hpp
- ${MBGL_ROOT}/src/mbgl/layermanager/background_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/circle_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/fill_extrusion_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/fill_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/heatmap_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/hillshade_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/layer_manager.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/line_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/raster_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layermanager/symbol_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/layout/clip_lines.cpp
- ${MBGL_ROOT}/src/mbgl/layout/clip_lines.hpp
- ${MBGL_ROOT}/src/mbgl/layout/layout.hpp
- ${MBGL_ROOT}/src/mbgl/layout/merge_lines.cpp
- ${MBGL_ROOT}/src/mbgl/layout/merge_lines.hpp
- ${MBGL_ROOT}/src/mbgl/layout/pattern_layout.hpp
- ${MBGL_ROOT}/src/mbgl/layout/symbol_feature.hpp
- ${MBGL_ROOT}/src/mbgl/layout/symbol_instance.cpp
- ${MBGL_ROOT}/src/mbgl/layout/symbol_instance.hpp
- ${MBGL_ROOT}/src/mbgl/layout/symbol_layout.cpp
- ${MBGL_ROOT}/src/mbgl/layout/symbol_layout.hpp
- ${MBGL_ROOT}/src/mbgl/layout/symbol_projection.cpp
- ${MBGL_ROOT}/src/mbgl/layout/symbol_projection.hpp
- ${MBGL_ROOT}/src/mbgl/map/map.cpp
- ${MBGL_ROOT}/src/mbgl/map/map_impl.cpp
- ${MBGL_ROOT}/src/mbgl/map/map_impl.hpp
- ${MBGL_ROOT}/src/mbgl/map/map_options.cpp
- ${MBGL_ROOT}/src/mbgl/map/transform.cpp
- ${MBGL_ROOT}/src/mbgl/map/transform.hpp
- ${MBGL_ROOT}/src/mbgl/map/transform_state.cpp
- ${MBGL_ROOT}/src/mbgl/map/transform_state.hpp
- ${MBGL_ROOT}/src/mbgl/map/zoom_history.hpp
- ${MBGL_ROOT}/src/mbgl/math/log2.cpp
- ${MBGL_ROOT}/src/mbgl/platform/settings.cpp
- ${MBGL_ROOT}/src/mbgl/programs/attributes.hpp
- ${MBGL_ROOT}/src/mbgl/programs/background_pattern_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/background_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/background_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/circle_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/circle_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/clipping_mask_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/clipping_mask_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/collision_box_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/collision_box_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/collision_circle_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/debug_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/debug_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/fill_extrusion_pattern_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/fill_extrusion_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/fill_extrusion_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/fill_outline_pattern_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/fill_outline_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/fill_pattern_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/fill_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/fill_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/heatmap_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/heatmap_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/heatmap_texture_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/heatmap_texture_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/hillshade_prepare_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/hillshade_prepare_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/hillshade_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/hillshade_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/line_gradient_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/line_pattern_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/line_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/line_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/line_sdf_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/program_parameters.cpp
- ${MBGL_ROOT}/src/mbgl/programs/program_parameters.hpp
- ${MBGL_ROOT}/src/mbgl/programs/programs.cpp
- ${MBGL_ROOT}/src/mbgl/programs/programs.hpp
- ${MBGL_ROOT}/src/mbgl/programs/raster_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/raster_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/segment.hpp
- ${MBGL_ROOT}/src/mbgl/programs/symbol_icon_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/symbol_program.cpp
- ${MBGL_ROOT}/src/mbgl/programs/symbol_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/symbol_sdf_icon_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/symbol_sdf_text_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/symbol_text_and_icon_program.hpp
- ${MBGL_ROOT}/src/mbgl/programs/textures.hpp
- ${MBGL_ROOT}/src/mbgl/programs/uniforms.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/backend_scope.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/bucket_parameters.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/bucket_parameters.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/circle_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/circle_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/debug_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/debug_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/fill_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/fill_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/fill_extrusion_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/fill_extrusion_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/heatmap_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/heatmap_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/hillshade_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/hillshade_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/line_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/line_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/raster_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/raster_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/symbol_bucket.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/buckets/symbol_bucket.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/cross_faded_property_evaluator.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/cross_faded_property_evaluator.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/data_driven_property_evaluator.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/group_by_layout.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/group_by_layout.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/image_atlas.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/image_atlas.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/image_manager.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/image_manager.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/image_manager_observer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_background_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_background_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_circle_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_circle_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_fill_extrusion_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_fill_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_fill_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_heatmap_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_heatmap_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_hillshade_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_hillshade_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_line_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_line_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_raster_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_raster_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_symbol_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/layers/render_symbol_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/paint_parameters.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/paint_parameters.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/paint_property_binder.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/paint_property_statistics.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/pattern_atlas.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/pattern_atlas.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/possibly_evaluated_property_value.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/property_evaluation_parameters.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/property_evaluator.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_layer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_layer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_light.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_light.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_orchestrator.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_orchestrator.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_pass.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_source.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_source.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_source_observer.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_static_data.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_static_data.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_tile.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_tile.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/render_tree.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/renderer.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/renderer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/renderer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/renderer_state.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_custom_geometry_source.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_custom_geometry_source.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_geojson_source.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_geojson_source.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_image_source.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_image_source.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_raster_dem_source.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_raster_dem_source.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_raster_source.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_raster_source.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_tile_source.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_tile_source.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_vector_source.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/sources/render_vector_source.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/source_state.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/source_state.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/style_diff.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/style_diff.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/tile_mask.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/tile_parameters.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/tile_pyramid.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/tile_pyramid.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/tile_render_data.cpp
- ${MBGL_ROOT}/src/mbgl/renderer/tile_render_data.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/transition_parameters.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/update_parameters.hpp
- ${MBGL_ROOT}/src/mbgl/renderer/upload_parameters.hpp
- ${MBGL_ROOT}/src/mbgl/sprite/sprite_loader.cpp
- ${MBGL_ROOT}/src/mbgl/sprite/sprite_loader.hpp
- ${MBGL_ROOT}/src/mbgl/sprite/sprite_loader_observer.hpp
- ${MBGL_ROOT}/src/mbgl/sprite/sprite_loader_worker.cpp
- ${MBGL_ROOT}/src/mbgl/sprite/sprite_loader_worker.hpp
- ${MBGL_ROOT}/src/mbgl/sprite/sprite_parser.cpp
- ${MBGL_ROOT}/src/mbgl/sprite/sprite_parser.hpp
- ${MBGL_ROOT}/src/mbgl/storage/asset_file_source.hpp
- ${MBGL_ROOT}/src/mbgl/storage/file_source_manager.cpp
- ${MBGL_ROOT}/src/mbgl/storage/http_file_source.hpp
- ${MBGL_ROOT}/src/mbgl/storage/local_file_source.hpp
- ${MBGL_ROOT}/src/mbgl/storage/main_resource_loader.hpp
- ${MBGL_ROOT}/src/mbgl/storage/network_status.cpp
- ${MBGL_ROOT}/src/mbgl/storage/resource.cpp
- ${MBGL_ROOT}/src/mbgl/storage/resource_options.cpp
- ${MBGL_ROOT}/src/mbgl/storage/resource_transform.cpp
- ${MBGL_ROOT}/src/mbgl/storage/response.cpp
- ${MBGL_ROOT}/src/mbgl/style/collection.hpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/color_ramp_property_value.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/constant.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/coordinate.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/custom_geometry_source_options.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/filter.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/function.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/geojson.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/geojson_options.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/get_json_type.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/json.hpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/light.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/position.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/property_value.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/source.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/stringify.hpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/tileset.cpp
- ${MBGL_ROOT}/src/mbgl/style/conversion/transition_options.cpp
- ${MBGL_ROOT}/src/mbgl/style/custom_tile_loader.cpp
- ${MBGL_ROOT}/src/mbgl/style/custom_tile_loader.hpp
- ${MBGL_ROOT}/src/mbgl/style/expression/assertion.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/at.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/boolean_operator.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/case.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/check_subtype.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/coalesce.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/coercion.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/collator.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/collator_expression.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/comparison.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/compound_expression.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/dsl.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/dsl_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/expression/expression.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/find_zoom_curve.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/format_expression.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/formatted.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/get_covering_stops.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/image.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/image_expression.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/interpolate.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/is_constant.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/is_expression.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/length.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/let.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/literal.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/match.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/number_format.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/parsing_context.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/step.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/util.cpp
- ${MBGL_ROOT}/src/mbgl/style/expression/util.hpp
- ${MBGL_ROOT}/src/mbgl/style/expression/value.cpp
- ${MBGL_ROOT}/src/mbgl/style/filter.cpp
- ${MBGL_ROOT}/src/mbgl/style/image.cpp
- ${MBGL_ROOT}/src/mbgl/style/image_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/image_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layer_observer.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/background_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/background_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/background_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/background_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/background_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/circle_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/circle_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/circle_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/circle_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/circle_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_extrusion_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_extrusion_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_extrusion_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_extrusion_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_extrusion_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/fill_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/heatmap_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/heatmap_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/heatmap_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/heatmap_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/heatmap_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/hillshade_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/hillshade_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/hillshade_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/hillshade_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/hillshade_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/line_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/line_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/line_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/line_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/line_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/raster_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/raster_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/raster_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/raster_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/raster_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/symbol_layer.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/symbol_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/symbol_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/layers/symbol_layer_properties.cpp
- ${MBGL_ROOT}/src/mbgl/style/layers/symbol_layer_properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/layout_property.hpp
- ${MBGL_ROOT}/src/mbgl/style/light.cpp
- ${MBGL_ROOT}/src/mbgl/style/light_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/light_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/light_observer.hpp
- ${MBGL_ROOT}/src/mbgl/style/observer.hpp
- ${MBGL_ROOT}/src/mbgl/style/paint_property.hpp
- ${MBGL_ROOT}/src/mbgl/style/parser.cpp
- ${MBGL_ROOT}/src/mbgl/style/parser.hpp
- ${MBGL_ROOT}/src/mbgl/style/properties.hpp
- ${MBGL_ROOT}/src/mbgl/style/property_expression.cpp
- ${MBGL_ROOT}/src/mbgl/style/rapidjson_conversion.hpp
- ${MBGL_ROOT}/src/mbgl/style/source.cpp
- ${MBGL_ROOT}/src/mbgl/style/source_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/source_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/source_observer.hpp
- ${MBGL_ROOT}/src/mbgl/style/sources/custom_geometry_source.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/custom_geometry_source_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/custom_geometry_source_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/sources/geojson_source.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/geojson_source_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/geojson_source_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/sources/image_source.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/image_source_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/image_source_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/sources/raster_dem_source.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/raster_source.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/raster_source_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/raster_source_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/sources/vector_source.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/vector_source_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/sources/vector_source_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/style.cpp
- ${MBGL_ROOT}/src/mbgl/style/style_impl.cpp
- ${MBGL_ROOT}/src/mbgl/style/style_impl.hpp
- ${MBGL_ROOT}/src/mbgl/style/types.cpp
- ${MBGL_ROOT}/src/mbgl/text/bidi.hpp
- ${MBGL_ROOT}/src/mbgl/text/check_max_angle.cpp
- ${MBGL_ROOT}/src/mbgl/text/check_max_angle.hpp
- ${MBGL_ROOT}/src/mbgl/text/collision_feature.cpp
- ${MBGL_ROOT}/src/mbgl/text/collision_feature.hpp
- ${MBGL_ROOT}/src/mbgl/text/collision_index.cpp
- ${MBGL_ROOT}/src/mbgl/text/collision_index.hpp
- ${MBGL_ROOT}/src/mbgl/text/cross_tile_symbol_index.cpp
- ${MBGL_ROOT}/src/mbgl/text/cross_tile_symbol_index.hpp
- ${MBGL_ROOT}/src/mbgl/text/get_anchors.cpp
- ${MBGL_ROOT}/src/mbgl/text/get_anchors.hpp
- ${MBGL_ROOT}/src/mbgl/text/glyph.cpp
- ${MBGL_ROOT}/src/mbgl/text/glyph.hpp
- ${MBGL_ROOT}/src/mbgl/text/glyph_atlas.cpp
- ${MBGL_ROOT}/src/mbgl/text/glyph_atlas.hpp
- ${MBGL_ROOT}/src/mbgl/text/glyph_manager.cpp
- ${MBGL_ROOT}/src/mbgl/text/glyph_manager.hpp
- ${MBGL_ROOT}/src/mbgl/text/glyph_manager_observer.hpp
- ${MBGL_ROOT}/src/mbgl/text/glyph_pbf.cpp
- ${MBGL_ROOT}/src/mbgl/text/glyph_pbf.hpp
- ${MBGL_ROOT}/src/mbgl/text/glyph_range.hpp
- ${MBGL_ROOT}/src/mbgl/text/language_tag.cpp
- ${MBGL_ROOT}/src/mbgl/text/language_tag.hpp
- ${MBGL_ROOT}/src/mbgl/text/local_glyph_rasterizer.hpp
- ${MBGL_ROOT}/src/mbgl/text/placement.cpp
- ${MBGL_ROOT}/src/mbgl/text/placement.hpp
- ${MBGL_ROOT}/src/mbgl/text/quads.cpp
- ${MBGL_ROOT}/src/mbgl/text/quads.hpp
- ${MBGL_ROOT}/src/mbgl/text/shaping.cpp
- ${MBGL_ROOT}/src/mbgl/text/shaping.hpp
- ${MBGL_ROOT}/src/mbgl/text/tagged_string.cpp
- ${MBGL_ROOT}/src/mbgl/text/tagged_string.hpp
- ${MBGL_ROOT}/src/mbgl/tile/custom_geometry_tile.cpp
- ${MBGL_ROOT}/src/mbgl/tile/custom_geometry_tile.hpp
- ${MBGL_ROOT}/src/mbgl/tile/geojson_tile.cpp
- ${MBGL_ROOT}/src/mbgl/tile/geojson_tile.hpp
- ${MBGL_ROOT}/src/mbgl/tile/geojson_tile_data.hpp
- ${MBGL_ROOT}/src/mbgl/tile/geometry_tile.cpp
- ${MBGL_ROOT}/src/mbgl/tile/geometry_tile.hpp
- ${MBGL_ROOT}/src/mbgl/tile/geometry_tile_data.cpp
- ${MBGL_ROOT}/src/mbgl/tile/geometry_tile_data.hpp
- ${MBGL_ROOT}/src/mbgl/tile/geometry_tile_worker.cpp
- ${MBGL_ROOT}/src/mbgl/tile/geometry_tile_worker.hpp
- ${MBGL_ROOT}/src/mbgl/tile/raster_dem_tile.cpp
- ${MBGL_ROOT}/src/mbgl/tile/raster_dem_tile.hpp
- ${MBGL_ROOT}/src/mbgl/tile/raster_dem_tile_worker.cpp
- ${MBGL_ROOT}/src/mbgl/tile/raster_dem_tile_worker.hpp
- ${MBGL_ROOT}/src/mbgl/tile/raster_tile.cpp
- ${MBGL_ROOT}/src/mbgl/tile/raster_tile.hpp
- ${MBGL_ROOT}/src/mbgl/tile/raster_tile_worker.cpp
- ${MBGL_ROOT}/src/mbgl/tile/raster_tile_worker.hpp
- ${MBGL_ROOT}/src/mbgl/tile/tile.cpp
- ${MBGL_ROOT}/src/mbgl/tile/tile.hpp
- ${MBGL_ROOT}/src/mbgl/tile/tile_cache.cpp
- ${MBGL_ROOT}/src/mbgl/tile/tile_cache.hpp
- ${MBGL_ROOT}/src/mbgl/tile/tile_id_hash.cpp
- ${MBGL_ROOT}/src/mbgl/tile/tile_id_io.cpp
- ${MBGL_ROOT}/src/mbgl/tile/tile_loader.hpp
- ${MBGL_ROOT}/src/mbgl/tile/tile_loader_impl.hpp
- ${MBGL_ROOT}/src/mbgl/tile/tile_observer.hpp
- ${MBGL_ROOT}/src/mbgl/tile/vector_tile.cpp
- ${MBGL_ROOT}/src/mbgl/tile/vector_tile.hpp
- ${MBGL_ROOT}/src/mbgl/tile/vector_tile_data.cpp
- ${MBGL_ROOT}/src/mbgl/tile/vector_tile_data.hpp
- ${MBGL_ROOT}/src/mbgl/util/chrono.cpp
- ${MBGL_ROOT}/src/mbgl/util/color.cpp
- ${MBGL_ROOT}/src/mbgl/util/constants.cpp
- ${MBGL_ROOT}/src/mbgl/util/convert.cpp
- ${MBGL_ROOT}/src/mbgl/util/dtoa.cpp
- ${MBGL_ROOT}/src/mbgl/util/dtoa.hpp
- ${MBGL_ROOT}/src/mbgl/util/event.cpp
- ${MBGL_ROOT}/src/mbgl/util/font_stack.cpp
- ${MBGL_ROOT}/src/mbgl/util/geo.cpp
- ${MBGL_ROOT}/src/mbgl/util/geojson_impl.cpp
- ${MBGL_ROOT}/src/mbgl/util/grid_index.cpp
- ${MBGL_ROOT}/src/mbgl/util/grid_index.hpp
- ${MBGL_ROOT}/src/mbgl/util/hash.hpp
- ${MBGL_ROOT}/src/mbgl/util/http_header.cpp
- ${MBGL_ROOT}/src/mbgl/util/http_header.hpp
- ${MBGL_ROOT}/src/mbgl/util/http_timeout.cpp
- ${MBGL_ROOT}/src/mbgl/util/http_timeout.hpp
- ${MBGL_ROOT}/src/mbgl/util/i18n.cpp
- ${MBGL_ROOT}/src/mbgl/util/i18n.hpp
- ${MBGL_ROOT}/src/mbgl/util/id.cpp
- ${MBGL_ROOT}/src/mbgl/util/id.hpp
- ${MBGL_ROOT}/src/mbgl/util/interpolate.cpp
- ${MBGL_ROOT}/src/mbgl/util/intersection_tests.cpp
- ${MBGL_ROOT}/src/mbgl/util/intersection_tests.hpp
- ${MBGL_ROOT}/src/mbgl/util/io.cpp
- ${MBGL_ROOT}/src/mbgl/util/io.hpp
- ${MBGL_ROOT}/src/mbgl/util/literal.hpp
- ${MBGL_ROOT}/src/mbgl/util/logging.cpp
- ${MBGL_ROOT}/src/mbgl/util/longest_common_subsequence.hpp
- ${MBGL_ROOT}/src/mbgl/util/mapbox.cpp
- ${MBGL_ROOT}/src/mbgl/util/mapbox.hpp
- ${MBGL_ROOT}/src/mbgl/util/mat2.cpp
- ${MBGL_ROOT}/src/mbgl/util/mat2.hpp
- ${MBGL_ROOT}/src/mbgl/util/mat3.cpp
- ${MBGL_ROOT}/src/mbgl/util/mat3.hpp
- ${MBGL_ROOT}/src/mbgl/util/mat4.cpp
- ${MBGL_ROOT}/src/mbgl/util/mat4.hpp
- ${MBGL_ROOT}/src/mbgl/util/math.hpp
- ${MBGL_ROOT}/src/mbgl/util/premultiply.cpp
- ${MBGL_ROOT}/src/mbgl/util/rapidjson.cpp
- ${MBGL_ROOT}/src/mbgl/util/rapidjson.hpp
- ${MBGL_ROOT}/src/mbgl/util/rect.hpp
- ${MBGL_ROOT}/src/mbgl/util/std.hpp
- ${MBGL_ROOT}/src/mbgl/util/stopwatch.cpp
- ${MBGL_ROOT}/src/mbgl/util/stopwatch.hpp
- ${MBGL_ROOT}/src/mbgl/util/string.cpp
- ${MBGL_ROOT}/src/mbgl/util/thread.cpp
- ${MBGL_ROOT}/src/mbgl/util/thread_local.hpp
- ${MBGL_ROOT}/src/mbgl/util/thread_pool.cpp
- ${MBGL_ROOT}/src/mbgl/util/thread_pool.hpp
- ${MBGL_ROOT}/src/mbgl/util/tile_coordinate.hpp
- ${MBGL_ROOT}/src/mbgl/util/tile_cover.cpp
- ${MBGL_ROOT}/src/mbgl/util/tile_cover.hpp
- ${MBGL_ROOT}/src/mbgl/util/tile_cover_impl.cpp
- ${MBGL_ROOT}/src/mbgl/util/tile_cover_impl.hpp
- ${MBGL_ROOT}/src/mbgl/util/tile_range.hpp
- ${MBGL_ROOT}/src/mbgl/util/tiny_sdf.cpp
- ${MBGL_ROOT}/src/mbgl/util/tiny_sdf.hpp
- ${MBGL_ROOT}/src/mbgl/util/token.hpp
- ${MBGL_ROOT}/src/mbgl/util/url.cpp
- ${MBGL_ROOT}/src/mbgl/util/url.hpp
- ${MBGL_ROOT}/src/mbgl/util/utf.hpp
- ${MBGL_ROOT}/src/mbgl/util/version.cpp
- ${MBGL_ROOT}/src/mbgl/util/version.hpp
- ${MBGL_ROOT}/src/mbgl/util/work_request.cpp
- ${MBGL_ROOT}/src/parsedate/parsedate.cpp
- ${MBGL_ROOT}/src/parsedate/parsedate.hpp
-)
-
-if(MBGL_WITH_OPENGL)
- message("-- Configuring GL-Native with OpenGL renderer backend")
- target_compile_definitions(
- mbgl-core
- PRIVATE MBGL_RENDER_BACKEND_OPENGL=1
- )
- target_sources(
- mbgl-core
- PRIVATE
- ${MBGL_ROOT}/include/mbgl/gfx/backend.hpp
- ${MBGL_ROOT}/include/mbgl/gl/custom_layer.hpp
- ${MBGL_ROOT}/include/mbgl/gl/custom_layer_factory.hpp
- ${MBGL_ROOT}/include/mbgl/gl/renderable_resource.hpp
- ${MBGL_ROOT}/include/mbgl/gl/renderer_backend.hpp
- ${MBGL_ROOT}/include/mbgl/platform/gl_functions.hpp
- ${MBGL_ROOT}/src/mbgl/gl/attribute.cpp
- ${MBGL_ROOT}/src/mbgl/gl/attribute.hpp
- ${MBGL_ROOT}/src/mbgl/gl/command_encoder.cpp
- ${MBGL_ROOT}/src/mbgl/gl/command_encoder.hpp
- ${MBGL_ROOT}/src/mbgl/gl/context.cpp
- ${MBGL_ROOT}/src/mbgl/gl/context.hpp
- ${MBGL_ROOT}/src/mbgl/gl/custom_layer.cpp
- ${MBGL_ROOT}/src/mbgl/gl/custom_layer_factory.cpp
- ${MBGL_ROOT}/src/mbgl/gl/custom_layer_impl.cpp
- ${MBGL_ROOT}/src/mbgl/gl/custom_layer_impl.hpp
- ${MBGL_ROOT}/src/mbgl/gl/debugging_extension.cpp
- ${MBGL_ROOT}/src/mbgl/gl/debugging_extension.hpp
- ${MBGL_ROOT}/src/mbgl/gl/defines.hpp
- ${MBGL_ROOT}/src/mbgl/gl/draw_scope_resource.hpp
- ${MBGL_ROOT}/src/mbgl/gl/enum.cpp
- ${MBGL_ROOT}/src/mbgl/gl/enum.hpp
- ${MBGL_ROOT}/src/mbgl/gl/extension.hpp
- ${MBGL_ROOT}/src/mbgl/gl/framebuffer.hpp
- ${MBGL_ROOT}/src/mbgl/gl/index_buffer_resource.cpp
- ${MBGL_ROOT}/src/mbgl/gl/index_buffer_resource.hpp
- ${MBGL_ROOT}/src/mbgl/gl/object.cpp
- ${MBGL_ROOT}/src/mbgl/gl/object.hpp
- ${MBGL_ROOT}/src/mbgl/gl/offscreen_texture.cpp
- ${MBGL_ROOT}/src/mbgl/gl/offscreen_texture.hpp
- ${MBGL_ROOT}/src/mbgl/gl/program.hpp
- ${MBGL_ROOT}/src/mbgl/gl/render_pass.cpp
- ${MBGL_ROOT}/src/mbgl/gl/render_pass.hpp
- ${MBGL_ROOT}/src/mbgl/gl/renderbuffer_resource.hpp
- ${MBGL_ROOT}/src/mbgl/gl/renderer_backend.cpp
- ${MBGL_ROOT}/src/mbgl/gl/render_custom_layer.cpp
- ${MBGL_ROOT}/src/mbgl/gl/render_custom_layer.hpp
- ${MBGL_ROOT}/src/mbgl/gl/state.hpp
- ${MBGL_ROOT}/src/mbgl/gl/texture.cpp
- ${MBGL_ROOT}/src/mbgl/gl/texture.hpp
- ${MBGL_ROOT}/src/mbgl/gl/texture_resource.cpp
- ${MBGL_ROOT}/src/mbgl/gl/texture_resource.hpp
- ${MBGL_ROOT}/src/mbgl/gl/types.hpp
- ${MBGL_ROOT}/src/mbgl/gl/uniform.cpp
- ${MBGL_ROOT}/src/mbgl/gl/uniform.hpp
- ${MBGL_ROOT}/src/mbgl/gl/upload_pass.cpp
- ${MBGL_ROOT}/src/mbgl/gl/upload_pass.hpp
- ${MBGL_ROOT}/src/mbgl/gl/value.cpp
- ${MBGL_ROOT}/src/mbgl/gl/value.hpp
- ${MBGL_ROOT}/src/mbgl/gl/vertex_array.cpp
- ${MBGL_ROOT}/src/mbgl/gl/vertex_array.hpp
- ${MBGL_ROOT}/src/mbgl/gl/vertex_array_extension.hpp
- ${MBGL_ROOT}/src/mbgl/gl/vertex_buffer_resource.cpp
- ${MBGL_ROOT}/src/mbgl/gl/vertex_buffer_resource.hpp
- ${MBGL_ROOT}/src/mbgl/platform/gl_functions.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/background.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/background_pattern.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/circle.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/clipping_mask.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/collision_box.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/collision_circle.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/debug.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/fill.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/fill_extrusion.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/fill_extrusion_pattern.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/fill_outline.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/fill_outline_pattern.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/fill_pattern.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/heatmap.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/heatmap_texture.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/hillshade.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/hillshade_prepare.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/line.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/line_gradient.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/line_pattern.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/line_sdf.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/preludes.hpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/raster.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/shader_source.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/shader_source.hpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/shaders.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/shaders.hpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/symbol_icon.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/symbol_sdf_icon.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/symbol_sdf_text.cpp
- ${MBGL_ROOT}/src/mbgl/programs/gl/symbol_text_and_icon.cpp
- )
-endif()
-
-if(EXISTS ${MBGL_ROOT}/.git/HEAD)
- execute_process(
- COMMAND
- git
- rev-parse
- --short=8
- HEAD
- WORKING_DIRECTORY ${MBGL_ROOT}
- OUTPUT_VARIABLE MBGL_VERSION_REV
- OUTPUT_STRIP_TRAILING_WHITESPACE
- )
-else()
- set(MBGL_VERSION_REV 00000000)
-endif()
-
-set_source_files_properties(
- ${MBGL_ROOT}/src/mbgl/util/version.cpp
- PROPERTIES
- COMPILE_DEFINITIONS
- MBGL_VERSION_REV="${MBGL_VERSION_REV}"
-)
-
-target_include_directories(
- mbgl-core
- PRIVATE ${MBGL_ROOT}/src
-)
-
-target_include_directories(
- mbgl-core
- PUBLIC ${MBGL_ROOT}/include
-)
-
-if(NOT TARGET mapbox-base)
- add_subdirectory(${PROJECT_SOURCE_DIR}/vendor/mapbox-base/mapbox)
- add_subdirectory(${PROJECT_SOURCE_DIR}/vendor/mapbox-base/extras)
-endif(NOT TARGET mapbox-base)
-
-include(${PROJECT_SOURCE_DIR}/vendor/boost.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/earcut.hpp.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/eternal.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/geojson-vt-cpp.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/polylabel.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/protozero.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/shelf-pack-cpp.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/unique_resource.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/vector-tile.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/wagyu.cmake)
-
-target_link_libraries(
- mbgl-core
- PRIVATE
- Mapbox::Base::Extras::kdbush.hpp
- Mapbox::Base::supercluster.hpp
- mbgl-compiler-options
- mbgl-vendor-boost
- mbgl-vendor-earcut.hpp
- mbgl-vendor-eternal
- mbgl-vendor-geojson-vt-cpp
- mbgl-vendor-polylabel
- mbgl-vendor-protozero
- mbgl-vendor-shelf-pack-cpp
- mbgl-vendor-unique_resource
- mbgl-vendor-vector-tile
- mbgl-vendor-wagyu
- PUBLIC
- Mapbox::Base::Extras::expected-lite
- Mapbox::Base::Extras::rapidjson
- Mapbox::Base::geojson.hpp
- Mapbox::Base::geometry.hpp
- Mapbox::Base::optional
- Mapbox::Base::typewrapper
- Mapbox::Base::value
- Mapbox::Base::variant
- Mapbox::Base::weak
-)
-
-set_property(TARGET mbgl-core PROPERTY FOLDER Core)
-
-add_library(
- Mapbox::Map ALIAS mbgl-core
-)
-
-if(MBGL_WITH_PLATFORM_EXTRAS)
- include(${MBGL_WITH_PLATFORM_EXTRAS})
-endif()
-
-if(MBGL_WITH_CORE_ONLY)
- return()
-elseif(MBGL_WITH_QT)
- include(${PROJECT_SOURCE_DIR}/platform/qt/qt.cmake)
-elseif(CMAKE_SYSTEM_NAME STREQUAL Android)
- include(${PROJECT_SOURCE_DIR}/platform/android/android.cmake)
-elseif(CMAKE_SYSTEM_NAME STREQUAL iOS)
- include(${PROJECT_SOURCE_DIR}/platform/ios/ios.cmake)
-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/macos/macos.cmake)
-else()
- message(FATAL_ERROR "Unsupported target platform: " ${CMAKE_SYSTEM_NAME})
-endif()
-
-add_subdirectory(${PROJECT_SOURCE_DIR}/test)
-add_subdirectory(${PROJECT_SOURCE_DIR}/benchmark)
-add_subdirectory(${PROJECT_SOURCE_DIR}/render-test)
diff --git a/next/README.md b/next/README.md
deleted file mode 100644
index 08f3a2cda8..0000000000
--- a/next/README.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Mapbox GL Native
-
-A library for embedding interactive, customizable vector maps into native applications on multiple platforms. It
-takes stylesheets that conform to the [Mapbox Style Specification](https://github.com/mapbox/mapbox-gl-style-spec/),
-applies them to vector tiles that conform to the [Mapbox Vector Tile Specification](https://github.com/mapbox/vector-tile-spec),
-and renders them using OpenGL. [Mapbox GL JS](https://github.com/mapbox/mapbox-gl-js) is the WebGL-based counterpart,
-designed for use on the Web.
-
-| SDK | Languages | Build status |
-| --------------------------------------------------- | ---------------------------------- | ---------------------------------------- |
-| Mapbox GL Native Core | C++14 | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) [![Coverage Status](https://codecov.io/gh/mapbox/mapbox-gl-native/branch/master/graph/badge.svg)](https://codecov.io/gh/mapbox/mapbox-gl-native) |
-| [Mapbox Maps SDK for Android](../platform/android/) | Java | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
-| [Mapbox Maps SDK for iOS](../platform/ios/) | Objective-C or Swift | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
-| [Mapbox Maps SDK for macOS](../platform/macos/) | Objective-C, Swift, or AppleScript | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
-| [node-mapbox-gl-native](../platform/node/) | Node.js | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) |
-| [Mapbox Maps SDK for Qt](../platform/qt) | C++03 | [![Circle CI build status](https://circleci.com/gh/mapbox/mapbox-gl-native.svg?style=shield)](https://circleci.com/gh/mapbox/workflows/mapbox-gl-native/tree/master) [![AppVeyor CI build status](https://ci.appveyor.com/api/projects/status/3q12kbcooc6df8uc?svg=true)](https://ci.appveyor.com/project/Mapbox/mapbox-gl-native) |
-
-[Additional Mapbox GL Native–based libraries](https://wiki.openstreetmap.org/wiki/Mapbox_GL#Libraries) for **hybrid applications** are developed outside of this repository. If your platform or hybrid application framework isn’t listed there, consider embedding [Mapbox GL JS](https://github.com/mapbox/mapbox-gl-js) using the standard Web capabilities on your platform.
-
-## License
-
-Mapbox GL Native is licensed under the [3-Clause BSD license](../LICENSE.md).
-
-## Developing
-
-The `next` directory contains the next generation buildsystem for Mapbox GL Native, based solely on CMake with the
-goal of minimizing the use of scripts, increase portability and support building Mapbox GL Native as a subdirectory
-of another CMake project. This new buildsystem is also designed to build offline, making use of pre-installed and
-vendorized dependencies. When using the build bot docker image, the build should produce the exact same results as
-the bots, making it a hermetically sealed build for Linux, Qt and Android.
-
-### Building and running tests
-
-The following command, executed from the root of this repository tree, will build Mapbox GL Native targeting your
-host architecture given that you have all the dependencies installed.
-
-```
-$ mkdir build && cd build
-$ cmake ../next
-$ make -j8
-$ make test ARGS=-V
-```
diff --git a/next/benchmark/CMakeLists.txt b/next/benchmark/CMakeLists.txt
deleted file mode 100644
index 7e783da377..0000000000
--- a/next/benchmark/CMakeLists.txt
+++ /dev/null
@@ -1,38 +0,0 @@
-add_library(
- mbgl-benchmark STATIC EXCLUDE_FROM_ALL
- ${MBGL_ROOT}/benchmark/api/query.benchmark.cpp
- ${MBGL_ROOT}/benchmark/api/render.benchmark.cpp
- ${MBGL_ROOT}/benchmark/function/camera_function.benchmark.cpp
- ${MBGL_ROOT}/benchmark/function/composite_function.benchmark.cpp
- ${MBGL_ROOT}/benchmark/function/source_function.benchmark.cpp
- ${MBGL_ROOT}/benchmark/parse/filter.benchmark.cpp
- ${MBGL_ROOT}/benchmark/parse/tile_mask.benchmark.cpp
- ${MBGL_ROOT}/benchmark/parse/vector_tile.benchmark.cpp
- ${MBGL_ROOT}/benchmark/src/mbgl/benchmark/benchmark.cpp
- ${MBGL_ROOT}/benchmark/storage/offline_database.benchmark.cpp
- ${MBGL_ROOT}/benchmark/util/dtoa.benchmark.cpp
- ${MBGL_ROOT}/benchmark/util/tilecover.benchmark.cpp
-)
-
-target_include_directories(
- mbgl-benchmark
- PRIVATE ${MBGL_ROOT}/benchmark/src ${MBGL_ROOT}/platform/default/include ${MBGL_ROOT}/src
-)
-
-target_include_directories(
- mbgl-benchmark
- PUBLIC ${MBGL_ROOT}/benchmark/include ${MBGL_ROOT}/include
-)
-
-include(${PROJECT_SOURCE_DIR}/vendor/benchmark.cmake)
-
-# Needed for testing private classes
-get_target_property(MBGL_CORE_PRIVATE_LIBRARIES mbgl-core LINK_LIBRARIES)
-
-target_link_libraries(
- mbgl-benchmark
- PRIVATE ${MBGL_CORE_PRIVATE_LIBRARIES} mbgl-vendor-benchmark mbgl-compiler-options
- PUBLIC mbgl-core
-)
-
-set_property(TARGET mbgl-benchmark PROPERTY FOLDER Core)
diff --git a/next/expression-test/CMakeLists.txt b/next/expression-test/CMakeLists.txt
deleted file mode 100644
index f7d694b054..0000000000
--- a/next/expression-test/CMakeLists.txt
+++ /dev/null
@@ -1,38 +0,0 @@
-add_executable(
- mbgl-expression-test
- ${MBGL_ROOT}/expression-test/expression_test_logger.cpp
- ${MBGL_ROOT}/expression-test/expression_test_logger.hpp
- ${MBGL_ROOT}/expression-test/expression_test_parser.cpp
- ${MBGL_ROOT}/expression-test/expression_test_parser.hpp
- ${MBGL_ROOT}/expression-test/expression_test_runner.cpp
- ${MBGL_ROOT}/expression-test/expression_test_runner.hpp
- ${MBGL_ROOT}/expression-test/test_runner_common.cpp
- ${MBGL_ROOT}/expression-test/test_runner_common.hpp
- ${MBGL_ROOT}/expression-test/main.cpp
-)
-
-target_compile_definitions(
- mbgl-expression-test
- PRIVATE TEST_RUNNER_ROOT_PATH="${MBGL_ROOT}"
-)
-
-# FIXME: Should not use core private interface
-target_include_directories(
- mbgl-expression-test
- PRIVATE ${MBGL_ROOT}/src
-)
-
-target_link_libraries(
- mbgl-expression-test
- PRIVATE
- Mapbox::Base::Extras::args
- Mapbox::Base::Extras::filesystem
- Mapbox::Base::io
- mbgl-core
-)
-
-set_property(TARGET mbgl-expression-test PROPERTY FOLDER Executables)
-
-string(RANDOM LENGTH 5 ALPHABET 0123456789 MBGL_EXPRESSION_TEST_SEED)
-
-add_test(NAME mbgl-expression-test COMMAND mbgl-expression-test -s --seed=${MBGL_EXPRESSION_TEST_SEED} WORKING_DIRECTORY ${MBGL_ROOT})
diff --git a/next/platform/android/android.cmake b/next/platform/android/android.cmake
deleted file mode 100644
index 1f77d0a29a..0000000000
--- a/next/platform/android/android.cmake
+++ /dev/null
@@ -1,483 +0,0 @@
-if(NOT ANDROID_NDK_TOOLCHAIN_INCLUDED)
- message(FATAL_ERROR "-- Toolchain file not included, see https://developer.android.com/ndk/guides/cmake")
-endif()
-
-target_compile_definitions(
- mbgl-core
- PUBLIC MBGL_USE_GLES2
-)
-
-include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/sqlite.cmake)
-
-target_compile_options(mbgl-vendor-icu PRIVATE $<$<CONFIG:Release>:-Oz> $<$<CONFIG:Release>:-Qunused-arguments> $<$<CONFIG:Release>:-flto>)
-
-target_compile_options(
- mbgl-vendor-sqlite
- PRIVATE $<$<CONFIG:Release>:-Oz> $<$<CONFIG:Release>:-Qunused-arguments> $<$<CONFIG:Release>:-flto>
-)
-
-target_compile_options(
- mbgl-compiler-options
- INTERFACE $<$<CONFIG:Release>:-Oz> $<$<CONFIG:Release>:-Qunused-arguments> $<$<CONFIG:Release>:-flto>
-)
-
-target_link_libraries(
- mbgl-compiler-options
- INTERFACE
- $<$<CONFIG:Release>:-O2>
- $<$<CONFIG:Release>:-Wl,--icf=all>
- $<$<CONFIG:Release>:-flto>
- $<$<CONFIG:Release>:-fuse-ld=gold>
-)
-
-target_sources(
- mbgl-core
- PRIVATE
- ${MBGL_ROOT}/platform/android/src/android_renderer_backend.cpp
- ${MBGL_ROOT}/platform/android/src/android_renderer_backend.hpp
- ${MBGL_ROOT}/platform/android/src/android_renderer_frontend.cpp
- ${MBGL_ROOT}/platform/android/src/android_renderer_frontend.hpp
- ${MBGL_ROOT}/platform/android/src/annotation/marker.cpp
- ${MBGL_ROOT}/platform/android/src/annotation/marker.hpp
- ${MBGL_ROOT}/platform/android/src/annotation/multi_point.hpp
- ${MBGL_ROOT}/platform/android/src/annotation/polygon.cpp
- ${MBGL_ROOT}/platform/android/src/annotation/polygon.hpp
- ${MBGL_ROOT}/platform/android/src/annotation/polyline.cpp
- ${MBGL_ROOT}/platform/android/src/annotation/polyline.hpp
- ${MBGL_ROOT}/platform/android/src/asset_manager.hpp
- ${MBGL_ROOT}/platform/android/src/asset_manager_file_source.cpp
- ${MBGL_ROOT}/platform/android/src/asset_manager_file_source.hpp
- ${MBGL_ROOT}/platform/android/src/async_task.cpp
- ${MBGL_ROOT}/platform/android/src/attach_env.cpp
- ${MBGL_ROOT}/platform/android/src/attach_env.hpp
- ${MBGL_ROOT}/platform/android/src/bitmap.cpp
- ${MBGL_ROOT}/platform/android/src/bitmap.hpp
- ${MBGL_ROOT}/platform/android/src/bitmap_factory.cpp
- ${MBGL_ROOT}/platform/android/src/bitmap_factory.hpp
- ${MBGL_ROOT}/platform/android/src/connectivity_listener.cpp
- ${MBGL_ROOT}/platform/android/src/connectivity_listener.hpp
- ${MBGL_ROOT}/platform/android/src/conversion/collection.cpp
- ${MBGL_ROOT}/platform/android/src/conversion/collection.hpp
- ${MBGL_ROOT}/platform/android/src/conversion/color.cpp
- ${MBGL_ROOT}/platform/android/src/conversion/color.hpp
- ${MBGL_ROOT}/platform/android/src/conversion/constant.cpp
- ${MBGL_ROOT}/platform/android/src/conversion/constant.hpp
- ${MBGL_ROOT}/platform/android/src/conversion/conversion.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/feature.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/feature.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/feature_collection.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/feature_collection.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/geometry.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/geometry.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/geometry_collection.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/geometry_collection.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/line_string.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/line_string.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/multi_line_string.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/multi_line_string.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/multi_point.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/multi_point.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/multi_polygon.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/multi_polygon.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/point.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/point.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/polygon.cpp
- ${MBGL_ROOT}/platform/android/src/geojson/polygon.hpp
- ${MBGL_ROOT}/platform/android/src/geojson/util.hpp
- ${MBGL_ROOT}/platform/android/src/geometry/lat_lng.cpp
- ${MBGL_ROOT}/platform/android/src/geometry/lat_lng.hpp
- ${MBGL_ROOT}/platform/android/src/geometry/lat_lng_bounds.cpp
- ${MBGL_ROOT}/platform/android/src/geometry/lat_lng_bounds.hpp
- ${MBGL_ROOT}/platform/android/src/geometry/lat_lng_quad.cpp
- ${MBGL_ROOT}/platform/android/src/geometry/lat_lng_quad.hpp
- ${MBGL_ROOT}/platform/android/src/geometry/projected_meters.cpp
- ${MBGL_ROOT}/platform/android/src/geometry/projected_meters.hpp
- ${MBGL_ROOT}/platform/android/src/gl_functions.cpp
- ${MBGL_ROOT}/platform/android/src/graphics/pointf.cpp
- ${MBGL_ROOT}/platform/android/src/graphics/pointf.hpp
- ${MBGL_ROOT}/platform/android/src/graphics/rectf.cpp
- ${MBGL_ROOT}/platform/android/src/graphics/rectf.hpp
- ${MBGL_ROOT}/platform/android/src/gson/json_array.cpp
- ${MBGL_ROOT}/platform/android/src/gson/json_array.hpp
- ${MBGL_ROOT}/platform/android/src/gson/json_element.cpp
- ${MBGL_ROOT}/platform/android/src/gson/json_element.hpp
- ${MBGL_ROOT}/platform/android/src/gson/json_object.cpp
- ${MBGL_ROOT}/platform/android/src/gson/json_object.hpp
- ${MBGL_ROOT}/platform/android/src/gson/json_primitive.cpp
- ${MBGL_ROOT}/platform/android/src/gson/json_primitive.hpp
- ${MBGL_ROOT}/platform/android/src/image.cpp
- ${MBGL_ROOT}/platform/android/src/java/util.cpp
- ${MBGL_ROOT}/platform/android/src/java/util.hpp
- ${MBGL_ROOT}/platform/android/src/java_types.cpp
- ${MBGL_ROOT}/platform/android/src/java_types.hpp
- ${MBGL_ROOT}/platform/android/src/jni.cpp
- ${MBGL_ROOT}/platform/android/src/jni.hpp
- ${MBGL_ROOT}/platform/android/src/jni_native.cpp
- ${MBGL_ROOT}/platform/android/src/jni_native.hpp
- ${MBGL_ROOT}/platform/android/src/mapbox.cpp
- ${MBGL_ROOT}/platform/android/src/mapbox.hpp
- ${MBGL_ROOT}/platform/android/src/map/camera_position.cpp
- ${MBGL_ROOT}/platform/android/src/map/camera_position.hpp
- ${MBGL_ROOT}/platform/android/src/map/image.cpp
- ${MBGL_ROOT}/platform/android/src/map/image.hpp
- ${MBGL_ROOT}/platform/android/src/map_renderer.cpp
- ${MBGL_ROOT}/platform/android/src/map_renderer.hpp
- ${MBGL_ROOT}/platform/android/src/map_renderer_runnable.cpp
- ${MBGL_ROOT}/platform/android/src/map_renderer_runnable.hpp
- ${MBGL_ROOT}/platform/android/src/native_map_view.cpp
- ${MBGL_ROOT}/platform/android/src/native_map_view.hpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_manager.cpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_manager.hpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_region.cpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_region.hpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_region_definition.cpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_region_definition.hpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_region_error.cpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_region_error.hpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_region_status.cpp
- ${MBGL_ROOT}/platform/android/src/offline/offline_region_status.hpp
- ${MBGL_ROOT}/platform/android/src/run_loop.cpp
- ${MBGL_ROOT}/platform/android/src/run_loop_impl.hpp
- ${MBGL_ROOT}/platform/android/src/snapshotter/map_snapshot.cpp
- ${MBGL_ROOT}/platform/android/src/snapshotter/map_snapshot.hpp
- ${MBGL_ROOT}/platform/android/src/snapshotter/map_snapshotter.cpp
- ${MBGL_ROOT}/platform/android/src/snapshotter/map_snapshotter.hpp
- ${MBGL_ROOT}/platform/android/src/string_util.cpp
- ${MBGL_ROOT}/platform/android/src/style/android_conversion.hpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/filter.cpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/filter.hpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/position.cpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/position.hpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/property_expression.hpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/property_value.hpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/transition_options.cpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/transition_options.hpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/url_or_tileset.cpp
- ${MBGL_ROOT}/platform/android/src/style/conversion/url_or_tileset.hpp
- ${MBGL_ROOT}/platform/android/src/style/formatted.cpp
- ${MBGL_ROOT}/platform/android/src/style/formatted.hpp
- ${MBGL_ROOT}/platform/android/src/style/formatted_section.cpp
- ${MBGL_ROOT}/platform/android/src/style/formatted_section.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/background_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/background_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/circle_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/circle_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/custom_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/custom_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/fill_extrusion_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/fill_extrusion_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/fill_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/fill_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/heatmap_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/heatmap_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/hillshade_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/hillshade_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/layer_manager.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/layer_manager.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/line_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/line_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/raster_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/raster_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/layers/symbol_layer.cpp
- ${MBGL_ROOT}/platform/android/src/style/layers/symbol_layer.hpp
- ${MBGL_ROOT}/platform/android/src/style/light.cpp
- ${MBGL_ROOT}/platform/android/src/style/light.hpp
- ${MBGL_ROOT}/platform/android/src/style/position.cpp
- ${MBGL_ROOT}/platform/android/src/style/position.hpp
- ${MBGL_ROOT}/platform/android/src/style/sources/custom_geometry_source.cpp
- ${MBGL_ROOT}/platform/android/src/style/sources/custom_geometry_source.hpp
- ${MBGL_ROOT}/platform/android/src/style/sources/geojson_source.cpp
- ${MBGL_ROOT}/platform/android/src/style/sources/geojson_source.hpp
- ${MBGL_ROOT}/platform/android/src/style/sources/image_source.cpp
- ${MBGL_ROOT}/platform/android/src/style/sources/image_source.hpp
- ${MBGL_ROOT}/platform/android/src/style/sources/raster_dem_source.cpp
- ${MBGL_ROOT}/platform/android/src/style/sources/raster_dem_source.hpp
- ${MBGL_ROOT}/platform/android/src/style/sources/raster_source.cpp
- ${MBGL_ROOT}/platform/android/src/style/sources/raster_source.hpp
- ${MBGL_ROOT}/platform/android/src/style/sources/source.cpp
- ${MBGL_ROOT}/platform/android/src/style/sources/source.hpp
- ${MBGL_ROOT}/platform/android/src/style/sources/unknown_source.cpp
- ${MBGL_ROOT}/platform/android/src/style/sources/unknown_source.hpp
- ${MBGL_ROOT}/platform/android/src/style/sources/vector_source.cpp
- ${MBGL_ROOT}/platform/android/src/style/sources/vector_source.hpp
- ${MBGL_ROOT}/platform/android/src/style/transition_options.cpp
- ${MBGL_ROOT}/platform/android/src/style/transition_options.hpp
- ${MBGL_ROOT}/platform/android/src/style/value.cpp
- ${MBGL_ROOT}/platform/android/src/style/value.hpp
- ${MBGL_ROOT}/platform/android/src/thread.cpp
- ${MBGL_ROOT}/platform/android/src/timer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_frontend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gl/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/map/map_snapshotter.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/asset_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/database_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_manager.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/main_resource_loader.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_database.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_download.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/online_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/sqlite3.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/bidi.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/compression.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/monotonic_timer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/png_writer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/thread_local.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/utf.cpp
- ${MBGL_ROOT}/platform/linux/src/headless_backend_egl.cpp
-)
-
-target_include_directories(
- mbgl-core
- PRIVATE ${MBGL_ROOT}/platform/default/include
-)
-
-target_link_libraries(
- mbgl-core
- PRIVATE
- EGL
- GLESv2
- Mapbox::Base::jni.hpp
- android
- atomic
- jnigraphics
- log
- mbgl-vendor-icu
- mbgl-vendor-sqlite
- z
-)
-
-add_library(
- mbgl-core-android STATIC
- ${MBGL_ROOT}/platform/android/src/file_source.cpp
- ${MBGL_ROOT}/platform/android/src/file_source.hpp
- ${MBGL_ROOT}/platform/android/src/http_file_source.cpp
- ${MBGL_ROOT}/platform/android/src/i18n/collator.cpp
- ${MBGL_ROOT}/platform/android/src/i18n/collator_jni.hpp
- ${MBGL_ROOT}/platform/android/src/i18n/number_format.cpp
- ${MBGL_ROOT}/platform/android/src/i18n/number_format_jni.hpp
- ${MBGL_ROOT}/platform/android/src/logger.cpp
- ${MBGL_ROOT}/platform/android/src/logger.hpp
- ${MBGL_ROOT}/platform/android/src/logging_android.cpp
- ${MBGL_ROOT}/platform/android/src/text/local_glyph_rasterizer.cpp
- ${MBGL_ROOT}/platform/android/src/text/local_glyph_rasterizer_jni.hpp
-)
-
-target_include_directories(
- mbgl-core-android
- PRIVATE ${MBGL_ROOT}/platform/default/include ${MBGL_ROOT}/src
-)
-
-target_link_libraries(
- mbgl-core-android
- PRIVATE Mapbox::Base::jni.hpp mbgl-compiler-options mbgl-core
-)
-
-add_library(
- mapbox-gl SHARED
- ${MBGL_ROOT}/platform/android/src/main.cpp
-)
-
-target_include_directories(
- mapbox-gl
- PRIVATE ${MBGL_ROOT}/platform/default/include ${MBGL_ROOT}/src
-)
-
-target_link_libraries(
- mapbox-gl
- PRIVATE
- Mapbox::Base::jni.hpp
- mbgl-compiler-options
- mbgl-core
- mbgl-core-android
-)
-
-add_library(
- example-custom-layer MODULE
- ${MBGL_ROOT}/platform/android/src/example_custom_layer.cpp
-)
-
-target_include_directories(
- example-custom-layer
- PRIVATE ${MBGL_ROOT}/include
-)
-
-target_link_libraries(
- example-custom-layer
- PRIVATE
- GLESv2
- Mapbox::Base::optional
- Mapbox::Base::typewrapper
- Mapbox::Base::value
- Mapbox::Base::weak
- log
- mbgl-compiler-options
-)
-
-add_library(
- mbgl-test-runner SHARED
- ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c
- ${MBGL_ROOT}/platform/android/src/test/test_runner.cpp
- ${MBGL_ROOT}/platform/android/src/test/test_runner_common.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
- ${MBGL_ROOT}/platform/android/src/test/collator_test_stub.cpp
- ${MBGL_ROOT}/platform/android/src/test/number_format_test_stub.cpp
-)
-
-target_include_directories(
- mbgl-test-runner
- PRIVATE ${ANDROID_NDK}/sources/android/native_app_glue ${MBGL_ROOT}/platform/android/src ${MBGL_ROOT}/src
-)
-
-target_link_libraries(
- mbgl-test-runner
- PRIVATE
- Mapbox::Base::jni.hpp
- mbgl-compiler-options
- -Wl,--whole-archive
- mbgl-test
- -Wl,--no-whole-archive
-)
-
-if(ANDROID_NATIVE_API_LEVEL VERSION_LESS 24)
- target_sources(
- mbgl-test-runner
- PRIVATE ${MBGL_ROOT}/platform/android/src/test/http_file_source_test_stub.cpp
- )
-else()
- set(CURL_DIR ${MBGL_ROOT}/vendor/curl-android-ios/prebuilt-with-ssl/android)
- set(CURL_LIBRARY ${CURL_DIR}/${ANDROID_ABI}/libcurl.a)
-
- target_sources(
- mbgl-test-runner
- PRIVATE ${MBGL_ROOT}/platform/default/src/mbgl/storage/http_file_source.cpp
- )
- target_include_directories(
- mbgl-test-runner
- PRIVATE ${CURL_DIR}/include
- )
- target_link_libraries(
- mbgl-test-runner
- PRIVATE ${CURL_LIBRARY}
- )
-endif()
-
-add_custom_command(
- TARGET mbgl-test-runner PRE_BUILD
- COMMAND
- ${CMAKE_COMMAND}
- -E
- make_directory
- ${MBGL_ROOT}/test/results
- COMMAND
- ${CMAKE_COMMAND}
- -E
- tar
- "chf"
- "test/android/app/src/main/assets/data.zip"
- --format=zip
- --files-from=test/android/app/src/main/assets/to_zip.txt
- COMMAND
- ${CMAKE_COMMAND}
- -E
- remove_directory
- ${MBGL_ROOT}/test/results
- WORKING_DIRECTORY ${MBGL_ROOT}
-)
-
-add_library(
- mbgl-benchmark-runner SHARED
- ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c
- ${MBGL_ROOT}/platform/android/src/test/benchmark_runner.cpp
- ${MBGL_ROOT}/platform/android/src/test/test_runner_common.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
- ${MBGL_ROOT}/platform/android/src/test/collator_test_stub.cpp
- ${MBGL_ROOT}/platform/android/src/test/number_format_test_stub.cpp
- ${MBGL_ROOT}/platform/android/src/test/http_file_source_test_stub.cpp
-)
-
-target_include_directories(
- mbgl-benchmark-runner
- PRIVATE ${ANDROID_NDK}/sources/android/native_app_glue ${MBGL_ROOT}/platform/android/src ${MBGL_ROOT}/src
-)
-
-target_link_libraries(
- mbgl-benchmark-runner
- PRIVATE
- Mapbox::Base::jni.hpp
- mbgl-compiler-options
- -Wl,--whole-archive
- mbgl-benchmark
- -Wl,--no-whole-archive
-)
-
-add_custom_command(
- TARGET mbgl-benchmark-runner PRE_BUILD
- COMMAND
- ${CMAKE_COMMAND}
- -E
- make_directory
- ${MBGL_ROOT}/benchmark/results
- COMMAND
- ${CMAKE_COMMAND}
- -E
- tar
- "chf"
- "benchmark/android/app/src/main/assets/data.zip"
- --format=zip
- --files-from=benchmark/android/app/src/main/assets/to_zip.txt
- COMMAND
- ${CMAKE_COMMAND}
- -E
- remove_directory
- ${MBGL_ROOT}/benchmark/results
- WORKING_DIRECTORY ${MBGL_ROOT}
-)
-
-add_library(
- mbgl-render-test-runner SHARED
- ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c
- ${MBGL_ROOT}/platform/android/src/test/render_test_runner.cpp
- ${MBGL_ROOT}/platform/android/src/test/test_runner_common.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
- ${MBGL_ROOT}/platform/android/src/test/collator_test_stub.cpp
- ${MBGL_ROOT}/platform/android/src/test/number_format_test_stub.cpp
- ${MBGL_ROOT}/platform/android/src/test/http_file_source_test_stub.cpp
-)
-
-target_include_directories(
- mbgl-render-test-runner
- PRIVATE ${ANDROID_NDK}/sources/android/native_app_glue ${MBGL_ROOT}/platform/android/src ${MBGL_ROOT}/src
-)
-
-target_link_libraries(
- mbgl-render-test-runner
- PRIVATE
- Mapbox::Base::jni.hpp
- android
- log
- mbgl-compiler-options
- mbgl-render-test
-)
-
-add_custom_command(
- TARGET mbgl-render-test-runner PRE_BUILD
- COMMAND
- ${CMAKE_COMMAND}
- -E
- tar
- "chf"
- "render-test/android/app/src/main/assets/data.zip"
- --format=zip
- --files-from=render-test/android/app/src/main/assets/to_zip.txt
- WORKING_DIRECTORY ${MBGL_ROOT}
-)
-
-install(TARGETS mapbox-gl LIBRARY DESTINATION lib)
diff --git a/next/platform/ios/ios.cmake b/next/platform/ios/ios.cmake
deleted file mode 100644
index 68578e0dfa..0000000000
--- a/next/platform/ios/ios.cmake
+++ /dev/null
@@ -1,192 +0,0 @@
-target_compile_definitions(
- mbgl-core
- PUBLIC MBGL_USE_GLES2 GLES_SILENCE_DEPRECATION
-)
-
-if(NOT DEFINED IOS_DEPLOYMENT_TARGET)
- set(IOS_DEPLOYMENT_TARGET "9.0")
-endif()
-
-macro(initialize_ios_target target)
- set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET "${IOS_DEPLOYMENT_TARGET}")
- set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_ENABLE_BITCODE "YES")
- set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_BITCODE_GENERATION_MODE bitcode)
- set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH $<$<CONFIG:Debug>:YES>)
-endmacro()
-
-set_target_properties(mbgl-core PROPERTIES XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES)
-
-target_sources(
- mbgl-core
- PRIVATE
- ${MBGL_ROOT}/platform/darwin/src/async_task.cpp
- ${MBGL_ROOT}/platform/darwin/src/collator.mm
- ${MBGL_ROOT}/platform/darwin/src/gl_functions.cpp
- ${MBGL_ROOT}/platform/darwin/src/headless_backend_eagl.mm
- ${MBGL_ROOT}/platform/darwin/src/native_apple_interface.m
- ${MBGL_ROOT}/platform/darwin/src/http_file_source.mm
- ${MBGL_ROOT}/platform/darwin/src/native_apple_interface.m
- ${MBGL_ROOT}/platform/darwin/src/image.mm
- ${MBGL_ROOT}/platform/darwin/src/local_glyph_rasterizer.mm
- ${MBGL_ROOT}/platform/darwin/src/logging_nslog.mm
- ${MBGL_ROOT}/platform/darwin/src/nsthread.mm
- ${MBGL_ROOT}/platform/darwin/src/number_format.mm
- ${MBGL_ROOT}/platform/darwin/src/reachability.m
- ${MBGL_ROOT}/platform/darwin/src/run_loop.cpp
- ${MBGL_ROOT}/platform/darwin/src/string_nsstring.mm
- ${MBGL_ROOT}/platform/darwin/src/timer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_frontend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gl/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/map/map_snapshotter.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/asset_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/database_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_manager.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/main_resource_loader.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_database.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_download.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/online_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/sqlite3.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/bidi.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/compression.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/monotonic_timer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/png_writer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/thread_local.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/utf.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/thread_local.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/layermanager/layer_manager.cpp
-)
-
-target_include_directories(
- mbgl-core
- PRIVATE ${MBGL_ROOT}/platform/darwin/include ${MBGL_ROOT}/platform/default/include
-)
-
-include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
-
-initialize_ios_target(mbgl-core)
-initialize_ios_target(mbgl-vendor-icu)
-
-target_link_libraries(
- mbgl-core
- PRIVATE
- "-framework CoreGraphics"
- "-framework CoreImage"
- "-framework CoreLocation"
- "-framework CoreServices"
- "-framework CoreText"
- "-framework Foundation"
- "-framework GLKit"
- "-framework ImageIO"
- "-framework OpenGLES"
- "-framework QuartzCore"
- "-framework Security"
- "-framework SystemConfiguration"
- "-framework UIKit"
- "-framework WebKit"
- mbgl-vendor-icu
- sqlite3
- z
-)
-
-if(MBGL_IOS_RENDER_TEST)
- set(CMAKE_OSX_ARCHITECTURES "armv7;i386;x86_64;arm64")
-
- include(${PROJECT_SOURCE_DIR}/vendor/zip-archive.cmake)
- initialize_ios_target(mbgl-vendor-zip-archive)
-
- set(PREPARE_CMD "${MBGL_ROOT}/render-test/ios/setup_test_data.sh")
- message("COMMAND: ${PREPARE_CMD}")
- execute_process(COMMAND ${PREPARE_CMD} RESULT_VARIABLE CMD_ERROR)
- message(STATUS "CMD_ERROR:" ${CMD_ERROR})
-
- set(RESOURCES ${MBGL_ROOT}/render-test/ios/Main.storyboard ${MBGL_ROOT}/render-test/ios/LaunchScreen.storyboard ${MBGL_ROOT}/test-data)
-
- add_executable(
- RenderTestApp
- ${MBGL_ROOT}/render-test/ios/ios_test_runner.hpp
- ${MBGL_ROOT}/render-test/ios/ios_test_runner.cpp
- ${MBGL_ROOT}/render-test/ios/AppDelegate.h
- ${MBGL_ROOT}/render-test/ios/AppDelegate.m
- ${MBGL_ROOT}/render-test/ios/ViewController.h
- ${MBGL_ROOT}/render-test/ios/ViewController.m
- ${MBGL_ROOT}/render-test/ios/iosTestRunner.h
- ${MBGL_ROOT}/render-test/ios/iosTestRunner.mm
- ${MBGL_ROOT}/render-test/ios/main.m
- ${RESOURCES}
- )
- initialize_ios_target(RenderTestApp)
-
- set_target_properties(
- RenderTestApp
- PROPERTIES
- MACOSX_BUNDLE
- TRUE
- MACOSX_BUNDLE_IDENTIFIER
- com.mapbox.RenderTestAPP
- MACOSX_BUNDLE_INFO_PLIST
- ${MBGL_ROOT}/render-test/ios/Info.plist
- RESOURCE
- "${RESOURCES}"
- )
-
- target_include_directories(
- RenderTestApp
- PUBLIC {MBGL_ROOT}/render-test/include ${MBGL_ROOT}/include
- )
-
- target_include_directories(
- RenderTestApp
- PRIVATE
- ${MBGL_ROOT}/platform/darwin/src
- ${MBGL_ROOT}/platform/darwin/include
- ${MBGL_ROOT}/platform/darwin/include/mbgl/interface/
- ${MBGL_ROOT}/platform/default/include
- ${MBGL_ROOT}/src
- )
-
- target_include_directories(
- RenderTestApp
- PUBLIC ${MBGL_ROOT}/render-test/ios
- )
-
- target_link_libraries(
- RenderTestApp
- PRIVATE
- "-framework CoreGraphics"
- "-framework CoreLocation"
- "-framework Foundation"
- "-framework OpenGLES"
- "-framework QuartzCore"
- "-framework UIKit"
- mbgl-render-test
- mbgl-vendor-zip-archive
- )
-
- find_package(XCTest REQUIRED)
-
- xctest_add_bundle(RenderTestAppTests RenderTestApp ${MBGL_ROOT}/render-test/ios/tests/Tests.m)
-
- set_target_properties(
- RenderTestAppTests
- PROPERTIES
- XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET
- "${IOS_DEPLOYMENT_TARGET}"
- XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH
- $<$<CONFIG:Debug>:YES>
- )
-
- target_include_directories(
- RenderTestAppTests
- PUBLIC ${MBGL_ROOT}/render-test/ios
- )
-
- xctest_add_test(XCTest.RenderTestApp RenderTestAppTests)
-
- set_target_properties(RenderTestAppTests PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${MBGL_ROOT}/render-test/ios/tests/Info.plist)
-endif()
-unset(IOS_DEPLOYMENT_TARGET CACHE)
diff --git a/next/platform/linux/linux.cmake b/next/platform/linux/linux.cmake
deleted file mode 100644
index 6f2ac12e49..0000000000
--- a/next/platform/linux/linux.cmake
+++ /dev/null
@@ -1,134 +0,0 @@
-find_package(CURL REQUIRED)
-find_package(ICU REQUIRED i18n)
-find_package(ICU REQUIRED uc)
-find_package(JPEG REQUIRED)
-find_package(OpenGL REQUIRED GLX)
-find_package(PNG REQUIRED)
-find_package(PkgConfig REQUIRED)
-find_package(X11 REQUIRED)
-
-pkg_search_module(LIBUV libuv REQUIRED)
-
-target_sources(
- mbgl-core
- PRIVATE
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_frontend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gl/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/i18n/collator.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/i18n/number_format.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/layermanager/layer_manager.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/asset_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/database_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_manager.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/http_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/main_resource_loader.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_database.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_download.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/online_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/sqlite3.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/bidi.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/async_task.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/compression.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/image.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/jpeg_reader.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/logging_stderr.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/monotonic_timer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/png_reader.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/png_writer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/run_loop.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/string_stdlib.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/thread.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/thread_local.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/timer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/utf.cpp
- ${MBGL_ROOT}/platform/linux/src/gl_functions.cpp
- ${MBGL_ROOT}/platform/linux/src/headless_backend_glx.cpp
-)
-
-# FIXME: Should not be needed, but now needed by node because of the headless frontend.
-target_include_directories(
- mbgl-core
- PUBLIC ${MBGL_ROOT}/platform/default/include
- PRIVATE
- ${CURL_INCLUDE_DIRS}
- ${JPEG_INCLUDE_DIRS}
- ${LIBUV_INCLUDE_DIRS}
- ${X11_INCLUDE_DIRS}
-)
-
-include(${PROJECT_SOURCE_DIR}/vendor/nunicode.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/sqlite.cmake)
-
-target_link_libraries(
- mbgl-core
- PRIVATE
- ${CURL_LIBRARIES}
- ${JPEG_LIBRARIES}
- ${LIBUV_LIBRARIES}
- ${X11_LIBRARIES}
- ICU::i18n
- ICU::uc
- OpenGL::GLX
- PNG::PNG
- mbgl-vendor-nunicode
- mbgl-vendor-sqlite
-)
-
-add_subdirectory(${PROJECT_SOURCE_DIR}/bin)
-add_subdirectory(${PROJECT_SOURCE_DIR}/expression-test)
-add_subdirectory(${PROJECT_SOURCE_DIR}/platform/glfw)
-add_subdirectory(${PROJECT_SOURCE_DIR}/platform/node)
-
-add_executable(
- mbgl-test-runner
- ${MBGL_ROOT}/platform/default/src/mbgl/test/main.cpp
-)
-
-target_compile_definitions(
- mbgl-test-runner
- PRIVATE WORK_DIRECTORY=${MBGL_ROOT}
-)
-
-target_link_libraries(
- mbgl-test-runner
- PRIVATE
- mbgl-compiler-options
- -Wl,--whole-archive
- mbgl-test
- -Wl,--no-whole-archive
-)
-
-add_executable(
- mbgl-benchmark-runner
- ${MBGL_ROOT}/platform/default/src/mbgl/benchmark/main.cpp
-)
-
-target_link_libraries(
- mbgl-benchmark-runner
- PRIVATE
- mbgl-compiler-options
- -Wl,--whole-archive
- mbgl-benchmark
- -Wl,--no-whole-archive
-)
-
-add_executable(
- mbgl-render-test-runner
- ${MBGL_ROOT}/platform/default/src/mbgl/render-test/main.cpp
-)
-
-target_link_libraries(
- mbgl-render-test-runner
- PRIVATE mbgl-compiler-options mbgl-render-test
-)
-
-add_test(NAME mbgl-benchmark-runner COMMAND mbgl-benchmark-runner WORKING_DIRECTORY ${MBGL_ROOT})
-add_test(NAME mbgl-test-runner COMMAND mbgl-test-runner WORKING_DIRECTORY ${MBGL_ROOT})
-
-install(TARGETS mbgl-render-test-runner RUNTIME DESTINATION bin)
diff --git a/next/platform/macos/macos.cmake b/next/platform/macos/macos.cmake
deleted file mode 100644
index 631adfc36b..0000000000
--- a/next/platform/macos/macos.cmake
+++ /dev/null
@@ -1,213 +0,0 @@
-find_package(OpenGL REQUIRED)
-
-target_compile_definitions(
- mbgl-core
- PUBLIC GL_SILENCE_DEPRECATION
-)
-
-target_sources(
- mbgl-core
- PRIVATE
- ${MBGL_ROOT}/platform/darwin/src/MGLAccountManager.m
- ${MBGL_ROOT}/platform/darwin/src/MGLAttributedExpression.m
- ${MBGL_ROOT}/platform/darwin/src/MGLAttributionInfo.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLBackgroundStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLCircleStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLClockDirectionFormatter.m
- ${MBGL_ROOT}/platform/darwin/src/MGLCompassDirectionFormatter.m
- ${MBGL_ROOT}/platform/darwin/src/MGLComputedShapeSource.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLCoordinateFormatter.m
- ${MBGL_ROOT}/platform/darwin/src/MGLDistanceFormatter.m
- ${MBGL_ROOT}/platform/darwin/src/MGLFeature.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLFillExtrusionStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLFillStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLForegroundStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLFoundation.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLGeometry.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLHeatmapStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLHillshadeStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLImageSource.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLLight.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLLineStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLLoggingConfiguration.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLMapCamera.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLMapSnapshotter.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLMultiPoint.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLNetworkConfiguration.m
- ${MBGL_ROOT}/platform/darwin/src/MGLOfflinePack.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLOfflineStorage.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLOpenGLStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLPointAnnotation.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLPointCollection.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLPolygon.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLPolyline.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLRasterDEMSource.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLRasterStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLRasterTileSource.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLRendererConfiguration.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLSDKMetricsManager.m
- ${MBGL_ROOT}/platform/darwin/src/MGLShape.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLShapeCollection.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLShapeOfflineRegion.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLShapeSource.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLSource.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLStyle.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLStyleLayerManager.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLStyleValue.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLSymbolStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLTilePyramidOfflineRegion.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLTileSource.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLTypes.m
- ${MBGL_ROOT}/platform/darwin/src/MGLVectorStyleLayer.mm
- ${MBGL_ROOT}/platform/darwin/src/MGLVectorTileSource.mm
- ${MBGL_ROOT}/platform/darwin/src/NSArray+MGLAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/NSBundle+MGLAdditions.m
- ${MBGL_ROOT}/platform/darwin/src/NSCoder+MGLAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/NSComparisonPredicate+MGLAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/NSCompoundPredicate+MGLAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/NSDate+MGLAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/NSDictionary+MGLAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/NSExpression+MGLAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/NSPredicate+MGLAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/NSString+MGLAdditions.m
- ${MBGL_ROOT}/platform/darwin/src/NSURL+MGLAdditions.m
- ${MBGL_ROOT}/platform/darwin/src/NSValue+MGLAdditions.m
- ${MBGL_ROOT}/platform/darwin/src/NSValue+MGLStyleAttributeAdditions.mm
- ${MBGL_ROOT}/platform/darwin/src/async_task.cpp
- ${MBGL_ROOT}/platform/darwin/src/collator.mm
- ${MBGL_ROOT}/platform/darwin/src/gl_functions.cpp
- ${MBGL_ROOT}/platform/darwin/src/headless_backend_cgl.mm
- ${MBGL_ROOT}/platform/darwin/src/http_file_source.mm
- ${MBGL_ROOT}/platform/darwin/src/image.mm
- ${MBGL_ROOT}/platform/darwin/src/local_glyph_rasterizer.mm
- ${MBGL_ROOT}/platform/darwin/src/logging_nslog.mm
- ${MBGL_ROOT}/platform/darwin/src/nsthread.mm
- ${MBGL_ROOT}/platform/darwin/src/number_format.mm
- ${MBGL_ROOT}/platform/darwin/src/reachability.m
- ${MBGL_ROOT}/platform/darwin/src/run_loop.cpp
- ${MBGL_ROOT}/platform/darwin/src/string_nsstring.mm
- ${MBGL_ROOT}/platform/darwin/src/timer.cpp
- ${MBGL_ROOT}/platform/darwin/src/native_apple_interface.m
- ${MBGL_ROOT}/platform/darwin/src/MGLNetworkIntegrationManager.m
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_frontend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gl/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/map/map_snapshotter.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/asset_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/database_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_manager.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/main_resource_loader.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_database.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_download.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/online_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/sqlite3.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/bidi.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/compression.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/monotonic_timer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/png_writer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/thread_local.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/utf.cpp
- ${MBGL_ROOT}/platform/macos/src/MGLAnnotationImage.m
- ${MBGL_ROOT}/platform/macos/src/MGLAttributionButton.mm
- ${MBGL_ROOT}/platform/macos/src/MGLCompassCell.m
- ${MBGL_ROOT}/platform/macos/src/MGLMapView+IBAdditions.mm
- ${MBGL_ROOT}/platform/macos/src/MGLMapView+Impl.mm
- ${MBGL_ROOT}/platform/macos/src/MGLMapView+OpenGL.mm
- ${MBGL_ROOT}/platform/macos/src/MGLMapView.mm
- ${MBGL_ROOT}/platform/macos/src/MGLOpenGLLayer.mm
- ${MBGL_ROOT}/platform/macos/src/NSColor+MGLAdditions.mm
- ${MBGL_ROOT}/platform/macos/src/NSImage+MGLAdditions.mm
- ${MBGL_ROOT}/platform/macos/src/NSProcessInfo+MGLAdditions.m
-)
-
-set_target_properties(mbgl-core PROPERTIES XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES)
-
-target_compile_options(mbgl-core PRIVATE -fobjc-arc)
-
-# FIXME: Should not be needed, but now needed by node because of the headless frontend.
-target_include_directories(
- mbgl-core
- PUBLIC ${MBGL_ROOT}/platform/default/include
-)
-
-target_include_directories(
- mbgl-core
- PRIVATE ${MBGL_ROOT}/platform/darwin/include ${MBGL_ROOT}/platform/darwin/src ${MBGL_ROOT}/platform/macos/src
-)
-
-include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
-
-target_link_libraries(
- mbgl-core
- PRIVATE
- "-framework AppKit"
- "-framework CoreGraphics"
- "-framework CoreLocation"
- "-framework SystemConfiguration"
- OpenGL::GL
- mbgl-vendor-icu
- sqlite3
- z
-)
-
-add_subdirectory(${PROJECT_SOURCE_DIR}/bin)
-add_subdirectory(${PROJECT_SOURCE_DIR}/expression-test)
-add_subdirectory(${PROJECT_SOURCE_DIR}/platform/glfw)
-add_subdirectory(${PROJECT_SOURCE_DIR}/platform/node)
-
-add_executable(
- mbgl-test-runner
- ${MBGL_ROOT}/platform/default/src/mbgl/test/main.cpp
-)
-
-target_include_directories(
- mbgl-test-runner
- PUBLIC ${MBGL_ROOT}/include ${MBGL_ROOT}/test/include
-)
-
-target_compile_definitions(
- mbgl-test-runner
- PRIVATE WORK_DIRECTORY=${MBGL_ROOT}
-)
-
-target_link_libraries(
- mbgl-test-runner
- PRIVATE mbgl-compiler-options -Wl,-force_load mbgl-test
-)
-
-add_executable(
- mbgl-benchmark-runner
- ${MBGL_ROOT}/platform/default/src/mbgl/benchmark/main.cpp
-)
-
-target_include_directories(
- mbgl-benchmark-runner
- PUBLIC ${MBGL_ROOT}/benchmark/include
-)
-
-target_link_libraries(
- mbgl-benchmark-runner
- PRIVATE mbgl-compiler-options -Wl,-force_load mbgl-benchmark
-)
-
-add_executable(
- mbgl-render-test-runner
- ${MBGL_ROOT}/platform/default/src/mbgl/render-test/main.cpp
-)
-
-target_link_libraries(
- mbgl-render-test-runner
- PRIVATE mbgl-compiler-options mbgl-render-test
-)
-
-set_property(TARGET mbgl-benchmark-runner PROPERTY FOLDER Executables)
-set_property(TARGET mbgl-test-runner PROPERTY FOLDER Executables)
-set_property(TARGET mbgl-render-test-runner PROPERTY FOLDER Executables)
-
-add_test(NAME mbgl-benchmark-runner COMMAND mbgl-benchmark-runner WORKING_DIRECTORY ${MBGL_ROOT})
-add_test(NAME mbgl-test-runner COMMAND mbgl-test-runner WORKING_DIRECTORY ${MBGL_ROOT})
diff --git a/next/platform/node/CMakeLists.txt b/next/platform/node/CMakeLists.txt
deleted file mode 100644
index 22a975afe3..0000000000
--- a/next/platform/node/CMakeLists.txt
+++ /dev/null
@@ -1,52 +0,0 @@
-if(NOT EXISTS ${MBGL_ROOT}/node_modules/@mapbox/cmake-node-module/module.cmake)
- message("-- Not building node bindings, dependencies not found. Run 'npm update'.")
- return()
-endif()
-
-set(NODE_MODULE_CACHE_DIR ${CMAKE_SOURCE_DIR}/build/headers)
-include(${MBGL_ROOT}/node_modules/@mapbox/cmake-node-module/module.cmake)
-
-add_node_module(
- mbgl-node
- INSTALL_PATH ${MBGL_ROOT}/lib/{node_abi}/mbgl.node
- NAN_VERSION 2.10.0
- EXCLUDE_NODE_ABIS
- 46
- 47
- 48
- 51
- 59
- 67
- 72
- 79
-)
-
-target_sources(
- mbgl-node
- INTERFACE
- ${MBGL_ROOT}/platform/node/src/node_conversion.hpp
- ${MBGL_ROOT}/platform/node/src/node_expression.cpp
- ${MBGL_ROOT}/platform/node/src/node_expression.hpp
- ${MBGL_ROOT}/platform/node/src/node_feature.cpp
- ${MBGL_ROOT}/platform/node/src/node_feature.hpp
- ${MBGL_ROOT}/platform/node/src/node_logging.cpp
- ${MBGL_ROOT}/platform/node/src/node_logging.hpp
- ${MBGL_ROOT}/platform/node/src/node_map.cpp
- ${MBGL_ROOT}/platform/node/src/node_map.hpp
- ${MBGL_ROOT}/platform/node/src/node_mapbox_gl_native.cpp
- ${MBGL_ROOT}/platform/node/src/node_request.cpp
- ${MBGL_ROOT}/platform/node/src/node_request.hpp
- ${MBGL_ROOT}/platform/node/src/util/async_queue.hpp
-)
-
-target_link_libraries(
- mbgl-node
- INTERFACE Mapbox::Map
-)
-
-# FIXME: Node bindings only run fully on Linux now because it requires libuv RunLoop (which is the default on Linux). Also, Sanitizer will
-# not work here because node will do a dlopen(), which is not currently supported.
-if(CMAKE_SYSTEM_NAME STREQUAL Linux AND NOT MBGL_WITH_SANITIZER)
- add_test(NAME mbgl-node-memory COMMAND npm run test-memory WORKING_DIRECTORY ${MBGL_ROOT})
- add_test(NAME mbgl-node-test COMMAND npm run test WORKING_DIRECTORY ${MBGL_ROOT})
-endif()
diff --git a/next/platform/qt/qt.cmake b/next/platform/qt/qt.cmake
deleted file mode 100644
index 44fe442ce2..0000000000
--- a/next/platform/qt/qt.cmake
+++ /dev/null
@@ -1,214 +0,0 @@
-# Note: Using Sqlite instead of QSqlDatabase for better compatibility.
-
-find_package(Qt5Gui REQUIRED)
-find_package(Qt5Network REQUIRED)
-find_package(Qt5OpenGL REQUIRED)
-find_package(Qt5Widgets REQUIRED)
-
-if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
- add_definitions("-DQT_COMPILING_QIMAGE_COMPAT_CPP")
- add_definitions("-D_USE_MATH_DEFINES")
- add_definitions("-Wno-deprecated-declarations")
- add_definitions("-Wno-inconsistent-missing-override")
- add_definitions("-Wno-macro-redefined")
- add_definitions("-Wno-microsoft-exception-spec")
- add_definitions("-Wno-unknown-argument")
- add_definitions("-Wno-unknown-warning-option")
- add_definitions("-Wno-unused-command-line-argument")
- add_definitions("-Wno-unused-local-typedef")
- add_definitions("-Wno-unused-private-field")
-endif()
-
-target_sources(
- mbgl-core
- PRIVATE
- ${MBGL_ROOT}/platform/$<IF:$<PLATFORM_ID:Windows>,qt/src/bidi.cpp,default/src/mbgl/text/bidi.cpp>
- ${MBGL_ROOT}/platform/default/include/mbgl/gfx/headless_backend.hpp
- ${MBGL_ROOT}/platform/default/include/mbgl/gfx/headless_frontend.hpp
- ${MBGL_ROOT}/platform/default/include/mbgl/gl/headless_backend.hpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gfx/headless_frontend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/gl/headless_backend.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/i18n/collator.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/layermanager/layer_manager.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/asset_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/database_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_manager.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/file_source_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_request.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/local_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/main_resource_loader.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_database.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/offline_download.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/online_file_source.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/storage/sqlite3.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/compression.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/util/monotonic_timer.cpp
- ${MBGL_ROOT}/platform/qt/src/async_task.cpp
- ${MBGL_ROOT}/platform/qt/src/async_task_impl.hpp
- ${MBGL_ROOT}/platform/qt/src/number_format.cpp
- ${MBGL_ROOT}/platform/qt/src/gl_functions.cpp
- ${MBGL_ROOT}/platform/qt/src/headless_backend_qt.cpp
- ${MBGL_ROOT}/platform/qt/src/http_file_source.cpp
- ${MBGL_ROOT}/platform/qt/src/http_file_source.hpp
- ${MBGL_ROOT}/platform/qt/src/http_request.cpp
- ${MBGL_ROOT}/platform/qt/src/http_request.hpp
- ${MBGL_ROOT}/platform/qt/src/local_glyph_rasterizer.cpp
- ${MBGL_ROOT}/platform/qt/src/qt_image.cpp
- ${MBGL_ROOT}/platform/qt/src/qt_logging.cpp
- ${MBGL_ROOT}/platform/qt/src/run_loop.cpp
- ${MBGL_ROOT}/platform/qt/src/run_loop_impl.hpp
- ${MBGL_ROOT}/platform/qt/src/string_stdlib.cpp
- ${MBGL_ROOT}/platform/qt/src/thread.cpp
- ${MBGL_ROOT}/platform/qt/src/thread_local.cpp
- ${MBGL_ROOT}/platform/qt/src/timer.cpp
- ${MBGL_ROOT}/platform/qt/src/timer_impl.hpp
- ${MBGL_ROOT}/platform/qt/src/utf.cpp
-)
-
-target_compile_definitions(
- mbgl-core
- PRIVATE QT_IMAGE_DECODERS
- PUBLIC __QT__ MBGL_USE_GLES2
-)
-
-target_include_directories(
- mbgl-core
- PRIVATE ${MBGL_ROOT}/platform/default/include
-)
-
-include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/nunicode.cmake)
-include(${PROJECT_SOURCE_DIR}/vendor/sqlite.cmake)
-
-target_link_libraries(
- mbgl-core
- PRIVATE
- $<$<NOT:$<PLATFORM_ID:Windows>>:z>
- $<$<NOT:$<PLATFORM_ID:Windows>>:mbgl-vendor-icu>
- Qt5::Core
- Qt5::Gui
- Qt5::Network
- Qt5::OpenGL
- mbgl-vendor-nunicode
- mbgl-vendor-sqlite
-)
-
-add_library(
- qmapboxgl SHARED
- ${MBGL_ROOT}/platform/qt/include/qmapbox.hpp
- ${MBGL_ROOT}/platform/qt/include/qmapboxgl.hpp
- ${MBGL_ROOT}/platform/qt/src/qmapbox.cpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl.cpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_map_observer.cpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_map_observer.hpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_map_renderer.cpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_map_renderer.hpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_p.hpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_renderer_backend.cpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_renderer_backend.hpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_scheduler.cpp
- ${MBGL_ROOT}/platform/qt/src/qmapboxgl_scheduler.hpp
- ${MBGL_ROOT}/platform/qt/src/qt_conversion.hpp
- ${MBGL_ROOT}/platform/qt/src/qt_geojson.cpp
- ${MBGL_ROOT}/platform/qt/src/qt_geojson.hpp
-)
-
-# FIXME: Because of rapidjson conversion
-target_include_directories(
- qmapboxgl
- PRIVATE ${MBGL_ROOT}/src
-)
-
-target_include_directories(
- qmapboxgl
- PUBLIC ${MBGL_ROOT}/platform/qt/include
-)
-
-target_compile_definitions(
- qmapboxgl
- PRIVATE QT_BUILD_MAPBOXGL_LIB
-)
-
-target_link_libraries(
- qmapboxgl
- PRIVATE
- Qt5::Core
- Qt5::Gui
- mbgl-compiler-options
- mbgl-core
-)
-
-add_executable(
- mbgl-qt
- ${MBGL_ROOT}/platform/qt/app/main.cpp
- ${MBGL_ROOT}/platform/qt/app/mapwindow.cpp
- ${MBGL_ROOT}/platform/qt/app/mapwindow.hpp
- ${MBGL_ROOT}/platform/qt/resources/common.qrc
-)
-
-# Qt public API should keep compatibility with old compilers for legacy systems
-set_property(TARGET mbgl-qt PROPERTY CXX_STANDARD 98)
-
-target_link_libraries(
- mbgl-qt
- PRIVATE
- Qt5::Widgets
- Qt5::Gui
- mbgl-compiler-options
- qmapboxgl
-)
-
-add_executable(
- mbgl-test-runner
- ${MBGL_ROOT}/platform/qt/test/main.cpp
-)
-
-target_include_directories(
- mbgl-test-runner
- PUBLIC ${MBGL_ROOT}/include ${MBGL_ROOT}/test/include
-)
-
-target_compile_definitions(
- mbgl-test-runner
- PRIVATE WORK_DIRECTORY=${MBGL_ROOT}
-)
-
-target_link_libraries(
- mbgl-test-runner
- PRIVATE
- Qt5::Gui
- Qt5::OpenGL
- mbgl-compiler-options
- pthread
-)
-
-if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
- target_link_libraries(
- mbgl-test-runner
- PRIVATE -Wl,-force_load mbgl-test
- )
-else()
- target_link_libraries(
- mbgl-test-runner
- PRIVATE -Wl,--whole-archive mbgl-test -Wl,--no-whole-archive
- )
-endif()
-
-find_program(MBGL_QDOC NAMES qdoc)
-
-if(MBGL_QDOC)
- add_custom_target(mbgl-qt-docs)
-
- add_custom_command(
- TARGET mbgl-qt-docs PRE_BUILD
- COMMAND
- ${MBGL_QDOC}
- ${MBGL_ROOT}/platform/qt/config.qdocconf
- -outputdir
- ${CMAKE_BINARY_DIR}/docs
- )
-endif()
-
-add_test(NAME mbgl-test-runner COMMAND mbgl-test-runner WORKING_DIRECTORY ${MBGL_ROOT})
diff --git a/next/render-test/CMakeLists.txt b/next/render-test/CMakeLists.txt
deleted file mode 100644
index 7949c2b3cb..0000000000
--- a/next/render-test/CMakeLists.txt
+++ /dev/null
@@ -1,52 +0,0 @@
-add_library(
- mbgl-render-test STATIC EXCLUDE_FROM_ALL
- ${MBGL_ROOT}/expression-test/test_runner_common.cpp
- ${MBGL_ROOT}/expression-test/test_runner_common.hpp
- ${MBGL_ROOT}/render-test/allocation_index.cpp
- ${MBGL_ROOT}/render-test/allocation_index.hpp
- ${MBGL_ROOT}/render-test/file_source.cpp
- ${MBGL_ROOT}/render-test/file_source.hpp
- ${MBGL_ROOT}/render-test/filesystem.hpp
- ${MBGL_ROOT}/render-test/include/mbgl/render_test.hpp
- ${MBGL_ROOT}/render-test/manifest_parser.cpp
- ${MBGL_ROOT}/render-test/manifest_parser.hpp
- ${MBGL_ROOT}/render-test/metadata.hpp
- ${MBGL_ROOT}/render-test/parser.cpp
- ${MBGL_ROOT}/render-test/parser.hpp
- ${MBGL_ROOT}/render-test/render_test.cpp
- ${MBGL_ROOT}/render-test/runner.cpp
- ${MBGL_ROOT}/render-test/runner.hpp
-)
-
-if(CMAKE_SYSTEM_NAME STREQUAL iOS)
- set_target_properties(mbgl-render-test PROPERTIES XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET "${IOS_DEPLOYMENT_TARGET}")
- set_target_properties(mbgl-render-test PROPERTIES XCODE_ATTRIBUTE_ENABLE_BITCODE "YES")
- set_target_properties(mbgl-render-test PROPERTIES XCODE_ATTRIBUTE_BITCODE_GENERATION_MODE bitcode)
- set_target_properties(mbgl-render-test PROPERTIES XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH $<$<CONFIG:Debug>:YES>)
-endif()
-
-# FIXME: Should not use core private interface
-target_include_directories(
- mbgl-render-test
- PRIVATE ${MBGL_ROOT}/src ${MBGL_ROOT}/platform/default/include
-)
-
-target_include_directories(
- mbgl-render-test
- PUBLIC ${MBGL_ROOT}/render-test/include ${MBGL_ROOT}/include
-)
-
-include(${PROJECT_SOURCE_DIR}/vendor/boost.cmake)
-
-target_link_libraries(
- mbgl-render-test
- PRIVATE
- Mapbox::Base::Extras::args
- Mapbox::Base::Extras::filesystem
- Mapbox::Base::pixelmatch-cpp
- mbgl-compiler-options
- mbgl-vendor-boost
- PUBLIC mbgl-core
-)
-
-set_property(TARGET mbgl-render-test PROPERTY FOLDER Core)
diff --git a/next/test/CMakeLists.txt b/next/test/CMakeLists.txt
deleted file mode 100644
index 0dde4bd219..0000000000
--- a/next/test/CMakeLists.txt
+++ /dev/null
@@ -1,188 +0,0 @@
-add_library(
- mbgl-test STATIC EXCLUDE_FROM_ALL
- ${MBGL_ROOT}/test/actor/actor.test.cpp
- ${MBGL_ROOT}/test/actor/actor_ref.test.cpp
- ${MBGL_ROOT}/test/algorithm/update_renderables.test.cpp
- ${MBGL_ROOT}/test/algorithm/update_tile_masks.test.cpp
- ${MBGL_ROOT}/test/api/annotations.test.cpp
- ${MBGL_ROOT}/test/api/api_misuse.test.cpp
- ${MBGL_ROOT}/test/api/custom_geometry_source.test.cpp
- ${MBGL_ROOT}/test/api/custom_layer.test.cpp
- ${MBGL_ROOT}/test/api/query.test.cpp
- ${MBGL_ROOT}/test/api/recycle_map.cpp
- ${MBGL_ROOT}/test/geometry/dem_data.test.cpp
- ${MBGL_ROOT}/test/geometry/line_atlas.test.cpp
- ${MBGL_ROOT}/test/gl/bucket.test.cpp
- ${MBGL_ROOT}/test/gl/context.test.cpp
- ${MBGL_ROOT}/test/gl/gl_functions.test.cpp
- ${MBGL_ROOT}/test/gl/object.test.cpp
- ${MBGL_ROOT}/test/map/map.test.cpp
- ${MBGL_ROOT}/test/map/prefetch.test.cpp
- ${MBGL_ROOT}/test/map/transform.test.cpp
- ${MBGL_ROOT}/test/math/clamp.test.cpp
- ${MBGL_ROOT}/test/math/minmax.test.cpp
- ${MBGL_ROOT}/test/math/wrap.test.cpp
- ${MBGL_ROOT}/test/platform/settings.test.cpp
- ${MBGL_ROOT}/test/programs/symbol_program.test.cpp
- ${MBGL_ROOT}/test/renderer/backend_scope.test.cpp
- ${MBGL_ROOT}/test/renderer/image_manager.test.cpp
- ${MBGL_ROOT}/test/renderer/pattern_atlas.test.cpp
- ${MBGL_ROOT}/test/sprite/sprite_loader.test.cpp
- ${MBGL_ROOT}/test/sprite/sprite_parser.test.cpp
- ${MBGL_ROOT}/test/src/mbgl/test/fixture_log_observer.cpp
- ${MBGL_ROOT}/test/src/mbgl/test/getrss.cpp
- ${MBGL_ROOT}/test/src/mbgl/test/sqlite3_test_fs.cpp
- ${MBGL_ROOT}/test/src/mbgl/test/stub_file_source.cpp
- ${MBGL_ROOT}/test/src/mbgl/test/test.cpp
- ${MBGL_ROOT}/test/src/mbgl/test/util.cpp
- ${MBGL_ROOT}/test/storage/asset_file_source.test.cpp
- ${MBGL_ROOT}/test/storage/database_file_source.test.cpp
- ${MBGL_ROOT}/test/storage/headers.test.cpp
- ${MBGL_ROOT}/test/storage/http_file_source.test.cpp
- ${MBGL_ROOT}/test/storage/local_file_source.test.cpp
- ${MBGL_ROOT}/test/storage/main_resource_loader.test.cpp
- ${MBGL_ROOT}/test/storage/offline.test.cpp
- ${MBGL_ROOT}/test/storage/offline_database.test.cpp
- ${MBGL_ROOT}/test/storage/offline_download.test.cpp
- ${MBGL_ROOT}/test/storage/online_file_source.test.cpp
- ${MBGL_ROOT}/test/storage/resource.test.cpp
- ${MBGL_ROOT}/test/storage/sqlite.test.cpp
- ${MBGL_ROOT}/test/style/conversion/conversion_impl.test.cpp
- ${MBGL_ROOT}/test/style/conversion/function.test.cpp
- ${MBGL_ROOT}/test/style/conversion/geojson_options.test.cpp
- ${MBGL_ROOT}/test/style/conversion/layer.test.cpp
- ${MBGL_ROOT}/test/style/conversion/light.test.cpp
- ${MBGL_ROOT}/test/style/conversion/property_value.test.cpp
- ${MBGL_ROOT}/test/style/conversion/stringify.test.cpp
- ${MBGL_ROOT}/test/style/conversion/tileset.test.cpp
- ${MBGL_ROOT}/test/style/expression/expression.test.cpp
- ${MBGL_ROOT}/test/style/expression/util.test.cpp
- ${MBGL_ROOT}/test/style/filter.test.cpp
- ${MBGL_ROOT}/test/style/properties.test.cpp
- ${MBGL_ROOT}/test/style/property_expression.test.cpp
- ${MBGL_ROOT}/test/style/source.test.cpp
- ${MBGL_ROOT}/test/style/style.test.cpp
- ${MBGL_ROOT}/test/style/style_image.test.cpp
- ${MBGL_ROOT}/test/style/style_layer.test.cpp
- ${MBGL_ROOT}/test/style/style_parser.test.cpp
- ${MBGL_ROOT}/test/text/bidi.test.cpp
- ${MBGL_ROOT}/test/text/calculate_tile_distances.test.cpp
- ${MBGL_ROOT}/test/text/cross_tile_symbol_index.test.cpp
- ${MBGL_ROOT}/test/text/formatted.test.cpp
- ${MBGL_ROOT}/test/text/get_anchors.test.cpp
- ${MBGL_ROOT}/test/text/glyph_manager.test.cpp
- ${MBGL_ROOT}/test/text/glyph_pbf.test.cpp
- ${MBGL_ROOT}/test/text/language_tag.test.cpp
- ${MBGL_ROOT}/test/text/local_glyph_rasterizer.test.cpp
- ${MBGL_ROOT}/test/text/quads.test.cpp
- ${MBGL_ROOT}/test/text/shaping.test.cpp
- ${MBGL_ROOT}/test/text/tagged_string.test.cpp
- ${MBGL_ROOT}/test/tile/custom_geometry_tile.test.cpp
- ${MBGL_ROOT}/test/tile/geojson_tile.test.cpp
- ${MBGL_ROOT}/test/tile/geometry_tile_data.test.cpp
- ${MBGL_ROOT}/test/tile/raster_dem_tile.test.cpp
- ${MBGL_ROOT}/test/tile/raster_tile.test.cpp
- ${MBGL_ROOT}/test/tile/tile_cache.test.cpp
- ${MBGL_ROOT}/test/tile/tile_coordinate.test.cpp
- ${MBGL_ROOT}/test/tile/tile_id.test.cpp
- ${MBGL_ROOT}/test/tile/vector_tile.test.cpp
- ${MBGL_ROOT}/test/util/async_task.test.cpp
- ${MBGL_ROOT}/test/util/dtoa.test.cpp
- ${MBGL_ROOT}/test/util/geo.test.cpp
- ${MBGL_ROOT}/test/util/grid_index.test.cpp
- ${MBGL_ROOT}/test/util/http_timeout.test.cpp
- ${MBGL_ROOT}/test/util/image.test.cpp
- ${MBGL_ROOT}/test/util/mapbox.test.cpp
- ${MBGL_ROOT}/test/util/memory.test.cpp
- ${MBGL_ROOT}/test/util/merge_lines.test.cpp
- ${MBGL_ROOT}/test/util/number_conversions.test.cpp
- ${MBGL_ROOT}/test/util/offscreen_texture.test.cpp
- ${MBGL_ROOT}/test/util/position.test.cpp
- ${MBGL_ROOT}/test/util/projection.test.cpp
- ${MBGL_ROOT}/test/util/run_loop.test.cpp
- ${MBGL_ROOT}/test/util/string.test.cpp
- ${MBGL_ROOT}/test/util/text_conversions.test.cpp
- ${MBGL_ROOT}/test/util/thread.test.cpp
- ${MBGL_ROOT}/test/util/thread_local.test.cpp
- ${MBGL_ROOT}/test/util/tile_cover.test.cpp
- ${MBGL_ROOT}/test/util/tile_range.test.cpp
- ${MBGL_ROOT}/test/util/timer.test.cpp
- ${MBGL_ROOT}/test/util/token.test.cpp
- ${MBGL_ROOT}/test/util/url.test.cpp
-)
-
-if(MBGL_WITH_OPENGL)
- target_compile_definitions(
- mbgl-test
- PRIVATE MBGL_RENDER_BACKEND_OPENGL=1
- )
-endif()
-
-if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL Android AND ANDROID_NATIVE_API_LEVEL VERSION_LESS 24)
- message("Target platform does not support HTTP tests or dependencies not found.")
-
- set(MBGL_TEST_HAS_TEST_SERVER 0)
-else()
- set(MBGL_TEST_HAS_TEST_SERVER 1)
- target_sources(
- mbgl-test
- PRIVATE ${MBGL_ROOT}/test/src/mbgl/test/http_server.cpp
- )
- set_source_files_properties(
- ${MBGL_ROOT}/test/src/mbgl/test/http_server.cpp
- PROPERTIES
- COMPILE_FLAGS
- -Wno-shadow
- )
- target_include_directories(
- mbgl-test
- PRIVATE ${MBGL_ROOT}/vendor/cpp-httplib
- )
-endif()
-
-if(NOT DEFINED ENV{CI})
- set(MBGL_TEST_BUILD_ON_CI 0)
-else()
- set(MBGL_TEST_BUILD_ON_CI 1)
-endif()
-
-target_compile_definitions(
- mbgl-test
- PRIVATE TEST_HAS_SERVER=${MBGL_TEST_HAS_TEST_SERVER} CI_BUILD=${MBGL_TEST_BUILD_ON_CI}
-)
-
-target_include_directories(
- mbgl-test
- PRIVATE
- ${MBGL_ROOT}/platform/default/include
- ${MBGL_ROOT}/platform/gfx/gl/src
- ${MBGL_ROOT}/src
- ${MBGL_ROOT}/test/src
-)
-
-target_include_directories(
- mbgl-test
- PUBLIC ${MBGL_ROOT}/include ${MBGL_ROOT}/test/include
-)
-
-include(${PROJECT_SOURCE_DIR}/vendor/googletest.cmake)
-
-# Needed for testing private classes
-get_target_property(MBGL_CORE_PRIVATE_LIBRARIES mbgl-core LINK_LIBRARIES)
-
-target_link_libraries(
- mbgl-test
- PRIVATE
- ${MBGL_CORE_PRIVATE_LIBRARIES}
- Mapbox::Base::Extras::args
- Mapbox::Base::pixelmatch-cpp
- mbgl-compiler-options
- PUBLIC mbgl-core
-)
-
-target_link_libraries(
- mbgl-test
- PUBLIC mbgl-vendor-googletest
-)
-
-set_property(TARGET mbgl-test PROPERTY FOLDER Core)
diff --git a/next/vendor b/next/vendor
deleted file mode 120000
index 42a408bb6d..0000000000
--- a/next/vendor
+++ /dev/null
@@ -1 +0,0 @@
-../vendor/ \ No newline at end of file
diff --git a/platform/android/android.cmake b/platform/android/android.cmake
new file mode 100644
index 0000000000..fafaefd264
--- /dev/null
+++ b/platform/android/android.cmake
@@ -0,0 +1,483 @@
+if(NOT ANDROID_NDK_TOOLCHAIN_INCLUDED)
+ message(FATAL_ERROR "-- Toolchain file not included, see https://developer.android.com/ndk/guides/cmake")
+endif()
+
+target_compile_definitions(
+ mbgl-core
+ PUBLIC MBGL_USE_GLES2
+)
+
+include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/sqlite.cmake)
+
+target_compile_options(mbgl-vendor-icu PRIVATE $<$<CONFIG:Release>:-Oz> $<$<CONFIG:Release>:-Qunused-arguments> $<$<CONFIG:Release>:-flto>)
+
+target_compile_options(
+ mbgl-vendor-sqlite
+ PRIVATE $<$<CONFIG:Release>:-Oz> $<$<CONFIG:Release>:-Qunused-arguments> $<$<CONFIG:Release>:-flto>
+)
+
+target_compile_options(
+ mbgl-compiler-options
+ INTERFACE $<$<CONFIG:Release>:-Oz> $<$<CONFIG:Release>:-Qunused-arguments> $<$<CONFIG:Release>:-flto>
+)
+
+target_link_libraries(
+ mbgl-compiler-options
+ INTERFACE
+ $<$<CONFIG:Release>:-O2>
+ $<$<CONFIG:Release>:-Wl,--icf=all>
+ $<$<CONFIG:Release>:-flto>
+ $<$<CONFIG:Release>:-fuse-ld=gold>
+)
+
+target_sources(
+ mbgl-core
+ PRIVATE
+ ${PROJECT_SOURCE_DIR}/platform/android/src/android_renderer_backend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/android_renderer_backend.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/android_renderer_frontend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/android_renderer_frontend.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/annotation/marker.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/annotation/marker.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/annotation/multi_point.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/annotation/polygon.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/annotation/polygon.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/annotation/polyline.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/annotation/polyline.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/asset_manager.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/asset_manager_file_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/asset_manager_file_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/async_task.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/attach_env.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/attach_env.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/bitmap.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/bitmap.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/bitmap_factory.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/bitmap_factory.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/connectivity_listener.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/connectivity_listener.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/conversion/collection.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/conversion/collection.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/conversion/color.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/conversion/color.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/conversion/constant.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/conversion/constant.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/conversion/conversion.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/feature.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/feature.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/feature_collection.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/feature_collection.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/geometry.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/geometry.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/geometry_collection.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/geometry_collection.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/line_string.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/line_string.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/multi_line_string.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/multi_line_string.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/multi_point.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/multi_point.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/multi_polygon.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/multi_polygon.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/point.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/point.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/polygon.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/polygon.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geojson/util.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geometry/lat_lng.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geometry/lat_lng.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geometry/lat_lng_bounds.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geometry/lat_lng_bounds.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geometry/lat_lng_quad.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geometry/lat_lng_quad.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geometry/projected_meters.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/geometry/projected_meters.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gl_functions.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/graphics/pointf.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/graphics/pointf.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/graphics/rectf.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/graphics/rectf.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gson/json_array.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gson/json_array.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gson/json_element.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gson/json_element.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gson/json_object.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gson/json_object.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gson/json_primitive.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/gson/json_primitive.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/image.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/java/util.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/java/util.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/java_types.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/java_types.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/jni.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/jni.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/jni_native.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/jni_native.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/mapbox.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/mapbox.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/map/camera_position.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/map/camera_position.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/map/image.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/map/image.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/map_renderer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/map_renderer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/map_renderer_runnable.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/map_renderer_runnable.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/native_map_view.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/native_map_view.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_manager.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_manager.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_region.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_region.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_region_definition.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_region_definition.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_region_error.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_region_error.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_region_status.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/offline/offline_region_status.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/run_loop.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/run_loop_impl.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/snapshotter/map_snapshot.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/snapshotter/map_snapshot.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/snapshotter/map_snapshotter.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/snapshotter/map_snapshotter.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/string_util.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/android_conversion.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/filter.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/filter.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/position.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/position.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/property_expression.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/property_value.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/transition_options.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/transition_options.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/url_or_tileset.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/conversion/url_or_tileset.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/formatted.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/formatted.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/formatted_section.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/formatted_section.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/background_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/background_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/circle_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/circle_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/custom_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/custom_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/fill_extrusion_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/fill_extrusion_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/fill_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/fill_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/heatmap_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/heatmap_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/hillshade_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/hillshade_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/layer_manager.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/layer_manager.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/line_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/line_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/raster_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/raster_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/symbol_layer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/layers/symbol_layer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/light.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/light.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/position.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/position.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/custom_geometry_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/custom_geometry_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/geojson_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/geojson_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/image_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/image_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/raster_dem_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/raster_dem_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/raster_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/raster_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/unknown_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/unknown_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/vector_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/sources/vector_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/transition_options.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/transition_options.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/value.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/style/value.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/thread.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/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/gl/headless_backend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/map/map_snapshotter.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/asset_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/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/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
+ ${PROJECT_SOURCE_DIR}/platform/linux/src/headless_backend_egl.cpp
+)
+
+target_include_directories(
+ mbgl-core
+ PRIVATE ${PROJECT_SOURCE_DIR}/platform/default/include
+)
+
+target_link_libraries(
+ mbgl-core
+ PRIVATE
+ EGL
+ GLESv2
+ Mapbox::Base::jni.hpp
+ android
+ atomic
+ jnigraphics
+ log
+ mbgl-vendor-icu
+ mbgl-vendor-sqlite
+ z
+)
+
+add_library(
+ mbgl-core-android STATIC
+ ${PROJECT_SOURCE_DIR}/platform/android/src/file_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/file_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/http_file_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/i18n/collator.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/i18n/collator_jni.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/i18n/number_format.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/i18n/number_format_jni.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/logger.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/logger.hpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/logging_android.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/text/local_glyph_rasterizer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/text/local_glyph_rasterizer_jni.hpp
+)
+
+target_include_directories(
+ mbgl-core-android
+ PRIVATE ${PROJECT_SOURCE_DIR}/platform/default/include ${PROJECT_SOURCE_DIR}/src
+)
+
+target_link_libraries(
+ mbgl-core-android
+ PRIVATE Mapbox::Base::jni.hpp mbgl-compiler-options mbgl-core
+)
+
+add_library(
+ mapbox-gl SHARED
+ ${PROJECT_SOURCE_DIR}/platform/android/src/main.cpp
+)
+
+target_include_directories(
+ mapbox-gl
+ PRIVATE ${PROJECT_SOURCE_DIR}/platform/default/include ${PROJECT_SOURCE_DIR}/src
+)
+
+target_link_libraries(
+ mapbox-gl
+ PRIVATE
+ Mapbox::Base::jni.hpp
+ mbgl-compiler-options
+ mbgl-core
+ mbgl-core-android
+)
+
+add_library(
+ example-custom-layer MODULE
+ ${PROJECT_SOURCE_DIR}/platform/android/src/example_custom_layer.cpp
+)
+
+target_include_directories(
+ example-custom-layer
+ PRIVATE ${PROJECT_SOURCE_DIR}/include
+)
+
+target_link_libraries(
+ example-custom-layer
+ PRIVATE
+ GLESv2
+ Mapbox::Base::optional
+ Mapbox::Base::typewrapper
+ Mapbox::Base::value
+ Mapbox::Base::weak
+ log
+ mbgl-compiler-options
+)
+
+add_library(
+ mbgl-test-runner SHARED
+ ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/test_runner.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/test_runner_common.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/collator_test_stub.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/number_format_test_stub.cpp
+)
+
+target_include_directories(
+ mbgl-test-runner
+ PRIVATE ${ANDROID_NDK}/sources/android/native_app_glue ${PROJECT_SOURCE_DIR}/platform/android/src ${PROJECT_SOURCE_DIR}/src
+)
+
+target_link_libraries(
+ mbgl-test-runner
+ PRIVATE
+ Mapbox::Base::jni.hpp
+ mbgl-compiler-options
+ -Wl,--whole-archive
+ mbgl-test
+ -Wl,--no-whole-archive
+)
+
+if(ANDROID_NATIVE_API_LEVEL VERSION_LESS 24)
+ target_sources(
+ mbgl-test-runner
+ PRIVATE ${PROJECT_SOURCE_DIR}/platform/android/src/test/http_file_source_test_stub.cpp
+ )
+else()
+ set(CURL_DIR ${PROJECT_SOURCE_DIR}/vendor/curl-android-ios/prebuilt-with-ssl/android)
+ set(CURL_LIBRARY ${CURL_DIR}/${ANDROID_ABI}/libcurl.a)
+
+ target_sources(
+ mbgl-test-runner
+ PRIVATE ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/http_file_source.cpp
+ )
+ target_include_directories(
+ mbgl-test-runner
+ PRIVATE ${CURL_DIR}/include
+ )
+ target_link_libraries(
+ mbgl-test-runner
+ PRIVATE ${CURL_LIBRARY}
+ )
+endif()
+
+add_custom_command(
+ TARGET mbgl-test-runner PRE_BUILD
+ COMMAND
+ ${CMAKE_COMMAND}
+ -E
+ make_directory
+ ${PROJECT_SOURCE_DIR}/test/results
+ COMMAND
+ ${CMAKE_COMMAND}
+ -E
+ tar
+ "chf"
+ "test/android/app/src/main/assets/data.zip"
+ --format=zip
+ --files-from=test/android/app/src/main/assets/to_zip.txt
+ COMMAND
+ ${CMAKE_COMMAND}
+ -E
+ remove_directory
+ ${PROJECT_SOURCE_DIR}/test/results
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+)
+
+add_library(
+ mbgl-benchmark-runner SHARED
+ ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/benchmark_runner.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/test_runner_common.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/collator_test_stub.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/number_format_test_stub.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/http_file_source_test_stub.cpp
+)
+
+target_include_directories(
+ mbgl-benchmark-runner
+ PRIVATE ${ANDROID_NDK}/sources/android/native_app_glue ${PROJECT_SOURCE_DIR}/platform/android/src ${PROJECT_SOURCE_DIR}/src
+)
+
+target_link_libraries(
+ mbgl-benchmark-runner
+ PRIVATE
+ Mapbox::Base::jni.hpp
+ mbgl-compiler-options
+ -Wl,--whole-archive
+ mbgl-benchmark
+ -Wl,--no-whole-archive
+)
+
+add_custom_command(
+ TARGET mbgl-benchmark-runner PRE_BUILD
+ COMMAND
+ ${CMAKE_COMMAND}
+ -E
+ make_directory
+ ${PROJECT_SOURCE_DIR}/benchmark/results
+ COMMAND
+ ${CMAKE_COMMAND}
+ -E
+ tar
+ "chf"
+ "benchmark/android/app/src/main/assets/data.zip"
+ --format=zip
+ --files-from=benchmark/android/app/src/main/assets/to_zip.txt
+ COMMAND
+ ${CMAKE_COMMAND}
+ -E
+ remove_directory
+ ${PROJECT_SOURCE_DIR}/benchmark/results
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+)
+
+add_library(
+ mbgl-render-test-runner SHARED
+ ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/render_test_runner.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/test_runner_common.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/collator_test_stub.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/number_format_test_stub.cpp
+ ${PROJECT_SOURCE_DIR}/platform/android/src/test/http_file_source_test_stub.cpp
+)
+
+target_include_directories(
+ mbgl-render-test-runner
+ PRIVATE ${ANDROID_NDK}/sources/android/native_app_glue ${PROJECT_SOURCE_DIR}/platform/android/src ${PROJECT_SOURCE_DIR}/src
+)
+
+target_link_libraries(
+ mbgl-render-test-runner
+ PRIVATE
+ Mapbox::Base::jni.hpp
+ android
+ log
+ mbgl-compiler-options
+ mbgl-render-test
+)
+
+add_custom_command(
+ TARGET mbgl-render-test-runner PRE_BUILD
+ COMMAND
+ ${CMAKE_COMMAND}
+ -E
+ tar
+ "chf"
+ "render-test/android/app/src/main/assets/data.zip"
+ --format=zip
+ --files-from=render-test/android/app/src/main/assets/to_zip.txt
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+)
+
+install(TARGETS mapbox-gl LIBRARY DESTINATION lib)
diff --git a/next/platform/glfw/CMakeLists.txt b/platform/glfw/CMakeLists.txt
index a599082584..0b26cc83b1 100644
--- a/next/platform/glfw/CMakeLists.txt
+++ b/platform/glfw/CMakeLists.txt
@@ -5,12 +5,12 @@ pkg_search_module(GLFW glfw3 REQUIRED)
add_executable(
mbgl-glfw
- ${MBGL_ROOT}/platform/glfw/main.cpp
- ${MBGL_ROOT}/platform/glfw/glfw_view.cpp
- ${MBGL_ROOT}/platform/glfw/glfw_gl_backend.cpp
- ${MBGL_ROOT}/platform/glfw/glfw_renderer_frontend.cpp
- ${MBGL_ROOT}/platform/glfw/settings_json.cpp
- ${MBGL_ROOT}/platform/glfw/test_writer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/glfw/main.cpp
+ ${PROJECT_SOURCE_DIR}/platform/glfw/glfw_view.cpp
+ ${PROJECT_SOURCE_DIR}/platform/glfw/glfw_gl_backend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/glfw/glfw_renderer_frontend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/glfw/settings_json.cpp
+ ${PROJECT_SOURCE_DIR}/platform/glfw/test_writer.cpp
)
target_include_directories(
diff --git a/platform/ios/ios.cmake b/platform/ios/ios.cmake
new file mode 100644
index 0000000000..ce64d3e729
--- /dev/null
+++ b/platform/ios/ios.cmake
@@ -0,0 +1,193 @@
+target_compile_definitions(
+ mbgl-core
+ PUBLIC MBGL_USE_GLES2 GLES_SILENCE_DEPRECATION
+)
+
+if(NOT DEFINED IOS_DEPLOYMENT_TARGET)
+ set(IOS_DEPLOYMENT_TARGET "9.0")
+endif()
+
+macro(initialize_ios_target target)
+ set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET "${IOS_DEPLOYMENT_TARGET}")
+ set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_ENABLE_BITCODE "YES")
+ set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_BITCODE_GENERATION_MODE bitcode)
+ set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH $<$<CONFIG:Debug>:YES>)
+endmacro()
+
+set_target_properties(mbgl-core PROPERTIES XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES)
+
+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/gl_functions.cpp
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/headless_backend_eagl.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/native_apple_interface.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/http_file_source.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/native_apple_interface.m
+ ${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/nsthread.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/number_format.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/reachability.m
+ ${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/gl/headless_backend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/map/map_snapshotter.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/asset_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/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/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
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/thread_local.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/layermanager/layer_manager.cpp
+)
+
+target_include_directories(
+ mbgl-core
+ PRIVATE ${PROJECT_SOURCE_DIR}/platform/darwin/include ${PROJECT_SOURCE_DIR}/platform/default/include
+)
+
+include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
+
+initialize_ios_target(mbgl-core)
+initialize_ios_target(mbgl-vendor-icu)
+
+target_link_libraries(
+ mbgl-core
+ PRIVATE
+ "-framework CoreGraphics"
+ "-framework CoreImage"
+ "-framework CoreLocation"
+ "-framework CoreServices"
+ "-framework CoreText"
+ "-framework Foundation"
+ "-framework GLKit"
+ "-framework ImageIO"
+ "-framework OpenGLES"
+ "-framework QuartzCore"
+ "-framework Security"
+ "-framework SystemConfiguration"
+ "-framework UIKit"
+ "-framework WebKit"
+ mbgl-vendor-icu
+ sqlite3
+ z
+)
+
+if(MBGL_IOS_RENDER_TEST)
+ set(CMAKE_OSX_ARCHITECTURES "armv7;i386;x86_64;arm64")
+
+ include(${PROJECT_SOURCE_DIR}/vendor/zip-archive.cmake)
+ initialize_ios_target(mbgl-vendor-zip-archive)
+
+ set(PREPARE_CMD "${PROJECT_SOURCE_DIR}/render-test/ios/setup_test_data.sh")
+ message("COMMAND: ${PREPARE_CMD}")
+ execute_process(COMMAND ${PREPARE_CMD} RESULT_VARIABLE CMD_ERROR WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+ message(STATUS "CMD_ERROR:" ${CMD_ERROR})
+
+ set(RESOURCES ${PROJECT_SOURCE_DIR}/render-test/ios/Main.storyboard ${PROJECT_SOURCE_DIR}/render-test/ios/LaunchScreen.storyboard ${PROJECT_SOURCE_DIR}/test-data)
+
+ add_executable(
+ RenderTestApp
+ ${PROJECT_SOURCE_DIR}/render-test/ios/ios_test_runner.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/ios/ios_test_runner.cpp
+ ${PROJECT_SOURCE_DIR}/render-test/ios/AppDelegate.h
+ ${PROJECT_SOURCE_DIR}/render-test/ios/AppDelegate.m
+ ${PROJECT_SOURCE_DIR}/render-test/ios/ViewController.h
+ ${PROJECT_SOURCE_DIR}/render-test/ios/ViewController.m
+ ${PROJECT_SOURCE_DIR}/render-test/ios/iosTestRunner.h
+ ${PROJECT_SOURCE_DIR}/render-test/ios/iosTestRunner.mm
+ ${PROJECT_SOURCE_DIR}/render-test/ios/main.m
+ ${RESOURCES}
+ )
+ initialize_ios_target(RenderTestApp)
+
+ set_target_properties(
+ RenderTestApp
+ PROPERTIES
+ MACOSX_BUNDLE
+ TRUE
+ MACOSX_BUNDLE_IDENTIFIER
+ com.mapbox.RenderTestAPP
+ MACOSX_BUNDLE_INFO_PLIST
+ ${PROJECT_SOURCE_DIR}/render-test/ios/Info.plist
+ RESOURCE
+ "${RESOURCES}"
+ )
+
+ target_include_directories(
+ RenderTestApp
+ PUBLIC {PROJECT_SOURCE_DIR}/render-test/include ${PROJECT_SOURCE_DIR}/include
+ )
+
+ target_include_directories(
+ RenderTestApp
+ PRIVATE
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src
+ ${PROJECT_SOURCE_DIR}/platform/darwin/include
+ ${PROJECT_SOURCE_DIR}/platform/darwin/include/mbgl/interface/
+ ${PROJECT_SOURCE_DIR}/platform/default/include
+ ${PROJECT_SOURCE_DIR}/src
+ )
+
+ target_include_directories(
+ RenderTestApp
+ PUBLIC ${PROJECT_SOURCE_DIR}/render-test/ios
+ )
+
+ target_link_libraries(
+ RenderTestApp
+ PRIVATE
+ "-framework CoreGraphics"
+ "-framework CoreLocation"
+ "-framework Foundation"
+ "-framework OpenGLES"
+ "-framework QuartzCore"
+ "-framework UIKit"
+ mbgl-render-test
+ mbgl-vendor-zip-archive
+ )
+
+ find_package(XCTest REQUIRED)
+
+ xctest_add_bundle(RenderTestAppTests RenderTestApp ${PROJECT_SOURCE_DIR}/render-test/ios/tests/Tests.m)
+
+ set_target_properties(
+ RenderTestAppTests
+ PROPERTIES
+ XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET
+ "${IOS_DEPLOYMENT_TARGET}"
+ XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH
+ $<$<CONFIG:Debug>:YES>
+ )
+
+ target_include_directories(
+ RenderTestAppTests
+ PUBLIC ${PROJECT_SOURCE_DIR}/render-test/ios
+ )
+
+ xctest_add_test(XCTest.RenderTestApp RenderTestAppTests)
+
+ set_target_properties(RenderTestAppTests PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${PROJECT_SOURCE_DIR}/render-test/ios/tests/Info.plist)
+endif()
+
+unset(IOS_DEPLOYMENT_TARGET CACHE)
diff --git a/platform/linux/linux.cmake b/platform/linux/linux.cmake
new file mode 100644
index 0000000000..bf89601a57
--- /dev/null
+++ b/platform/linux/linux.cmake
@@ -0,0 +1,134 @@
+find_package(CURL REQUIRED)
+find_package(ICU REQUIRED i18n)
+find_package(ICU REQUIRED uc)
+find_package(JPEG REQUIRED)
+find_package(OpenGL REQUIRED GLX)
+find_package(PNG REQUIRED)
+find_package(PkgConfig REQUIRED)
+find_package(X11 REQUIRED)
+
+pkg_search_module(LIBUV libuv REQUIRED)
+
+target_sources(
+ mbgl-core
+ PRIVATE
+ ${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/gl/headless_backend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/i18n/collator.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/i18n/number_format.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/layermanager/layer_manager.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/asset_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/http_file_source.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/sqlite3.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/text/bidi.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/async_task.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/compression.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/image.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/jpeg_reader.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/logging_stderr.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/monotonic_timer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/png_reader.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/png_writer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/run_loop.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/string_stdlib.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/thread.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/thread_local.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/timer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/utf.cpp
+ ${PROJECT_SOURCE_DIR}/platform/linux/src/gl_functions.cpp
+ ${PROJECT_SOURCE_DIR}/platform/linux/src/headless_backend_glx.cpp
+)
+
+# FIXME: Should not be needed, but now needed by node because of the headless frontend.
+target_include_directories(
+ mbgl-core
+ PUBLIC ${PROJECT_SOURCE_DIR}/platform/default/include
+ PRIVATE
+ ${CURL_INCLUDE_DIRS}
+ ${JPEG_INCLUDE_DIRS}
+ ${LIBUV_INCLUDE_DIRS}
+ ${X11_INCLUDE_DIRS}
+)
+
+include(${PROJECT_SOURCE_DIR}/vendor/nunicode.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/sqlite.cmake)
+
+target_link_libraries(
+ mbgl-core
+ PRIVATE
+ ${CURL_LIBRARIES}
+ ${JPEG_LIBRARIES}
+ ${LIBUV_LIBRARIES}
+ ${X11_LIBRARIES}
+ ICU::i18n
+ ICU::uc
+ OpenGL::GLX
+ PNG::PNG
+ mbgl-vendor-nunicode
+ mbgl-vendor-sqlite
+)
+
+add_subdirectory(${PROJECT_SOURCE_DIR}/bin)
+add_subdirectory(${PROJECT_SOURCE_DIR}/expression-test)
+add_subdirectory(${PROJECT_SOURCE_DIR}/platform/glfw)
+add_subdirectory(${PROJECT_SOURCE_DIR}/platform/node)
+
+add_executable(
+ mbgl-test-runner
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/test/main.cpp
+)
+
+target_compile_definitions(
+ mbgl-test-runner
+ PRIVATE WORK_DIRECTORY=${PROJECT_SOURCE_DIR}
+)
+
+target_link_libraries(
+ mbgl-test-runner
+ PRIVATE
+ mbgl-compiler-options
+ -Wl,--whole-archive
+ mbgl-test
+ -Wl,--no-whole-archive
+)
+
+add_executable(
+ mbgl-benchmark-runner
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/benchmark/main.cpp
+)
+
+target_link_libraries(
+ mbgl-benchmark-runner
+ PRIVATE
+ mbgl-compiler-options
+ -Wl,--whole-archive
+ mbgl-benchmark
+ -Wl,--no-whole-archive
+)
+
+add_executable(
+ mbgl-render-test-runner
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/render-test/main.cpp
+)
+
+target_link_libraries(
+ mbgl-render-test-runner
+ PRIVATE mbgl-compiler-options mbgl-render-test
+)
+
+add_test(NAME mbgl-benchmark-runner COMMAND mbgl-benchmark-runner WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+add_test(NAME mbgl-test-runner COMMAND mbgl-test-runner WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+
+install(TARGETS mbgl-render-test-runner RUNTIME DESTINATION bin)
diff --git a/platform/macos/macos.cmake b/platform/macos/macos.cmake
new file mode 100644
index 0000000000..ddf74bdc59
--- /dev/null
+++ b/platform/macos/macos.cmake
@@ -0,0 +1,213 @@
+find_package(OpenGL REQUIRED)
+
+target_compile_definitions(
+ mbgl-core
+ PUBLIC GL_SILENCE_DEPRECATION
+)
+
+target_sources(
+ mbgl-core
+ PRIVATE
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLAccountManager.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLAttributedExpression.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLAttributionInfo.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLBackgroundStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLCircleStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLClockDirectionFormatter.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLCompassDirectionFormatter.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLComputedShapeSource.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLCoordinateFormatter.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLDistanceFormatter.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLFeature.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLFillExtrusionStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLFillStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLForegroundStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLFoundation.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLGeometry.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLHeatmapStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLHillshadeStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLImageSource.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLLight.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLLineStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLLoggingConfiguration.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLMapCamera.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLMapSnapshotter.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLMultiPoint.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLNetworkConfiguration.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLOfflinePack.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLOfflineStorage.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLOpenGLStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLPointAnnotation.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLPointCollection.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLPolygon.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLPolyline.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLRasterDEMSource.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLRasterStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLRasterTileSource.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLRendererConfiguration.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLSDKMetricsManager.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLShape.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLShapeCollection.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLShapeOfflineRegion.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLShapeSource.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLSource.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLStyle.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLStyleLayerManager.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLStyleValue.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLSymbolStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLTilePyramidOfflineRegion.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLTileSource.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLTypes.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLVectorStyleLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLVectorTileSource.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSArray+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSBundle+MGLAdditions.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSCoder+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSComparisonPredicate+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSCompoundPredicate+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSDate+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSDictionary+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSExpression+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSPredicate+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSString+MGLAdditions.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSURL+MGLAdditions.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSValue+MGLAdditions.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/NSValue+MGLStyleAttributeAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/async_task.cpp
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/collator.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/gl_functions.cpp
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/headless_backend_cgl.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/nsthread.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/number_format.mm
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/reachability.m
+ ${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/darwin/src/native_apple_interface.m
+ ${PROJECT_SOURCE_DIR}/platform/darwin/src/MGLNetworkIntegrationManager.m
+ ${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/gl/headless_backend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/map/map_snapshotter.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/asset_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/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/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
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/MGLAnnotationImage.m
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/MGLAttributionButton.mm
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/MGLCompassCell.m
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/MGLMapView+IBAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/MGLMapView+Impl.mm
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/MGLMapView+OpenGL.mm
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/MGLMapView.mm
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/MGLOpenGLLayer.mm
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/NSColor+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/NSImage+MGLAdditions.mm
+ ${PROJECT_SOURCE_DIR}/platform/macos/src/NSProcessInfo+MGLAdditions.m
+)
+
+set_target_properties(mbgl-core PROPERTIES XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES)
+
+target_compile_options(mbgl-core PRIVATE -fobjc-arc)
+
+# FIXME: Should not be needed, but now needed by node because of the headless frontend.
+target_include_directories(
+ mbgl-core
+ PUBLIC ${PROJECT_SOURCE_DIR}/platform/default/include
+)
+
+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"
+ OpenGL::GL
+ mbgl-vendor-icu
+ sqlite3
+ z
+)
+
+add_subdirectory(${PROJECT_SOURCE_DIR}/bin)
+add_subdirectory(${PROJECT_SOURCE_DIR}/expression-test)
+add_subdirectory(${PROJECT_SOURCE_DIR}/platform/glfw)
+add_subdirectory(${PROJECT_SOURCE_DIR}/platform/node)
+
+add_executable(
+ mbgl-test-runner
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/test/main.cpp
+)
+
+target_include_directories(
+ mbgl-test-runner
+ PUBLIC ${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/test/include
+)
+
+target_compile_definitions(
+ mbgl-test-runner
+ PRIVATE WORK_DIRECTORY=${PROJECT_SOURCE_DIR}
+)
+
+target_link_libraries(
+ mbgl-test-runner
+ PRIVATE mbgl-compiler-options -Wl,-force_load mbgl-test
+)
+
+add_executable(
+ mbgl-benchmark-runner
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/benchmark/main.cpp
+)
+
+target_include_directories(
+ mbgl-benchmark-runner
+ PUBLIC ${PROJECT_SOURCE_DIR}/benchmark/include
+)
+
+target_link_libraries(
+ mbgl-benchmark-runner
+ PRIVATE mbgl-compiler-options -Wl,-force_load mbgl-benchmark
+)
+
+add_executable(
+ mbgl-render-test-runner
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/render-test/main.cpp
+)
+
+target_link_libraries(
+ mbgl-render-test-runner
+ PRIVATE mbgl-compiler-options mbgl-render-test
+)
+
+set_property(TARGET mbgl-benchmark-runner PROPERTY FOLDER Executables)
+set_property(TARGET mbgl-test-runner PROPERTY FOLDER Executables)
+set_property(TARGET mbgl-render-test-runner PROPERTY FOLDER Executables)
+
+add_test(NAME mbgl-benchmark-runner COMMAND mbgl-benchmark-runner WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+add_test(NAME mbgl-test-runner COMMAND mbgl-test-runner WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
diff --git a/platform/node/CMakeLists.txt b/platform/node/CMakeLists.txt
new file mode 100644
index 0000000000..9d7d08b07c
--- /dev/null
+++ b/platform/node/CMakeLists.txt
@@ -0,0 +1,52 @@
+if(NOT EXISTS ${PROJECT_SOURCE_DIR}/node_modules/@mapbox/cmake-node-module/module.cmake)
+ message("-- Not building node bindings, dependencies not found. Run 'npm update'.")
+ return()
+endif()
+
+set(NODE_MODULE_CACHE_DIR ${CMAKE_SOURCE_DIR}/build/headers)
+include(${PROJECT_SOURCE_DIR}/node_modules/@mapbox/cmake-node-module/module.cmake)
+
+add_node_module(
+ mbgl-node
+ INSTALL_PATH ${PROJECT_SOURCE_DIR}/lib/{node_abi}/mbgl.node
+ NAN_VERSION 2.10.0
+ EXCLUDE_NODE_ABIS
+ 46
+ 47
+ 48
+ 51
+ 59
+ 67
+ 72
+ 79
+)
+
+target_sources(
+ mbgl-node
+ INTERFACE
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_conversion.hpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_expression.cpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_expression.hpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_feature.cpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_feature.hpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_logging.cpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_logging.hpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_map.cpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_map.hpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_mapbox_gl_native.cpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_request.cpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/node_request.hpp
+ ${PROJECT_SOURCE_DIR}/platform/node/src/util/async_queue.hpp
+)
+
+target_link_libraries(
+ mbgl-node
+ INTERFACE Mapbox::Map
+)
+
+# FIXME: Node bindings only run fully on Linux now because it requires libuv RunLoop (which is the default on Linux). Also, Sanitizer will
+# not work here because node will do a dlopen(), which is not currently supported.
+if(CMAKE_SYSTEM_NAME STREQUAL Linux AND NOT MBGL_WITH_SANITIZER)
+ add_test(NAME mbgl-node-memory COMMAND npm run test-memory WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+ add_test(NAME mbgl-node-test COMMAND npm run test WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+endif()
diff --git a/platform/qt/qt.cmake b/platform/qt/qt.cmake
new file mode 100644
index 0000000000..a7d209a077
--- /dev/null
+++ b/platform/qt/qt.cmake
@@ -0,0 +1,214 @@
+# Note: Using Sqlite instead of QSqlDatabase for better compatibility.
+
+find_package(Qt5Gui REQUIRED)
+find_package(Qt5Network REQUIRED)
+find_package(Qt5OpenGL REQUIRED)
+find_package(Qt5Widgets REQUIRED)
+
+if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
+ add_definitions("-DQT_COMPILING_QIMAGE_COMPAT_CPP")
+ add_definitions("-D_USE_MATH_DEFINES")
+ add_definitions("-Wno-deprecated-declarations")
+ add_definitions("-Wno-inconsistent-missing-override")
+ add_definitions("-Wno-macro-redefined")
+ add_definitions("-Wno-microsoft-exception-spec")
+ add_definitions("-Wno-unknown-argument")
+ add_definitions("-Wno-unknown-warning-option")
+ add_definitions("-Wno-unused-command-line-argument")
+ add_definitions("-Wno-unused-local-typedef")
+ add_definitions("-Wno-unused-private-field")
+endif()
+
+target_sources(
+ mbgl-core
+ PRIVATE
+ ${PROJECT_SOURCE_DIR}/platform/$<IF:$<PLATFORM_ID:Windows>,qt/src/bidi.cpp,default/src/mbgl/text/bidi.cpp>
+ ${PROJECT_SOURCE_DIR}/platform/default/include/mbgl/gfx/headless_backend.hpp
+ ${PROJECT_SOURCE_DIR}/platform/default/include/mbgl/gfx/headless_frontend.hpp
+ ${PROJECT_SOURCE_DIR}/platform/default/include/mbgl/gl/headless_backend.hpp
+ ${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/gl/headless_backend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/i18n/collator.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/layermanager/layer_manager.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/storage/asset_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/sqlite3.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/compression.cpp
+ ${PROJECT_SOURCE_DIR}/platform/default/src/mbgl/util/monotonic_timer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/async_task.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/async_task_impl.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/number_format.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/gl_functions.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/headless_backend_qt.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/http_file_source.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/http_file_source.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/http_request.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/http_request.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/local_glyph_rasterizer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qt_image.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qt_logging.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/run_loop.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/run_loop_impl.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/string_stdlib.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/thread.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/thread_local.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/timer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/timer_impl.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/utf.cpp
+)
+
+target_compile_definitions(
+ mbgl-core
+ PRIVATE QT_IMAGE_DECODERS
+ PUBLIC __QT__ MBGL_USE_GLES2
+)
+
+target_include_directories(
+ mbgl-core
+ PRIVATE ${PROJECT_SOURCE_DIR}/platform/default/include
+)
+
+include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/nunicode.cmake)
+include(${PROJECT_SOURCE_DIR}/vendor/sqlite.cmake)
+
+target_link_libraries(
+ mbgl-core
+ PRIVATE
+ $<$<NOT:$<PLATFORM_ID:Windows>>:z>
+ $<$<NOT:$<PLATFORM_ID:Windows>>:mbgl-vendor-icu>
+ Qt5::Core
+ Qt5::Gui
+ Qt5::Network
+ Qt5::OpenGL
+ mbgl-vendor-nunicode
+ mbgl-vendor-sqlite
+)
+
+add_library(
+ qmapboxgl SHARED
+ ${PROJECT_SOURCE_DIR}/platform/qt/include/qmapbox.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/include/qmapboxgl.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapbox.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_map_observer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_map_observer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_map_renderer.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_map_renderer.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_p.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_renderer_backend.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_renderer_backend.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_scheduler.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qmapboxgl_scheduler.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qt_conversion.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qt_geojson.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/src/qt_geojson.hpp
+)
+
+# FIXME: Because of rapidjson conversion
+target_include_directories(
+ qmapboxgl
+ PRIVATE ${PROJECT_SOURCE_DIR}/src
+)
+
+target_include_directories(
+ qmapboxgl
+ PUBLIC ${PROJECT_SOURCE_DIR}/platform/qt/include
+)
+
+target_compile_definitions(
+ qmapboxgl
+ PRIVATE QT_BUILD_MAPBOXGL_LIB
+)
+
+target_link_libraries(
+ qmapboxgl
+ PRIVATE
+ Qt5::Core
+ Qt5::Gui
+ mbgl-compiler-options
+ mbgl-core
+)
+
+add_executable(
+ mbgl-qt
+ ${PROJECT_SOURCE_DIR}/platform/qt/app/main.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/app/mapwindow.cpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/app/mapwindow.hpp
+ ${PROJECT_SOURCE_DIR}/platform/qt/resources/common.qrc
+)
+
+# Qt public API should keep compatibility with old compilers for legacy systems
+set_property(TARGET mbgl-qt PROPERTY CXX_STANDARD 98)
+
+target_link_libraries(
+ mbgl-qt
+ PRIVATE
+ Qt5::Widgets
+ Qt5::Gui
+ mbgl-compiler-options
+ qmapboxgl
+)
+
+add_executable(
+ mbgl-test-runner
+ ${PROJECT_SOURCE_DIR}/platform/qt/test/main.cpp
+)
+
+target_include_directories(
+ mbgl-test-runner
+ PUBLIC ${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/test/include
+)
+
+target_compile_definitions(
+ mbgl-test-runner
+ PRIVATE WORK_DIRECTORY=${PROJECT_SOURCE_DIR}
+)
+
+target_link_libraries(
+ mbgl-test-runner
+ PRIVATE
+ Qt5::Gui
+ Qt5::OpenGL
+ mbgl-compiler-options
+ pthread
+)
+
+if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
+ target_link_libraries(
+ mbgl-test-runner
+ PRIVATE -Wl,-force_load mbgl-test
+ )
+else()
+ target_link_libraries(
+ mbgl-test-runner
+ PRIVATE -Wl,--whole-archive mbgl-test -Wl,--no-whole-archive
+ )
+endif()
+
+find_program(MBGL_QDOC NAMES qdoc)
+
+if(MBGL_QDOC)
+ add_custom_target(mbgl-qt-docs)
+
+ add_custom_command(
+ TARGET mbgl-qt-docs PRE_BUILD
+ COMMAND
+ ${MBGL_QDOC}
+ ${PROJECT_SOURCE_DIR}/platform/qt/config.qdocconf
+ -outputdir
+ ${CMAKE_BINARY_DIR}/docs
+ )
+endif()
+
+add_test(NAME mbgl-test-runner COMMAND mbgl-test-runner WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
diff --git a/render-test/CMakeLists.txt b/render-test/CMakeLists.txt
new file mode 100644
index 0000000000..914199a7a0
--- /dev/null
+++ b/render-test/CMakeLists.txt
@@ -0,0 +1,52 @@
+add_library(
+ mbgl-render-test STATIC EXCLUDE_FROM_ALL
+ ${PROJECT_SOURCE_DIR}/expression-test/test_runner_common.cpp
+ ${PROJECT_SOURCE_DIR}/expression-test/test_runner_common.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/allocation_index.cpp
+ ${PROJECT_SOURCE_DIR}/render-test/allocation_index.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/file_source.cpp
+ ${PROJECT_SOURCE_DIR}/render-test/file_source.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/filesystem.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/include/mbgl/render_test.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/manifest_parser.cpp
+ ${PROJECT_SOURCE_DIR}/render-test/manifest_parser.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/metadata.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/parser.cpp
+ ${PROJECT_SOURCE_DIR}/render-test/parser.hpp
+ ${PROJECT_SOURCE_DIR}/render-test/render_test.cpp
+ ${PROJECT_SOURCE_DIR}/render-test/runner.cpp
+ ${PROJECT_SOURCE_DIR}/render-test/runner.hpp
+)
+
+if(CMAKE_SYSTEM_NAME STREQUAL iOS)
+ set_target_properties(mbgl-render-test PROPERTIES XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET "${IOS_DEPLOYMENT_TARGET}")
+ set_target_properties(mbgl-render-test PROPERTIES XCODE_ATTRIBUTE_ENABLE_BITCODE "YES")
+ set_target_properties(mbgl-render-test PROPERTIES XCODE_ATTRIBUTE_BITCODE_GENERATION_MODE bitcode)
+ set_target_properties(mbgl-render-test PROPERTIES XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH $<$<CONFIG:Debug>:YES>)
+endif()
+
+# FIXME: Should not use core private interface
+target_include_directories(
+ mbgl-render-test
+ PRIVATE ${PROJECT_SOURCE_DIR}/src ${PROJECT_SOURCE_DIR}/platform/default/include
+)
+
+target_include_directories(
+ mbgl-render-test
+ PUBLIC ${PROJECT_SOURCE_DIR}/render-test/include ${PROJECT_SOURCE_DIR}/include
+)
+
+include(${PROJECT_SOURCE_DIR}/vendor/boost.cmake)
+
+target_link_libraries(
+ mbgl-render-test
+ PRIVATE
+ Mapbox::Base::Extras::args
+ Mapbox::Base::Extras::filesystem
+ Mapbox::Base::pixelmatch-cpp
+ mbgl-compiler-options
+ mbgl-vendor-boost
+ PUBLIC mbgl-core
+)
+
+set_property(TARGET mbgl-render-test PROPERTY FOLDER Core)
diff --git a/render-test/android/app/build.gradle b/render-test/android/app/build.gradle
index b4d230381e..5b85ea512c 100644
--- a/render-test/android/app/build.gradle
+++ b/render-test/android/app/build.gradle
@@ -34,7 +34,7 @@ android {
externalNativeBuild {
cmake {
version '3.10.2'
- path '../../../next/CMakeLists.txt'
+ path '../../../CMakeLists.txt'
}
}
buildTypes {
diff --git a/render-test/ios/setup_test_data.sh b/render-test/ios/setup_test_data.sh
index fbce92f85f..0461622341 100755
--- a/render-test/ios/setup_test_data.sh
+++ b/render-test/ios/setup_test_data.sh
@@ -1,16 +1,17 @@
#!/bin/bash
-rm -rf ../../test-data
-mkdir ../../test-data
-mkdir ../../test-data/integration
-mkdir ../../test-data/baselines
-cp -r ../../mapbox-gl-js/test/integration/render-tests ../../test-data/integration/
-cp -r ../../mapbox-gl-js/test/integration/query-tests ../../test-data/integration/
-cp -r ../../metrics/expectations ../../test-data/
-cp -r ../../metrics/ignores ../../test-data/
-cp -r ../../metrics/tests ../../test-data/
-cp -r ../../metrics/ios-render-test-runner ../../test-data/
-cp -r ../../metrics/ios-render-test-runner-style.json ../../test-data/
-cp -r ../../metrics/ios-render-test-runner-metrics.json ../../test-data/
-cp -r ../../metrics/cache-metrics.db ../../test-data/
-cp -r ../../metrics/cache-style.db ../../test-data/
+rm -rf test-data/
+
+mkdir -p test-data/integration/
+mkdir -p test-data/baselines/
+
+cp -r mapbox-gl-js/test/integration/render-tests test-data/integration/
+cp -r mapbox-gl-js/test/integration/query-tests test-data/integration/
+cp -r metrics/expectations test-data/
+cp -r metrics/ignores test-data/
+cp -r metrics/tests test-data/
+cp -r metrics/ios-render-test-runner test-data/
+cp -r metrics/ios-render-test-runner-style.json test-data/
+cp -r metrics/ios-render-test-runner-metrics.json test-data/
+cp -r metrics/cache-metrics.db test-data/
+cp -r metrics/cache-style.db test-data/
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
new file mode 100644
index 0000000000..dcde7cd21a
--- /dev/null
+++ b/test/CMakeLists.txt
@@ -0,0 +1,188 @@
+add_library(
+ mbgl-test STATIC EXCLUDE_FROM_ALL
+ ${PROJECT_SOURCE_DIR}/test/actor/actor.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/actor/actor_ref.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/algorithm/update_renderables.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/algorithm/update_tile_masks.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/api/annotations.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/api/api_misuse.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/api/custom_geometry_source.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/api/custom_layer.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/api/query.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/api/recycle_map.cpp
+ ${PROJECT_SOURCE_DIR}/test/geometry/dem_data.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/geometry/line_atlas.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/gl/bucket.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/gl/context.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/gl/gl_functions.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/gl/object.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/map/map.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/map/prefetch.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/map/transform.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/math/clamp.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/math/minmax.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/math/wrap.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/platform/settings.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/programs/symbol_program.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/renderer/backend_scope.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/renderer/image_manager.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/renderer/pattern_atlas.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/sprite/sprite_loader.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/sprite/sprite_parser.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/src/mbgl/test/fixture_log_observer.cpp
+ ${PROJECT_SOURCE_DIR}/test/src/mbgl/test/getrss.cpp
+ ${PROJECT_SOURCE_DIR}/test/src/mbgl/test/sqlite3_test_fs.cpp
+ ${PROJECT_SOURCE_DIR}/test/src/mbgl/test/stub_file_source.cpp
+ ${PROJECT_SOURCE_DIR}/test/src/mbgl/test/test.cpp
+ ${PROJECT_SOURCE_DIR}/test/src/mbgl/test/util.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/asset_file_source.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/database_file_source.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/headers.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/http_file_source.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/local_file_source.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/main_resource_loader.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/offline.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/offline_database.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/offline_download.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/online_file_source.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/resource.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/storage/sqlite.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/conversion/conversion_impl.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/conversion/function.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/conversion/geojson_options.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/conversion/layer.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/conversion/light.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/conversion/property_value.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/conversion/stringify.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/conversion/tileset.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/expression/expression.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/expression/util.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/filter.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/properties.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/property_expression.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/source.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/style.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/style_image.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/style_layer.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/style/style_parser.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/bidi.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/calculate_tile_distances.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/cross_tile_symbol_index.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/formatted.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/get_anchors.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/glyph_manager.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/glyph_pbf.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/language_tag.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/local_glyph_rasterizer.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/quads.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/shaping.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/text/tagged_string.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/custom_geometry_tile.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/geojson_tile.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/geometry_tile_data.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/raster_dem_tile.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/raster_tile.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/tile_cache.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/tile_coordinate.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/tile_id.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/tile/vector_tile.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/async_task.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/dtoa.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/geo.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/grid_index.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/http_timeout.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/image.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/mapbox.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/memory.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/merge_lines.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/number_conversions.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/offscreen_texture.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/position.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/projection.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/run_loop.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/string.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/text_conversions.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/thread.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/thread_local.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/tile_cover.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/tile_range.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/timer.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/token.test.cpp
+ ${PROJECT_SOURCE_DIR}/test/util/url.test.cpp
+)
+
+if(MBGL_WITH_OPENGL)
+ target_compile_definitions(
+ mbgl-test
+ PRIVATE MBGL_RENDER_BACKEND_OPENGL=1
+ )
+endif()
+
+if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL Android AND ANDROID_NATIVE_API_LEVEL VERSION_LESS 24)
+ message("Target platform does not support HTTP tests or dependencies not found.")
+
+ set(MBGL_TEST_HAS_TEST_SERVER 0)
+else()
+ set(MBGL_TEST_HAS_TEST_SERVER 1)
+ target_sources(
+ mbgl-test
+ PRIVATE ${PROJECT_SOURCE_DIR}/test/src/mbgl/test/http_server.cpp
+ )
+ set_source_files_properties(
+ ${PROJECT_SOURCE_DIR}/test/src/mbgl/test/http_server.cpp
+ PROPERTIES
+ COMPILE_FLAGS
+ -Wno-shadow
+ )
+ target_include_directories(
+ mbgl-test
+ PRIVATE ${PROJECT_SOURCE_DIR}/vendor/cpp-httplib
+ )
+endif()
+
+if(NOT DEFINED ENV{CI})
+ set(MBGL_TEST_BUILD_ON_CI 0)
+else()
+ set(MBGL_TEST_BUILD_ON_CI 1)
+endif()
+
+target_compile_definitions(
+ mbgl-test
+ PRIVATE TEST_HAS_SERVER=${MBGL_TEST_HAS_TEST_SERVER} CI_BUILD=${MBGL_TEST_BUILD_ON_CI}
+)
+
+target_include_directories(
+ mbgl-test
+ PRIVATE
+ ${PROJECT_SOURCE_DIR}/platform/default/include
+ ${PROJECT_SOURCE_DIR}/platform/gfx/gl/src
+ ${PROJECT_SOURCE_DIR}/src
+ ${PROJECT_SOURCE_DIR}/test/src
+)
+
+target_include_directories(
+ mbgl-test
+ PUBLIC ${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/test/include
+)
+
+include(${PROJECT_SOURCE_DIR}/vendor/googletest.cmake)
+
+# Needed for testing private classes
+get_target_property(MBGL_CORE_PRIVATE_LIBRARIES mbgl-core LINK_LIBRARIES)
+
+target_link_libraries(
+ mbgl-test
+ PRIVATE
+ ${MBGL_CORE_PRIVATE_LIBRARIES}
+ Mapbox::Base::Extras::args
+ Mapbox::Base::pixelmatch-cpp
+ mbgl-compiler-options
+ PUBLIC mbgl-core
+)
+
+target_link_libraries(
+ mbgl-test
+ PUBLIC mbgl-vendor-googletest
+)
+
+set_property(TARGET mbgl-test PROPERTY FOLDER Core)
diff --git a/test/android/app/build.gradle b/test/android/app/build.gradle
index cadbdf6fd9..5c118d4853 100644
--- a/test/android/app/build.gradle
+++ b/test/android/app/build.gradle
@@ -33,7 +33,7 @@ android {
externalNativeBuild {
cmake {
version '3.10.2'
- path '../../../next/CMakeLists.txt'
+ path '../../../CMakeLists.txt'
}
}
buildTypes {