← All tasks
cppmapnik/mapnik #4439Not a task: not reproduced

4.0.0-rc1 pollutes /usr/include toplevel directory

envgap__mapnik__mapnik-4439

01 / FAILURE SIGNATURE

As reported upstream

No identifying execution failure has been captured.
Not a benchmark task.
  • In a clean container the reported failure did not reproduce, or the known fix did not make the project run.

02 / ENVIRONMENT RECIPE

Base commit
0897271a8e9a327b1d02005ef291a2744ef2c61c
Manifest
CMakeLists.txt
Reproduce
Awaiting issue-specific recipe
Run under trace
Awaiting a meaningful runtime command

03 / ORIGINAL ISSUE TEXT

mapnik/mapnik #4439 · read the original issue
The CMake build for 4.0.0-rc1 installs the AGG headers and `build.py` in `/usr/include` instead of `/usr/include/mapnik`.



Mapnik 3.1.0 installed the AGG headers under `/usr/include/mapnik/agg` which is much more appropriate.



The following changes revert the header installation paths back to what 3.1 did:

```patch

--- a/CMakeLists.txt

+++ b/CMakeLists.txt

@@ -448,8 +448,8 @@ feature_summary(FILENAME "${CMAKE_CURREN

 include(MapnikExport)

 include(MapnikExportPkgConfig)

 

-install(DIRECTORY include/ DESTINATION "${MAPNIK_INCLUDE_DIR}")

-install(DIRECTORY deps/agg/include/ DESTINATION "${MAPNIK_INCLUDE_DIR}")

+install(DIRECTORY include/mapnik/ DESTINATION "${MAPNIK_INCLUDE_DIR}/mapnik")

+install(DIRECTORY deps/agg/include/ DESTINATION "${MAPNIK_INCLUDE_DIR}/mapnik/agg")

 install(DIRECTORY deps/mapnik DESTINATION "${MAPNIK_INCLUDE_DIR}")

 file(GLOB TTF_FONT_FILES "fonts/*/*/*.ttf")

 install(FILES ${TTF_FONT_FILES} DESTINATION "${FONTS_INSTALL_DIR}")

--- a/cmake/MapnikExportPkgConfig.cmake

+++ b/cmake/MapnikExportPkgConfig.cmake

@@ -9,7 +9,7 @@ Name: @_lib_name@

 Description: @_description@

 Version: @MAPNIK_VERSION@

 Libs: -L"${libdir}" -l$<TARGET_FILE_BASE_NAME:@_target@>$<TARGET_PROPERTY:@_target@,$<CONFIG>_POSTFIX>

-Cflags: -I"${includedir}" ]]

+Cflags: -I"${includedir}" -I"${includedir}/mapnik" -I"${includedir}/mapnik/agg" ]]

     _contents @ONLY)

 

     file(GENERATE

@@ -73,7 +73,7 @@ Description: @_description@

 Version: @MAPNIK_VERSION@

 Requires: @m_requires@

 Libs: -L"${libdir}" -l$<TARGET_FILE_BASE_NAME:mapnik>$<TARGET_PROPERTY:mapnik,$<CONFIG>_POSTFIX>

-Cflags: -I"${includedir}" @m_str_compile_defs@]]

+Cflags: -I"${includedir}" -I"${includedir}/mapnik" -I"${includedir}/mapnik/agg" @m_str_compile_defs@]]

     _contents @ONLY)

     file(GENERATE

         OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_lib_name}-$<CONFIG>.pc

```



Continue on GitHub ↗

04 / LABELS

Labels from the report text only; not yet run

No supported category has been assigned.

Label rules and the text that matched
[]