diff --git a/indra/newview/linux_tools/wrapper.sh b/indra/newview/linux_tools/wrapper.sh index 12aacd680dd2964c0a936eb66fc65941634f1e8c..c8e941b47f6952040edd777dcedd4e6831948017 100755 --- a/indra/newview/linux_tools/wrapper.sh +++ b/indra/newview/linux_tools/wrapper.sh @@ -1,8 +1,6 @@ -#!/bin/bash +#! /usr/bin/env bash ## Here are some configuration options for Linux Client Testers. -## These options are for self-assisted troubleshooting during this beta -## testing phase; you should not usually need to touch them. ## - Avoids using any FMOD STUDIO audio driver. #export LL_BAD_FMODSTUDIO_DRIVER=x @@ -34,11 +32,6 @@ ## LL_GL_BLACKLIST which solves your problems. #export LL_GL_BLACKLIST=abcdefghijklmno -## - Some ATI/Radeon users report random X server crashes when the mouse -## cursor changes shape. If you suspect that you are a victim of this -## driver bug, try enabling this option and report whether it helps: -#export LL_ATI_MOUSE_CURSOR_BUG=x - if [ "`uname -m`" = "x86_64" ]; then echo '64-bit Linux detected.' fi @@ -52,8 +45,18 @@ fi ## you're building your own viewer, bear in mind that the executable ## in the bin directory will be stripped: you should replace it with ## an unstripped binary before you run. -#export LL_WRAPPER='gdb --args' -#export LL_WRAPPER='valgrind --smc-check=all --error-limit=no --log-file=secondlife.vg --leak-check=full --suppressions=/usr/lib/valgrind/glibc-2.5.supp --suppressions=secondlife-i686.supp' +if [[ -v AL_GDB ]]; then + export LL_WRAPPER='gdb --args' +fi + +if [[ -v AL_VALGRIND ]]; then + export LL_WRAPPER='valgrind --smc-check=all --error-limit=no --log-file=secondlife.vg --leak-check=full --suppressions=/usr/lib/valgrind/glibc-2.5.supp --suppressions=secondlife-i686.supp' +fi + +if [[ -v AL_MANGO ]]; then + export MANGOHUD_DLSYM=1 + export LL_WRAPPER='mangohud' +fi ## For controlling various sanitizer options #export ASAN_OPTIONS="halt_on_error=0 detect_leaks=1 symbolize=1" @@ -62,32 +65,6 @@ fi ## Allow Gnome 3 to properly display window title in app bar export SDL_VIDEO_X11_WMCLASS=Alchemy - -## - Avoids an often-buggy X feature that doesn't really benefit us anyway. -# export SDL_VIDEO_X11_DGAMOUSE=0 - -# ## - Works around a problem with misconfigured 64-bit systems not finding GL -# I386_MULTIARCH="$(dpkg-architecture -ai386 -qDEB_HOST_MULTIARCH 2>/dev/null)" -# MULTIARCH_ERR=$? -# if [ $MULTIARCH_ERR -eq 0 ]; then -# echo 'Multi-arch support detected.' -# MULTIARCH_GL_DRIVERS="/usr/lib/${I386_MULTIARCH}/dri" -# export LIBGL_DRIVERS_PATH="${LIBGL_DRIVERS_PATH}:${MULTIARCH_GL_DRIVERS}:/usr/lib64/dri:/usr/lib32/dri:/usr/lib/dri" -# else -# export LIBGL_DRIVERS_PATH="${LIBGL_DRIVERS_PATH}:/usr/lib64/dri:/usr/lib32/dri:/usr/lib/dri" -# fi - -## - The 'scim' GTK IM module widely crashes the viewer. Avoid it. -# if [ "$GTK_IM_MODULE" = "scim" ]; then -# export GTK_IM_MODULE=xim -# fi - -## - Automatically work around the ATI mouse cursor crash bug: -## (this workaround is disabled as most fglrx users do not see the bug) -#if lsmod | grep fglrx &>/dev/null ; then -# export LL_ATI_MOUSE_CURSOR_BUG=x -#fi - ## - Enable threaded mesa GL impl export mesa_glthread=true @@ -110,24 +87,7 @@ cd "${RUN_PATH}" ## subprocesses that care. export SAVED_LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" -# if [ -n "$LL_TCMALLOC" ]; then -# tcmalloc_libs='/usr/lib/libtcmalloc.so.0 /usr/lib/libstacktrace.so.0 /lib/libpthread.so.0' -# all=1 -# for f in $tcmalloc_libs; do -# if [ ! -f $f ]; then -# all=0 -# fi -# done -# if [ $all != 1 ]; then -# echo 'Cannot use tcmalloc libraries: components missing' 1>&2 -# else -# export LD_PRELOAD=$(echo $tcmalloc_libs | tr ' ' :) -# if [ -z "$HEAPCHECK" -a -z "$HEAPPROFILE" ]; then -# export HEAPCHECK=${HEAPCHECK:-normal} -# fi -# fi -#fi - +# Add our library directory export LD_LIBRARY_PATH="$PWD/lib:${LD_LIBRARY_PATH}" # Copy "$@" to ARGS array specifically to delete the --skip-gridargs switch. @@ -160,7 +120,7 @@ fi echo echo '*******************************************************' -echo 'This is a BETA release of the Alchemy Viewer linux client.' +echo 'This is a BETA release of the Alchemy Viewer Linux client.' echo 'Thank you for testing!' echo 'Please see README-linux.txt before reporting problems.' echo