Bug #1761
closedloadable-module naming on macosx + cmake
Description
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.
-- wiml
Files
Updated by gstrauss over 8 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?
Updated by gstrauss over 8 years ago
- Status changed from Need Feedback to Patch Pending
- Assignee deleted (
jan) - Target version set to 1.4.40
Updated by gstrauss over 8 years ago
- Status changed from Patch Pending to Fixed
- % Done changed from 0 to 100
Applied in changeset bb93414a23faddf99efd5fdcc2fa6276b5205087.
Also available in: Atom