-
Notifications
You must be signed in to change notification settings - Fork 287
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
Introduce modern way to link with pthread library #1227
Conversation
…build the embedded pthread library on windows
…conda package usage Because there is an explicit link to libpthread location that breaks visp conda package usage on linux we cannot use OpenMP_CXX_LIBRARIES that contains /usr/lib/gcc/x86_64-linux-gnu/11/libgomp.so;/usr/lib/x86_64-linux-gnu/libpthread.a by adding: list(APPEND opt_libs ${OpenMP_CXX_LIBRARIES}) That's why we need to use the modern way to consider pthread dependency
VISP_LINKER_LIBS are used as private - there is the need to make ws2_32.lib as a 3rd party public library - Consider now ws2_32.lib as a public 3rd party that is linked to core module - Rename deprecated LINK_PUBLIC and LINK_PRIVATE to PUBLIC and PRIVATE respectively
@olivier-roussel Moving Without this change, |
Codecov ReportPatch and project coverage have no change.
Additional details and impacted files@@ Coverage Diff @@
## master #1227 +/- ##
=======================================
Coverage 54.34% 54.34%
=======================================
Files 405 405
Lines 49827 49827
=======================================
+ Hits 27077 27078 +1
+ Misses 22750 22749 -1
☔ View full report in Codecov by Sentry. |
Closes #1228 |
These changes are related to Conda packaging where the following issues was encountered when visp conda package is used as a third-party. In
VISPModules.cmake
there remain the full absolute path of them
andpthread
libraries used during the package generation. When installing the conda package on a linux target, conda is unable to replace these locations with the corresponding ones on the target.The fix consists in:
m
to export the library as private (Fixed in PR # 1226 commit e2ed222)pthread
to use modern cmake (commit 9de4530 and d6e5a2f)openmp
that has a dependency topthread
to consider the specific case ofpthread
as above (commit 9209898)ms2_32.lib
that was part ofVISP_LINKER_LIBS
that contains now only private libraries, was removed fromVISP_LINKER_LIBS
and considered as a classical 3rd party linked tovisp_core
module (see commit 2c074db)See issue #1228