| Index: chrome/tools/test/reference_build/chrome_linux/chrome-wrapper
|
| ===================================================================
|
| --- chrome/tools/test/reference_build/chrome_linux/chrome-wrapper (revision 33840)
|
| +++ chrome/tools/test/reference_build/chrome_linux/chrome-wrapper (working copy)
|
| @@ -25,6 +25,22 @@
|
| return 1
|
| }
|
|
|
| +# Checks a file to see if it's a 32 or 64-bit
|
| +check_executable() {
|
| + out=$(file $(readlink -f $1) 2> /dev/null)
|
| + echo $out | grep -qs "ELF 32-bit LSB"
|
| + if [ $? = 0 ]; then
|
| + echo 32
|
| + return
|
| + fi
|
| + echo $out | grep -qs "ELF 64-bit LSB"
|
| + if [ $? = 0 ]; then
|
| + echo 64
|
| + return
|
| + fi
|
| + echo neither
|
| +}
|
| +
|
| # Generate a desktop file that will run this script
|
| generate_desktop_file() {
|
| apps="${XDG_DATA_HOME:-$HOME/.local/share}/applications"
|
| @@ -62,6 +78,51 @@
|
| # Always use our ffmpeg and other shared libs.
|
| export LD_LIBRARY_PATH="$HERE:$HERE/lib:$HERE/lib.target:$LD_LIBRARY_PATH"
|
|
|
| +MISSING_LIBS=$(ldd "$HERE/chrome" 2> /dev/null |grep "not found$" | cut -d" " -f 1|sed 's/\t//')
|
| +CHROME_ARCH=$(check_executable "$HERE/chrome")
|
| +uname -m | grep -qs x86_64
|
| +if [ $? = 1 ]; then
|
| + LIBDIRS="/lib /lib32 /usr/lib /usr/lib32"
|
| +else
|
| + LIBDIRS="/lib64 /lib /usr/lib64 /usr/lib"
|
| +fi
|
| +
|
| +echo $MISSING_LIBS | grep -qs libbz2.so.1.0
|
| +if [ $? = 0 ]; then
|
| + for dir in $LIBDIRS
|
| + do
|
| + if [ -e "$dir/libbz2.so.1" ]; then
|
| + LIB_ARCH=$(check_executable "$dir/libbz2.so.1")
|
| + if [ "$CHROME_ARCH" = "$LIB_ARCH" ]; then
|
| + ln -snf "$dir/libbz2.so.1" "$HERE/libbz2.so.1.0"
|
| + break;
|
| + fi
|
| + fi
|
| + done
|
| +fi
|
| +
|
| +for lib in libnspr4.so.0d libnss3.so.1d libnssutil3.so.1d libplc4.so.0d libplds4.so.0d libsmime3.so.1d libssl3.so.1d
|
| +do
|
| + echo $MISSING_LIBS | grep -qs $lib
|
| + if [ $? = 0 ]; then
|
| + reallib=$(echo $lib | sed 's/\.[01]d$//')
|
| + for dir in $LIBDIRS
|
| + do
|
| + if [ -e "$dir/$reallib" ]; then
|
| + LIB_ARCH=$(check_executable "$dir/$reallib")
|
| + if [ "$CHROME_ARCH" = "$LIB_ARCH" ]; then
|
| + ln -snf "$dir/$reallib" "$HERE/$lib"
|
| + break;
|
| + fi
|
| + fi
|
| + done
|
| + fi
|
| +done
|
| +
|
| +# Custom version string for this release. This can be used to add a downstream
|
| +# vendor string or release channel information.
|
| +export CHROME_VERSION_EXTRA="custom"
|
| +
|
| exists_desktop_file || generate_desktop_file
|
|
|
| exec "$HERE/chrome" "$@"
|
|
|
| Property changes on: chrome/tools/test/reference_build/chrome_linux/chrome-wrapper
|
| ___________________________________________________________________
|
| Name: svn:eol-style
|
| + LF
|
|
|
|
|