(cmake): sight-project installation error due to sight version
Description
To fix the main problem, SOVERSION is no longer defined for executable targets. That simply prevents from creating these useless versioned binaries.
On top of that, several other fixes were brought:
- the version attribute of the
project()
CMake command is used instead of redefining a customSIGHT_VERSION
variable, - code cleaning was done around this, notably to rename
FWPROJECT_NAME
intoSIGHT_TARGET
, which is more correct with the usage of this variable, - dependencies computing now browses
OBJECT
libraries targets, likeio_session_obj
(fixesTuto01Basic
packaging for instance wheresight_io_vtk
library was missing), - dependencies computing now handles cross-repositories dependencies (fixes some child projects packaging),
- components ordering was included in a higher-level function
sight_generate_component_list()
for a simpler use outside Sight.
Closes #741 (closed)
How to test it?
- Use sight in a child project with a different version. The version should now be provided with the
project()
CMake command.
Additional tests/tasks to run
-
Packaging could be affected, since we used to define project()
for each target (we thought it was useful forCPACK_INSTALL_CMAKE_PROJECTS
). From preliminary tests, packages seem to be ok.