#####################################################################
#!/bin/sh
# NAME
#  arc	-- compress archive from list file / decompress archive
#
# SYNOPSIS
#   arc cmd arc_file list_file
#
# DESCRIPTION
#
# NOTE
#	arc_file: destination archive file
#	list_file: file includes file list to compress
#
# AUTHOR
#   Jung, Chan-Yoon
#####################################################################

if [ $# -lt 2 ]; then
	echo "usage: $0 cmd arc_file list_file"
	exit
fi


if [ $# -lt 3 ] && ( [ $1 = "targz_c" ] || [ $1 = "zip" ] ) ; then
	echo "usage: $0 cmd arc_file list_file"
	exit
fi


COMMAND="$1"
ARCHIVE_FILE="$2"
LIST_FILE="$3"

CWD=`pwd`				# current working directory


#####################################################################
# Debug message
#####################################################################
#echo "command: $0 $*"
#echo "argc: $#"
#echo "COMMAND: $COMMAND"
#echo "CWD: $CWD"
#echo "ARCHIVE_FILE: $ARCHIVE_FILE"
#echo "LIST_FILE: $LIST_FILE"

echo_result() {
#	if [ $? -eq 0 ]; then
#		echo "$0 $COMMAND [OK]"
#	else
#		echo "$0 $COMMAND [FAILED]"
#	fi
	return 0
}


#####################################################################
# Command
#####################################################################
case "$COMMAND" in
	
	#
	# compress - create a new flash archive
	#
	targz_c)
		. $LIST_FILE				
		rm -rf $ARCHIVE_FILE
		cd /

		tar czf $ARCHIVE_FILE $FILES_TO_COMPRESS

		echo_result
		cd $CWD
		;;
	
	zip)
		. $LIST_FILE				
		rm -rf $ARCHIVE_FILE
		cd /
		zip -q -r $ARCHIVE_FILE $FILES_TO_COMPRESS
		echo_result
		;;

	#
	# decompress - extract files from a flash archive
	#
	targz_x)
		cd /

		tar xzf $ARCHIVE_FILE

		echo_result
		rm -rf $ARCHIVE_FILE
		cd $CWD
		;;

	unzip)
		unzip -q -o $ARCHIVE_FILE -d /
		echo_result
		rm -rf $ARCHIVE_FILE
		;;

	*)
		echo "usage: $0 cmd arc_file list_file"
		exit 1
		;;
esac

