#-
# Copyright (c) 2008-2010 Juan Romero Pardines.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#-

set_defvars()
{
	local DDIRS i instsharedir

	instsharedir=@@XBPS_INSTALL_SHAREDIR@@

	: ${XBPS_HELPERSDIR:=$instsharedir/helpers}
	: ${XBPS_SHUTILSDIR:=$instsharedir/shutils}
	: ${XBPS_COMMONVARSDIR:=$instsharedir/common}
	: ${XBPS_DBDIR:=$XBPS_MASTERDIR/var/db/xbps}
	: ${XBPS_META_PATH:=$XBPS_DBDIR/}
	: ${XBPS_PKGMETADIR:=$XBPS_DBDIR/metadata}
	: ${XBPS_SRCPKGDIR:=$XBPS_DISTRIBUTIONDIR/srcpkgs}
	if [ -n "$IN_CHROOT" ]; then
		: ${XBPS_DESTDIR:=/pkg-destdir}
	else
		: ${XBPS_DESTDIR:=$XBPS_MASTERDIR/pkg-destdir}
	fi
	: ${XBPS_PACKAGESDIR:=$XBPS_MASTERDIR/pkg-binpkgs}
	: ${XBPS_BUILDDIR:=$XBPS_MASTERDIR/pkg-builddir}
	: ${XBPS_SRCDISTDIR:=$XBPS_MASTERDIR/pkg-srcdistdir}
	: ${XBPS_TRIGGERSDIR:=$XBPS_SRCPKGDIR/xbps-triggers/files}

	DDIRS="TRIGGERSDIR HELPERSDIR SRCPKGDIR COMMONVARSDIR SHUTILSDIR"
	DDIRS="$DDIRS DISTRIBUTIONDIR"
	for i in ${DDIRS}; do
		eval val="\$XBPS_$i"
		if [ ! -d "$val" ]; then
			echo "ERROR: cannot find $i at $val aborting."
			exit 1
		fi
	done

	for i in DESTDIR PACKAGESDIR BUILDDIR SRCDISTDIR; do
		eval val="\$XBPS_$i"
		[ ! -d "$val" ] && mkdir -p $val
	done

	xver=$(xbps-bin.static -V|awk '{print $2}')
	if [ -n "$xver" ]; then
		# XBPS utils >= 0.9.0.
		xbps_conf="-C $XBPS_MASTERDIR/usr/local/etc/xbps-conf.plist"
		if [ -n "$XBPS_CACHEDIR" ]; then
			xbps_conf="$xbps_conf -c $XBPS_CACHEDIR"
		fi
	fi
	export XBPS_PKGDB_CMD="xbps-uhelper.static -r $XBPS_MASTERDIR"
	export XBPS_BIN_CMD="xbps-bin.static $xbps_conf -r $XBPS_MASTERDIR"
	export XBPS_REPO_CMD="xbps-repo.static $xbps_conf -r $XBPS_MASTERDIR"
	export XBPS_DIGEST_CMD="xbps-uhelper.static digest"
	export XBPS_CMPVER_CMD="xbps-uhelper.static cmpver"
	export XBPS_FETCH_CMD="xbps-uhelper.static fetch"
}
