Commit 930d4317 authored by reed's avatar reed
Browse files

Quick hack for ticket #1300 to workaround dlopen can't find library

This was from jinmei.

The real fix will be done in #1292.
parent 1db00151
......@@ -33,6 +33,7 @@ $(PYTHON_LOGMSGPKG_DIR)/work/bind10_messages.py : bind10_messages.mes
# this is done here since configure.ac AC_OUTPUT doesn't expand exec_prefix
bind10: bind10_src.py $(PYTHON_LOGMSGPKG_DIR)/work/bind10_messages.py
$(SED) -e "s|@@PYTHONPATH@@|@pyexecdir@|" \
-e "s|@@LIBDIR@@|$(libdir)|" \
-e "s|@@LIBEXECDIR@@|$(pkglibexecdir)|" bind10_src.py >$@
chmod a+x $@
......
......@@ -579,6 +579,22 @@ class BoB:
self.start_simple("b10-xfrout", c_channel_env)
def start_xfrin(self, c_channel_env):
# XXX: a quick-hack workaround. xfrin will implicitly use dynamically
# loadable data source modules, which will be installed in $(libdir).
# On some OSes (including MacOS X and *BSDs) the main process (python)
# cannot find the modules unless they are located in a common shared
# object path or a path in the (DY)LD_LIBRARY_PATH. We should seek
# a cleaner solution, but for a short term workaround we specify the
# path here, unconditionally, and without even bothering which
# environment varialbe should be used.
if not "B10_FROM_SOURCE" in os.environ:
cur_path = os.getenv('DYLD_LIBRARY_PATH')
cur_path = '' if cur_path is None else ':' + cur_path
c_channel_env['DYLD_LIBRARY_PATH'] = "@@LIBDIR@@" + cur_path
cur_path = os.getenv('LD_LIBRARY_PATH')
cur_path = '' if cur_path is None else ':' + cur_path
c_channel_env['LD_LIBRARY_PATH'] = "@@LIBDIR@@" + cur_path
self.start_simple("b10-xfrin", c_channel_env)
def start_zonemgr(self, c_channel_env):
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment