From e1fa32f21fca744e43dac91167b19a01fa0d0e94 Mon Sep 17 00:00:00 2001 From: Mathis Logemann Date: Sat, 10 Apr 2021 14:36:22 +0200 Subject: [PATCH] install dependencies. Required for windows (and ?macos?). Needs testing on linux. --- CMakeLists.txt | 7 +++ benchmark/CMakeLists.txt | 27 ++++++------ cmake/MapnikInstall.cmake | 61 +++++++++++++++++++++++++++ demo/c++/CMakeLists.txt | 7 +-- demo/viewer/CMakeLists.txt | 6 +-- plugins/input/csv/CMakeLists.txt | 2 + plugins/input/gdal/CMakeLists.txt | 4 +- plugins/input/geobuf/CMakeLists.txt | 4 +- plugins/input/geojson/CMakeLists.txt | 4 +- plugins/input/ogr/CMakeLists.txt | 4 +- plugins/input/pgraster/CMakeLists.txt | 4 +- plugins/input/postgis/CMakeLists.txt | 4 +- plugins/input/raster/CMakeLists.txt | 4 +- plugins/input/shape/CMakeLists.txt | 4 +- plugins/input/sqlite/CMakeLists.txt | 4 +- plugins/input/topojson/CMakeLists.txt | 4 +- src/CMakeLists.txt | 2 + src/json/CMakeLists.txt | 7 +-- src/wkt/CMakeLists.txt | 7 +-- utils/geometry_to_wkb/CMakeLists.txt | 7 +-- utils/mapnik-index/CMakeLists.txt | 8 +--- utils/mapnik-render/CMakeLists.txt | 8 +--- utils/ogrindex/CMakeLists.txt | 2 + utils/pgsql2sqlite/CMakeLists.txt | 7 +-- utils/shapeindex/CMakeLists.txt | 8 +--- utils/svg2png/CMakeLists.txt | 8 +--- 26 files changed, 113 insertions(+), 101 deletions(-) create mode 100644 cmake/MapnikInstall.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 3e6bda855..9cef60113 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,10 +17,12 @@ message(STATUS "mapnik version: ${PROJECT_VERSION}") set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake") include(MapnikFindPackage) include(MapnikCopyDependencies) +include(MapnikInstall) set(ADDITIONAL_LIBARIES_PATHS "" CACHE STRING "only used on windows. Pass directories containing the dlls that are missing. You can ignore this, if the build (verify_app step) runs successfully") option(COPY_LIBRARIES_FOR_EXECUTABLES "copies required shared libaries (only windows) to the executable build directory" ON) option(COPY_FONTS_AND_PLUGINS_FOR_EXECUTABLES "copies required plugins and fonts into the executable build directory" ON) +option(INSTALL_DEPENDENCIES "if ON, all dependencies (eg. required dlls) will be copied into CMAKE_INSTALL_PREFIX/MAPNIK_BIN_DIR." ON) option(BUILD_SHARED_LIBS "build mapnik dynamic(ON) or static(OFF)" ON) option(BUILD_TEST "builds the tests" ON) @@ -177,6 +179,9 @@ endif() set(MAPNIK_COMPILE_DEFS "") set(MAPNIK_OPTIONAL_LIBS "") set(MAPNIK_OPTIONAL_LIBS_INCLUDE "") +# (used by MapnikInstall.cmake. properties are needed since "set(...)" will be out of scope +set_property(GLOBAL PROPERTY TARGETS "") +set_property(GLOBAL PROPERTY PLUGINS "") if(USE_BIGINT) message(STATUS "uses BIGINT") @@ -331,3 +336,5 @@ install(EXPORT MapnikTargets install(DIRECTORY include/ TYPE INCLUDE) install(DIRECTORY deps/agg/include/ TYPE INCLUDE) install(DIRECTORY fonts/ DESTINATION ${FONTS_INSTALL_DIR} FILES_MATCHING PATTERN "*.py" EXCLUDE PATTERN "*") + +mapnik_install_targets() diff --git a/benchmark/CMakeLists.txt b/benchmark/CMakeLists.txt index 7e409fb17..d67b4411f 100644 --- a/benchmark/CMakeLists.txt +++ b/benchmark/CMakeLists.txt @@ -32,21 +32,24 @@ function(mapnik_create_benchmark) add_executable(${TARGET_NAME} ${ARGV0}) target_include_directories(${TARGET_NAME} PRIVATE include) target_link_libraries(${TARGET_NAME} PRIVATE mapnik::core mapnik::agg mapnik::mapnik) - - # it might be possible that some buildsystems generate different directories. So invoke the scripts for all benchmarks - mapnik_copy_plugins(TARGET ${TARGET_NAME} - DESTINATION plugins/input - PLUGINS - input-csv input-gdal input-geobuf input-geojson input-ogr input-pgraster input-postgis input-raster input-shape input-sqlite input-topojson - ) - mapnik_require_fonts(TARGET ${TARGET_NAME} mapnik-test-unit DESTINATION fonts) - mapnik_copy_dependencies(TARGETS ${TARGET_NAME} - PLUGINS - input-csv input-gdal input-geobuf input-geojson input-ogr input-pgraster input-postgis input-raster input-shape input-sqlite input-topojson - ) + mapnik_copy_dependencies(TARGETS ${TARGET_NAME}) endfunction() foreach(benchmark ${BENCHMARK_SRCS}) mapnik_create_benchmark(${benchmark}) endforeach() + +# we just need one target to reference the directory correctly. mapnik-benchmark-normalize_angle is just the first in BENCHMARK_SRCS +mapnik_require_fonts(TARGET mapnik-benchmark-normalize_angle DESTINATION fonts) +# copy all plugins +mapnik_copy_plugins(TARGET mapnik-benchmark-normalize_angle + DESTINATION plugins/input + PLUGINS + input-csv input-gdal input-geobuf input-geojson input-ogr input-pgraster input-postgis input-raster input-shape input-sqlite input-topojson +) +# copy all plugin dlls. +mapnik_copy_dependencies(TARGETS mapnik-benchmark-normalize_angle + PLUGINS + input-csv input-gdal input-geobuf input-geojson input-ogr input-pgraster input-postgis input-raster input-shape input-sqlite input-topojson +) diff --git a/cmake/MapnikInstall.cmake b/cmake/MapnikInstall.cmake new file mode 100644 index 000000000..38b6c687d --- /dev/null +++ b/cmake/MapnikInstall.cmake @@ -0,0 +1,61 @@ +function(mapnik_install) + set(options ALREADY_INSTALLED IS_PLUGIN) + set(oneValueArgs TARGET) + set(multiValueArgs) + cmake_parse_arguments(MAPNIK_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + if(NOT ${MAPNIK_INSTALL_ALREADY_INSTALLED} AND NOT ${MAPNIK_INSTALL_IS_PLUGIN}) + install(TARGETS ${MAPNIK_INSTALL_TARGET} + LIBRARY DESTINATION ${MAPNIK_LIB_DIR} + ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} + RUNTIME DESTINATION ${MAPNIK_BIN_DIR} + ) + elseif(NOT ${MAPNIK_INSTALL_ALREADY_INSTALLED} AND ${MAPNIK_INSTALL_IS_PLUGIN}) + install(TARGETS ${MAPNIK_INSTALL_TARGET} + RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} + ) + endif() + if(NOT ${MAPNIK_INSTALL_IS_PLUGIN}) + message(STATUS "${MAPNIK_INSTALL_TARGET}") + get_target_property(TARGET_TYPE "${MAPNIK_INSTALL_TARGET}" TYPE) + if (TARGET_TYPE STREQUAL "EXECUTABLE") + get_property(MAPNIK_INSTALLED_TARGETS GLOBAL PROPERTY TARGETS) + list(APPEND MAPNIK_INSTALLED_TARGETS ${MAPNIK_INSTALL_TARGET}) + set_property(GLOBAL PROPERTY TARGETS ${MAPNIK_INSTALLED_TARGETS}) + endif() + else() + get_property(MAPNIK_INSTALLED_PLUGINS GLOBAL PROPERTY PLUGINS) + list(APPEND MAPNIK_INSTALLED_PLUGINS ${MAPNIK_INSTALL_TARGET}) + set_property(GLOBAL PROPERTY PLUGINS ${MAPNIK_INSTALLED_PLUGINS}) + endif() +endfunction() + + +function(mapnik_install_targets) + if(INSTALL_DEPENDENCIES) + # https://cmake.org/cmake/help/latest/policy/CMP0087.html + cmake_policy(SET CMP0087 NEW) + get_property(MAPNIK_INSTALLED_TARGETS GLOBAL PROPERTY TARGETS) + get_property(MAPNIK_INSTALLED_PLUGINS GLOBAL PROPERTY PLUGINS) + set(INTERNAL_TARGETS "") + set(INTERNAL_PLUGINS "") + + foreach(_target IN LISTS MAPNIK_INSTALLED_TARGETS) + list(APPEND INTERNAL_TARGETS "${CMAKE_INSTALL_PREFIX}/${MAPNIK_BIN_DIR}/$") + endforeach() + foreach(_target IN LISTS MAPNIK_INSTALLED_PLUGINS) + list(APPEND INTERNAL_PLUGINS "${CMAKE_INSTALL_PREFIX}/${PLUGINS_INSTALL_DIR}/$") + endforeach() + # all other executables get auto detected and fixed. + list(GET INTERNAL_TARGETS 0 INTERNAL_TARGETS) + + INSTALL(CODE " + message(STATUS \"${INTERNAL_TARGETS}\") + message(STATUS \"${INTERNAL_PLUGINS}\") + + include(BundleUtilities) + fixup_bundle(\"${INTERNAL_TARGETS}\" \"${INTERNAL_PLUGINS}\" \"${ADDITIONAL_LIBARIES_PATHS}\") + " COMPONENT Runtime) + endif() + +endfunction() diff --git a/demo/c++/CMakeLists.txt b/demo/c++/CMakeLists.txt index 00bd7cf0f..7b86d37f2 100644 --- a/demo/c++/CMakeLists.txt +++ b/demo/c++/CMakeLists.txt @@ -4,12 +4,7 @@ add_executable(mapnik-demo rundemo.cpp) target_link_libraries(mapnik-demo PRIVATE mapnik::core mapnik::agg mapnik::mapnik) -install(TARGETS mapnik-demo - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) - +mapnik_install(TARGET mapnik-demo) mapnik_copy_plugins(TARGET mapnik-demo DESTINATION plugins/input PLUGINS input-shape) mapnik_require_fonts(TARGET mapnik-demo DESTINATION fonts) mapnik_copy_dependencies(TARGETS mapnik-demo PLUGINS input-shape) diff --git a/demo/viewer/CMakeLists.txt b/demo/viewer/CMakeLists.txt index 9d0aadbad..01fab3db8 100644 --- a/demo/viewer/CMakeLists.txt +++ b/demo/viewer/CMakeLists.txt @@ -39,11 +39,7 @@ plugins_dir=${PLUGINS_INSTALL_DIR} fonts/1/dir=${FONTS_INSTALL_DIR}" ) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/viewer.ini DESTINATION bin) -install(TARGETS mapnik-viewer - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) +mapnik_install(TARGET mapnik-viewer) mapnik_copy_dependencies( TARGETS diff --git a/plugins/input/csv/CMakeLists.txt b/plugins/input/csv/CMakeLists.txt index 677ac2538..3d251a5ea 100644 --- a/plugins/input/csv/CMakeLists.txt +++ b/plugins/input/csv/CMakeLists.txt @@ -23,3 +23,5 @@ set_target_properties(input-csv PROPERTIES SUFFIX ".input") install(TARGETS input-csv RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} ) + +mapnik_install(TARGET input-csv IS_PLUGIN) diff --git a/plugins/input/gdal/CMakeLists.txt b/plugins/input/gdal/CMakeLists.txt index 4b35fb814..92b305766 100644 --- a/plugins/input/gdal/CMakeLists.txt +++ b/plugins/input/gdal/CMakeLists.txt @@ -18,6 +18,4 @@ set_target_properties(input-gdal PROPERTIES PREFIX "") set_target_properties(input-gdal PROPERTIES OUTPUT_NAME "gdal") set_target_properties(input-gdal PROPERTIES SUFFIX ".input") -install(TARGETS input-gdal - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-gdal IS_PLUGIN) diff --git a/plugins/input/geobuf/CMakeLists.txt b/plugins/input/geobuf/CMakeLists.txt index 73d39e14a..bb5fef85e 100644 --- a/plugins/input/geobuf/CMakeLists.txt +++ b/plugins/input/geobuf/CMakeLists.txt @@ -14,6 +14,4 @@ set_target_properties(input-geobuf PROPERTIES PREFIX "") set_target_properties(input-geobuf PROPERTIES OUTPUT_NAME "geobuf") set_target_properties(input-geobuf PROPERTIES SUFFIX ".input") -install(TARGETS input-geobuf - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-geobuf IS_PLUGIN) diff --git a/plugins/input/geojson/CMakeLists.txt b/plugins/input/geojson/CMakeLists.txt index 09da0e935..39b392fe5 100644 --- a/plugins/input/geojson/CMakeLists.txt +++ b/plugins/input/geojson/CMakeLists.txt @@ -18,6 +18,4 @@ set_target_properties(input-geojson PROPERTIES PREFIX "") set_target_properties(input-geojson PROPERTIES OUTPUT_NAME "geojson") set_target_properties(input-geojson PROPERTIES SUFFIX ".input") -install(TARGETS input-geojson - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-geojson IS_PLUGIN) diff --git a/plugins/input/ogr/CMakeLists.txt b/plugins/input/ogr/CMakeLists.txt index 3656e3a79..0791c093b 100644 --- a/plugins/input/ogr/CMakeLists.txt +++ b/plugins/input/ogr/CMakeLists.txt @@ -20,6 +20,4 @@ set_target_properties(input-ogr PROPERTIES PREFIX "") set_target_properties(input-ogr PROPERTIES OUTPUT_NAME "ogr") set_target_properties(input-ogr PROPERTIES SUFFIX ".input") -install(TARGETS input-ogr - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-ogr IS_PLUGIN) diff --git a/plugins/input/pgraster/CMakeLists.txt b/plugins/input/pgraster/CMakeLists.txt index fe6622cf0..146036044 100644 --- a/plugins/input/pgraster/CMakeLists.txt +++ b/plugins/input/pgraster/CMakeLists.txt @@ -19,6 +19,4 @@ set_target_properties(input-pgraster PROPERTIES PREFIX "") set_target_properties(input-pgraster PROPERTIES OUTPUT_NAME "pgraster") set_target_properties(input-pgraster PROPERTIES SUFFIX ".input") -install(TARGETS input-pgraster - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-pgraster IS_PLUGIN) diff --git a/plugins/input/postgis/CMakeLists.txt b/plugins/input/postgis/CMakeLists.txt index 73113f282..0102bac63 100644 --- a/plugins/input/postgis/CMakeLists.txt +++ b/plugins/input/postgis/CMakeLists.txt @@ -18,6 +18,4 @@ set_target_properties(input-postgis PROPERTIES PREFIX "") set_target_properties(input-postgis PROPERTIES OUTPUT_NAME "postgis") set_target_properties(input-postgis PROPERTIES SUFFIX ".input") -install(TARGETS input-postgis - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-postgis IS_PLUGIN) diff --git a/plugins/input/raster/CMakeLists.txt b/plugins/input/raster/CMakeLists.txt index 548a361a2..9956b6d9b 100644 --- a/plugins/input/raster/CMakeLists.txt +++ b/plugins/input/raster/CMakeLists.txt @@ -16,6 +16,4 @@ set_target_properties(input-raster PROPERTIES PREFIX "") set_target_properties(input-raster PROPERTIES OUTPUT_NAME "raster") set_target_properties(input-raster PROPERTIES SUFFIX ".input") -install(TARGETS input-raster - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-raster IS_PLUGIN) diff --git a/plugins/input/shape/CMakeLists.txt b/plugins/input/shape/CMakeLists.txt index ed3a1f365..c0a42b460 100644 --- a/plugins/input/shape/CMakeLists.txt +++ b/plugins/input/shape/CMakeLists.txt @@ -19,6 +19,4 @@ set_target_properties(input-shape PROPERTIES PREFIX "") set_target_properties(input-shape PROPERTIES OUTPUT_NAME "shape") set_target_properties(input-shape PROPERTIES SUFFIX ".input") -install(TARGETS input-shape - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-shape IS_PLUGIN) diff --git a/plugins/input/sqlite/CMakeLists.txt b/plugins/input/sqlite/CMakeLists.txt index 7be226609..4d1317aa5 100644 --- a/plugins/input/sqlite/CMakeLists.txt +++ b/plugins/input/sqlite/CMakeLists.txt @@ -18,6 +18,4 @@ set_target_properties(input-sqlite PROPERTIES PREFIX "") set_target_properties(input-sqlite PROPERTIES OUTPUT_NAME "sqlite") set_target_properties(input-sqlite PROPERTIES SUFFIX ".input") -install(TARGETS input-sqlite - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-sqlite IS_PLUGIN) diff --git a/plugins/input/topojson/CMakeLists.txt b/plugins/input/topojson/CMakeLists.txt index baefe69ee..32cfb1bd1 100644 --- a/plugins/input/topojson/CMakeLists.txt +++ b/plugins/input/topojson/CMakeLists.txt @@ -16,6 +16,4 @@ set_target_properties(input-topojson PROPERTIES PREFIX "") set_target_properties(input-topojson PROPERTIES OUTPUT_NAME "topojson") set_target_properties(input-topojson PROPERTIES SUFFIX ".input") -install(TARGETS input-topojson - RUNTIME DESTINATION ${PLUGINS_INSTALL_DIR} -) +mapnik_install(TARGET input-topojson IS_PLUGIN) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a17e9d6b0..b0a84ae5f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -303,3 +303,5 @@ install(TARGETS mapnik INCLUDES DESTINATION include/ PUBLIC_HEADER DESTINATION include/ ) + +mapnik_install(TARGET mapnik ALREADY_INSTALLED) diff --git a/src/json/CMakeLists.txt b/src/json/CMakeLists.txt index 183b7c745..e3682d31e 100644 --- a/src/json/CMakeLists.txt +++ b/src/json/CMakeLists.txt @@ -26,9 +26,4 @@ target_include_directories(json PRIVATE ) target_link_libraries(json PRIVATE mapnik::core ${ICUU_LIB}) -install(TARGETS json - EXPORT MapnikTargets - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) +mapnik_install(TARGET json) diff --git a/src/wkt/CMakeLists.txt b/src/wkt/CMakeLists.txt index 35168f669..161fd87d4 100644 --- a/src/wkt/CMakeLists.txt +++ b/src/wkt/CMakeLists.txt @@ -18,9 +18,4 @@ target_include_directories(wkt PRIVATE ) target_link_libraries(wkt PRIVATE mapnik::core) -install(TARGETS wkt - EXPORT MapnikTargets - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) +mapnik_install(TARGET wkt) diff --git a/utils/geometry_to_wkb/CMakeLists.txt b/utils/geometry_to_wkb/CMakeLists.txt index 17d8e23cb..8aca170fe 100644 --- a/utils/geometry_to_wkb/CMakeLists.txt +++ b/utils/geometry_to_wkb/CMakeLists.txt @@ -7,9 +7,4 @@ target_link_libraries(geometry_to_wkb PRIVATE mapnik::mapnik ) -install(TARGETS geometry_to_wkb - EXPORT MapnikTargets - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) +mapnik_install(TARGET geometry_to_wkb) diff --git a/utils/mapnik-index/CMakeLists.txt b/utils/mapnik-index/CMakeLists.txt index 70123b379..7a600a8b2 100644 --- a/utils/mapnik-index/CMakeLists.txt +++ b/utils/mapnik-index/CMakeLists.txt @@ -15,9 +15,5 @@ target_link_libraries(mapnik-index PRIVATE mapnik::wkt Boost::program_options ) -install(TARGETS mapnik-index - EXPORT MapnikTargets - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) + +mapnik_install(TARGET mapnik-index) diff --git a/utils/mapnik-render/CMakeLists.txt b/utils/mapnik-render/CMakeLists.txt index 0dbc73f2a..08c689797 100644 --- a/utils/mapnik-render/CMakeLists.txt +++ b/utils/mapnik-render/CMakeLists.txt @@ -9,9 +9,5 @@ target_link_libraries(mapnik-render PRIVATE mapnik::mapnik Boost::program_options ) -install(TARGETS mapnik-render - EXPORT MapnikTargets - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) + +mapnik_install(TARGET mapnik-render) diff --git a/utils/ogrindex/CMakeLists.txt b/utils/ogrindex/CMakeLists.txt index ad9c12e41..afc13541b 100644 --- a/utils/ogrindex/CMakeLists.txt +++ b/utils/ogrindex/CMakeLists.txt @@ -11,3 +11,5 @@ install(TARGETS ogrindex ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} RUNTIME DESTINATION ${MAPNIK_BIN_DIR} ) + +mapnik_install(TARGET mapnik-ogrindex) diff --git a/utils/pgsql2sqlite/CMakeLists.txt b/utils/pgsql2sqlite/CMakeLists.txt index d57046bee..8ff6eb1f2 100644 --- a/utils/pgsql2sqlite/CMakeLists.txt +++ b/utils/pgsql2sqlite/CMakeLists.txt @@ -17,9 +17,4 @@ target_link_libraries(pgsql2sqlite PRIVATE mapnik::mapnik ) -install(TARGETS pgsql2sqlite - EXPORT MapnikTargets - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) +mapnik_install(TARGET pgsql2sqlite) diff --git a/utils/shapeindex/CMakeLists.txt b/utils/shapeindex/CMakeLists.txt index 79a9f24ff..55621cdd5 100644 --- a/utils/shapeindex/CMakeLists.txt +++ b/utils/shapeindex/CMakeLists.txt @@ -12,9 +12,5 @@ target_link_libraries(shapeindex PRIVATE mapnik::core mapnik::mapnik ) -install(TARGETS shapeindex - EXPORT MapnikTargets - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) + +mapnik_install(TARGET shapeindex) diff --git a/utils/svg2png/CMakeLists.txt b/utils/svg2png/CMakeLists.txt index 6f1a52eab..55572f393 100644 --- a/utils/svg2png/CMakeLists.txt +++ b/utils/svg2png/CMakeLists.txt @@ -12,9 +12,5 @@ target_link_libraries(svg2png PRIVATE mapnik::mapnik mapnik::agg ) -install(TARGETS svg2png - EXPORT MapnikTargets - LIBRARY DESTINATION ${MAPNIK_LIB_DIR} - ARCHIVE DESTINATION ${MAPNIK_ARCHIVE_DIR} - RUNTIME DESTINATION ${MAPNIK_BIN_DIR} -) + +mapnik_install(TARGET svg2png)