-#define BB_DECLARE_EXTERN
-#define bb_need_help
-#include "messages.c"
-
-#define MAX_FIELD 80 /* Pointers to the beginning of each field
- * are stored in columns[], if a line holds
- * more than MAX_FIELD columns the array
- * boundary is exceed. But unlikely at 80 */
-
-#define MAX_ARGS 32 /* Maximum number of fields following -f or
- * -c switches */
-int args[MAX_ARGS * 2];
-int num_args;
-
-/* Lots of new defines, should easen maintainance... */
-#define DUMP_STDIN 0 /* define for mode: no options */
-#define OPTIONF 1 /* define for mode: option -f */
-#define OPTIONC 2 /* define for mode: option -c */
-#define OPTIONB 3 /* define for mode: option -b */
-#define NOTSET 0 /* option not selected */
-#define SET 1 /* option selected */
-#define OPTIONS 1 /*define option -s */
-/* Defines for the warnings */
-#define DELIMITER_NOT_APPLICABLE 0
-#define OVERRIDING_PREVIOUS_MODE 1
-#define OPTION_NOT_APPLICABLE 2
-#define UNKNOWN_OPTION 3
-#define FILE_NOT_READABLE 4
-/* Defines for the fatal errors */
-#define SYNTAX_ERROR 101
-#define POSITION_ERROR 102
-#define LINE_TO_LONG_ERROR 103
-#define RANGE_ERROR 104
-#define MAX_FIELDS_EXEEDED_ERROR 105
-#define MAX_ARGS_EXEEDED_ERROR 106
-
-
-int mode; /* 0 = dump stdin to stdout, 1=-f, 2=-c */
-char delim = '\t'; /* default delimiting character */
-FILE *fd;
-char line[BUFSIZ];
-int exit_status;
-int option = 0; /* for -s option */
-
-int cut_main(int argc, char **argv);
-void warn(int warn_number, char *option);
-void cuterror(int err);
-void get_args(void);
-void cut(void);
-
-void warn(int warn_number, char *option)
-{
- static char *warn_msg[] = {
- "%s: Option -%s allowed only with -f\n",
- "%s: -%s overrides earlier option\n",
- "%s: -%s not allowed in current mode\n",
- "%s: Cannot open %s\n"
- };