Project

General

Profile

Actions

Bug #1761

closed

loadable-module naming on macosx + cmake

Added by Anonymous about 16 years ago. Updated over 8 years ago.

Status:
Fixed
Priority:
Normal
Category:
build_cmake
Target version:
ASK QUESTIONS IN Forums:

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

modulename.patch (1.08 KB) modulename.patch fixes loadable-module naming on mac os x -- wiml Anonymous, 2008-08-27 06:32
Actions #1

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?

Actions #2

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
Actions #3

Updated by gstrauss over 8 years ago

  • Status changed from Patch Pending to Fixed
  • % Done changed from 0 to 100
Actions

Also available in: Atom