Bug 259945 - Mozilla should not use LD_LIBRARY_PATH on solaris; use libgkgfx.so instead of libmozjs.so; r=wtc sr=neil

(to CLOSED TREE)
This commit is contained in:
Boying Lu 2008-11-21 20:24:08 +01:00
parent 0d154c36aa
commit 07b6e8da50

View File

@ -340,18 +340,18 @@ fi
##
## When a shared library is a symbolic link, $ORIGIN will be replaced with
## the real path (i.e., what the symbolic link points to) by the runtime
## linker. For example, if dist/bin/libmozjs.so is a symbolic link to
## js/src/libmozjs.so, $ORIGIN will be "js/src" instead of "dist/bin".
## So the runtime linker will use "js/src" NOT "dist/bin" to locate the
## other shared libraries that libmozjs.so depends on. This only happens
## linker. For example, if dist/bin/libgkgfx.so is a symbolic link to
## gfx/src/libgkgfx.so, $ORIGIN will be "gfx/src" instead of "dist/bin".
## So the runtime linker will use "gfx/src" NOT "dist/bin" to locate the
## other shared libraries that libgkgfx.so depends on. This only happens
## when a user (developer) tries to start firefox, thunderbird, or seamonkey
## under dist/bin. To solve the problem, we should rely on LD_LIBRARY_PATH
## to locate shared libraries.
##
## Note:
## We choose libmozjs.so as a representative shared library. If it is
## We choose libgkgfx.so as a representative shared library. If it is
## a symbolic link, all other shared libraries are symbolic links also.
if [ `uname -s` != "SunOS" -o -h "$MOZ_DIST_BIN/libmozjs.so" ]
if [ `uname -s` != "SunOS" -o -h "$MOZ_DIST_BIN/libgkgfx.so" ]
then
LD_LIBRARY_PATH=${MOZ_DIST_BIN}:${MOZ_DIST_BIN}/plugins:${MRE_HOME}${LD_LIBRARY_PATH+":$LD_LIBRARY_PATH"}
fi