#
# For a description of the syntax of this configuration file,
# see scripts/kbuild/config-language.txt.
#

mainmenu_option next_comment
comment 'Archival Utilities'

bool 'ar'	    CONFIG_AR
bool 'bunzip2'	    CONFIG_BUNZIP2
bool 'cpio'	    CONFIG_CPIO
bool 'dpkg'	    CONFIG_DPKG
bool 'dpkg_deb'	    CONFIG_DPKG_DEB
bool 'gunzip'	    CONFIG_GUNZIP
bool 'gzip'	    CONFIG_GZIP
bool 'rpm2cpio'     CONFIG_RPM2CPIO
bool 'tar'	    CONFIG_TAR
if [ "$CONFIG_TAR" = "y" ] ; then
    bool '  Enable archive creation'	CONFIG_FEATURE_TAR_CREATE
    bool '  Enable -X and --exclude options (exclude files)'	CONFIG_FEATURE_TAR_EXCLUDE
    bool '  Enable -z option'	CONFIG_FEATURE_TAR_GZIP
    bool '  Enable support for old tar header format'	CONFIG_FEATURE_TAR_OLD_FORMAT
    bool '  Enable support for GNU long filenames' CONFIG_FEATURE_GNUTAR_LONG_FILENAME
fi
if [ "$CONFIG_CPIO" = "y" -o "$CONFIG_TAR" = "y" ] ; then
    bool '  Enable tape drive support' CONFIG_FEATURE_UNARCHIVE_TAPE
fi
bool 'unzip'	    CONFIG_UNZIP
endmenu
