#!/bin/sh
#
# $Id$
#
# Example routines to parse tag information from 'cvs status -v'
# command.
parse_tags () {
  FILENAME=$1
 
  TAGS=`cvs status -v "$FILENAME" | \
    awk 'BEGIN { RS="\n\n"; FS="[ \t\n][ \t\n]+" } \
     /Existing Tags:/{ if( $3 !~ /No Tags Exist/ ) print $0 }'`
  echo $TAGS
}
file_is_tagged () {
  TAGS=`parse_tags "$1"`
  if [ -z "$TAGS" ]; then
    return 1
  else
    return 0
  fi
}  
report_cvs_tags () {
  TAGS=`parse_tags "$1"`
  if [ ! -z "$TAGS" ]; then 
    echo "warning: file $1: $TAGS"
  fi
}
report_cvs_tags "$1"
# example how to fail the commit if tag found
#if file_is_tagged "$1"; then
#  echo "tagged: $1"
#  exit 1
#fi