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

mainmenu_option next_comment
comment 'Finding Utilities'

bool 'find'	    CONFIG_FIND
if [ "$CONFIG_FIND" = "y" ] ; then
    bool '  Enable modified time matching (-mtime) option' CONFIG_FEATURE_FIND_MTIME
    bool '  Enable permissions matching (-perm) option' CONFIG_FEATURE_FIND_PERM
    bool '  Enable filetype matching (-type) option' CONFIG_FEATURE_FIND_TYPE
    bool '  Enable stay in filesystem (-xdev) option' CONFIG_FEATURE_FIND_XDEV
fi
bool 'grep'	    CONFIG_GREP
if [ "$CONFIG_GREP" = "y" ] ; then
    bool '  Support extended regular expressions (egrep & grep -E)'		CONFIG_FEATURE_GREP_EGREP_ALIAS
    bool '  Enable before and after context flags (-A, -B and -C)' 	CONFIG_FEATURE_GREP_CONTEXT
fi
bool 'which'	    CONFIG_WHICH
bool 'xargs'	    CONFIG_XARGS
endmenu

