#! /bin/sh

# Copyright (C) 2004 Free Software Foundation, Inc.
#
# This script is free software; the Free Software Foundation gives
# unlimited permission to copy, distribute and modify it.

# Invoke a shell script with the same name two directories up from this
# file.  Robust against all kinds of pathological file and directory
# names, as well as all kinds of pathological shells.
# By Nathanael Nerode, Zack Weinberg, and Alexandre Oliva.

# Insert "../../" just before the last slash in the pathname.
# We use a here-document to avoid problems with "echo" and
# pathnames containing backslashes or a leading dash.

script=`sed 's,[^/]*$,../../&,' << EOF
$0
EOF
`

# Must honor CONFIG_SHELL if set.
# Simple "$@" does the wrong thing for zero arguments with 
# OSF/1 4.0 /bin/sh, possibly others.
# ${1+"$@"} does the wrong thing with zsh (== /bin/sh in
# some iterations of Darwin).

case $# in
   0) exec ${CONFIG_SHELL-/bin/sh} "$script" ;;
   *) exec ${CONFIG_SHELL-/bin/sh} "$script" "$@" ;;
esac

