Conversation
wip static plugins add remaining datasources wip formatting
…e/cmake-static
77d34f3 to
c6059c7
Compare
|
So I've now added a This would mean a very big breaking change, since users have to add this function to their source code. IMHO the global initialisation with functions a little opaque, as it is not clear what happens when or why something might not happen. The plugins are working now in static and dynamic configurations. But I don't know how i can express the additional things in SCons. |
fix merge remove old DATASOURCE_PLUGIN call fix memory_datasource wip wip fix temp return fix install wip before_unload linux remove docker remove docker comments add windows error message if libmapnik=static and plugins=dynamic fix false plugin macro plugin default de/constructor to remove UB simplyfy plugin targets - add fpic fix makro simplyfy use unique_ptr for plugin handle rename option static plugins replace local init with fnc call call setup everywhere init datasource_static
28abee1 to
49ef468
Compare
…e/cmake-static
Codecov ReportBase: 74.90% // Head: 75.00% // Increases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## master #4291 +/- ##
==========================================
+ Coverage 74.90% 75.00% +0.10%
==========================================
Files 511 524 +13
Lines 36689 36774 +85
==========================================
+ Hits 27482 27584 +102
+ Misses 9207 9190 -17
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
|
@artemp thoughts on this? |
@mathisloge 👍 for reminding me! I'd like to understand more about potential implications but I didn't have a chance to look into this, yet. Will try to find time, thanks! |
…e/cmake-static
…e/cmake-static
…e/cmake-static
fb91a0e to
bc38652
Compare
|
@artemp yey! |
|
@artemp do you had any chance to review this? :) |
Happy New Year @mathisloge :) ! Q. How to ensure static build favours linking to static (*.a) dependecies? |
|
Happy New Year @artemp 🥳
I don't know of any reliable way of doing it. I would leave that to the user and the user has to make sure to pass the correct config file locations or paths to cmake config / pkg-config files when configuring the project. E.g. you can set https://cmake.org/cmake/help/latest/variable/CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH.html#variable:CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH to disable the system path and make sure that only the passed paths are used. |
…e/cmake-static
|
@artemp needed to rebase. |
Feature/cmake static plugins
fixes #4287
@artemp I needed to refactor the plugin logic a bit. I've introduced a new class
datasource_pluginwhich has a common interface. So multiple static plugins with the sameon_plugin_loadlogic can exist.BUT as it now builds correctly and most tests are both in dynamic and static configuration good, the static configuration still has some flaws: the problem with singeltons then arises. e.g. the
image_readerregistration won't work correctly, since the compiler optimizes those calls away.