Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

don't pollute include dir with installed submodules #4452

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Vedingrot
Copy link

When install mapnik with bundled submodules it creates mapbox and
protozero directories which could conflict with previously installed.

Copy link

codecov bot commented May 16, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 73.76%. Comparing base (09067f5) to head (a8d6532).
Report is 10 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #4452   +/-   ##
=======================================
  Coverage   73.75%   73.76%           
=======================================
  Files         525      525           
  Lines       33532    33532           
  Branches     4139     4140    +1     
=======================================
+ Hits        24733    24736    +3     
+ Misses       8797     8794    -3     
  Partials        2        2           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@hummeltech
Copy link
Contributor

hummeltech commented May 17, 2024

I see what you mean, but if one already has those dependencies installed, wouldn't they just build Mapnik with the corresponding CMake options?

mapnik/CMakeLists.txt

Lines 38 to 41 in a8d6532

mapnik_option(USE_EXTERNAL_MAPBOX_GEOMETRY "Use a external mapnik/geometry.hpp. If off, use the submodule" OFF)
mapnik_option(USE_EXTERNAL_MAPBOX_POLYLABEL "Use a external mapnik/polylabel. If off, use the submodule" OFF)
mapnik_option(USE_EXTERNAL_MAPBOX_PROTOZERO "Use a external mapnik/protozero. If off, use the submodule" OFF)
mapnik_option(USE_EXTERNAL_MAPBOX_VARIANT "Use a external mapnik/variant. If off, use the submodule" OFF)

@Vedingrot
Copy link
Author

For example, include/mapnik may contains unsupported version of
dependencies that requires by other programs. Using submodules solves
this problem but they should be installed in a directory that "belongs"
only for mapnik because they will be used only by it.

@mathisloge
Copy link
Collaborator

I don't think that this is really needed, since you should install mapnik in a extra dir, if you have conflicting versions of those, since you should never link those bits together.

I do have concernce regarding the integration, since the headers now need to be included as <mapnik/protozero/...> etc.

@Vedingrot
Copy link
Author

There is compiler flag -I"${includedir}/mapnik that has been added
in https://github.com/mapnik/mapnik/pull/4441/files so there's no
need to change headers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants