loadable-module naming on macosx + cmake
Modules get built as mod_foo.dylib on OSX (which is OK) but then the core tries to load them from mod_foo.so (which fails, of course).
This patch fixes the problem by changing the library type from SHARED to MODULE. The cmake docs say this shouldn't change the behavior on other systems. On OSX it has the useful effect of changing the default suffix to .so. (Maybe it would be more "OSX-y" to leave it at .dylib and have the plugin code know its host system's module suffix more reliably, but this change works and is simple.)
A MODULE library no longer gets affected by the CMAKE_SHARED_LIBRARY_PREFIX variable, so the other change here is to set the prefix property on the module target directly, instead of globally.
I've tested this patch in a handful of configurations on OSX (static, shared). Someone should probably verify that it doesn't break Win32, though, since that's the other special-cased system type near this change.
Updated by gstrauss almost 2 years ago
- Description updated (diff)
- Status changed from New to Need Feedback
stbuehler: trivial patch, but I do not have a Mac system with which to test.
Is this still an issue for those building with cmake on OS X? Is this an issue for those building on OS X without using cmake?
Also available in: Atom