office-gobmx/bin/run
Miklos Vajna 6d78caf68c bin/run: fix LO_TRACE on Windows
exedir has to be in the c:/foo form, instead of /cygdrive/c/foo,
otherwise a native wrapper set by LO_TRACE won't understand it.

With this, it's possible to use DrMemory on executables invoked by
bin/run.

Change-Id: I5332342fdbf7d9e4859360dd7fbd3d74c149b2dc
2015-08-14 17:32:51 +02:00

80 lines
2.5 KiB
Bash
Executable file

#!/bin/sh
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# simple wrapper script to run non-installed executables from workdir
if uname | grep -i CYGWIN >/dev/null; then
dir=$(realpath "$(pwd)")
while test ! -d "${dir}/instdir/program" ; do
if test "${dir}" = "/"; then
echo "error: cannot find \"program\" dir from \"$(pwd)\""
exit 1
fi
dir=$(realpath "${dir}/..")
done
exedir=$(cygpath -m "${dir}"/workdir/LinkTarget/Executable)
export URE_BOOTSTRAP=file:///$(cygpath -m "${dir}")/instdir/program/fundamental.ini
export PATH=${PATH:+$PATH:}"${dir}"/instdir/program
echo "setting URE_BOOTSTRAP to: ${URE_BOOTSTRAP}"
echo "setting search path to: ${PATH}"
echo "execing: ${exedir}/$1"
exec ${LO_TRACE} "${exedir}/$@"
elif [ $(uname) = Darwin ]; then
dir=$(pwd)
# Get PRODUCTNAME from config_host.mk, LibreOffice or LibreOfficeDev
eval `grep 'export PRODUCTNAME=' config_host.mk`
if [ ! -d "${dir}/instdir/$PRODUCTNAME.app" ]; then
echo "error: cannot find \"instdir/$PRODUCTNAME.app\" dir in \"$(pwd)\""
exit 1
fi
exedir="${dir}"/workdir/LinkTarget/Executable
export URE_BOOTSTRAP=file://"${dir}"/instdir/$PRODUCTNAME.app/Contents/Resources/fundamentalrc
export DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH:+$DYLD_LIBRARY_PATH:}"${dir}"/instdir/$PRODUCTNAME.app/Contents/Frameworks
echo "setting URE_BOOTSTRAP to: ${URE_BOOTSTRAP}"
echo "setting search path to: ${DYLD_LIBRARY_PATH}"
echo "execing: ${exedir}/$1"
exec ${LO_TRACE} "${exedir}/$@"
else
dir=$(readlink -f "$(pwd)")
while test ! -d "${dir}/instdir/program" ; do
if test "${dir}" = "/"; then
echo "error: cannot find \"program\" dir from \"$(pwd)\""
exit 1
fi
dir=$(readlink -f "${dir}/..")
done
exedir="${dir}"/workdir/LinkTarget/Executable
export URE_BOOTSTRAP=file://"${dir}"/instdir/program/fundamentalrc
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"${dir}"/instdir/program
echo "setting URE_BOOTSTRAP to: ${URE_BOOTSTRAP}"
echo "setting search path to: ${LD_LIBRARY_PATH}"
echo "execing: ${exedir}/$1"
exec ${LO_TRACE} "${exedir}/$@"
fi
# vi:set shiftwidth=4 expandtab: