rm -f zpmtest-1.0-1.zpm
 
-require zpm addtopackage zpmtest $td/foo
+require zpm addtopackage -C zpmtest $td/foo
 h=$(zpm hash $td/foo)
 require zpm extract zpmtest-1.0-1.zpm $h $td/foo2
 h2=$(zpm hash $td/foo2)
 
 rm zpmtest-1.0-1.zpm
 
-require zpm addtopackage -f $PF zpmtest $td/foo
+require zpm addtopackage -C -f $PF zpmtest $td/foo
 rm -f $td/foo2
 require zpm extract $PF $h $td/foo2
 h2=$(zpm hash $td/foo2)
 diag "$pkglist"
 
 rm -f $PF
-require zpm addtopackage -f $PF -S "$td" zpmtest $td/foo
+require zpm addtopackage -C -f $PF -S "$td" zpmtest $td/foo
 fn=$(zpm showpkg $PF | awk '{print $4}')
 okstreq "$fn" "foo" file foo in package prefix striped
 
 
        printf "%s" "$clean"
 }
 
+tags=
+create=0
 # option for "multipackage" just to let the system know that's what you meant
 # option to take filenames from stdin
 # parse package, version, release from file if not given
-while getopts :f:v:r:d:a:u:l:p:b:P:S: opt; do
+while getopts :f:v:r:l:P:S:Cc opt; do
        case $opt in
                f) pkgfile="$OPTARG" ;;
                v) pkgver="$OPTARG" ;;
                r) pkgrel="$OPTARG" ;;
-               d) description="$OPTARG" ;;
-               a) arch="$OPTARG" ;;
-               u) url="$OPTARG" ;;
                l) licenses="$OPTARG" ;;
-               p) packager="$OPTARG" ;;
-               b) builddate="$OPTARG" ;;
                P) prefix="$OPTARG" ;;
                S) strip=$(cleanpath "$OPTARG"); ;;
-               t) tags="$OPTARG" ;;
-               c) tags="$tags +configuration" ;;
+               t) tags="$tags $OPTARG" ;;
+               c) tags="$tags configuration" ;;
+               C) create=1 ;;
+               *) echo 'unknown option'; exit 1 ;;
        esac
 done
 shift $((OPTIND - 1))
        pkgfile="$package-$pkgver-$pkgrel.zpm"
 fi
 
-# make sure package exists
-zpm newpackage -I -f $pkgfile -v $pkgver -r $pkgrel $package || exit 1
+# check for package file
+if [ ! -f "$pkgfile" ]; then
+       if [ $create -eq 1 ]; then
+               echo creating $pkgfile
+               zpm newpackage -I -f $pkgfile -v $pkgver -r $pkgrel $package || exit 1
+       else
+               echo $pkgfile does not exist
+               exit 1
+       fi
+fi
 
 zpm test -v $pkgfile
 
 #strip=$(cleanpath "$strip")
 for path in $*; do
+       echo adding $path
        mtime=$(zpm stat -f '%y' $path)
        uid=$(zpm stat -f '%u' $path)
        gid=$(zpm stat -f '%g' $path)