MantisBT - CMake
View Issue Details
0015705CMakeCMakepublic2015-08-20 08:192016-01-04 11:52
Felix Geyer 
Brad King 
normalminoralways
closedfixed 
CMake 3.3.1 
CMake 3.4CMake 3.4 
0015705: Sets SONAME for modules
cmake sets an SONAME for modules by default which doesn't make much sense.
It's only useful for shared libraries that application link against.

In particular this is a problem for Debian as it has tools to track which symbols are exported by libraries.
This tool looks at all shared libraries that have an SONAME so currently it also records the symbols of plugins generated by cmake-using projects.

Attached is a patch that changes this behavior in cmake.
No tags attached.
related to 0013155closed Brad King Allow option to build module without SONAME 
patch 0001-Don-t-set-SONAME-for-modules.patch (1,067) 2015-08-20 08:19
https://public.kitware.com/Bug/file/5513/0001-Don-t-set-SONAME-for-modules.patch
Issue History
2015-08-20 08:19Felix GeyerNew Issue
2015-08-20 08:19Felix GeyerFile Added: 0001-Don-t-set-SONAME-for-modules.patch
2015-08-20 10:10Brad KingRelationship addedrelated to 0013155
2015-08-20 10:13Brad KingNote Added: 0039305
2015-08-21 08:51Brad KingNote Added: 0039314
2015-08-21 08:52Brad KingAssigned To => Brad King
2015-08-21 08:52Brad KingStatusnew => resolved
2015-08-21 08:52Brad KingResolutionopen => fixed
2015-08-21 08:52Brad KingFixed in Version => CMake 3.4
2015-08-21 08:52Brad KingTarget Version => CMake 3.4
2016-01-04 11:52Robert MaynardNote Added: 0040119
2016-01-04 11:52Robert MaynardStatusresolved => closed

Notes
(0039305)
Brad King   
2015-08-20 10:13   
For reference, the NO_SONAME target property was added for 0013155:

 Support building shared libraries or modules without soname
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e1409ac5 [^]

 Test NO_SONAME property
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fdb3f878 [^]
(0039314)
Brad King   
2015-08-21 08:51   
I added separate testing for NO_SONAME on SHARED libraries:

 Tests: Cover NO_SONAME property for SHARED libraries
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=899458ab [^]

and then applied your patch with updates to the docs and tests:

 Do not set SONAME for MODULE library targets
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f799ffb5 [^]
(0040119)
Robert Maynard   
2016-01-04 11:52   
Closing resolved issues that have not been updated in more than 4 months.