Work around libmozjs not being in ld.so.conf on Ubuntu
In our jhbuildrc, add the path containing libmozjs.so on Ubuntu to to LD_LIBRARY_PATH. The path is heuristically derived from pkg-config output. svn path=/trunk/; revision=26
This commit is contained in:
parent
9d15b7c9e1
commit
39184955e5
@ -37,6 +37,23 @@ addpath('XDG_DATA_DIRS', '/usr/share')
|
|||||||
# Look in /etc/xdg for system-global autostart files
|
# Look in /etc/xdg for system-global autostart files
|
||||||
addpath('XDG_CONFIG_DIRS', '/etc/xdg')
|
addpath('XDG_CONFIG_DIRS', '/etc/xdg')
|
||||||
|
|
||||||
|
#
|
||||||
|
# For Ubuntu Intrepid, libmozjs lives in /usr/lib/xulrunner-<version>/lib
|
||||||
|
# However, that path isn't in ld.so.conf, meaning that it's basically
|
||||||
|
# impossible to use the xulrunner .pc files and libraries. Work around
|
||||||
|
# this by deriving the path and adding it to LD_SO_CONF ourself.
|
||||||
|
#
|
||||||
|
import re
|
||||||
|
import subprocess
|
||||||
|
_pkgconfig = subprocess.Popen(['pkg-config', '--variable=sdkdir', 'mozilla-js'],
|
||||||
|
stdout=subprocess.PIPE)
|
||||||
|
_sdkdir = _pkgconfig.communicate()[0].strip()
|
||||||
|
_pkgconfig.wait()
|
||||||
|
if _pkgconfig.returncode == 0:
|
||||||
|
_libdir = re.sub('-(sdk|devel)', '', _sdkdir) + '/lib'
|
||||||
|
if os.path.exists(_libdir + '/libmozjs.so'):
|
||||||
|
addpath('LD_LIBRARY_PATH', _libdir)
|
||||||
|
|
||||||
# Rebuild faster
|
# Rebuild faster
|
||||||
os.environ['INSTALL'] = os.path.expanduser('~/bin/install-check')
|
os.environ['INSTALL'] = os.path.expanduser('~/bin/install-check')
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user