scons: add 'PYTHON_DYNAMIC_LOOKUP' boolean to allow for dynamically loading python symbols rather than direct linking on OSX (default behavior still the same) - addresses #453
This commit is contained in:
parent
15c7ab6233
commit
58b0a3e5ff
2 changed files with 4 additions and 1 deletions
|
@ -288,6 +288,7 @@ opts.AddVariables(
|
||||||
('LIB_DIR_NAME','Name to use for the "lib" folder where fonts and plugins are installed','/mapnik2/'),
|
('LIB_DIR_NAME','Name to use for the "lib" folder where fonts and plugins are installed','/mapnik2/'),
|
||||||
PathVariable('PYTHON','Full path to Python executable used to build bindings', sys.executable),
|
PathVariable('PYTHON','Full path to Python executable used to build bindings', sys.executable),
|
||||||
BoolVariable('FRAMEWORK_PYTHON', 'Link against Framework Python on Mac OS X', 'True'),
|
BoolVariable('FRAMEWORK_PYTHON', 'Link against Framework Python on Mac OS X', 'True'),
|
||||||
|
BoolVariable('PYTHON_DYNAMIC_LOOKUP', 'On OSX, do not directly link python lib, but rather dynamically lookup symbols', 'False'),
|
||||||
('FRAMEWORK_SEARCH_PATH','Custom framework search path on Mac OS X', ''),
|
('FRAMEWORK_SEARCH_PATH','Custom framework search path on Mac OS X', ''),
|
||||||
BoolVariable('FULL_LIB_PATH', 'Use the full path for the libmapnik.dylib "install_name" when linking on Mac OS X', 'True'),
|
BoolVariable('FULL_LIB_PATH', 'Use the full path for the libmapnik.dylib "install_name" when linking on Mac OS X', 'True'),
|
||||||
ListVariable('BINDINGS','Language bindings to build','all',['python']),
|
ListVariable('BINDINGS','Language bindings to build','all',['python']),
|
||||||
|
|
|
@ -67,7 +67,9 @@ if env['PLATFORM'] == 'Darwin':
|
||||||
|
|
||||||
# http://developer.apple.com/mac/library/DOCUMENTATION/Darwin/Reference/ManPages/man1/ld.1.html
|
# http://developer.apple.com/mac/library/DOCUMENTATION/Darwin/Reference/ManPages/man1/ld.1.html
|
||||||
|
|
||||||
if env['FRAMEWORK_PYTHON']:
|
if env['PYTHON_DYNAMIC_LOOKUP']:
|
||||||
|
linkflags = '-undefined dynamic_lookup'
|
||||||
|
elif env['FRAMEWORK_PYTHON']:
|
||||||
if env['FRAMEWORK_SEARCH_PATH']:
|
if env['FRAMEWORK_SEARCH_PATH']:
|
||||||
# if the user has supplied a custom root path to search for
|
# if the user has supplied a custom root path to search for
|
||||||
# a given Python framework, then use that to direct the linker
|
# a given Python framework, then use that to direct the linker
|
||||||
|
|
Loading…
Reference in a new issue