You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
libXrdSsi and libXrdSsiLog have either deficient or contradictory flags in src/XrdSsi.cmake, and likewise libXrdThrottle in src/XrdPlugins.cmake. They each have add_library(...SHARED...), but do not have VERSION or SOVERSION data there or in their set_target_properties(). As a result, they get compiled as a shared library (for dyld linking) but do not have the usual versioned and nonversioned file and symlinks. The lack of versioning suggests they are instead runtime-loadable modules (dlopen or something like that), which is consistent with the inline comments that they are plugins. If so, they should be declared as MODULE (like for libXrdHttp in src/XrdHttp.cmake) rather than SHARED. Lots of .cmake are inconsistent about what they call a "library" vs "plugin" or "module" in the inline comments and I don't use xrootd much myself, so I don't know which way to go for fixing it.
On many platforms, this distinction probably doesn't matter. But on OS X, shared-libraries and runtime-loadable modules have different extensions (.dylib vs .so, respectively), and the search algorithms for one context might not find files that have the wrong extension.
The text was updated successfully, but these errors were encountered:
libXrdSsi and libXrdSsiLog have either deficient or contradictory flags in src/XrdSsi.cmake, and likewise libXrdThrottle in src/XrdPlugins.cmake. They each have
add_library(...SHARED...)
, but do not haveVERSION
orSOVERSION
data there or in theirset_target_properties()
. As a result, they get compiled as a shared library (for dyld linking) but do not have the usual versioned and nonversioned file and symlinks. The lack of versioning suggests they are instead runtime-loadable modules (dlopen or something like that), which is consistent with the inline comments that they are plugins. If so, they should be declared asMODULE
(like for libXrdHttp in src/XrdHttp.cmake) rather thanSHARED
. Lots of .cmake are inconsistent about what they call a "library" vs "plugin" or "module" in the inline comments and I don't use xrootd much myself, so I don't know which way to go for fixing it.On many platforms, this distinction probably doesn't matter. But on OS X, shared-libraries and runtime-loadable modules have different extensions (.dylib vs .so, respectively), and the search algorithms for one context might not find files that have the wrong extension.
The text was updated successfully, but these errors were encountered: