#!/bin/sh
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
#
# Common script to unpack various source archives
#
# Arguments:
# $1 archive name
# $2 directory created from the archive
# $3 optional final directory name
#
FIND=${FIND:-/bin/find}
XARGS=${XARGS:-/bin/xargs}
CHMOD=${CHMOD:-/bin/chmod}
MV=${MV:-/usr/bin/mv}
case "${1}" in
*.bz2)
COMMAND=${BZIP:-/usr/bin/bzip2}
COMMAND="${COMMAND} ${DECOMP_OPTS:--dc} ${1}"
;;
*.gz)
COMMAND=${GZIP:-/usr/bin/gzip}
COMMAND="${COMMAND} ${DECOMP_OPTS:--dc} ${1}"
;;
*.Z)
COMMAND=${ZCAT:-/usr/bin/zcat}
COMMAND="${COMMAND} ${1}"
;;
*.zip)
COMMAND=${UNZIP:-/usr/bin/unzip}
COMMAND="${COMMAND} ${DECOMP_OPTS:--qo} ${1}"
;;
esac
case "${1}" in
*.tar.*)
COMMAND="${COMMAND} | ${TAR:-/usr/bin/tar}"
COMMAND="${COMMAND} ${TAR_OPTS:-oxpf} -"
;;
esac
/bin/sh -c "${COMMAND}"
if [ $# -ge 2 -a -d "${2}" ] ; then
${FIND} "${2}" -type d | ${XARGS} -i ${CHMOD} 0755 "{}"
${FIND} "${2}" -type f | ${XARGS} -i ${CHMOD} a+r "{}"
fi
if [ $# -eq 3 -a -d "${2}" -a ! -d "${3}" ] ; then
${MV} -f "${2}" "${3}"
fi