These macros check for particular programs--whether they exist, and in some cases whether they support certain features.
YYTEXT_POINTER
if yytext
is a `char *' instead
of a `char []'. Also set output variable LEX_OUTPUT_ROOT
to
the base of the file name that the lexer generates; usually
`lex.yy', but sometimes something else. These results vary
according to whether lex
or flex
is being used.
mawk
, gawk
, nawk
, and awk
, in that
order, and set output variable AWK
to the first one that it
finds. It tries mawk
first because that is reported to be the
fastest implementation.
CC
is not already set in the
environment, check for gcc
, and use cc
if it's not found.
Set output variable CC
to the name of the compiler found.
If using the GNU C compiler, set shell variable GCC
to
`yes', empty otherwise. If output variable CFLAGS
was
not already set, set it to `-g -O' for the GNU C compiler
(`-O' on systems where GCC does not accept `-g'), or `-g'
for other compilers.
NO_MINUS_C_MINUS_O
.
CPP
to a command that runs the
C preprocessor. If `$CC -E' doesn't work, it uses `/lib/cpp'.
It is only portable to run CPP
on files with a `.c'
extension.
If the current language is C (see section Language Choice), many of the
specific test macros use the value of CPP
indirectly by calling
AC_TRY_CPP
, AC_CHECK_HEADER
, AC_EGREP_HEADER
, or
AC_EGREP_CPP
.
CXX
or CCC
(in that order) is set; if so, set output
variable CXX
to its value. Otherwise search for a C++ compiler
under likely names (c++
, g++
, gcc
, CC
, and
cxx
). If none of those checks succeed, as a last resort set
CXX
to gcc
.
If using the GNU C++ compiler, set shell variable GXX
to
`yes', empty otherwise. If output variable CXXFLAGS
was
not already set, set it to `-g -O' for the GNU C++ compiler
(`-O' on systems where G++ does not accept `-g'), or `-g'
for other compilers.
CXXCPP
to a command that runs the
C++ preprocessor. If `$CXX -E' doesn't work, it uses `/lib/cpp'.
It is only portable to run CXXCPP
on files with a `.c',
`.C', or `.cc' extension.
If the current language is C++ (see section Language Choice), many of the
specific test macros use the value of CXXCPP
indirectly by
calling AC_TRY_CPP
, AC_CHECK_HEADER
,
AC_EGREP_HEADER
, or AC_EGREP_CPP
.
CC
if using the
GNU C compiler and ioctl
does not work properly without
`-traditional'. That usually happens when the fixed header files
have not been installed on an old system. Since recent versions of the
GNU C compiler fix the header files automatically when installed, this
is becoming a less prevalent problem.
INSTALL
to the path of a BSD compatible
install
program, if one is found in the current PATH
.
Otherwise, set INSTALL
to `dir/install-sh -c',
checking the directories specified to AC_CONFIG_AUX_DIR
(or its
default directories) to determine dir (see section Creating Output Files). Also set
the variable INSTALL_PROGRAM
to `${INSTALL}' and
INSTALL_DATA
to `${INSTALL} -m 644'.
This macro screens out various instances of install
known to not
work. It prefers to find a C program rather than a shell script, for
speed. Instead of `install-sh', it can also use `install.sh',
but that name is obsolete because some make
programs have a rule
that creates `install' from it if there is no `Makefile'.
A copy of `install-sh' which you may use comes with Autoconf. If
you use AC_PROG_INSTALL
, you must include either
`install-sh' or `install.sh' in your distribution, or
configure
will produce an error message saying it can't find
them--even if the system you're on has a good install
program.
This check is a safety measure to prevent you from accidentally leaving
that file out, which would prevent your package from installing on
systems that don't have a BSD-compatible install
program.
If you need to use your own installation program because it has
features not found in standard install
programs, there is no
reason to use AC_PROG_INSTALL
; just put the pathname of your
program into your `Makefile.in' files.
flex
is found, set output variable LEX
to
`flex' and LEXLIB
to `-lfl', if that library is in a
standard place. Otherwise set LEX
to `lex' and
LEXLIB
to `-ll'.
LN_S
to `ln -s', otherwise set it to `ln'.
RANLIB
to `ranlib' if ranlib
is found, otherwise to `:' (do nothing).
bison
is found, set output variable YACC
to
`bison -y'. Otherwise, if byacc
is found, set YACC
to `byacc'. Otherwise set YACC
to `yacc'.