set MLN_WITH_OPENGL=OFF by default, like Metal/Vulkan (#3772)

This commit is contained in:
Birk Skyum
2025-08-30 21:37:06 +02:00
committed by GitHub
parent 4e47c6c025
commit 46e2842186
10 changed files with 34 additions and 13 deletions

View File

@@ -208,7 +208,8 @@ jobs:
-DCMAKE_BUILD_TYPE=${{ env.BUILDTYPE }} \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER=gcc-12 \
-DMLN_WITH_NODE=ON
-DMLN_WITH_NODE=ON \
-DMLN_WITH_OPENGL=ON
- name: Get vcpkg commit id
if: runner.os == 'Windows'
@@ -235,7 +236,8 @@ jobs:
-G Ninja `
-DCMAKE_BUILD_TYPE=${{ env.BUILDTYPE }} `
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache `
-DMLN_WITH_NODE=ON
-DMLN_WITH_NODE=ON `
-DMLN_WITH_OPENGL=ON
- name: Build maplibre-native (MacOS/Linux)
if: runner.os == 'MacOS' || runner.os == 'Linux'

View File

@@ -177,7 +177,8 @@ jobs:
-DCMAKE_BUILD_TYPE=${{ env.BUILDTYPE }} \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER=gcc-12 \
-DMLN_WITH_NODE=ON
-DMLN_WITH_NODE=ON \
-DMLN_WITH_OPENGL=ON
- name: "Create directory '${{ github.workspace }}/platform/windows/vendor/vcpkg/bincache' (Windows)"
if: runner.os == 'Windows'
@@ -205,7 +206,8 @@ jobs:
-G Ninja `
-DCMAKE_BUILD_TYPE=${{ env.BUILDTYPE }} `
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache `
-DMLN_WITH_NODE=ON
-DMLN_WITH_NODE=ON \
-DMLN_WITH_OPENGL=ON
- name: Build maplibre-native (MacOS/Linux)
if: runner.os == 'MacOS' || runner.os == 'Linux'

View File

@@ -199,7 +199,8 @@ jobs:
-DCMAKE_CXX_COMPILER_LAUNCHER="ccache" \
-DCMAKE_OSX_DEPLOYMENT_TARGET="${DEPLOYMENT_TARGET}" \
-DCMAKE_OSX_ARCHITECTURES="${DEPLOYMENT_ARCH}" \
-DMLN_WITH_QT=ON
-DMLN_WITH_QT=ON \
-DMLN_WITH_OPENGL=ON
ninja
- name: Build maplibre-native (Linux, Qt6)
@@ -211,7 +212,8 @@ jobs:
-DCMAKE_BUILD_TYPE="${BUILD_TYPE}" \
-DCMAKE_C_COMPILER_LAUNCHER="ccache" \
-DCMAKE_CXX_COMPILER_LAUNCHER="ccache" \
-DMLN_WITH_QT=ON
-DMLN_WITH_QT=ON \
-DMLN_WITH_OPENGL=ON
ninja
- name: Build maplibre-native (Linux, Qt6, internal libraries)
@@ -225,7 +227,8 @@ jobs:
-DCMAKE_CXX_COMPILER_LAUNCHER="ccache" \
-DMLN_WITH_QT=ON \
-DMLN_QT_WITH_INTERNAL_ICU=ON \
-DMLN_QT_WITH_INTERNAL_SQLITE=ON
-DMLN_QT_WITH_INTERNAL_SQLITE=ON \
-DMLN_WITH_OPENGL=ON
ninja
- name: Run tests (Linux)
@@ -247,5 +250,6 @@ jobs:
-DCMAKE_CONFIGURATION_TYPES="${BUILD_TYPE}" \
-DCMAKE_C_COMPILER_LAUNCHER="ccache.exe" \
-DCMAKE_CXX_COMPILER_LAUNCHER="ccache.exe" \
-DMLN_WITH_QT=ON
-DMLN_WITH_QT=ON \
-DMLN_WITH_OPENGL=ON
ninja.exe

View File

@@ -8,9 +8,10 @@ option(MLN_WITH_NODE "Build MapLibre Native Node.js bindings" OFF)
option(MLN_WITH_GLFW "Set up targets for GLFW platform" ON)
option(MLN_WITH_SANITIZER "Use [address|thread|undefined] here" OFF)
option(MLN_WITH_RTTI "Compile with runtime type information" OFF)
option(MLN_WITH_OPENGL "Build with OpenGL renderer" ON)
option(MLN_WITH_OPENGL "Build with OpenGL renderer" OFF)
option(MLN_WITH_EGL "Build with EGL renderer" OFF)
option(MLN_WITH_VULKAN "Build with Vulkan renderer" OFF)
option(MLN_WITH_METAL "Build with Metal renderer" OFF)
option(MLN_WITH_PMTILES "Build with PMTiles support" ON)
option(MLN_WITH_WERROR "Make all compilation warnings errors" ON)
option(MLN_USE_UNORDERED_DENSE "Use ankerl dense containers for performance" ON)

View File

@@ -25,6 +25,7 @@ android {
cmake {
arguments '-DANDROID_CCACHE=ccache'
arguments '-DANDROID_STL=c++_static'
arguments '-DMLN_WITH_OPENGL=ON'
targets 'mbgl-benchmark-runner'
}
}

View File

@@ -76,6 +76,11 @@ android {
productFlavors {
create("opengl") {
dimension = "renderer"
externalNativeBuild {
cmake {
arguments("-DMLN_WITH_OPENGL=ON", "-DMLN_WITH_VULKAN=OFF")
}
}
}
create("vulkan") {
dimension = "renderer"

View File

@@ -60,6 +60,11 @@ android {
productFlavors {
create("opengl") {
dimension = "renderer"
externalNativeBuild {
cmake {
arguments("-DMLN_WITH_OPENGL=ON")
}
}
}
create("vulkan") {
dimension = "renderer"

View File

@@ -156,7 +156,7 @@ void PaintParameters::clearStencil() {
vulkanRenderPass.clearStencil();
context.renderingStats().stencilClears++;
#else // !MLN_RENDER_BACKEND_METAL
#elif MLN_RENDER_BACKEND_OPENGL
context.clearStencilBuffer(0b00000000);
#endif
}
@@ -247,7 +247,7 @@ void PaintParameters::renderTileClippingMasks(const RenderTiles& renderTiles) {
vulkanContext.renderingStats().stencilUpdates++;
}
#else // MLN_RENDER_BACKEND_OPENGL
#elif MLN_RENDER_BACKEND_OPENGL
auto program = staticData.shaders->getLegacyGroup().get<ClippingMaskProgram>();
if (!program) {

View File

@@ -55,7 +55,7 @@ public:
case gfx::Backend::Type::Vulkan: {
break;
}
#else // MLN_RENDER_BACKEND_OPENGL
#elif MLN_RENDER_BACKEND_OPENGL
case gfx::Backend::Type::OpenGL: {
programBase = std::make_unique<gl::ProgramBase<Name>>(programParameters.withDefaultSource(
{gfx::Backend::Type::OpenGL,

View File

@@ -33,7 +33,8 @@ android {
externalNativeBuild {
cmake {
arguments += listOf(
"-DANDROID_STL=c++_static"
"-DANDROID_STL=c++_static",
"-DMLN_WITH_OPENGL=ON"
)
targets += "mbgl-test-runner"
}