> Sorry. Here is a possible answer about *how*.
>
> build distdir
> for f in $DIST_FORMATS; do
> case $f in
> gz) ...
> bzip2) ...
> zip) ...
> ...
> esac
> done
> erase distdir
"gz" is a suffix, "bzip2" is the name of the program that
does the compression and "zip" is both the suffix and the
program. First and foremost I would recommend being
consistent. :-) No matter what you choose, you still
need to have both be specifiable so you are not boxed into
cutting a new release in order to support a combination
you didn't plan for.
> for f in $DIST_FORMATS; do
> eval suffix=\$${f}_SUFFIX
> case $f in
> gzip) ...
> bzip2) ...
> zip) ...
> compress) ...
> none | cat) ...
> ...
> esac
> done
An amusing exercise for the reader:
add "rpm" and "pkg" formats :-)