#! /bin/sh

##  bootstrap file for the VLC media player
##
## Copyright (C) 2005-2008 the VideoLAN team
##
##  Authors: Sam Hocevar <sam@zoy.org>
##           Rémi Denis-Courmont

set -e

cd "$(dirname "$0")"

if test "$#" != "0"; then
  echo "Usage: $0"
  echo "  Calls autoreconf to generate m4 macros and prepare Makefiles."
  exit 1
fi

ACLOCAL_ARGS="-I m4 ${ACLOCAL_ARGS}"

# Check for tools directory
if test -z ${VLC_TOOLS}; then
  VLC_TOOLS=extras/tools/build
fi
if test -d ${VLC_TOOLS}/bin; then
  VLC_TOOLS_PATH="$( cd "${VLC_TOOLS}/bin" ; pwd -P )"
  PATH="$VLC_TOOLS_PATH:$PATH"
fi

###
###  Get a sane environment, just in case
###
CYGWIN=binmode
export CYGWIN

# Check for pkg-config
if ! "${PKG_CONFIG:-pkg-config}" --version >/dev/null 2>&1; then
	echo 'Error: "pkg-config" is not installed.' >&2
	exit 1
fi

# Check for autopoint (GNU gettext)
export AUTOPOINT
test "$AUTOPOINT" || AUTOPOINT=autopoint
if ! "$AUTOPOINT" --dry-run --force >/dev/null 2>&1; then
	AUTOPOINT=true
	cat << EOF
NOTE: autopoint (GNU gettext-tools) appears to be missing or out-of-date.
Please install or update GNU gettext tools.
Otherwise, you will not be able to build a source tarball.
==========================================================================

EOF
fi

# Check for flex and bison
if ! flex --version >/dev/null 2>&1; then
	echo "ERROR: flex is not installed." >&2
	if ! test -f modules/codec/webvtt/CSSLexer.c; then
		exit 1
	fi
fi

if ! bison --version >/dev/null 2>&1; then
	echo "ERROR: GNU bison is not installed." >&2
	if ! test -f modules/codec/webvtt/CSSGrammar.c; then
		exit 1
	fi
fi

###
###  classic bootstrap stuff
###

autoreconf --install --force --verbose ${ACLOCAL_ARGS}
rm -f po/Makevars.template

##
##  files which need to be regenerated
##
rm -f stamp-h*

# Shut up
set +x
echo "Successfully bootstrapped"
