maint.mk: accept to run submakes with non-GNU make

M: maint.mk:
  * New macro $(is_gnu_make): "yes" if $(MAKE) is GNU make, "no" otherwise.
    This macro exists because now we eccept the possibility that the user
    can override $(MAKE) from the command line (mostly for testing
    purposes).
  * Modified the definition of macro $(xmake) (used to do recursive calls
    to make in e.g. the `strict-distcheck' target): now it uses the option
    `--no-print-directory' only if $(MAKE) is GNU make.
tiny improvement in testsuite

M: tests/define-redefine.test:
  * slighty extended and improved
tiny improvement in testsuite

M: tests/define-redefine.test:
  * slighty extended and improved
remove alias `DEFINE' for `define' (incomplete)

M: src/tokenizer.c:
  * in subroutine `deftok()': do not consider anymore `DEFINE' (all
    uppercase) as an alias for `define' (this does only half-work, due
    to case folding of output chars being done at the wrong time)
  * removed global constant string `bdefn[]', no more needed
  * in some places: cosmetic fixes in spacing

M: tests/define-basic.test:
  * updated acordingly: do not expect anymore that `DEFINE' acts
    like the `define' builtin

A: tests/define-no-uppercase-alias.test:
  * new test: check that `DEFINE' does *not* act like the `define' builtin
  * NOTE: this test still fails; this is due to the folding to lowercase of
    output characters done at the wrong time -- a problem which is causing
    many others failures and bugs, and that will be hopefully fixed soon.

M: tests/Makefile.am:
  * added `define-no-uppercase-alias.test' to $(ALL_TESTS) an $(XFAIL_TESTS)

M: NEWS:
  * updated accordingly (with a big WARNING)
remove alias `DEFINE' for `define' (incomplete)

M: src/tokenizer.c:
  * in subroutine `deftok()': do not consider anymore `DEFINE' (all
    uppercase) as an alias for `define' (this does only half-work, due
    to case folding of output chars being done at the wrong time)
  * removed global constant string `bdefn[]', no more needed
  * in some places: cosmetic fixes in spacing

M: tests/define-basic.test:
  * updated acordingly: do not expect anymore that `DEFINE' acts
    like the `define' builtin

A: tests/define-no-uppercase-alias.test:
  * new test: check that `DEFINE' does *not* act like the `define' builtin
  * NOTE: this test still fails; this is due to the folding to lowercase of
    output characters done at the wrong time -- a problem which is causing
    many others failures and bugs, and that will be hopefully fixed soon.

M: tests/Makefile.am:
  * added `define-no-uppercase-alias.test' to $(ALL_TESTS) an $(XFAIL_TESTS)

M: NEWS:
  * updated accordingly (with a big WARNING)
small improvements in testsuite

M: tests/include-defined.test:
M: tests/integers-many-bases.test:
M: tests/integers-many-bases_f77.test:
  * removed counterproductive calls to `set +x': better to be always
    verbose
  * be more verbose where necessary (e.g. displaying content of more files
    used in the test)
  * other minor related changes
small improvements in testsuite

M: tests/include-defined.test:
M: tests/integers-many-bases.test:
M: tests/integers-many-bases_f77.test:
  * removed counterproductive calls to `set +x': better to be always
    verbose
  * be more verbose where necessary (e.g. displaying content of more files
    used in the test)
  * other minor related changes
improvements in testsuite

M: tests/defs.in:
  * Subroutine `run_CMD()' improved and extended.
     1. New valid value "FAIL" for expected exit status, meaning that
        every exit status of COMMAND *but 0* is acceptable.
     2. New option `-m': save both stdout and stderr of COMMAND into the
        same file, rather than into two separate files.
     3. Do not try to save/restore value of the `xtrace' shell setting
        anymore: we can safely assume that `set -x' is always active out
        of run_CMD(), and must remain so.
     4. Now also the stderr of COMMAND is displayed on stdandard output,
        no more on standard error
     5. Description and comments modified accordingly, and improved in
        other aspects too.
  * In subroutine `run_RATFOR()': quote the $RATFOR variable when used as
    argument to run_CMD() (this is nedded, since the semantic of run_CMD()
    does not allow it to expand to more than one token)
improvements in testsuite

M: tests/defs.in:
  * Subroutine `run_CMD()' improved and extended.
     1. New valid value "FAIL" for expected exit status, meaning that
        every exit status of COMMAND *but 0* is acceptable.
     2. New option `-m': save both stdout and stderr of COMMAND into the
        same file, rather than into two separate files.
     3. Do not try to save/restore value of the `xtrace' shell setting
        anymore: we can safely assume that `set -x' is always active out
        of run_CMD(), and must remain so.
     4. Now also the stderr of COMMAND is displayed on stdandard output,
        no more on standard error
     5. Description and comments modified accordingly, and improved in
        other aspects too.
  * In subroutine `run_RATFOR()': quote the $RATFOR variable when used as
    argument to run_CMD() (this is nedded, since the semantic of run_CMD()
    does not allow it to expand to more than one token)
tinu change in testsuite (comments)

M: tests/comments-no-hang.test:
  * added a comment explaining why we have to use `$RATFOR' and not
    `run_RATFOR'
tinu change in testsuite (comments)

M: tests/comments-no-hang.test:
  * added a comment explaining why we have to use `$RATFOR' and not
    `run_RATFOR'
small improvement in testsuite

M: defs.in:
  * removed definition of subroutine `NOT()': it's not used, and it's
    practically useless
  * improved/fixed shorts usage description for subroutines `run_RATFOR()'
    and `run_F77()'
small improvement in testsuite

M: defs.in:
  * removed definition of subroutine `NOT()': it's not used, and it's
    practically useless
  * improved/fixed shorts usage description for subroutines `run_RATFOR()'
    and `run_F77()'
testsuite slighty extended

A: tests/include-cornercase.test:
A: tests/include-missing-filename.test:
  * new tests

M: tests/include-fail.test:
  * cosmetic change in comments

M: tests/Makefile.am:
  * updated accordingly (also, `include-missing-filename.test' temporarly
    added to `$(XFAIL_TESTS)', as it does not work yet).
testsuite slighty extended

A: tests/include-cornercase.test:
A: tests/include-missing-filename.test:
  * new tests

M: tests/include-fail.test:
  * cosmetic change in comments

M: tests/Makefile.am:
  * updated accordingly (also, `include-missing-filename.test' temporarly
    added to `$(XFAIL_TESTS)', as it does not work yet).
improving diagnostic for `include' (missing arg)

M: src/tokenizer.c:
  * in function `gettok()': improved diagnostic for builtin `include': if
    no file name is given, complains with `missing filename' rather than
    with a generic `open failed'

M: tests/Makefile.am:
  * `include-missing-filename.test' removed from $(XFAIL_TESTS): it works
    now
improving diagnostic for `include' (missing arg)

M: src/tokenizer.c:
  * in function `gettok()': improved diagnostic for builtin `include': if
    no file name is given, complains with `missing filename' rather than
    with a generic `open failed'

M: tests/Makefile.am:
  * `include-missing-filename.test' removed from $(XFAIL_TESTS): it works
    now
typofix

M: src/io.c:
  * improved wording in comments into `outasis()':
      s/line floding/line wrapping/
typofix

M: src/io.c:
  * improved wording in comments into `outasis()':
      s/line floding/line wrapping/
cosmetic fix (coding statndards)

M: src/utils.c:
  * tiny fix to better respect our coding standards: in `do/while' loop:
    keep the `while' on the same line of the closing brace for the `do'.