bc: rename config options
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
		| @@ -27,19 +27,6 @@ | ||||
| //config:	     easier. | ||||
| //config:	  5) "read()" accepts expressions, not only numeric literals. | ||||
| //config: | ||||
| //config:	Options: | ||||
| //config:	  -i  --interactive  force interactive mode | ||||
| //config:	  -q  --quiet        don't print version and copyright | ||||
| //config:	  -s  --standard     error if any non-POSIX extensions are used | ||||
| //config:	  -w  --warn         warn if any non-POSIX extensions are used | ||||
| //config:	  -l  --mathlib      use predefined math routines: | ||||
| //config:		s(expr) sine in radians | ||||
| //config:		c(expr) cosine in radians | ||||
| //config:		a(expr) arctangent, returning radians | ||||
| //config:		l(expr) natural log | ||||
| //config:		e(expr) raises e to the power of expr | ||||
| //config:		j(n, x) Bessel function of integer order n of x | ||||
| //config: | ||||
| //config:config DC | ||||
| //config:	bool "dc (36 kb)" | ||||
| //config:	default y | ||||
| @@ -60,31 +47,32 @@ | ||||
| //config:	     whitespace where a register should be, it skips the whitespace. | ||||
| //config:	     If the character following is not a lowercase letter, an error | ||||
| //config:	     is issued. Otherwise, the register name is parsed by the | ||||
| //config:	     following regex: | ||||
| //config:		[a-z][a-z0-9_]* | ||||
| //config:	     following regex: [a-z][a-z0-9_]* | ||||
| //config:	     This generally means that register names will be surrounded by | ||||
| //config:	     whitespace. Examples: | ||||
| //config:		l idx s temp L index S temp2 < do_thing | ||||
| //config:	     Also note that, like the FreeBSD dc, extended registers are not | ||||
| //config:	     allowed unless the "-x" option is given. | ||||
| //config: | ||||
| //config:config FEATURE_DC_SMALL | ||||
| //config:	bool "Minimal dc implementation (4.2 kb), not using bc code base" | ||||
| //config:if BC || DC  # for menuconfig indenting | ||||
| //config: | ||||
| //config:config FEATURE_DC_BIG | ||||
| //config:	bool "Use bc code base for dc (larger, more features)" | ||||
| //config:	depends on DC && !BC | ||||
| //config:	default n | ||||
| //config:	default y | ||||
| //config: | ||||
| //config:config FEATURE_DC_LIBM | ||||
| //config:	bool "Enable power and exp functions (requires libm)" | ||||
| //config:	default y | ||||
| //config:	depends on FEATURE_DC_SMALL | ||||
| //config:	depends on DC && !BC && !FEATURE_DC_BIG | ||||
| //config:	help | ||||
| //config:	Enable power and exp functions. | ||||
| //config:	NOTE: This will require libm to be present for linking. | ||||
| //config: | ||||
| //config:config FEATURE_BC_SIGNALS | ||||
| //config:config FEATURE_BC_INTERACTIVE | ||||
| //config:	bool "Interactive mode (+4kb)" | ||||
| //config:	default y | ||||
| //config:	depends on (BC || DC) && !FEATURE_DC_SMALL | ||||
| //config:	depends on BC || (DC && FEATURE_DC_BIG) | ||||
| //config:	help | ||||
| //config:	Enable interactive mode: when started on a tty, | ||||
| //config:	^C interrupts execution and returns to command line, | ||||
| @@ -99,9 +87,9 @@ | ||||
| //config:config FEATURE_BC_LONG_OPTIONS | ||||
| //config:	bool "Enable bc/dc long options" | ||||
| //config:	default y | ||||
| //config:	depends on (BC || DC) && !FEATURE_DC_SMALL | ||||
| //config:	help | ||||
| //config:	Enable long options for bc and dc. | ||||
| //config:	depends on BC || (DC && FEATURE_DC_BIG) | ||||
| //config: | ||||
| //config:endif | ||||
|  | ||||
| //applet:IF_BC(APPLET(bc, BB_DIR_USR_BIN, BB_SUID_DROP)) | ||||
| //applet:IF_DC(APPLET(dc, BB_DIR_USR_BIN, BB_SUID_DROP)) | ||||
| @@ -137,11 +125,11 @@ | ||||
| //usage:       "obase = A\n" | ||||
| //usage: | ||||
| //usage:#define dc_trivial_usage | ||||
| //usage:       IF_NOT_FEATURE_DC_SMALL("[-x] ")"[-eSCRIPT]... [-fFILE]... [FILE]..." | ||||
| //usage:       IF_FEATURE_DC_BIG("[-x] ")"[-eSCRIPT]... [-fFILE]... [FILE]..." | ||||
| //usage: | ||||
| //usage:#define dc_full_usage "\n" | ||||
| //usage:     "\nTiny RPN calculator. Operations:" | ||||
| //usage:     "\n+, -, *, /, %, ~, ^," IF_NOT_FEATURE_DC_SMALL(" |,") | ||||
| //usage:     "\n+, -, *, /, %, ~, ^," IF_FEATURE_DC_BIG(" |,") | ||||
| //usage:     "\np - print top of the stack without popping" | ||||
| //usage:     "\nf - print entire stack" | ||||
| //usage:     "\nk - pop the value and set the precision" | ||||
| @@ -164,7 +152,7 @@ | ||||
| #include "libbb.h" | ||||
| #include "common_bufsiz.h" | ||||
|  | ||||
| #if ENABLE_FEATURE_DC_SMALL | ||||
| #if !ENABLE_BC && !ENABLE_FEATURE_DC_BIG | ||||
| # include "dc.c" | ||||
| #else | ||||
|  | ||||
| @@ -765,7 +753,7 @@ struct globals { | ||||
|  | ||||
| 	BcVec input_buffer; | ||||
|  | ||||
| 	IF_FEATURE_BC_SIGNALS(smallint ttyin;) | ||||
| 	IF_FEATURE_BC_INTERACTIVE(smallint ttyin;) | ||||
| 	IF_FEATURE_CLEAN_UP(smallint exiting;) | ||||
|  | ||||
| 	BcProgram prog; | ||||
| @@ -788,7 +776,7 @@ struct globals { | ||||
| #define G_posix (ENABLE_BC && (option_mask32 & BC_FLAG_S)) | ||||
| #define G_warn  (ENABLE_BC && (option_mask32 & BC_FLAG_W)) | ||||
| #define G_exreg (ENABLE_DC && (option_mask32 & DC_FLAG_X)) | ||||
| #if ENABLE_FEATURE_BC_SIGNALS | ||||
| #if ENABLE_FEATURE_BC_INTERACTIVE | ||||
| # define G_interrupt bb_got_signal | ||||
| # define G_ttyin     G.ttyin | ||||
| #else | ||||
| @@ -876,7 +864,7 @@ struct globals { | ||||
| // To make code more readable, each such function has a "z" | ||||
| // ("always returning zero") prefix, i.e. zbc_foo or zdc_foo. | ||||
| // | ||||
| #if ENABLE_FEATURE_BC_SIGNALS || ENABLE_FEATURE_CLEAN_UP | ||||
| #if ENABLE_FEATURE_BC_INTERACTIVE || ENABLE_FEATURE_CLEAN_UP | ||||
| # define ERRORS_ARE_FATAL 0 | ||||
| # define ERRORFUNC        /*nothing*/ | ||||
| # define IF_ERROR_RETURN_POSSIBLE(a)  a | ||||
| @@ -906,7 +894,7 @@ static void fflush_and_check(void) | ||||
| #if ENABLE_FEATURE_CLEAN_UP | ||||
| #define QUIT_OR_RETURN_TO_MAIN \ | ||||
| do { \ | ||||
| 	IF_FEATURE_BC_SIGNALS(G_ttyin = 0;) /* do not loop in main loop anymore */ \ | ||||
| 	IF_FEATURE_BC_INTERACTIVE(G_ttyin = 0;) /* do not loop in main loop anymore */ \ | ||||
| 	G_exiting = 1; \ | ||||
| 	return BC_STATUS_FAILURE; \ | ||||
| } while (0) | ||||
| @@ -1834,7 +1822,7 @@ static FAST_FUNC BC_STATUS zbc_num_k(BcNum *restrict a, BcNum *restrict b, | ||||
| 			c->num[i + j] += (BcDig) carry; | ||||
| 			len = BC_MAX(len, i + j + !!carry); | ||||
|  | ||||
| #if ENABLE_FEATURE_BC_SIGNALS | ||||
| #if ENABLE_FEATURE_BC_INTERACTIVE | ||||
| 			// a=2^1000000 | ||||
| 			// a*a <- without check below, this will not be interruptible | ||||
| 			if (G_interrupt) return BC_STATUS_FAILURE; | ||||
| @@ -2001,7 +1989,7 @@ static FAST_FUNC BC_STATUS zbc_num_d(BcNum *a, BcNum *b, BcNum *restrict c, size | ||||
| 		for (q = 0; n[len] != 0 || bc_num_compare(n, b->num, len) >= 0; ++q) | ||||
| 			bc_num_subArrays(n, b->num, len); | ||||
| 		c->num[i] = q; | ||||
| #if ENABLE_FEATURE_BC_SIGNALS | ||||
| #if ENABLE_FEATURE_BC_INTERACTIVE | ||||
| 		// a=2^100000 | ||||
| 		// scale=40000 | ||||
| 		// 1/a <- without check below, this will not be interruptible | ||||
| @@ -2486,7 +2474,7 @@ static void xc_read_line(BcVec *vec, FILE *fp) | ||||
| 	bc_vec_pop_all(vec); | ||||
| 	fflush_and_check(); | ||||
|  | ||||
| #if ENABLE_FEATURE_BC_SIGNALS | ||||
| #if ENABLE_FEATURE_BC_INTERACTIVE | ||||
| 	if (G_interrupt) { // ^C was pressed | ||||
|  intr: | ||||
| 		if (fp != stdin) { | ||||
| @@ -2533,7 +2521,7 @@ static void xc_read_line(BcVec *vec, FILE *fp) | ||||
| 		bool bad_chars = 0; | ||||
|  | ||||
| 		do { | ||||
| #if ENABLE_FEATURE_BC_SIGNALS | ||||
| #if ENABLE_FEATURE_BC_INTERACTIVE | ||||
| 			if (G_interrupt) { | ||||
| 				// ^C was pressed: ignore entire line, get another one | ||||
| 				bc_vec_pop_all(vec); | ||||
| @@ -7223,7 +7211,7 @@ static int xc_vm_init(const char *env_len) | ||||
| //TODO: in GNU bc, the check is (isatty(0) && isatty(1)), | ||||
| //-i option unconditionally enables this regardless of isatty(): | ||||
| 	if (isatty(0)) { | ||||
| #if ENABLE_FEATURE_BC_SIGNALS | ||||
| #if ENABLE_FEATURE_BC_INTERACTIVE | ||||
| 		G_ttyin = 1; | ||||
| 		// With SA_RESTART, most system calls will restart | ||||
| 		// (IOW: they won't fail with EINTR). | ||||
| @@ -7342,4 +7330,5 @@ int dc_main(int argc UNUSED_PARAM, char **argv) | ||||
| } | ||||
| #endif | ||||
|  | ||||
| #endif // not DC_SMALL | ||||
| #endif // DC_BIG | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user