blob: 695905e09e6bb47b9f03e2e56aa725ff53f62248 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
#!/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
print_usage()
{
echo "This utility can be used to run the executables in this folder:"
echo
echo " workdir/LinkTarget/Executable"
echo
echo "Usage:"
echo
echo " ./bin/run application [parameters]|--list|--help"
echo
echo "Use --list (same as -list or -l) to get the list of executables"
echo "Use --help (same as -help or -h) to get this help"
}
list_executables()
{
echo "Listing executables inside workdir/LinkTarget/Executable folder:"
if uname | grep -i CYGWIN >/dev/null
then
echo
find workdir/LinkTarget/Executable -iname "*.bat" -printf "%P\n"
find workdir/LinkTarget/Executable -iname "*.exe" -printf "%P\n"
else
find workdir/LinkTarget/Executable -executable -printf "%P\n"
fi
}
print_executable_name()
{
echo "Setting env variables and running workdir/LinkTarget/Executable/$1"
}
setdefaults()
{
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="${dir}"/workdir/LinkTarget/Executable
export URE_BOOTSTRAP=file://"${dir}"/instdir/program/fundamentalrc
}
case "$1" in
""|"-h"|"-help"|"--help")
print_usage; exit 1;;
"-l"|"-list"|"--list")
list_executables; exit 0;;
*) print_executable_name $1;;
esac
if uname | grep -i CYGWIN >/dev/null; then
setdefaults
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
SEARCH_PATH="${PATH}"
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
SEARCH_PATH="${DYLD_LIBRARY_PATH}"
elif [ $(uname) = Haiku ]; then
setdefaults
export LIBRARY_PATH=${LIBRARY_PATH:+$LIBRARY_PATH:}"${dir}"/instdir/program
SEARCH_PATH="${LIBRARY_PATH}"
else
setdefaults
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"${dir}"/instdir/program
SEARCH_PATH="${LD_LIBRARY_PATH}"
fi
# echo "setting URE_BOOTSTRAP to: ${URE_BOOTSTRAP}"
# echo "setting search path to: ${SEARCH_PATH}"
# echo "execing: ${exedir}/$1"
exec ${LO_TRACE} "${exedir}/$@"
# vi:set shiftwidth=4 expandtab:
|