Foo-version.in

From EjudgeWiki
Revision as of 08:58, 8 August 2008 by Cher (talk | contribs) (New page: #!/bin/sh LANG_CONFIG_DIR="@lang_config_dir@" function common_config() { echo 'long_name="Ruby"' echo 'src_sfx=".rb"' echo 'arch="linux-shared"' } function failure() { ...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
#!/bin/sh
LANG_CONFIG_DIR="@lang_config_dir@"
function common_config()
{
  echo 'long_name="Ruby"'
  echo 'src_sfx=".rb"'
  echo 'arch="linux-shared"'
}
function failure()
{
  rm -f conftest*
  echo 'version='
  echo 'arg="'"${arg}"'"'
  common_config
  echo 'RUBYPATH=/bin/false'
  [ "${verbose}" = 1 ] && echo "no" >&2
  exit 1
}
unset LANG
unset LC_ALL
unset LC_MESSAGES
unset LANGUAGE
if [ x"$1" = x-v ]
then
  verbose=1
  shift
fi
# recheck the language
if [ x"$1" = x-r ]
then
  arg="$2"
  [ x"$2" != x ] && ruby="$2"
  [ "${ruby}" = "" ] && ruby="ruby"
  [ "${verbose}" = 1 ] && echo -n "checking whether Ruby is available..." >&2
  "${ruby}" --version >/dev/null 2>&1 || failure
  version=`"${ruby}" --version 2>&1 | gawk '{ print $2; }'` || failure
  [ "${version}" != "" ] || failure
  RUBYPATH=`which "${ruby}"` || failure
  [ "${RUBYPATH}" != "" ] || failure
  echo "#! ${RUBYPATH}" > conftest.rb
  echo 'puts "OK"' >> conftest.rb
  chmod +x ./conftest.rb || failure
  ./conftest.rb >/dev/null 2>&1 || failure
  rm -f ./conftest*
  echo 'version="'"${version}"'"'
  echo 'arg="'"${arg}"'"'
  common_config
  echo 'RUBYPATH="'"${RUBYPATH}"'"'
  [ "${verbose}" = 1 ] && echo "yes, ${RUBYPATH}, ${version}" >&2
  exit 0
fi
if [ x"$1" = x-l ]
then
  echo "Ruby interpreter [1]"
  exit 0
fi
[ "${EJUDGE_LANG_CONFIG}" = "" ] && EJUDGE_LANG_CONFIG="${LANG_CONFIG_DIR}/ruby.cfg"
if [ -f "${EJUDGE_LANG_CONFIG}" ]
then
  . "${EJUDGE_LANG_CONFIG}"
else
  RUBYPATH="/usr/bin/ruby"
fi
if [ x"${RUBYPATH}" = x -o x"${RUBYPATH}" = xfalse ]
then
  echo "This language is not supported." >&2
  exit 1
fi
if [ x"$1" = x-p ]
then
    echo "${RUBYPATH}"
    exit 0
fi
"${RUBYPATH}" --version 2>/dev/null >/dev/null || exit 1
   
[ x"$1" = x-f ] && echo -n "Ruby "
"${RUBYPATH}" --version 2>&1 | gawk '{ print $2; }'