#!/bin/bash
prefix=$1
cmd=$2
target=$3
if [ "$LD_LIBRARY_PATH" != "" ];then
cfgfile="$prefix/bin/.$(lsb_release -sr)/cfg.sh"
echo "INFO: Using LD_LIBRARY_PATH=$LD_LIBRARY_PATH" >&2
( cat << __EOF
if [ "\$LD_LIBRARY_PATH" != "" ];then
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:\$LD_LIBRARY_PATH
else
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH
fi
__EOF
) > $cfgfile
echo
else
echo "INFO: LD_LIBRARY_PATH not set" >&2
fi
# echo "#!/bin/bash" > $target
# if [ "$LD_LIBRARY_PATH" != "" ];then
# echo "source $prefix/bin/.\$(lsb_release -sr)/cfg.sh" >> $target
# fi
# echo "exec $prefix/bin/.\$(lsb_release -sr)/$cmd \"\$@\"" >> $target
echo "#!/bin/bash" > $target
if [[ $cmd =~ dboard ]]; then
cat >> $target <<'EOF'
# disable if not running on homehost
if [[ -e .homehost ]]; then
homehostname=$( host `cat .homehost` | awk '{print $NF}' | sed 's/\.$//' )
hostname=$( hostname -f )
if [[ ! ($homehostname == $hostname) ]]; then
echo "ERROR: this host ($hostname) is not the homehost ($homehostname) for this megatest run area. Cannot start dashboard."
echo " Please log into homehost before launching dashboard."
exit 1
fi
fi
# check that $DISPLAY is set
if [[ -z $DISPLAY ]]; then
echo 'ERROR: $DISPLAY environment variable is not set; megatest dashboard requires X display address to be set in $DISPLAY.'
exit 1
fi
# check that $DISPLAY is proper
if [[ -x $(which xdpyinfo 2>/dev/null) ]]; then
if ! xdpyinfo -display "$DISPLAY" &>/dev/null; then
echo 'ERROR: megatest dashboard cannot open display "'$DISPLAY'". Please check $DISPLAY environment variable.'
exit 1
fi
fi
EOF
fi
echo "lsbr=\$(lsb_release -sr)" >> $target
echo "if [[ -e \$lsbr ]];then source \$lsbr;fi" >> $target
echo "exec $prefix/bin/.\$lsbr/$cmd \"\$@\"" >> $target