#!/bin/bash
#

# Copyright (C) 2010, 2011 Google Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.

set -e

filename=$1

execasroot() {
  local fname=$1
  shift
  if [[ -z "$FAKEROOT" ]]; then
    echo "WARNING: FAKEROOT variable not set, skipping $fname" >&2
  else
    exec "$FAKEROOT" "$@"
  fi
}

case "$filename" in
  *-runasroot.py) execasroot $filename $PYTHON "$@" ;;
  *.py) exec $PYTHON "$@" ;;
  *-runasroot) execasroot $filename "$@" ;;
  *) exec "$@" ;;
esac
