From ac5266d17ee5eeba12afc0db8d508df6cef17cbd Mon Sep 17 00:00:00 2001 From: Artem Pavlenko Date: Mon, 29 Sep 2025 09:45:45 +0100 Subject: [PATCH] CMake - add optional SSL support in tiles.input via USE_PLUGIN_INPUT_TILES_SSL (default:ON) --- .github/workflows/release_linux.yml | 3 ++- CMakeLists.txt | 1 + plugins/input/tiles/CMakeLists.txt | 9 +++++++++ vcpkg.json | 1 + 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release_linux.yml b/.github/workflows/release_linux.yml index c4926a6c4..91f8e385d 100644 --- a/.github/workflows/release_linux.yml +++ b/.github/workflows/release_linux.yml @@ -40,7 +40,8 @@ jobs: libboost-program-options-dev \ libboost-regex-dev \ libboost-url-dev \ - libboost-context-dev + libboost-context-dev \ + libssl-dev - name: Configure CMake run: cmake -LA --preset ${{ env.PRESET }} diff --git a/CMakeLists.txt b/CMakeLists.txt index 582e5327f..06448e235 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -77,6 +77,7 @@ mapnik_option(USE_PLUGIN_INPUT_RASTER "adds plugin input raster" ON) mapnik_option(USE_PLUGIN_INPUT_SHAPE "adds plugin input shape" ON) mapnik_option(USE_PLUGIN_INPUT_SQLITE "adds plugin input sqlite" ON) mapnik_option(USE_PLUGIN_INPUT_TILES "adds plugin input tiles" ON) +mapnik_option(USE_PLUGIN_INPUT_TILES_SSL "adds SSL support in plugin input tiles" ON) mapnik_option(USE_PLUGIN_INPUT_TOPOJSON "adds plugin input topojson" ON) mapnik_option(BUILD_DEMO_VIEWER "builds the demo viewer" ON) diff --git a/plugins/input/tiles/CMakeLists.txt b/plugins/input/tiles/CMakeLists.txt index 5c2625043..375cb751a 100644 --- a/plugins/input/tiles/CMakeLists.txt +++ b/plugins/input/tiles/CMakeLists.txt @@ -9,6 +9,11 @@ endif() add_plugin_target(input-tiles "tiles") add_compile_definitions(MAPNIK_VECTOR_TILE_LIBRARY=1) +if(USE_PLUGIN_INPUT_TILES_SSL) + mapnik_pkg_check_modules(OpenSSL REQUIRED IMPORTED_TARGET openssl) + add_compile_definitions(MAPNIK_HAS_OPENSSL) +endif() + target_sources(input-tiles ${_plugin_visibility} tiles_datasource.cpp vector_tiles_featureset.cpp @@ -29,6 +34,10 @@ target_link_libraries(input-tiles ${_plugin_visibility} Boost::context ) +if(USE_PLUGIN_INPUT_TILES_SSL) + target_link_libraries(input-tiles ${_plugin_visibility} PkgConfig::OpenSSL) +endif() + if(WIN32) target_link_libraries(input-tiles ${_plugin_visibility} Boost::json) endif() diff --git a/vcpkg.json b/vcpkg.json index 4c8dd9b8d..ae9b0fd00 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -65,6 +65,7 @@ "mapbox-geometry", "mapbox-polylabel", "mapbox-variant", + "openssl", "proj", "protozero", {