From 0801dbaee02a811a412f22a71f9f869c90554f24 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Sat, 26 Mar 2022 23:05:23 -0700 Subject: man page: redesign __gawk_ver semantics. --- cppawk.1 | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/cppawk.1 b/cppawk.1 index ff9097d..f1b1553 100644 --- a/cppawk.1 +++ b/cppawk.1 @@ -153,39 +153,35 @@ Its value is a is an eight digit decimal integer the form .IR YYYYMMDD , such as 20220321. -.SH NOT PREDEFINED, SIGNIFICANT SYMBOLS +.SH CONFIGURATION SYMBOLS .IP \fB__gawk_ver\fR Certain .B cppawk header files may have functionality that depends on GNU Awk. -By default, those -.B cppawk -headers which require GNU Awk may assume the latest version released by the GNU -Awk project, with all of its features and bugfixes. - -Consequently, the generate code may not work on older versions of GNU Awk. - -The user application, prior to including any -.B cppawk -header, may define the macro +The .BI __gawk_ver -to indicate which version of GNU Awk the generated code is required to work with. +variable may be set by the application to indicate which version of GNU Awk +should be assumed by those library headers. The headers will avoid generating +code that doesn't work with later versions than this. -In reaction to this variable, those header files may be able to generate -alternative code suitable for the indicated version of GNU Awk. +This variable should be set before including any header files, or +using the +.BI -D +option on the command line. The variable should be a decimal integer, whose last four digits encode the minor and build numbers. For instance 4.1.3 is encoded as 40103: - #define __gawk_ver 40103 // Please support GNU Awk 4.1.3 + #define __gawk_ver 40103 // Inform library GNU Awk 4.1.3 is used #include <...> // inclusion of headers follows -Naturally, -.BI __gawk_ver -may be specified on the command line with the -.BI -D -option. +If the variable is not set, then the library headers which make use of it +will define it themselves to a default value of 40000, to assume GNU Awk +4.0 or later. + +Lower values than 40000 are not supported; code that requires GNU Awk +assumes at least version 4.0. .SH STANDARD HEADERS .B cppawk -- cgit v1.2.3