summaryrefslogtreecommitdiff
path: root/next
diff options
context:
space:
mode:
Diffstat (limited to 'next')
-rw-r--r--next/CMakeLists.txt17
-rw-r--r--next/benchmark/CMakeLists.txt6
-rw-r--r--next/expression-test/CMakeLists.txt2
-rw-r--r--next/platform/android/android.cmake73
-rw-r--r--next/platform/ios/ios.cmake20
-rw-r--r--next/platform/linux/linux.cmake36
-rw-r--r--next/platform/macos/macos.cmake31
-rw-r--r--next/platform/node/CMakeLists.txt1
-rw-r--r--next/platform/qt/qt.cmake7
-rw-r--r--next/render-test/CMakeLists.txt39
-rw-r--r--next/test/CMakeLists.txt1
11 files changed, 189 insertions, 44 deletions
diff --git a/next/CMakeLists.txt b/next/CMakeLists.txt
index dae8ce09a1..924761ad85 100644
--- a/next/CMakeLists.txt
+++ b/next/CMakeLists.txt
@@ -31,7 +31,7 @@ set(CMAKE_CXX_FLAGS_DEBUGCOVERAGE "${CMAKE_CXX_FLAGS_DEBUG} --coverage")
set(CMAKE_C_FLAGS_DEBUGCOVERAGE "${CMAKE_CXX_FLAGS_DEBUG} --coverage")
set(CMAKE_CXX_FLAGS_SANITIZE "-DSANITIZE -g -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -fsanitize=${MBGL_WITH_SANITIZER}")
-set(CMAKE_C_FLAGS_SANITIZE "-DSANITEIZE -g -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -fsanitize=${MBGL_WITH_SANITIZER}")
+set(CMAKE_C_FLAGS_SANITIZE "-DSANITIZE -g -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -fsanitize=${MBGL_WITH_SANITIZER}")
if(MBGL_WITH_QT)
find_package(Qt5Core REQUIRED)
@@ -70,6 +70,7 @@ add_library(
${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/gl/renderable_resource.hpp
${MBGL_ROOT}/include/mbgl/gl/renderer_backend.hpp
${MBGL_ROOT}/include/mbgl/layermanager/background_layer_factory.hpp
@@ -189,6 +190,7 @@ add_library(
${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
@@ -284,6 +286,7 @@ add_library(
${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
@@ -305,6 +308,7 @@ add_library(
${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
@@ -318,6 +322,7 @@ add_library(
${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
@@ -329,6 +334,7 @@ add_library(
${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/layermanager/background_layer_factory.cpp
${MBGL_ROOT}/src/mbgl/layermanager/circle_layer_factory.cpp
@@ -596,6 +602,7 @@ add_library(
${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
@@ -875,8 +882,10 @@ target_include_directories(
PUBLIC ${MBGL_ROOT}/include
)
-add_subdirectory(${PROJECT_SOURCE_DIR}/vendor/mapbox-base/mapbox)
-add_subdirectory(${PROJECT_SOURCE_DIR}/vendor/mapbox-base/extras)
+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)
@@ -911,6 +920,7 @@ target_link_libraries(
Mapbox::Base::geometry.hpp
Mapbox::Base::optional
Mapbox::Base::typewrapper
+ Mapbox::Base::value
Mapbox::Base::variant
Mapbox::Base::weak
mbgl-vendor-expected
@@ -940,3 +950,4 @@ endif()
add_subdirectory(${PROJECT_SOURCE_DIR}/test)
add_subdirectory(${PROJECT_SOURCE_DIR}/benchmark)
+add_subdirectory(${PROJECT_SOURCE_DIR}/render-test)
diff --git a/next/benchmark/CMakeLists.txt b/next/benchmark/CMakeLists.txt
index 2ae1227d91..117d556041 100644
--- a/next/benchmark/CMakeLists.txt
+++ b/next/benchmark/CMakeLists.txt
@@ -31,7 +31,11 @@ get_target_property(MBGL_CORE_PRIVATE_LIBRARIES mbgl-core LINK_LIBRARIES)
target_link_libraries(
mbgl-benchmark
- PRIVATE ${MBGL_CORE_PRIVATE_LIBRARIES} mbgl-core mbgl-vendor-benchmark
+ PRIVATE
+ ${MBGL_CORE_PRIVATE_LIBRARIES}
+ mbgl-vendor-benchmark
+ mbgl-core
+ $<$<PLATFORM_ID:Android>:mbgl-core-android>
)
if(CMAKE_SYSTEM_NAME STREQUAL Android)
diff --git a/next/expression-test/CMakeLists.txt b/next/expression-test/CMakeLists.txt
index 1713f0b655..f7d694b054 100644
--- a/next/expression-test/CMakeLists.txt
+++ b/next/expression-test/CMakeLists.txt
@@ -6,6 +6,8 @@ add_executable(
${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
)
diff --git a/next/platform/android/android.cmake b/next/platform/android/android.cmake
index 70683149d0..06183291db 100644
--- a/next/platform/android/android.cmake
+++ b/next/platform/android/android.cmake
@@ -40,8 +40,6 @@ target_sources(
${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/file_source.cpp
- ${MBGL_ROOT}/platform/android/src/file_source.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
@@ -94,9 +92,8 @@ target_sources(
${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/logger.cpp
- ${MBGL_ROOT}/platform/android/src/logger.hpp
- ${MBGL_ROOT}/platform/android/src/logging_android.cpp
+ ${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
@@ -187,15 +184,8 @@ target_sources(
${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/text/collator.cpp
- ${MBGL_ROOT}/platform/android/src/text/collator_jni.hpp
- ${MBGL_ROOT}/platform/android/src/text/format_number.cpp
- ${MBGL_ROOT}/platform/android/src/text/format_number_jni.hpp
- ${MBGL_ROOT}/platform/android/src/text/local_glyph_rasterizer.cpp
- ${MBGL_ROOT}/platform/android/src/text/local_glyph_rasterizer_jni.hpp
${MBGL_ROOT}/platform/android/src/thread.cpp
${MBGL_ROOT}/platform/android/src/timer.cpp
- ${MBGL_ROOT}/platform/android/src/unaccent.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
@@ -212,6 +202,7 @@ target_sources(
${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
@@ -242,13 +233,43 @@ target_link_libraries(
)
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/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-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-core
+ PRIVATE Mapbox::Base::jni.hpp mbgl-core mbgl-core-android
)
add_library(
@@ -267,6 +288,7 @@ target_link_libraries(
GLESv2
Mapbox::Base::optional
Mapbox::Base::typewrapper
+ Mapbox::Base::value
Mapbox::Base::weak
log
)
@@ -293,15 +315,40 @@ target_link_libraries(
PRIVATE Mapbox::Base::jni.hpp mapbox-gl mbgl-benchmark
)
+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/default/src/mbgl/text/local_glyph_rasterizer.cpp
+ ${MBGL_ROOT}/platform/android/src/test/render_test_collator.cpp
+ ${MBGL_ROOT}/platform/android/src/test/render_test_number_format.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-render-test
+)
+
# Android has no concept of MinSizeRel on android.toolchain.cmake and provides configurations tuned for binary size. We can push it a bit
# more with code folding and LTO.
set_target_properties(example-custom-layer PROPERTIES LINK_FLAGS_RELEASE "-fuse-ld=gold -O2 -flto -Wl,--icf=safe")
set_target_properties(mapbox-gl PROPERTIES LINK_FLAGS_RELEASE "-fuse-ld=gold -O2 -flto -Wl,--icf=safe")
set_target_properties(mbgl-benchmark-runner PROPERTIES LINK_FLAGS_RELEASE "-fuse-ld=gold -O2 -flto -Wl,--icf=safe")
+set_target_properties(mbgl-render-test-runner PROPERTIES LINK_FLAGS_RELEASE "-fuse-ld=gold -O2 -flto -Wl,--icf=safe")
set_target_properties(mbgl-test-runner PROPERTIES LINK_FLAGS_RELEASE "-fuse-ld=gold -O2 -flto -Wl,--icf=safe")
target_compile_options(example-custom-layer PRIVATE $<$<CONFIG:Release>:-Qunused-arguments -flto>)
target_compile_options(mapbox-gl PRIVATE $<$<CONFIG:Release>:-Qunused-arguments -flto>)
target_compile_options(mbgl-core PRIVATE $<$<CONFIG:Release>:-Qunused-arguments -flto>)
+target_compile_options(mbgl-render-test-runner PRIVATE $<$<CONFIG:Release>:-Qunused-arguments -flto>)
target_compile_options(mbgl-vendor-icu PRIVATE $<$<CONFIG:Release>:-Qunused-arguments -flto>)
target_compile_options(mbgl-vendor-sqlite PRIVATE $<$<CONFIG:Release>:-Qunused-arguments -flto>)
diff --git a/next/platform/ios/ios.cmake b/next/platform/ios/ios.cmake
index 507150fc9a..10a6839c9d 100644
--- a/next/platform/ios/ios.cmake
+++ b/next/platform/ios/ios.cmake
@@ -3,6 +3,19 @@ target_compile_definitions(
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
@@ -15,6 +28,7 @@ target_sources(
${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
@@ -36,6 +50,7 @@ target_sources(
${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
@@ -48,6 +63,9 @@ target_include_directories(
include(${PROJECT_SOURCE_DIR}/vendor/icu.cmake)
+initialize_ios_target(mbgl-core)
+initialize_ios_target(mbgl-vendor-icu)
+
target_link_libraries(
mbgl-core
PRIVATE
@@ -69,3 +87,5 @@ target_link_libraries(
sqlite3
z
)
+
+unset(IOS_DEPLOYMENT_TARGET CACHE)
diff --git a/next/platform/linux/linux.cmake b/next/platform/linux/linux.cmake
index 9c8a3830b8..396b9a0ffd 100644
--- a/next/platform/linux/linux.cmake
+++ b/next/platform/linux/linux.cmake
@@ -15,6 +15,8 @@ target_sources(
${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/default_file_source.cpp
@@ -29,15 +31,13 @@ target_sources(
${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/collator.cpp
${MBGL_ROOT}/platform/default/src/mbgl/text/local_glyph_rasterizer.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/unaccent.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/format_number.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
@@ -96,7 +96,6 @@ 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_subdirectory(${PROJECT_SOURCE_DIR}/render-test)
add_executable(
mbgl-test-runner
@@ -123,5 +122,34 @@ target_link_libraries(
PRIVATE 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-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})
+
+string(RANDOM LENGTH 5 ALPHABET 0123456789 MBGL_RENDER_TEST_SEED)
+
+add_test(
+ NAME mbgl-render-test
+ COMMAND
+ mbgl-render-test-runner
+ render-tests
+ --recycle-map
+ --shuffle
+ --manifestPath=${MBGL_ROOT}/render-test/linux-manifest.json
+ --seed=${MBGL_RENDER_TEST_SEED}
+)
+
+add_test(
+ NAME mbgl-render-test-probes
+ COMMAND mbgl-render-test-runner tests --manifestPath=${MBGL_ROOT}/render-test/linux-probe-manifest.json
+)
+add_test(NAME mbgl-query-test COMMAND mbgl-render-test-runner query-tests --manifestPath=${MBGL_ROOT}/render-test/linux-manifest.json)
diff --git a/next/platform/macos/macos.cmake b/next/platform/macos/macos.cmake
index d0aad9c3dc..721d19e625 100644
--- a/next/platform/macos/macos.cmake
+++ b/next/platform/macos/macos.cmake
@@ -83,6 +83,7 @@ target_sources(
${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
@@ -104,6 +105,7 @@ target_sources(
${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
@@ -154,7 +156,6 @@ 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_subdirectory(${PROJECT_SOURCE_DIR}/render-test)
add_executable(
mbgl-test-runner
@@ -181,8 +182,36 @@ target_link_libraries(
PRIVATE 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-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})
+
+string(RANDOM LENGTH 5 ALPHABET 0123456789 MBGL_RENDER_TEST_SEED)
+
+add_test(
+ NAME mbgl-render-test
+ COMMAND
+ mbgl-render-test-runner
+ render-tests
+ --recycle-map
+ --shuffle
+ --manifestPath=${MBGL_ROOT}/render-test/mac-manifest.json
+ --seed=${MBGL_RENDER_TEST_SEED}
+)
+
+add_test(NAME mbgl-render-test-probes COMMAND mbgl-render-test-runner tests --manifestPath=${MBGL_ROOT}/render-test/mac-probe-manifest.json)
+
+add_test(NAME mbgl-query-test COMMAND mbgl-render-test-runner query-tests --manifestPath=${MBGL_ROOT}/render-test/mac-manifest.json)
diff --git a/next/platform/node/CMakeLists.txt b/next/platform/node/CMakeLists.txt
index 432979b473..840fab2964 100644
--- a/next/platform/node/CMakeLists.txt
+++ b/next/platform/node/CMakeLists.txt
@@ -18,6 +18,7 @@ add_node_module(
59
67
72
+ 79
)
target_sources(
diff --git a/next/platform/qt/qt.cmake b/next/platform/qt/qt.cmake
index a63b1cd4de..4fb56176d0 100644
--- a/next/platform/qt/qt.cmake
+++ b/next/platform/qt/qt.cmake
@@ -26,10 +26,10 @@ target_sources(
${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/include/mbgl/text/unaccent.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/default_file_source.cpp
@@ -42,12 +42,11 @@ target_sources(
${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/collator.cpp
- ${MBGL_ROOT}/platform/default/src/mbgl/text/unaccent.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/format_number.cpp
+ ${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
diff --git a/next/render-test/CMakeLists.txt b/next/render-test/CMakeLists.txt
index 6cab3fed52..fa4bb0d615 100644
--- a/next/render-test/CMakeLists.txt
+++ b/next/render-test/CMakeLists.txt
@@ -1,12 +1,19 @@
-add_executable(
- mbgl-render-test
+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/main.cpp
+ ${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
)
@@ -19,7 +26,12 @@ target_compile_definitions(
# FIXME: Should not use core private interface
target_include_directories(
mbgl-render-test
- PRIVATE ${MBGL_ROOT}/src
+ 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)
@@ -30,21 +42,12 @@ target_link_libraries(
Mapbox::Base::Extras::args
Mapbox::Base::Extras::filesystem
Mapbox::Base::pixelmatch-cpp
- mbgl-core
mbgl-vendor-boost
+ PUBLIC mbgl-core
)
-set_property(TARGET mbgl-render-test PROPERTY FOLDER Executables)
-
-string(RANDOM LENGTH 5 ALPHABET 0123456789 MBGL_RENDER_TEST_SEED)
+if(CMAKE_SYSTEM_NAME STREQUAL Android)
+ set_target_properties(mbgl-render-test PROPERTIES LINK_FLAGS_RELEASE "-fuse-ld=gold -O2 -flto -Wl,--icf=safe")
+endif()
-add_test(
- NAME mbgl-render-test
- COMMAND
- mbgl-render-test
- --recycle-map
- --shuffle
- --seed
- ${MBGL_RENDER_TEST_SEED}
- WORKING_DIRECTORY ${MBGL_ROOT}
-)
+set_property(TARGET mbgl-render-test PROPERTY FOLDER Core)
diff --git a/next/test/CMakeLists.txt b/next/test/CMakeLists.txt
index 586e2bbdaa..4995fa4e56 100644
--- a/next/test/CMakeLists.txt
+++ b/next/test/CMakeLists.txt
@@ -153,6 +153,7 @@ target_link_libraries(
Mapbox::Base::Extras::args
Mapbox::Base::pixelmatch-cpp
mbgl-core
+ $<$<PLATFORM_ID:Android>:mbgl-core-android>
)
target_link_libraries(