diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rwxr-xr-x | config.sub | 74 | ||||
-rw-r--r-- | doc/ChangeLog | 7 | ||||
-rw-r--r-- | doc/gawk.info | 630 | ||||
-rw-r--r-- | doc/gawk.texi | 2 | ||||
-rw-r--r-- | doc/gawktexi.in | 2 | ||||
-rw-r--r-- | extension/build-aux/ChangeLog | 4 | ||||
-rwxr-xr-x | extension/build-aux/config.sub | 74 |
8 files changed, 429 insertions, 368 deletions
@@ -1,3 +1,7 @@ +2018-05-13 Arnold D. Robbins <arnold@skeeve.com> + + * config.sub: Update from GNULIB. + 2018-05-03 Arnold D. Robbins <arnold@skeeve.com> * Makefile.am (pc/Makefile.tst): New target. @@ -2,7 +2,7 @@ # Configuration validation subroutine script. # Copyright 1992-2018 Free Software Foundation, Inc. -timestamp='2018-04-16' +timestamp='2018-05-12' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -110,28 +110,48 @@ case $# in exit 1;; esac -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ - kopensolaris*-gnu* | cloudabi*-eabi* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - android-linux) - os=-linux-android - basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown - ;; - *) - basic_machine=`echo "$1" | sed 's/-[^-]*$//'` - if [ "$basic_machine" != "$1" ] - then os=`echo "$1" | sed 's/.*-/-/'` - else os=; fi - ;; +# Split fields of configuration type +IFS="-" read -r field1 field2 field3 field4 <<EOF +$1 +EOF + +# Separate into logical components for further validation +case $1 in + *-*-*-*) + basic_machine=$field1-$field2 + os=-$field3-$field4 + ;; + *-*-*) + # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two + # parts + maybe_os=$field2-$field3 + case $maybe_os in + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \ + | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \ + | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ + | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ + | storm-chaos* | os2-emx* | rtmk-nova*) + basic_machine=$field1 + os=-$maybe_os + ;; + android-linux) + basic_machine=$field1-unknown + os=-linux-android + ;; + *) + basic_machine=$field1-$field2 + os=-$field3 + ;; + esac + ;; + *-*) + basic_machine=$field1 + os=-$field2 + ;; + *) + basic_machine=$1 + os= + ;; esac ### Let's recognize common machines as not being operating systems so @@ -249,7 +269,7 @@ case $basic_machine in | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arceb \ - | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ + | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv6m | armv[78][arm] \ | avr | avr32 \ | ba \ | be32 | be64 \ @@ -293,6 +313,7 @@ case $basic_machine in | mt \ | msp430 \ | nds32 | nds32le | nds32be \ + | nfp \ | nios | nios2 | nios2eb | nios2el \ | ns16k | ns32k \ | open8 | or1k | or1knd | or32 \ @@ -423,6 +444,7 @@ case $basic_machine in | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ + | nfp-* \ | nios-* | nios2-* | nios2eb-* | nios2el-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ @@ -1338,7 +1360,7 @@ esac # Decode manufacturer-specific aliases for certain operating systems. -if [ x"$os" != x"" ] +if [ x$os != x ] then case $os in # First match some system type aliases that might get confused @@ -1528,6 +1550,8 @@ case $os in ;; -none) ;; + -*-eabi) + ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` diff --git a/doc/ChangeLog b/doc/ChangeLog index a7a0237e..30249010 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +2018-05-13 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in (Bitwise Functions): Use @asis in the table to + get brackets for optional stuff to come out in Roman. + 2018-05-10 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in (Bracket Expressions): Document the full list @@ -434,7 +439,7 @@ 2017-02-21 Andrew J. Schorr <aschorr@telemetry-investments.com> * gawk.1: Document new mktime optional 2nd utc-flag argument. - * gawktex.in: Ditto. + * gawktexi.in: Ditto. * awkcard.in: Ditto. 2017-02-13 Arnold D. Robbins <arnold@skeeve.com> diff --git a/doc/gawk.info b/doc/gawk.info index 84ee1838..6dee25f5 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -13818,7 +13818,7 @@ with '11001000'. The following list describes 'gawk''s built-in functions that implement the bitwise operations. Optional parameters are enclosed in square brackets ([ ]): -'and(V1, V2 [, ...])' +'and('V1',' V2 [',' ...]')' Return the bitwise AND of the arguments. There must be at least two. @@ -13828,14 +13828,14 @@ are enclosed in square brackets ([ ]): 'lshift(VAL, COUNT)' Return the value of VAL, shifted left by COUNT bits. -'or(V1, V2 [, ...])' +'or('V1',' V2 [',' ...]')' Return the bitwise OR of the arguments. There must be at least two. 'rshift(VAL, COUNT)' Return the value of VAL, shifted right by COUNT bits. -'xor(V1, V2 [, ...])' +'xor('V1',' V2 [',' ...]')' Return the bitwise XOR of the arguments. There must be at least two. @@ -36279,317 +36279,317 @@ Ref: Time Functions-Footnote-5584302 Ref: Time Functions-Footnote-6584529 Node: Bitwise Functions584795 Ref: table-bitwise-ops585389 -Ref: Bitwise Functions-Footnote-1591434 -Ref: Bitwise Functions-Footnote-2591607 -Node: Type Functions591798 -Node: I18N Functions594549 -Node: User-defined596200 -Node: Definition Syntax597005 -Ref: Definition Syntax-Footnote-1602692 -Node: Function Example602763 -Ref: Function Example-Footnote-1605685 -Node: Function Caveats605707 -Node: Calling A Function606225 -Node: Variable Scope607183 -Node: Pass By Value/Reference610177 -Node: Return Statement613676 -Node: Dynamic Typing616655 -Node: Indirect Calls617585 -Ref: Indirect Calls-Footnote-1627837 -Node: Functions Summary627965 -Node: Library Functions630670 -Ref: Library Functions-Footnote-1634277 -Ref: Library Functions-Footnote-2634420 -Node: Library Names634591 -Ref: Library Names-Footnote-1638051 -Ref: Library Names-Footnote-2638274 -Node: General Functions638360 -Node: Strtonum Function639463 -Node: Assert Function642485 -Node: Round Function645811 -Node: Cliff Random Function647351 -Node: Ordinal Functions648367 -Ref: Ordinal Functions-Footnote-1651430 -Ref: Ordinal Functions-Footnote-2651682 -Node: Join Function651892 -Ref: Join Function-Footnote-1653662 -Node: Getlocaltime Function653862 -Node: Readfile Function657604 -Node: Shell Quoting659581 -Node: Data File Management660982 -Node: Filetrans Function661614 -Node: Rewind Function665710 -Node: File Checking667620 -Ref: File Checking-Footnote-1668954 -Node: Empty Files669155 -Node: Ignoring Assigns671134 -Node: Getopt Function672684 -Ref: Getopt Function-Footnote-1684153 -Node: Passwd Functions684353 -Ref: Passwd Functions-Footnote-1693192 -Node: Group Functions693280 -Ref: Group Functions-Footnote-1701178 -Node: Walking Arrays701385 -Node: Library Functions Summary704393 -Node: Library Exercises705799 -Node: Sample Programs706264 -Node: Running Examples707034 -Node: Clones707762 -Node: Cut Program708986 -Node: Egrep Program718915 -Ref: Egrep Program-Footnote-1726427 -Node: Id Program726537 -Node: Split Program730217 -Ref: Split Program-Footnote-1733675 -Node: Tee Program733804 -Node: Uniq Program736594 -Node: Wc Program744020 -Ref: Wc Program-Footnote-1748275 -Node: Miscellaneous Programs748369 -Node: Dupword Program749582 -Node: Alarm Program751612 -Node: Translate Program756467 -Ref: Translate Program-Footnote-1761032 -Node: Labels Program761302 -Ref: Labels Program-Footnote-1764653 -Node: Word Sorting764737 -Node: History Sorting768809 -Node: Extract Program770644 -Node: Simple Sed778174 -Node: Igawk Program781248 -Ref: Igawk Program-Footnote-1795579 -Ref: Igawk Program-Footnote-2795781 -Ref: Igawk Program-Footnote-3795903 -Node: Anagram Program796018 -Node: Signature Program799080 -Node: Programs Summary800327 -Node: Programs Exercises801541 -Ref: Programs Exercises-Footnote-1805670 -Node: Advanced Features805761 -Node: Nondecimal Data807751 -Node: Array Sorting809342 -Node: Controlling Array Traversal810042 -Ref: Controlling Array Traversal-Footnote-1818410 -Node: Array Sorting Functions818528 -Ref: Array Sorting Functions-Footnote-1823619 -Node: Two-way I/O823815 -Ref: Two-way I/O-Footnote-1830367 -Ref: Two-way I/O-Footnote-2830554 -Node: TCP/IP Networking830636 -Node: Profiling833754 -Ref: Profiling-Footnote-1842426 -Node: Advanced Features Summary842749 -Node: Internationalization844593 -Node: I18N and L10N846073 -Node: Explaining gettext846760 -Ref: Explaining gettext-Footnote-1852652 -Ref: Explaining gettext-Footnote-2852837 -Node: Programmer i18n853002 -Ref: Programmer i18n-Footnote-1857951 -Node: Translator i18n858000 -Node: String Extraction858794 -Ref: String Extraction-Footnote-1859926 -Node: Printf Ordering860012 -Ref: Printf Ordering-Footnote-1862798 -Node: I18N Portability862862 -Ref: I18N Portability-Footnote-1865318 -Node: I18N Example865381 -Ref: I18N Example-Footnote-1868187 -Node: Gawk I18N868260 -Node: I18N Summary868905 -Node: Debugger870246 -Node: Debugging871269 -Node: Debugging Concepts871710 -Node: Debugging Terms873519 -Node: Awk Debugging876094 -Node: Sample Debugging Session877000 -Node: Debugger Invocation877534 -Node: Finding The Bug878920 -Node: List of Debugger Commands885398 -Node: Breakpoint Control886731 -Node: Debugger Execution Control890425 -Node: Viewing And Changing Data893787 -Node: Execution Stack897161 -Node: Debugger Info898798 -Node: Miscellaneous Debugger Commands902869 -Node: Readline Support907931 -Node: Limitations908827 -Node: Debugging Summary910936 -Node: Arbitrary Precision Arithmetic912215 -Node: Computer Arithmetic913700 -Ref: table-numeric-ranges917466 -Ref: table-floating-point-ranges917959 -Ref: Computer Arithmetic-Footnote-1918617 -Node: Math Definitions918674 -Ref: table-ieee-formats921990 -Ref: Math Definitions-Footnote-1922593 -Node: MPFR features922698 -Node: FP Math Caution924416 -Ref: FP Math Caution-Footnote-1925488 -Node: Inexactness of computations925857 -Node: Inexact representation926817 -Node: Comparing FP Values928177 -Node: Errors accumulate929259 -Node: Getting Accuracy930692 -Node: Try To Round933402 -Node: Setting precision934301 -Ref: table-predefined-precision-strings934998 -Node: Setting the rounding mode936828 -Ref: table-gawk-rounding-modes937202 -Ref: Setting the rounding mode-Footnote-1941133 -Node: Arbitrary Precision Integers941312 -Ref: Arbitrary Precision Integers-Footnote-1944487 -Node: Checking for MPFR944636 -Node: POSIX Floating Point Problems946110 -Ref: POSIX Floating Point Problems-Footnote-1949981 -Node: Floating point summary950019 -Node: Dynamic Extensions952209 -Node: Extension Intro953762 -Node: Plugin License955028 -Node: Extension Mechanism Outline955825 -Ref: figure-load-extension956264 -Ref: figure-register-new-function957829 -Ref: figure-call-new-function958921 -Node: Extension API Description960983 -Node: Extension API Functions Introduction962625 -Node: General Data Types968165 -Ref: General Data Types-Footnote-1976526 -Node: Memory Allocation Functions976825 -Ref: Memory Allocation Functions-Footnote-1981035 -Node: Constructor Functions981134 -Node: Registration Functions984720 -Node: Extension Functions985405 -Node: Exit Callback Functions990620 -Node: Extension Version String991870 -Node: Input Parsers992533 -Node: Output Wrappers1005254 -Node: Two-way processors1009766 -Node: Printing Messages1012031 -Ref: Printing Messages-Footnote-11013202 -Node: Updating ERRNO1013355 -Node: Requesting Values1014094 -Ref: table-value-types-returned1014831 -Node: Accessing Parameters1015767 -Node: Symbol Table Access1017002 -Node: Symbol table by name1017514 -Node: Symbol table by cookie1019303 -Ref: Symbol table by cookie-Footnote-11023488 -Node: Cached values1023552 -Ref: Cached values-Footnote-11027088 -Node: Array Manipulation1027241 -Ref: Array Manipulation-Footnote-11028332 -Node: Array Data Types1028369 -Ref: Array Data Types-Footnote-11031027 -Node: Array Functions1031119 -Node: Flattening Arrays1035617 -Node: Creating Arrays1042593 -Node: Redirection API1047360 -Node: Extension API Variables1050193 -Node: Extension Versioning1050904 -Ref: gawk-api-version1051333 -Node: Extension GMP/MPFR Versioning1053064 -Node: Extension API Informational Variables1054692 -Node: Extension API Boilerplate1055765 -Node: Changes from API V11059739 -Node: Finding Extensions1061311 -Node: Extension Example1061870 -Node: Internal File Description1062668 -Node: Internal File Ops1066748 -Ref: Internal File Ops-Footnote-11078098 -Node: Using Internal File Ops1078238 -Ref: Using Internal File Ops-Footnote-11080621 -Node: Extension Samples1080895 -Node: Extension Sample File Functions1082424 -Node: Extension Sample Fnmatch1090073 -Node: Extension Sample Fork1091560 -Node: Extension Sample Inplace1092778 -Node: Extension Sample Ord1095995 -Node: Extension Sample Readdir1096831 -Ref: table-readdir-file-types1097720 -Node: Extension Sample Revout1098525 -Node: Extension Sample Rev2way1099114 -Node: Extension Sample Read write array1099854 -Node: Extension Sample Readfile1101796 -Node: Extension Sample Time1102891 -Node: Extension Sample API Tests1104239 -Node: gawkextlib1104731 -Node: Extension summary1107649 -Node: Extension Exercises1111351 -Node: Language History1112849 -Node: V7/SVR3.11114505 -Node: SVR41116657 -Node: POSIX1118091 -Node: BTL1119471 -Node: POSIX/GNU1120200 -Node: Feature History1125978 -Node: Common Extensions1141837 -Node: Ranges and Locales1143120 -Ref: Ranges and Locales-Footnote-11147736 -Ref: Ranges and Locales-Footnote-21147763 -Ref: Ranges and Locales-Footnote-31147998 -Node: Contributors1148219 -Node: History summary1154164 -Node: Installation1155544 -Node: Gawk Distribution1156488 -Node: Getting1156972 -Node: Extracting1157935 -Node: Distribution contents1159573 -Node: Unix Installation1166053 -Node: Quick Installation1166735 -Node: Shell Startup Files1169149 -Node: Additional Configuration Options1170238 -Node: Configuration Philosophy1172403 -Node: Non-Unix Installation1174772 -Node: PC Installation1175232 -Node: PC Binary Installation1176070 -Node: PC Compiling1176505 -Node: PC Using1177622 -Node: Cygwin1180837 -Node: MSYS1181936 -Node: VMS Installation1182437 -Node: VMS Compilation1183228 -Ref: VMS Compilation-Footnote-11184457 -Node: VMS Dynamic Extensions1184515 -Node: VMS Installation Details1186200 -Node: VMS Running1188453 -Node: VMS GNV1192732 -Node: VMS Old Gawk1193467 -Node: Bugs1193938 -Node: Bug address1194601 -Node: Usenet1197393 -Node: Maintainers1198170 -Node: Other Versions1199431 -Node: Installation summary1206193 -Node: Notes1207395 -Node: Compatibility Mode1208260 -Node: Additions1209042 -Node: Accessing The Source1209967 -Node: Adding Code1211404 -Node: New Ports1217623 -Node: Derived Files1222111 -Ref: Derived Files-Footnote-11227757 -Ref: Derived Files-Footnote-21227792 -Ref: Derived Files-Footnote-31228390 -Node: Future Extensions1228504 -Node: Implementation Limitations1229162 -Node: Extension Design1230345 -Node: Old Extension Problems1231499 -Ref: Old Extension Problems-Footnote-11233017 -Node: Extension New Mechanism Goals1233074 -Ref: Extension New Mechanism Goals-Footnote-11236438 -Node: Extension Other Design Decisions1236627 -Node: Extension Future Growth1238740 -Node: Old Extension Mechanism1239576 -Node: Notes summary1241339 -Node: Basic Concepts1242521 -Node: Basic High Level1243202 -Ref: figure-general-flow1243484 -Ref: figure-process-flow1244169 -Ref: Basic High Level-Footnote-11247470 -Node: Basic Data Typing1247655 -Node: Glossary1250983 -Node: Copying1282821 -Node: GNU Free Documentation License1320364 -Node: Index1345484 +Ref: Bitwise Functions-Footnote-1591452 +Ref: Bitwise Functions-Footnote-2591625 +Node: Type Functions591816 +Node: I18N Functions594567 +Node: User-defined596218 +Node: Definition Syntax597023 +Ref: Definition Syntax-Footnote-1602710 +Node: Function Example602781 +Ref: Function Example-Footnote-1605703 +Node: Function Caveats605725 +Node: Calling A Function606243 +Node: Variable Scope607201 +Node: Pass By Value/Reference610195 +Node: Return Statement613694 +Node: Dynamic Typing616673 +Node: Indirect Calls617603 +Ref: Indirect Calls-Footnote-1627855 +Node: Functions Summary627983 +Node: Library Functions630688 +Ref: Library Functions-Footnote-1634295 +Ref: Library Functions-Footnote-2634438 +Node: Library Names634609 +Ref: Library Names-Footnote-1638069 +Ref: Library Names-Footnote-2638292 +Node: General Functions638378 +Node: Strtonum Function639481 +Node: Assert Function642503 +Node: Round Function645829 +Node: Cliff Random Function647369 +Node: Ordinal Functions648385 +Ref: Ordinal Functions-Footnote-1651448 +Ref: Ordinal Functions-Footnote-2651700 +Node: Join Function651910 +Ref: Join Function-Footnote-1653680 +Node: Getlocaltime Function653880 +Node: Readfile Function657622 +Node: Shell Quoting659599 +Node: Data File Management661000 +Node: Filetrans Function661632 +Node: Rewind Function665728 +Node: File Checking667638 +Ref: File Checking-Footnote-1668972 +Node: Empty Files669173 +Node: Ignoring Assigns671152 +Node: Getopt Function672702 +Ref: Getopt Function-Footnote-1684171 +Node: Passwd Functions684371 +Ref: Passwd Functions-Footnote-1693210 +Node: Group Functions693298 +Ref: Group Functions-Footnote-1701196 +Node: Walking Arrays701403 +Node: Library Functions Summary704411 +Node: Library Exercises705817 +Node: Sample Programs706282 +Node: Running Examples707052 +Node: Clones707780 +Node: Cut Program709004 +Node: Egrep Program718933 +Ref: Egrep Program-Footnote-1726445 +Node: Id Program726555 +Node: Split Program730235 +Ref: Split Program-Footnote-1733693 +Node: Tee Program733822 +Node: Uniq Program736612 +Node: Wc Program744038 +Ref: Wc Program-Footnote-1748293 +Node: Miscellaneous Programs748387 +Node: Dupword Program749600 +Node: Alarm Program751630 +Node: Translate Program756485 +Ref: Translate Program-Footnote-1761050 +Node: Labels Program761320 +Ref: Labels Program-Footnote-1764671 +Node: Word Sorting764755 +Node: History Sorting768827 +Node: Extract Program770662 +Node: Simple Sed778192 +Node: Igawk Program781266 +Ref: Igawk Program-Footnote-1795597 +Ref: Igawk Program-Footnote-2795799 +Ref: Igawk Program-Footnote-3795921 +Node: Anagram Program796036 +Node: Signature Program799098 +Node: Programs Summary800345 +Node: Programs Exercises801559 +Ref: Programs Exercises-Footnote-1805688 +Node: Advanced Features805779 +Node: Nondecimal Data807769 +Node: Array Sorting809360 +Node: Controlling Array Traversal810060 +Ref: Controlling Array Traversal-Footnote-1818428 +Node: Array Sorting Functions818546 +Ref: Array Sorting Functions-Footnote-1823637 +Node: Two-way I/O823833 +Ref: Two-way I/O-Footnote-1830385 +Ref: Two-way I/O-Footnote-2830572 +Node: TCP/IP Networking830654 +Node: Profiling833772 +Ref: Profiling-Footnote-1842444 +Node: Advanced Features Summary842767 +Node: Internationalization844611 +Node: I18N and L10N846091 +Node: Explaining gettext846778 +Ref: Explaining gettext-Footnote-1852670 +Ref: Explaining gettext-Footnote-2852855 +Node: Programmer i18n853020 +Ref: Programmer i18n-Footnote-1857969 +Node: Translator i18n858018 +Node: String Extraction858812 +Ref: String Extraction-Footnote-1859944 +Node: Printf Ordering860030 +Ref: Printf Ordering-Footnote-1862816 +Node: I18N Portability862880 +Ref: I18N Portability-Footnote-1865336 +Node: I18N Example865399 +Ref: I18N Example-Footnote-1868205 +Node: Gawk I18N868278 +Node: I18N Summary868923 +Node: Debugger870264 +Node: Debugging871287 +Node: Debugging Concepts871728 +Node: Debugging Terms873537 +Node: Awk Debugging876112 +Node: Sample Debugging Session877018 +Node: Debugger Invocation877552 +Node: Finding The Bug878938 +Node: List of Debugger Commands885416 +Node: Breakpoint Control886749 +Node: Debugger Execution Control890443 +Node: Viewing And Changing Data893805 +Node: Execution Stack897179 +Node: Debugger Info898816 +Node: Miscellaneous Debugger Commands902887 +Node: Readline Support907949 +Node: Limitations908845 +Node: Debugging Summary910954 +Node: Arbitrary Precision Arithmetic912233 +Node: Computer Arithmetic913718 +Ref: table-numeric-ranges917484 +Ref: table-floating-point-ranges917977 +Ref: Computer Arithmetic-Footnote-1918635 +Node: Math Definitions918692 +Ref: table-ieee-formats922008 +Ref: Math Definitions-Footnote-1922611 +Node: MPFR features922716 +Node: FP Math Caution924434 +Ref: FP Math Caution-Footnote-1925506 +Node: Inexactness of computations925875 +Node: Inexact representation926835 +Node: Comparing FP Values928195 +Node: Errors accumulate929277 +Node: Getting Accuracy930710 +Node: Try To Round933420 +Node: Setting precision934319 +Ref: table-predefined-precision-strings935016 +Node: Setting the rounding mode936846 +Ref: table-gawk-rounding-modes937220 +Ref: Setting the rounding mode-Footnote-1941151 +Node: Arbitrary Precision Integers941330 +Ref: Arbitrary Precision Integers-Footnote-1944505 +Node: Checking for MPFR944654 +Node: POSIX Floating Point Problems946128 +Ref: POSIX Floating Point Problems-Footnote-1949999 +Node: Floating point summary950037 +Node: Dynamic Extensions952227 +Node: Extension Intro953780 +Node: Plugin License955046 +Node: Extension Mechanism Outline955843 +Ref: figure-load-extension956282 +Ref: figure-register-new-function957847 +Ref: figure-call-new-function958939 +Node: Extension API Description961001 +Node: Extension API Functions Introduction962643 +Node: General Data Types968183 +Ref: General Data Types-Footnote-1976544 +Node: Memory Allocation Functions976843 +Ref: Memory Allocation Functions-Footnote-1981053 +Node: Constructor Functions981152 +Node: Registration Functions984738 +Node: Extension Functions985423 +Node: Exit Callback Functions990638 +Node: Extension Version String991888 +Node: Input Parsers992551 +Node: Output Wrappers1005272 +Node: Two-way processors1009784 +Node: Printing Messages1012049 +Ref: Printing Messages-Footnote-11013220 +Node: Updating ERRNO1013373 +Node: Requesting Values1014112 +Ref: table-value-types-returned1014849 +Node: Accessing Parameters1015785 +Node: Symbol Table Access1017020 +Node: Symbol table by name1017532 +Node: Symbol table by cookie1019321 +Ref: Symbol table by cookie-Footnote-11023506 +Node: Cached values1023570 +Ref: Cached values-Footnote-11027106 +Node: Array Manipulation1027259 +Ref: Array Manipulation-Footnote-11028350 +Node: Array Data Types1028387 +Ref: Array Data Types-Footnote-11031045 +Node: Array Functions1031137 +Node: Flattening Arrays1035635 +Node: Creating Arrays1042611 +Node: Redirection API1047378 +Node: Extension API Variables1050211 +Node: Extension Versioning1050922 +Ref: gawk-api-version1051351 +Node: Extension GMP/MPFR Versioning1053082 +Node: Extension API Informational Variables1054710 +Node: Extension API Boilerplate1055783 +Node: Changes from API V11059757 +Node: Finding Extensions1061329 +Node: Extension Example1061888 +Node: Internal File Description1062686 +Node: Internal File Ops1066766 +Ref: Internal File Ops-Footnote-11078116 +Node: Using Internal File Ops1078256 +Ref: Using Internal File Ops-Footnote-11080639 +Node: Extension Samples1080913 +Node: Extension Sample File Functions1082442 +Node: Extension Sample Fnmatch1090091 +Node: Extension Sample Fork1091578 +Node: Extension Sample Inplace1092796 +Node: Extension Sample Ord1096013 +Node: Extension Sample Readdir1096849 +Ref: table-readdir-file-types1097738 +Node: Extension Sample Revout1098543 +Node: Extension Sample Rev2way1099132 +Node: Extension Sample Read write array1099872 +Node: Extension Sample Readfile1101814 +Node: Extension Sample Time1102909 +Node: Extension Sample API Tests1104257 +Node: gawkextlib1104749 +Node: Extension summary1107667 +Node: Extension Exercises1111369 +Node: Language History1112867 +Node: V7/SVR3.11114523 +Node: SVR41116675 +Node: POSIX1118109 +Node: BTL1119489 +Node: POSIX/GNU1120218 +Node: Feature History1125996 +Node: Common Extensions1141855 +Node: Ranges and Locales1143138 +Ref: Ranges and Locales-Footnote-11147754 +Ref: Ranges and Locales-Footnote-21147781 +Ref: Ranges and Locales-Footnote-31148016 +Node: Contributors1148237 +Node: History summary1154182 +Node: Installation1155562 +Node: Gawk Distribution1156506 +Node: Getting1156990 +Node: Extracting1157953 +Node: Distribution contents1159591 +Node: Unix Installation1166071 +Node: Quick Installation1166753 +Node: Shell Startup Files1169167 +Node: Additional Configuration Options1170256 +Node: Configuration Philosophy1172421 +Node: Non-Unix Installation1174790 +Node: PC Installation1175250 +Node: PC Binary Installation1176088 +Node: PC Compiling1176523 +Node: PC Using1177640 +Node: Cygwin1180855 +Node: MSYS1181954 +Node: VMS Installation1182455 +Node: VMS Compilation1183246 +Ref: VMS Compilation-Footnote-11184475 +Node: VMS Dynamic Extensions1184533 +Node: VMS Installation Details1186218 +Node: VMS Running1188471 +Node: VMS GNV1192750 +Node: VMS Old Gawk1193485 +Node: Bugs1193956 +Node: Bug address1194619 +Node: Usenet1197411 +Node: Maintainers1198188 +Node: Other Versions1199449 +Node: Installation summary1206211 +Node: Notes1207413 +Node: Compatibility Mode1208278 +Node: Additions1209060 +Node: Accessing The Source1209985 +Node: Adding Code1211422 +Node: New Ports1217641 +Node: Derived Files1222129 +Ref: Derived Files-Footnote-11227775 +Ref: Derived Files-Footnote-21227810 +Ref: Derived Files-Footnote-31228408 +Node: Future Extensions1228522 +Node: Implementation Limitations1229180 +Node: Extension Design1230363 +Node: Old Extension Problems1231517 +Ref: Old Extension Problems-Footnote-11233035 +Node: Extension New Mechanism Goals1233092 +Ref: Extension New Mechanism Goals-Footnote-11236456 +Node: Extension Other Design Decisions1236645 +Node: Extension Future Growth1238758 +Node: Old Extension Mechanism1239594 +Node: Notes summary1241357 +Node: Basic Concepts1242539 +Node: Basic High Level1243220 +Ref: figure-general-flow1243502 +Ref: figure-process-flow1244187 +Ref: Basic High Level-Footnote-11247488 +Node: Basic Data Typing1247673 +Node: Glossary1251001 +Node: Copying1282839 +Node: GNU Free Documentation License1320382 +Node: Index1345502 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 17ba8c2d..cff14f7b 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -19873,7 +19873,7 @@ bits, you end up with @samp{11001000}. The following list describes Optional parameters are enclosed in square brackets ([ ]): @cindex @command{gawk}, bitwise operations in -@table @code +@table @asis @cindexgawkfunc{and} @cindex bitwise AND @item @code{and(}@var{v1}@code{,} @var{v2} [@code{,} @dots{}]@code{)} diff --git a/doc/gawktexi.in b/doc/gawktexi.in index f9dba03b..a833b92b 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -18984,7 +18984,7 @@ bits, you end up with @samp{11001000}. The following list describes Optional parameters are enclosed in square brackets ([ ]): @cindex @command{gawk}, bitwise operations in -@table @code +@table @asis @cindexgawkfunc{and} @cindex bitwise AND @item @code{and(}@var{v1}@code{,} @var{v2} [@code{,} @dots{}]@code{)} diff --git a/extension/build-aux/ChangeLog b/extension/build-aux/ChangeLog index 8b6c3325..b318e8f0 100644 --- a/extension/build-aux/ChangeLog +++ b/extension/build-aux/ChangeLog @@ -1,3 +1,7 @@ +2018-05-13 Arnold D. Robbins <arnold@skeeve.com> + + * config.sub: Update from GNULIB. + 2018-04-18 Arnold D. Robbins <arnold@skeeve.com> * config.sub: Updated from GNULIB. diff --git a/extension/build-aux/config.sub b/extension/build-aux/config.sub index 657a8625..98835b48 100755 --- a/extension/build-aux/config.sub +++ b/extension/build-aux/config.sub @@ -2,7 +2,7 @@ # Configuration validation subroutine script. # Copyright 1992-2018 Free Software Foundation, Inc. -timestamp='2018-04-16' +timestamp='2018-05-12' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -110,28 +110,48 @@ case $# in exit 1;; esac -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ - kopensolaris*-gnu* | cloudabi*-eabi* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - android-linux) - os=-linux-android - basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown - ;; - *) - basic_machine=`echo "$1" | sed 's/-[^-]*$//'` - if [ "$basic_machine" != "$1" ] - then os=`echo "$1" | sed 's/.*-/-/'` - else os=; fi - ;; +# Split fields of configuration type +IFS="-" read -r field1 field2 field3 field4 <<EOF +$1 +EOF + +# Separate into logical components for further validation +case $1 in + *-*-*-*) + basic_machine=$field1-$field2 + os=-$field3-$field4 + ;; + *-*-*) + # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two + # parts + maybe_os=$field2-$field3 + case $maybe_os in + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \ + | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \ + | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ + | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ + | storm-chaos* | os2-emx* | rtmk-nova*) + basic_machine=$field1 + os=-$maybe_os + ;; + android-linux) + basic_machine=$field1-unknown + os=-linux-android + ;; + *) + basic_machine=$field1-$field2 + os=-$field3 + ;; + esac + ;; + *-*) + basic_machine=$field1 + os=-$field2 + ;; + *) + basic_machine=$1 + os= + ;; esac ### Let's recognize common machines as not being operating systems so @@ -249,7 +269,7 @@ case $basic_machine in | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arceb \ - | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ + | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv6m | armv[78][arm] \ | avr | avr32 \ | ba \ | be32 | be64 \ @@ -293,6 +313,7 @@ case $basic_machine in | mt \ | msp430 \ | nds32 | nds32le | nds32be \ + | nfp \ | nios | nios2 | nios2eb | nios2el \ | ns16k | ns32k \ | open8 | or1k | or1knd | or32 \ @@ -423,6 +444,7 @@ case $basic_machine in | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ + | nfp-* \ | nios-* | nios2-* | nios2eb-* | nios2el-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ @@ -1338,7 +1360,7 @@ esac # Decode manufacturer-specific aliases for certain operating systems. -if [ x"$os" != x"" ] +if [ x$os != x ] then case $os in # First match some system type aliases that might get confused @@ -1528,6 +1550,8 @@ case $os in ;; -none) ;; + -*-eabi) + ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` |