mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-17 15:29:05 +00:00
live_ast: don't set working directory
contrib/scripts/live_ast currently assumes that it is being run from the top-level directory of the source tree. It creates a script that will also set the working directory. This fix avoids the need to set the working directory if the caller sets LIVE_AST_BASE_DIR instead. It relies on realpath for that. If realpath is not available, it will fall back to the original behaviour. Review: https://reviewboard.asterisk.org/r/2027/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@370048 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -110,7 +110,7 @@
|
|||||||
#LIVE_AST_FOR_SYSTEM=yes
|
#LIVE_AST_FOR_SYSTEM=yes
|
||||||
####################### End Samples
|
####################### End Samples
|
||||||
|
|
||||||
BASE_DIR="$PWD/live"
|
BASE_DIR="${AST_LIVE_BASE_DIR:-$PWD/live}"
|
||||||
AST_CONF_DIR="$BASE_DIR/etc/asterisk"
|
AST_CONF_DIR="$BASE_DIR/etc/asterisk"
|
||||||
AST_CONF="$AST_CONF_DIR/asterisk.conf"
|
AST_CONF="$AST_CONF_DIR/asterisk.conf"
|
||||||
AST_BIN="$BASE_DIR/usr/sbin/asterisk"
|
AST_BIN="$BASE_DIR/usr/sbin/asterisk"
|
||||||
@@ -180,9 +180,19 @@ gen_live_asterisk() {
|
|||||||
cat <<EOF >"$BASE_DIR/asterisk"
|
cat <<EOF >"$BASE_DIR/asterisk"
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# a wrapper to run asterisk from the "live" copy:
|
# a wrapper to run asterisk from the "live" copy:
|
||||||
|
EOF
|
||||||
|
if realpath $0 >/dev/null 2>&1; then
|
||||||
|
cat <<EOF >>"$BASE_DIR/asterisk"
|
||||||
|
export AST_LIVE_BASE_DIR="$PWD/live"
|
||||||
|
real_me='`realpath $0`'
|
||||||
|
exec "\$real_me" run "\$@"
|
||||||
|
EOF
|
||||||
|
else # No realpath. Fall back to change working directory:
|
||||||
|
cat <<EOF >>"$BASE_DIR/asterisk"
|
||||||
cd "$PWD"
|
cd "$PWD"
|
||||||
exec "$0" run "\$@"
|
exec "$0" run "\$@"
|
||||||
EOF
|
EOF
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
command="$1"
|
command="$1"
|
||||||
|
|||||||
Reference in New Issue
Block a user