This manual is for GNU Autoconf Archive version 2023.02.20, a collection
of freely re-usable Autoconf macros.

Copyright (C) 2022 Autoconf Archive Maintainers
<autoconf-archive-maintainers@gnu.org>

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
copy of the license is included in the section entitled "GNU Free
Documentation License".

ax_check_postgres_db
====================

Synopsis
********

     AX_CHECK_POSTGRES_DB([ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND])

Description
***********

This macro tries to find the headers and libraries for the PostgreSQL
database to build client applications.

If includes are found, the variable PQINCPATH will be set, and
have_pqinc will be 'yes'.  If libraries are found, the variable
PQLIBPATH will be set, and have_pqlib will be 'yes'.  If both PQINCPATH
and PQLIBPATH are found, HAVE_LIBPQ will be set to 'yes' (and
AC_DEFINEd), and -lpq will be added to the beginning of LIBS. If their
respective conditions are not met, have_pqinc, have_pqlib, HAVE_LIBPQ,
will be 'no'.

This macro does fails if either the headers or the library are not
found, unless ACTION-IF-NOT-FOUND is not empty.  When both are found,
ACTION-IF-FOUND, if defined, is executed after the variables have been
defined.  If -with-pgsql=no (or equivalents) is given, nothing happens.

An automake conditional can be subsequently defined as

       AM_CONDITIONAL([HAVE_LIBPQ], [test x$HAVE_LIBPQ = x$yes])

in configure.ac.

Source Code
***********

Download the latest version of 'ax_check_postgres_db.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_postgres_db.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_postgres_db.m4).

License
*******

Copyright (C) 2008 Christian Toepp <c.toepp@gmail.com>
Copyright (C) 2012 Olivier Mehani <shtrom-ax@ssji.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_preproc_flag
=====================

Synopsis
********

     AX_CHECK_PREPROC_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])

Description
***********

Check whether the given FLAG works with the current language's
preprocessor or gives an error.  (Warnings, however, are ignored)

ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
success/failure.

If EXTRA-FLAGS is defined, it is added to the preprocessor's default
flags when the check is done.  The check is thus made with the flags:
"CPPFLAGS EXTRA-FLAGS FLAG". This can for example be used to force the
preprocessor to issue an error when a bad flag is given.

INPUT gives an alternative input source to AC_PREPROC_IFELSE.

NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
macro in sync with AX_CHECK_{COMPILE,LINK}_FLAG.

Source Code
***********

Download the latest version of 'ax_check_preproc_flag.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_preproc_flag.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_preproc_flag.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>
Copyright (C) 2011 Maarten Bosmans <mkbosmans@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_rqrd_class
===================

Synopsis
********

     AX_CHECK_RQRD_CLASS

Description
***********

AX_CHECK_RQRD_CLASS tests the existence of a given Java class, either in
a jar or in a '.class' file and fails if it doesn't exist.  Its success
or failure can depend on a proper setting of the CLASSPATH env.
variable.

Note: This is part of the set of autoconf M4 macros for Java programs.
It is VERY IMPORTANT that you download the whole set, some macros depend
on other.  Unfortunately, the autoconf archive does not support the
concept of set of macros, so I had to break it for submission.  The
general documentation, as well as the sample configure.in, is included
in the AX_PROG_JAVA macro.

Source Code
***********

Download the latest version of 'ax_check_rqrd_class.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_rqrd_class.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_rqrd_class.m4).

License
*******

Copyright (C) 2008 Stephane Bortzmeyer <bortzmeyer@pasteur.fr>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_check_sign
=============

Synopsis
********

     AX_CHECK_SIGN (TYPE, [ACTION-IF-SIGNED], [ACTION-IF-UNSIGNED], [INCLUDES])

Description
***********

Checks whether TYPE is signed or not.  If no INCLUDES are specified, the
default includes are used.  If ACTION-IF-SIGNED is given, it is
additional shell code to execute when the type is signed.  If
ACTION-IF-UNSIGNED is given, it is executed when the type is unsigned.

This macro assumes that the type exists.  Therefore the existence of the
type should be checked before calling this macro.  For example:

       AC_CHECK_HEADERS([wchar.h])
       AC_CHECK_TYPE([wchar_t],,[ AC_MSG_ERROR([Type wchar_t not found.]) ])
       AX_CHECK_SIGN([wchar_t],
         [ AC_DEFINE(WCHAR_T_SIGNED, 1, [Define if wchar_t is signed]) ],
         [ AC_DEFINE(WCHAR_T_UNSIGNED, 1, [Define if wchar_t is unsigned]) ], [
       #ifdef HAVE_WCHAR_H
       #include <wchar.h>
       #endif
       ])

Source Code
***********

Download the latest version of 'ax_check_sign.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_sign.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_sign.m4).

License
*******

Copyright (C) 2008 Ville Laurikari <vl@iki.fi>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_strcspn
================

Synopsis
********

     AX_CHECK_STRCSPN

Description
***********

Not all systems have strcspn(3).  See if we need to substitute.  To make
this work, you have to do horrible things.  In one of your Makefile.am
files, you must make an explicit rule to make this object.  It should
look like this:

       strcspn.lo : $(top_srcdir)/compat/strcspn.c
           $(LTCOMPILE) -o $@ -c $(top_srcdir)/compat/strcspn.c

and you must include "@COMPATOBJ@" in a LIBADD somewhere and, finally,
you must add another artificial dependency, something like:

       makeshell.lo : genshell.c @COMPATOBJ@

It is all pretty horrific, but I have found nothing else that works.

Source Code
***********

Download the latest version of 'ax_check_strcspn.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_strcspn.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_strcspn.m4).

License
*******

Copyright (C) 2008 Bruce Korb <bkorb@gnu.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_strftime
=================

Synopsis
********

     AX_CHECK_STRFTIME

Description
***********

Check for existence and functioning of strftime routine.

Source Code
***********

Download the latest version of 'ax_check_strftime.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_strftime.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_strftime.m4).

License
*******

Copyright (C) 2008 Bruce Korb <bkorb@gnu.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_struct_for
===================

Synopsis
********

     AX_CHECK_STRUCT_FOR(INCLUDES,STRUCT,MEMBER,DEFINE,[no])

Description
***********

Checks STRUCT for MEMBER and defines DEFINE if found.

Source Code
***********

Download the latest version of 'ax_check_struct_for.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_struct_for.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_struct_for.m4).

License
*******

Copyright (C) 2008 Wes Hardaker <wjhardaker@ucdavis.edu>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_symbol
===============

Synopsis
********

     AX_CHECK_SYMBOL(SYMBOL, HEADER... [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]])

Description
***********

A wrapper around AC_EGREP_HEADER. The shellvar $ac_found will hold the
HEADER-name that had been containing the symbol.  This value is shown to
the user.

Source Code
***********

Download the latest version of 'ax_check_symbol.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_symbol.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_symbol.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_sys_siglist
====================

Synopsis
********

     AX_CHECK_SYS_SIGLIST

Description
***********

Check for existence of global sys_siglist[].

Source Code
***********

Download the latest version of 'ax_check_sys_siglist.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_sys_siglist.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_sys_siglist.m4).

License
*******

Copyright (C) 2008 Bruce Korb <bkorb@gnu.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_typedef
================

Synopsis
********

     AX_CHECK_TYPEDEF(TYPEDEF, HEADER [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]])

Description
***********

Check if the given typedef-name is recognized as a type.  The trick is
to use a sizeof(TYPEDEF) and see if the compiler is happy with that.

This can be thought of as a mixture of AC_CHECK_TYPE(TYPEDEF,DEFAULT)
and AC_CHECK_LIB(LIBRARY,FUNCTION,ACTION-IF-FOUND,ACTION-IF-NOT-FOUND).

A convenience macro AX_CHECK_TYPEDEF_ is provided that will not emit any
message to the user - it just executes one of the actions.

Source Code
***********

Download the latest version of 'ax_check_typedef.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_typedef.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_typedef.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_uname_syscall
======================

Synopsis
********

     AX_CHECK_UNAME_SYSCALL

Description
***********

Check that the POSIX compliant uname(2) call works properly.

Source Code
***********

Download the latest version of 'ax_check_uname_syscall.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_uname_syscall.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_uname_syscall.m4).

License
*******

Copyright (C) 2008 Bruce Korb <bkorb@gnu.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_user
=============

Synopsis
********

     AX_CHECK_USER

Description
***********

Check if the specified UNIX user exists, if yes set your environment
variable to that username else unset your environment variable

Example:

       AX_CHECK_USER(USER, [gleensalmon])
       if test x$USER = xgleensalmon; then
           bla..bla..bla..
       else
           bla..bla..bla..
       fi

Besides checking existence, this macro also set these environment
variables upon completion:

       USER_HOME = home directory of user, written in /etc/passwd

Source Code
***********

Download the latest version of 'ax_check_user.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_user.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_user.m4).

License
*******

Copyright (C) 2008 Gleen Salmon <gleensalmon@yahoo.com>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_check_vscript
================

Synopsis
********

     AX_CHECK_VSCRIPT

Description
***********

Check whether the linker supports version scripts.  Version scripts are
used when building shared libraries to bind symbols to version nodes
(helping to detect incompatibilities) or to limit the visibility of
non-public symbols.

Output:

If version scripts are supported, VSCRIPT_LDFLAGS will contain the
appropriate flag to pass to the linker.  On GNU systems this would
typically be "-Wl,-version-script", and on Solaris it would typically be
"-Wl,-M".

Two Automake conditionals are also set:

      HAVE_VSCRIPT is true if the linker supports version scripts with
      entries that use simple wildcards, like "local: *".

      HAVE_VSCRIPT_COMPLEX is true if the linker supports version scripts with
      pattern matching wildcards, like "global: Java_*".

On systems that do not support symbol versioning, such as Mac OS X, both
conditionals will be false.  They will also be false if the user passes
"-disable-symvers" on the configure command line.

Example:

      configure.ac:

       AX_CHECK_VSCRIPT

      Makefile.am:

       if HAVE_VSCRIPT
       libfoo_la_LDFLAGS += $(VSCRIPT_LDFLAGS),@srcdir@/libfoo.map
       endif

       if HAVE_VSCRIPT_COMPLEX
       libbar_la_LDFLAGS += $(VSCRIPT_LDFLAGS),@srcdir@/libbar.map
       endif

Source Code
***********

Download the latest version of 'ax_check_vscript.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_vscript.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_vscript.m4).

License
*******

Copyright (C) 2014 Kevin Cernekee <cernekee@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_check_x86_features
=====================

Synopsis
********

     AX_CHECK_X86_FEATURES([ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND])

Description
***********

Checks if the host cpu supports various x86 instruction set, the
instructions that will get tested are "mmx, popcnt, sse, sse2, sse3,
sse4.1, sse4.2, sse4a, avx, avx2, avx512f, fma, fma4, bmi, bmi2".  If
the instruction set is supported by the host cpu, the C preprocessor
macro HAVE_XXX_INSTRUCTIONS is set to 1.  The XXX is up-cased
instruction case with dot replaced by underscore.  For example, the test
for "sse4.2" would export HAVE_SSE4_2_INSTRUCTIONS=1.  Also the compiler
flag "-msse4.2" would be added to X86_FEATURE_CFLAGS variable, that can
be obtained in Makefile.am using @X86_FEATURE_CFLAGS@.

If any of the test for the instruction set were succeeded, the configure
script would run ACTION-IF-FOUND if it is specified, or append
X86_FEATURE_CFLAGS to CFLAGS. If none of the instruction were found,
ACTION-IF-NOT-FOUND hook is triggered.

This macro requires gcc extended builtin function "__builtin_cpu_init"
and "__builtin_cpu_supports" to detect the cpu features.  It will error
out if the compiler doesn't has these builtins.

See also AX_GCC_X86_CPU_SUPPORTS, which is the actual macro that perform
the checks for the instruction sets.

Source Code
***********

Download the latest version of 'ax_check_x86_features.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_x86_features.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_x86_features.m4).

License
*******

Copyright (C) 2016 Felix Chern <idryman@gmail.com>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_check_zlib
=============

Synopsis
********

     AX_CHECK_ZLIB([action-if-found], [action-if-not-found])

Description
***********

This macro searches for an installed zlib library.  If nothing was
specified when calling configure, it searches first in /usr/local and
then in /usr, /opt/local and /sw.  If the -with-zlib=DIR is specified,
it will try to find it in DIR/include/zlib.h and DIR/lib/libz.a.  If
-without-zlib is specified, the library is not searched at all.

If either the header file (zlib.h) or the library (libz) is not found,
shell commands 'action-if-not-found' is run.  If 'action-if-not-found'
is not specified, the configuration exits on error, asking for a valid
zlib installation directory or -without-zlib.

If both header file and library are found, shell commands
'action-if-found' is run.  If 'action-if-found' is not specified, the
default action appends '-I${ZLIB_HOME}/include' to CPFLAGS, appends
'-L$ZLIB_HOME}/lib' to LDFLAGS, prepends '-lz' to LIBS, and calls
AC_DEFINE(HAVE_LIBZ). You should use autoheader to include a definition
for this symbol in a config.h file.  Sample usage in a C/C++ source is
as follows:

       #ifdef HAVE_LIBZ
       #include <zlib.h>
       #endif /* HAVE_LIBZ */

Source Code
***********

Download the latest version of 'ax_check_zlib.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_zlib.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_check_zlib.m4).

License
*******

Copyright (C) 2008 Loic Dachary <loic@senga.org>
Copyright (C) 2010 Bastien Chevreux <bach@chevreux.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_code_coverage
================

Synopsis
********

     AX_CODE_COVERAGE()

Description
***********

Defines CODE_COVERAGE_CPPFLAGS, CODE_COVERAGE_CFLAGS,
CODE_COVERAGE_CXXFLAGS and CODE_COVERAGE_LIBS which should be included
in the CPPFLAGS, CFLAGS CXXFLAGS and LIBS/LIBADD variables of every
build target (program or library) which should be built with code
coverage support.  Also add rules using AX_ADD_AM_MACRO_STATIC; and
$enable_code_coverage which can be used in subsequent configure output.
CODE_COVERAGE_ENABLED is defined and substituted, and corresponds to the
value of the -enable-code-coverage option, which defaults to being
disabled.

Test also for gcov program and create GCOV variable that could be
substituted.

Note that all optimization flags in CFLAGS must be disabled when code
coverage is enabled.

Usage example:

configure.ac:

       AX_CODE_COVERAGE

Makefile.am:

       include $(top_srcdir)/aminclude_static.am

       my_program_LIBS = ... $(CODE_COVERAGE_LIBS) ...
       my_program_CPPFLAGS = ... $(CODE_COVERAGE_CPPFLAGS) ...
       my_program_CFLAGS = ... $(CODE_COVERAGE_CFLAGS) ...
       my_program_CXXFLAGS = ... $(CODE_COVERAGE_CXXFLAGS) ...

       clean-local: code-coverage-clean
       distclean-local: code-coverage-dist-clean

This results in a "check-code-coverage" rule being added to any
Makefile.am which do "include $(top_srcdir)/aminclude_static.am"
(assuming the module has been configured with -enable-code-coverage).
Running 'make check-code-coverage' in that directory will run the
module's test suite ('make check') and build a code coverage report
detailing the code which was touched, then print the URI for the report.

This code was derived from Makefile.decl in GLib, originally licensed
under LGPLv2.1+.

Source Code
***********

Download the latest version of 'ax_code_coverage.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_code_coverage.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_code_coverage.m4).

License
*******

Copyright (C) 2012, 2016 Philip Withnall
Copyright (C) 2012 Xan Lopez
Copyright (C) 2012 Christian Persch
Copyright (C) 2012 Paolo Borelli
Copyright (C) 2012 Dan Winship
Copyright (C) 2015,2018 Bastien ROUCARIES

This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or (at
your option) any later version.

This library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

ax_compare_version
==================

Synopsis
********

     AX_COMPARE_VERSION(VERSION_A, OP, VERSION_B, [ACTION-IF-TRUE], [ACTION-IF-FALSE])

Description
***********

This macro compares two version strings.  Due to the various number of
minor-version numbers that can exist, and the fact that string
comparisons are not compatible with numeric comparisons, this is not
necessarily trivial to do in a autoconf script.  This macro makes doing
these comparisons easy.

The six basic comparisons are available, as well as checking equality
limited to a certain number of minor-version levels.

The operator OP determines what type of comparison to do, and can be one
of:

      eq  - equal (test A == B)
      ne  - not equal (test A != B)
      le  - less than or equal (test A <= B)
      ge  - greater than or equal (test A >= B)
      lt  - less than (test A < B)
      gt  - greater than (test A > B)

Additionally, the eq and ne operator can have a number after it to limit
the test to that number of minor versions.

      eq0 - equal up to the length of the shorter version
      ne0 - not equal up to the length of the shorter version
      eqN - equal up to N sub-version levels
      neN - not equal up to N sub-version levels

When the condition is true, shell commands ACTION-IF-TRUE are run,
otherwise shell commands ACTION-IF-FALSE are run.  The environment
variable 'ax_compare_version' is always set to either 'true' or 'false'
as well.

Examples:

       AX_COMPARE_VERSION([3.15.7],[lt],[3.15.8])
       AX_COMPARE_VERSION([3.15],[lt],[3.15.8])

would both be true.

       AX_COMPARE_VERSION([3.15.7],[eq],[3.15.8])
       AX_COMPARE_VERSION([3.15],[gt],[3.15.8])

would both be false.

       AX_COMPARE_VERSION([3.15.7],[eq2],[3.15.8])

would be true because it is only comparing two minor versions.

       AX_COMPARE_VERSION([3.15.7],[eq0],[3.15])

would be true because it is only comparing the lesser number of minor
versions of the two values.

Note: The characters that separate the version numbers do not matter.
An empty string is the same as version 0.  OP is evaluated by autoconf,
not configure, so must be a string, not a variable.

The author would like to acknowledge Guido Draheim whose advice about
the m4_case and m4_ifvaln functions make this macro only include the
portions necessary to perform the specific comparison specified by the
OP argument in the final configure script.

Source Code
***********

Download the latest version of 'ax_compare_version.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compare_version.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compare_version.m4).

License
*******

Copyright (C) 2008 Tim Toolan <toolan@ele.uri.edu>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_compile_check_sizeof
=======================

Synopsis
********

     AX_COMPILE_CHECK_SIZEOF(TYPE [, HEADERS [, EXTRA_SIZES...]])

Description
***********

This macro checks for the size of TYPE using compile checks, not run
checks.  You can supply extra HEADERS to look into.  the check will
cycle through 1 2 4 8 16 and any EXTRA_SIZES the user supplies.  If a
match is found, it will #define SIZEOF_'TYPE' to that value.  Otherwise
it will emit a configure time error indicating the size of the type
could not be determined.

The trick is that C will not allow duplicate case labels.  While this is
valid C code:

       switch (0) case 0: case 1:;

The following is not:

       switch (0) case 0: case 0:;

Thus, the AC_COMPILE_IFELSE will fail if the currently tried size does
not match.

Here is an example skeleton configure.in script, demonstrating the
macro's usage:

       AC_PROG_CC
       AC_CHECK_HEADERS(stddef.h unistd.h)
       AC_TYPE_SIZE_T
       AC_CHECK_TYPE(ssize_t, int)

       headers='#ifdef HAVE_STDDEF_H
       #include <stddef.h>
       #endif
       #ifdef HAVE_UNISTD_H
       #include <unistd.h>
       #endif
       '

       AX_COMPILE_CHECK_SIZEOF(char)
       AX_COMPILE_CHECK_SIZEOF(short)
       AX_COMPILE_CHECK_SIZEOF(int)
       AX_COMPILE_CHECK_SIZEOF(long)
       AX_COMPILE_CHECK_SIZEOF(unsigned char *)
       AX_COMPILE_CHECK_SIZEOF(void *)
       AX_COMPILE_CHECK_SIZEOF(size_t, $headers)
       AX_COMPILE_CHECK_SIZEOF(ssize_t, $headers)
       AX_COMPILE_CHECK_SIZEOF(ptrdiff_t, $headers)
       AX_COMPILE_CHECK_SIZEOF(off_t, $headers)

Source Code
***********

Download the latest version of 'ax_compile_check_sizeof.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compile_check_sizeof.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compile_check_sizeof.m4).

License
*******

Copyright (C) 2008 Kaveh Ghazi <ghazi@caip.rutgers.edu>
Copyright (C) 2017 Reini Urban <rurban@cpan.org>

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_compiler_flags
=================

Synopsis
********

     AX_COMPILER_FLAGS([CFLAGS-VARIABLE], [LDFLAGS-VARIABLE], [IS-RELEASE], [EXTRA-BASE-CFLAGS], [EXTRA-YES-CFLAGS], [UNUSED], [UNUSED], [UNUSED], [EXTRA-BASE-LDFLAGS], [EXTRA-YES-LDFLAGS], [UNUSED], [UNUSED], [UNUSED])

Description
***********

Check for the presence of an -enable-compile-warnings option to
configure, defaulting to "error" in normal operation, or "yes" if
IS-RELEASE is equal to "yes".  Return the value in the variable
$ax_enable_compile_warnings.

Depending on the value of -enable-compile-warnings, different compiler
warnings are checked to see if they work with the current compiler and,
if so, are appended to CFLAGS-VARIABLE and LDFLAGS-VARIABLE. This allows
a consistent set of baseline compiler warnings to be used across a code
base, irrespective of any warnings enabled locally by individual
developers.  By standardising the warnings used by all developers of a
project, the project can commit to a zero-warnings policy, using -Werror
to prevent compilation if new warnings are introduced.  This makes
catching bugs which are flagged by warnings a lot easier.

By providing a consistent -enable-compile-warnings argument across all
projects using this macro, continuous integration systems can easily be
configured the same for all projects.  Automated systems or build
systems aimed at beginners may want to pass the -disable-Werror argument
to unconditionally prevent warnings being fatal.

-enable-compile-warnings can take the values:

      * no:      Base compiler warnings only; not even -Wall.
      * yes:     The above, plus a broad range of useful warnings.
      * error:   The above, plus -Werror so that all warnings are fatal.
                 Use --disable-Werror to override this and disable fatal
                 warnings.

The set of base and enabled flags can be augmented using the
EXTRA-*-CFLAGS and EXTRA-*-LDFLAGS variables, which are tested and
appended to the output variable if -enable-compile-warnings is not "no".
Flags should not be disabled using these arguments, as the entire point
of AX_COMPILER_FLAGS is to enforce a consistent set of useful compiler
warnings on code, using warnings which have been chosen for low false
positive rates.  If a compiler emits false positives for a warning, a
#pragma should be used in the code to disable the warning locally.  See:

       https://gcc.gnu.org/onlinedocs/gcc-4.9.2/gcc/Diagnostic-Pragmas.html#Diagnostic-Pragmas

The EXTRA-* variables should only be used to supply extra warning flags,
and not general purpose compiler flags, as they are controlled by
configure options such as -disable-Werror.

IS-RELEASE can be used to disable -Werror when making a release, which
is useful for those hairy moments when you just want to get the release
done as quickly as possible.  Set it to "yes" to disable -Werror.  By
default, it uses the value of $ax_is_release, so if you are using the
AX_IS_RELEASE macro, there is no need to pass this parameter.  For
example:

       AX_IS_RELEASE([git-directory])
       AX_COMPILER_FLAGS()

CFLAGS-VARIABLE defaults to WARN_CFLAGS, and LDFLAGS-VARIABLE defaults
to WARN_LDFLAGS. Both variables are AC_SUBST-ed by this macro, but must
be manually added to the CFLAGS and LDFLAGS variables for each target in
the code base.

If C++ language support is enabled with AC_PROG_CXX, which must occur
before this macro in configure.ac, warning flags for the C++ compiler
are AC_SUBST-ed as WARN_CXXFLAGS, and must be manually added to the
CXXFLAGS variables for each target in the code base.  EXTRA-*-CFLAGS can
be used to augment the base and enabled flags.

Warning flags for g-ir-scanner (from GObject Introspection) are
AC_SUBST-ed as WARN_SCANNERFLAGS. This variable must be manually added
to the SCANNERFLAGS variable for each GIR target in the code base.  If
extra g-ir-scanner flags need to be enabled, the AX_COMPILER_FLAGS_GIR
macro must be invoked manually.

AX_COMPILER_FLAGS may add support for other tools in future, in addition
to the compiler and linker.  No extra EXTRA-* variables will be added
for those tools, and all extra support will still use the single
-enable-compile-warnings configure option.  For finer grained control
over the flags for individual tools, use AX_COMPILER_FLAGS_CFLAGS,
AX_COMPILER_FLAGS_LDFLAGS and AX_COMPILER_FLAGS_* for new tools.

The UNUSED variables date from a previous version of this macro, and are
automatically appended to the preceding non-UNUSED variable.  They
should be left empty in new uses of the macro.

Source Code
***********

Download the latest version of 'ax_compiler_flags.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compiler_flags.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compiler_flags.m4).

License
*******

Copyright (C) 2014, 2015 Philip Withnall <philip@tecnocode.co.uk>
Copyright (C) 2015 David King <amigadave@amigadave.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_compiler_flags_cflags
========================

Synopsis
********

     AX_COMPILER_FLAGS_CFLAGS([VARIABLE], [IS-RELEASE], [EXTRA-BASE-FLAGS], [EXTRA-YES-FLAGS])

Description
***********

Add warning flags for the C compiler to VARIABLE, which defaults to
WARN_CFLAGS. VARIABLE is AC_SUBST-ed by this macro, but must be manually
added to the CFLAGS variable for each target in the code base.

This macro depends on the environment set up by AX_COMPILER_FLAGS.
Specifically, it uses the value of $ax_enable_compile_warnings to decide
which flags to enable.

Source Code
***********

Download the latest version of 'ax_compiler_flags_cflags.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compiler_flags_cflags.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compiler_flags_cflags.m4).

License
*******

Copyright (C) 2014, 2015 Philip Withnall <philip@tecnocode.co.uk>
Copyright (C) 2017, 2018 Reini Urban <rurban@cpan.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_compiler_flags_cxxflags
==========================

Synopsis
********

     AX_COMPILER_FLAGS_CXXFLAGS([VARIABLE], [IS-RELEASE], [EXTRA-BASE-FLAGS], [EXTRA-YES-FLAGS])

Description
***********

Add warning flags for the C++ compiler to VARIABLE, which defaults to
WARN_CXXFLAGS. VARIABLE is AC_SUBST-ed by this macro, but must be
manually added to the CXXFLAGS variable for each target in the code
base.

This macro depends on the environment set up by AX_COMPILER_FLAGS.
Specifically, it uses the value of $ax_enable_compile_warnings to decide
which flags to enable.

Source Code
***********

Download the latest version of 'ax_compiler_flags_cxxflags.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compiler_flags_cxxflags.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compiler_flags_cxxflags.m4).

License
*******

Copyright (C) 2015 David King <amigadave@amigadave.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_compiler_flags_gir
=====================

Synopsis
********

     AX_COMPILER_FLAGS_GIR([VARIABLE], [IS-RELEASE], [EXTRA-BASE-FLAGS], [EXTRA-YES-FLAGS])

Description
***********

Add warning flags for the g-ir-scanner (from GObject Introspection) to
VARIABLE, which defaults to WARN_SCANNERFLAGS. VARIABLE is AC_SUBST-ed
by this macro, but must be manually added to the SCANNERFLAGS variable
for each GIR target in the code base.

This macro depends on the environment set up by AX_COMPILER_FLAGS.
Specifically, it uses the value of $ax_enable_compile_warnings to decide
which flags to enable.

Source Code
***********

Download the latest version of 'ax_compiler_flags_gir.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compiler_flags_gir.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compiler_flags_gir.m4).

License
*******

Copyright (C) 2015 Philip Withnall <philip@tecnocode.co.uk>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_compiler_flags_ldflags
=========================

Synopsis
********

     AX_COMPILER_FLAGS_LDFLAGS([VARIABLE], [IS-RELEASE], [EXTRA-BASE-FLAGS], [EXTRA-YES-FLAGS])

Description
***********

Add warning flags for the linker to VARIABLE, which defaults to
WARN_LDFLAGS. VARIABLE is AC_SUBST-ed by this macro, but must be
manually added to the LDFLAGS variable for each target in the code base.

This macro depends on the environment set up by AX_COMPILER_FLAGS.
Specifically, it uses the value of $ax_enable_compile_warnings to decide
which flags to enable.

Source Code
***********

Download the latest version of 'ax_compiler_flags_ldflags.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compiler_flags_ldflags.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compiler_flags_ldflags.m4).

License
*******

Copyright (C) 2014, 2015 Philip Withnall <philip@tecnocode.co.uk>
Copyright (C) 2017, 2018 Reini Urban <rurban@cpan.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_compiler_vendor
==================

Synopsis
********

     AX_COMPILER_VENDOR

Description
***********

Determine the vendor of the C, C++ or Fortran compiler.  The vendor is
returned in the cache variable $ax_cv_c_compiler_vendor for C,
$ax_cv_cxx_compiler_vendor for C++ or $ax_cv_fc_compiler_vendor for
(modern) Fortran.  The value is one of "intel", "ibm", "pathscale",
"clang" (LLVM), "cray", "fujitsu", "sdcc", "sx", "nvhpc" (NVIDIA HPC
Compiler), "portland" (PGI), "gnu" (GCC), "sun" (Oracle Developer
Studio), "hp", "dec", "borland", "comeau", "kai", "lcc", "sgi",
"microsoft", "metrowerks", "watcom", "tcc" (Tiny CC) or "unknown" (if
the compiler cannot be determined).

To check for a Fortran compiler, you must first call AC_FC_PP_SRCEXT
with an appropriate preprocessor-enabled extension.  For example:

       AC_LANG_PUSH([Fortran])
       AC_PROG_FC
       AC_FC_PP_SRCEXT([F])
       AX_COMPILER_VENDOR
       AC_LANG_POP([Fortran])

Source Code
***********

Download the latest version of 'ax_compiler_vendor.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compiler_vendor.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compiler_vendor.m4).

License
*******

Copyright (C) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
Copyright (C) 2008 Matteo Frigo
Copyright (C) 2018-19 John Zaitseff <J.Zaitseff@zap.org.au>

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_compiler_version
===================

Synopsis
********

     AX_COMPILER_VERSION

Description
***********

This macro retrieves the compiler version and returns it in the cache
variable $ax_cv_c_compiler_version for C and $ax_cv_cxx_compiler_version
for C++.

Version is returned as epoch:major.minor.patchversion

Epoch is used in order to have an increasing version number in case of
marketing change.

Epoch use: * borland compiler use chronologically 0turboc for turboc
era,

       1borlanc BORLANDC++ before 5, 2cppbuilder for cppbuilder era,
       3borlancpp for return of BORLANDC++ (after version 5.5),
       4cppbuilder for cppbuilder with year version,
       and 5xe for XE era.

An empty string is returned otherwise.

Source Code
***********

Download the latest version of 'ax_compiler_version.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compiler_version.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compiler_version.m4).

License
*******

Copyright (C) 2014 Bastien ROUCARIES <roucaries.bastien+autoconf@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_compute_relative_paths
=========================

Synopsis
********

     AX_COMPUTE_RELATIVE_PATHS(PATH_LIST)

Description
***********

PATH_LIST is a space-separated list of colon-separated triplets of the
form 'FROM:TO:RESULT'. This function iterates over these triplets and
set $RESULT to the relative path from $FROM to $TO. Note that $FROM and
$TO needs to be absolute filenames for this macro to success.

For instance,

       first=/usr/local/bin
       second=/usr/local/share
       AX_COMPUTE_RELATIVE_PATHS([first:second:fs second:first:sf])
       # $fs is set to ../share
       # $sf is set to ../bin

$FROM and $TO are both eval'ed recursively and normalized, this means
that you can call this macro with autoconf's dirnames like 'prefix' or
'datadir'.  For example:

       AX_COMPUTE_RELATIVE_PATHS([bindir:datadir:bin_to_data])

AX_COMPUTE_RELATIVE_PATHS should also works with DOS filenames.

You may want to use this macro in order to make your package
relocatable.  Instead of hardcoding $datadir into your programs just
encode $bin_to_data and try to determine $bindir at run-time.

This macro requires AX_NORMALIZE_PATH and AX_RECURSIVE_EVAL.

Source Code
***********

Download the latest version of 'ax_compute_relative_paths.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compute_relative_paths.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compute_relative_paths.m4).

License
*******

Copyright (C) 2008 Alexandre Duret-Lutz <adl@gnu.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_compute_standard_relative_paths
==================================

Synopsis
********

     AX_COMPUTE_STANDARD_RELATIVE_PATHS

Description
***********

Here is the standard hierarchy of paths, as defined by the GNU Coding
Standards:

       prefix
          exec_prefix
             bindir
             libdir
             libexecdir
             sbindir
          datarootdir
             docdir
             infodir
             htmldir
             dvidir
             psdir
             pdfdir
             localedir
             datadir (only for autoconf >= 2.59c)
             infodir (only for autoconf >= 2.59c)
             mandir (only for autoconf >= 2.59c)
             lispdir (only for autoconf >= 2.59c)
          datadir (only for autoconf < 2.59c)
          infodir (only for autoconf < 2.59c)
          mandir (only for autoconf < 2.59c)
          lispdir (only for autoconf < 2.59c)
          sysconfdir
          sharedstatedir
          localstatedir
             runstatedir (only for autoconf >= 2.70)
          includedir
          oldincludedir

This macro will setup a set of variables of the form
'xxx_forward_relative_path' and 'xxx_backward_relative_path' where xxx
is one of the above directories.  The latter variable is set to the
relative path to go from xxx to its parent directory, while the former
hold the other way.

For instance 'bindir_relative_path' will contains the value to add to
$exec_prefix to reach the $bindir directory (usually 'bin'), and
'bindir_backward_relative_path' the value to append to $bindir to reach
the $exec_prefix directory (usually '..').

This macro requires AX_COMPUTE_RELATIVE_PATHS which itself requires
AX_NORMALIZE_PATH.

Source Code
***********

Download the latest version of 'ax_compute_standard_relative_paths.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_compute_standard_relative_paths.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_compute_standard_relative_paths.m4).

License
*******

Copyright (C) 2008 Alexandre Duret-Lutz <adl@gnu.org>
Copyright (C) 2015 Bastien Roucaries <roucaries.bastien+autoconf@gmail.com>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cond_with_level
==================

Synopsis
********

     AX_COND_WITH_LEVEL(PACKAGE [,DEFAULT [,YESLEVEL]])

Description
***********

Actually used after an AC_ARG_WITH(PKG,...)  option-directive, where
AC_ARG_WITH is a part of the standard autoconf to define a 'configure'
-with-PKG option.

This macros works almost like AC_COND_WITH(PACKAGE [,DEFAULT]), but the
definition is set to a numeric value.  The level of a simple "yes" is
given (or assumed "2" if absent), otherwise the level can be given in
mnemonic names, being:

      1 = some
      2 = many
      3 = all
      4 = extra
      5 = extrasome more
      6 = extramany muchmore much
      7 = super everything
      8 = ultra experimental
      9 = insane

this macro is most handily it making Makefile.in/Makefile.am that have a
set of with-level declarations, especially optimization-levels

the $withval shell-variable is set for further examination (it carries
the numeric value of the various mnemonics above)

Source Code
***********

Download the latest version of 'ax_cond_with_level.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cond_with_level.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cond_with_level.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_config_feature
=================

Synopsis
********

     AX_CONFIG_FEATURE(FEATURE-NAME, FEATURE-DESCRIPTION, DEFINE, DEFINE-DESCRIPTION, [ACTION-IF-ENABLED [, ACTION-IF-NOT-ENABLED]])

Description
***********

AX_CONFIG_FEATURE is a simple wrapper for AC_ARG_ENABLE, it enables the
feature FEATURE-NAME and AC_DEFINEs the passed DEFINE, depending on the
user choice.  DESCRIPTION will be used for AC_DEFINEs.
ACTION-IF-ENABLED and ACTION-IF-NOT-ENABLED are the actions that will be
run.  A feature is enabled by default, in order to change this behaviour
use the AX_CONFIG_FEATURE_DEFAULT_ENABLED and
AX_CONFIG_FEATURE_DEFAULT_DISABLED macros.

A simple example:

       AX_CONFIG_FEATURE_DEFAULT_ENABLED
       AX_CONFIG_FEATURE(feature_xxxxx, [turns on/off XXXXX support],
                         HAVE_XXXXX, [Define if you want XXXXX support])

       ...

       AX_CONFIG_FEATURE_DEFAULT_DISABLED
       AX_CONFIG_FEATURE(feature_yyyyy, [turns on/off YYYYY support],
                         HAVE_YYYYY, [Define if you want YYYYY support],
                         [enable_yyyyy="yes"], [enable_yyyyy="no"])
       AM_CONDITIONAL(YYYYY, [test "$enable_yyyyy" = "yes"])

       AX_CONFIG_FEATURE_DEFAULT_ENABLED
       AX_CONFIG_FEATURE(...)

       ...

If you have lot of features and you want a verbose dumping of each user
selection use AX_CONFIG_FEATURE_VERBOSE. Use AX_CONFIG_FEATURE_SILENT in
order to remove a previously AX_CONFIG_FEATURE_VERBOSE. By default
features are silent.

Use AX_CONFIG_FEATURE_ENABLE or AX_CONFIG_FEATURE_DISABLE in order to
enable or disable a specific feature.

Another simple example:

       AS_IF([some_test_here],[AX_CONFIG_FEATURE_ENABLE(feature_xxxxx)],[])

       AX_CONFIG_FEATURE(feature_xxxxx, [turns on/off XXXXX support],
                         HAVE_XXXXX, [Define if you want XXXXX support])
       AX_CONFIG_FEATURE(feature_yyyyy, [turns on/off YYYYY support],
                         HAVE_YYYYY, [Define if you want YYYYY support],
                         [enable_yyyyy="yes"], [enable_yyyyy="no"])

       ...

NOTE: AX_CONFIG_FEATURE_ENABLE() must be placed first of the relative
AX_CONFIG_FEATURE() macro ...

Source Code
***********

Download the latest version of 'ax_config_feature.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_config_feature.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_config_feature.m4).

License
*******

Copyright (C) 2008 Francesco Salvestrini <salvestrini@users.sourceforge.net>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_configure_args
=================

Synopsis
********

     AX_CONFIGURE_ARGS

Description
***********

Helper macro for AX_ENABLE_BUILDDIR.

The traditional way of starting a subdir-configure is running the script
with ${1+"$@"} but since autoconf 2.60 this is broken.  Instead we have
to rely on eval'ing $ac_configure_args however some old autoconf
versions do not provide that.  To ensure maximum portability of autoconf
extension macros this helper can be AC_REQUIRE'd so that
$ac_configure_args will always be present.

Sadly, the traditional "exec $SHELL" of the enable_builddir macros is
spoiled now and must be replaced by "eval + exit $?".

Example:

       AC_DEFUN([AX_ENABLE_SUBDIR],[dnl
         AC_REQUIRE([AX_CONFIGURE_ARGS])dnl
         eval $SHELL $ac_configure_args || exit $?
         ...])

Source Code
***********

Download the latest version of 'ax_configure_args.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_configure_args.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_configure_args.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_count_cpus
=============

Synopsis
********

     AX_COUNT_CPUS([ACTION-IF-DETECTED],[ACTION-IF-NOT-DETECTED])

Description
***********

Attempt to count the number of logical processor cores (including
virtual and HT cores) currently available to use on the machine and
place detected value in CPU_COUNT variable.

On successful detection, ACTION-IF-DETECTED is executed if present.  If
the detection fails, then ACTION-IF-NOT-DETECTED is triggered.  The
default ACTION-IF-NOT-DETECTED is to set CPU_COUNT to 1.

Source Code
***********

Download the latest version of 'ax_count_cpus.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_count_cpus.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_count_cpus.m4).

License
*******

Copyright (C) 2014,2016 Karlson2k (Evgeny Grin) <k2k@narod.ru>
Copyright (C) 2012 Brian Aker <brian@tangent.org>
Copyright (C) 2008 Michael Paul Bailey <jinxidoru@byu.net>
Copyright (C) 2008 Christophe Tournayre <turn3r@users.sourceforge.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cpu_freq
===========

Synopsis
********

     AX_CPU_FREQ

Description
***********

Compute the CPU frequency and define CPU_FREQ accordingly.

Source Code
***********

Download the latest version of 'ax_cpu_freq.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cpu_freq.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cpu_freq.m4).

License
*******

Copyright (C) 2008 Christophe Tournayre <turn3r@users.sourceforge.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cpu_vendor
=============

Synopsis
********

     AX_CPU_VENDOR

Description
***********

Find your CPU's vendor by requesting cpuid and define "ax_cv_cpu_vendor"
accordingly.  This macro depends on AX_GCC_X86_CPUID.

Source Code
***********

Download the latest version of 'ax_cpu_vendor.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cpu_vendor.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cpu_vendor.m4).

License
*******

Copyright (C) 2008 Christophe Tournayre <turn3r@users.sourceforge.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_create_generic_config
========================

Synopsis
********

     AX_CREATE_GENERIC_CONFIG [(PACKAGEnlibs [, VERSION])]

Description
***********

Creates a generic PACKAGE-config file that has all the things that you
want, hmm, well, at least it has -cflags, -version, -libs.  Ahhm, did
you see ax_path_generic in the autoconf-archive?  ;-)

this macros saves you all the typing for a pkg-config.in script, you
don't even need to distribute one along.  Place this macro in your
configure.ac, et voila, you got one that you want to install.

oh, btw, if the first arg looks like "mylib -lwhat' then it will go to
be added to the -libs, and mylib is extracted.

the defaults: $1 = $PACKAGE $LIBS $2 = $VERSION there is also an
AC_SUBST(GENERIC_CONFIG) that will be set to the name of the file that
we did output in this macro.  Use as:

      install-exec-local:    install-generic-config

      install-generic-config:
         $(mkinstalldirs) $(DESTDIR)$(bindir)
         $(INSTALL_SCRIPT) @GENERIC_CONFIG@ $(DESTDIR)$(bindir)

Source Code
***********

Download the latest version of 'ax_create_generic_config.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_create_generic_config.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_create_generic_config.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_create_pkgconfig_info
========================

Synopsis
********

     AX_CREATE_PKGCONFIG_INFO [(outputfile, [requires [,libs [,summary [,cflags [, ldflags]]]]])]

Description
***********

Defaults:

       $1 = $PACKAGE_NAME.pc
       $2 = (empty)
       $3 = $PACKAGE_LIBS $LIBS (as set at that point in configure.ac)
       $4 = $PACKAGE_SUMMARY (or $1 Library)
       $5 = $PACKAGE_CFLAGS (as set at the point in configure.ac)
       $6 = $PACKAGE_LDFLAGS (as set at the point in configure.ac)

       PACKAGE_NAME defaults to $PACKAGE if not set.
       PACKAGE_LIBS defaults to -l$PACKAGE_NAME if not set.

The resulting file is called $PACKAGE.pc.in / $PACKAGE.pc

You will find this macro most useful in conjunction with
ax_spec_defaults that can read good initializers from the .spec file.
In consequence, most of the generatable installable stuff can be made
from information being updated in a single place for the whole project.

Source Code
***********

Download the latest version of 'ax_create_pkgconfig_info.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_create_pkgconfig_info.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_create_pkgconfig_info.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>
Copyright (C) 2008 Sven Verdoolaege <skimo@kotnet.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_create_stdint_h
==================

Synopsis
********

     AX_CREATE_STDINT_H [( HEADER-TO-GENERATE [, HEDERS-TO-CHECK])]

Description
***********

the "ISO C9X: 7.18 Integer types <stdint.h>" section requires the
existence of an include file <stdint.h> that defines a set of typedefs,
especially uint8_t,int32_t,uintptr_t.  Many older installations will not
provide this file, but some will have the very same definitions in
<inttypes.h>.  In other environments we can use the inet-types in
<sys/types.h> which would define the typedefs int8_t and u_int8_t
respectively.

This macros will create a local "_stdint.h" or the headerfile given as
an argument.  In many cases that file will just "#include <stdint.h>" or
"#include <inttypes.h>", while in other environments it will provide the
set of basic 'stdint's definitions/typedefs:

       int8_t,uint8_t,int16_t,uint16_t,int32_t,uint32_t,intptr_t,uintptr_t
       int_least32_t.. int_fast32_t.. intmax_t

which may or may not rely on the definitions of other files, or using
the AC_CHECK_SIZEOF macro to determine the actual sizeof each type.

if your header files require the stdint-types you will want to create an
installable file mylib-int.h that all your other installable header may
include.  So if you have a library package named "mylib", just use

       AX_CREATE_STDINT_H(mylib-int.h)

in configure.ac and go to install that very header file in Makefile.am
along with the other headers (mylib.h) - and the mylib-specific headers
can simply use "#include <mylib-int.h>" to obtain the stdint-types.

Remember, if the system already had a valid <stdint.h>, the generated
file will include it directly.  No need for fuzzy HAVE_STDINT_H
things...  (oops, GCC 4.2.x has deliberately disabled its stdint.h for
non-c99 compilation and the c99-mode is not the default.  Therefore this
macro will not use the compiler's stdint.h - please complain to the GCC
developers).

Source Code
***********

Download the latest version of 'ax_create_stdint_h.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_create_stdint_h.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_create_stdint_h.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_create_target_h
==================

Synopsis
********

     AX_CREATE_TARGET_H [(HEADER-FILE [,PREFIX)]

Description
***********

Create the header-file and let it contain '#defines' for the target
platform.  This macro is used for libraries that have platform-specific
quirks.  Instead of inventing a target-specific target.h.in files, just
let it create a header file from the definitions of AC_CANONICAL_SYSTEM
and put only ifdef's in the installed header-files.

      if the HEADER-FILE is absent, [target.h] is used.
      if the PREFIX is absent, [TARGET] is used.
      the prefix can be the packagename. (y:a-z-:A-Z_:)

The defines look like...

      #ifndef TARGET_CPU_M68K
      #define TARGET_CPU_M68K "m68k"
      #endif

      #ifndef TARGET_OS_LINUX
      #define TARGET_OS_LINUX "linux-gnu"
      #endif

      #ifndef TARGET_OS_TYPE                     /* the string itself */
      #define TARGET_OS_TYPE "linux-gnu"
      #endif

Detail: in the case of hppa1.1, the three idents "hppa1_1" "hppa1" and
"hppa" are derived, for an m68k it just two, "m68k" and "m".

The CREATE_TARGET_H__ variant is almost the same function, but
everything is lowercased instead of uppercased, and there is a "__" in
front of each prefix, so it looks like...

      #ifndef __target_os_linux
      #define __target_os_linux "linux-gnulibc2"
      #endif

      #ifndef __target_os__                     /* the string itself */
      #define __target_os__ "linux-gnulibc2"
      #endif

      #ifndef __target_cpu_i586
      #define __target_cpu_i586 "i586"
      #endif

      #ifndef __target_arch_i386
      #define __target_arch_i386 "i386"
      #endif

      #ifndef __target_arch__                   /* cpu family arch */
      #define __target_arch__ "i386"
      #endif

Other differences: the default string-define is "__" instead of "_TYPE".

Personally, I prefer the second variant (which had been the first in the
devprocess of this file but I assume people will often fallback to the
primary variant presented herein).

NOTE: CREATE_TARGET_H does also fill HOST_OS-defines Functionality has
been split over functions called CREATE_TARGET_H_UPPER,
CREATE_TARGET_H_LOWER, CREATE_TARGET_HOST_UPPER, and
CREATE_TARGET_HOST_LOWER.

      CREATE_TARGET_H  uses CREATE_TARGET_H_UPPER CREATE_TARGET_HOST_UPPER
      CREATE_TARGET_H_ uses CREATE_TARGET_H_LOWER CREATE_TARGET_HOST_LOWER

There is now a CREATE_PREFIX_TARGET_H in this file as a shorthand for
PREFIX_CONFIG_H from a target.h file, however w/o the target.h ever
created (the prefix is a bit different, since we add an extra -target-
and -host-).

Source Code
***********

Download the latest version of 'ax_create_target_h.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_create_target_h.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_create_target_h.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cvs
======

Synopsis
********

     AX_CVS([ANON_CVSROOT])

Description
***********

Adds support cvs targets within your Makefile.

Branching and releasing relies on you using the following version
format:

       MAJOR.MINOR.POINT

where MAJOR is the major version number, MINOR is the minor version
number and POINT is the point release number.

make update

       performs a cvs update

make commitlog

       Generates a ChangeLog template with the modified, added
       and removed files and opens it up for editing. This is
       not normally used directly, but is instead called by
       commit. It is useful however if you want to document
       the work you have done, but don't want to commit just
       yet.

make commit

       performs a cvs commit after first performing a cvs
       update and generating a commit log.

make cvs-rm FILES="file1 file2 ..."

       removes a file or files specified by the FILES
       variable from the file system and from cvs. It will
       interactively ask you to confirm the file removal,
       unless the file does not exist on the file system.

make cvs-add FILES="file1 file2 ..."

       adds a file or files specified by the FILES variable
       to cvs.

make branch-major

       creates a branch based on the major version number,
       increments the major version number, sets the minor
       and point versions to zero and checks out the branch
       into a new directory.

make branch-minor

       creates a branch based on the minor version number,
       increments the minor version, sets the point version
       to zero number and checks out the branch into a new
       directory.

make release

       performs a cvs update, followed by a distcheck, then
       creates a release for the current version, increments
       the point release number and checks out the release
       into a new directory

make quick-release

       same as release, but distcheck is not performed

Source Code
***********

Download the latest version of 'ax_cvs.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cvs.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cvs.m4).

License
*******

Copyright (C) 2009 Tom Howard <tomhoward@users.sf.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_bool
===========

Synopsis
********

     AX_CXX_BOOL

Description
***********

If the compiler recognizes bool as a separate built-in type, define
HAVE_BOOL. Note that a typedef is not a separate type since you cannot
overload a function such that it accepts either the basic type or the
typedef.

Source Code
***********

Download the latest version of 'ax_cxx_bool.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_bool.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_bool.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_compile_stdcxx
=====================

Synopsis
********

     AX_CXX_COMPILE_STDCXX(VERSION, [ext|noext], [mandatory|optional])

Description
***********

Check for baseline language coverage in the compiler for the specified
version of the C++ standard.  If necessary, add switches to CXX and
CXXCPP to enable support.  VERSION may be '11', '14', '17', or '20' for
the respective C++ standard version.

The second argument, if specified, indicates whether you insist on an
extended mode (e.g.  -std=gnu++11) or a strict conformance mode (e.g.
-std=c++11).  If neither is specified, you get whatever works, with
preference for no added switch, and then for an extended mode.

The third argument, if specified 'mandatory' or if left unspecified,
indicates that baseline support for the specified C++ standard is
required and that the macro should error out if no mode with that
support is found.  If specified 'optional', then configuration proceeds
regardless, after defining HAVE_CXX${VERSION} if and only if a
supporting mode is found.

Source Code
***********

Download the latest version of 'ax_cxx_compile_stdcxx.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_compile_stdcxx.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_compile_stdcxx.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>
Copyright (C) 2012 Zack Weinberg <zackw@panix.com>
Copyright (C) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
Copyright (C) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>

Copyright (C) 2015 Paul Norman <penorman@mac.com>
Copyright (C) 2015 Moritz Klammler <moritz@klammler.eu>
Copyright (C) 2016, 2018 Krzesimir Nowak <qdlacz@gmail.com>
Copyright (C) 2019 Enji Cooper <yaneurabeya@gmail.com>
Copyright (C) 2020 Jason Merrill <jason@redhat.com>
Copyright (C) 2021 Jörn Heusipp <osmanx@problemloesungsmaschine.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_compile_stdcxx_0x
========================

Synopsis
********

     AX_CXX_COMPILE_STDCXX_0X

Description
***********

Check for baseline language coverage in the compiler for the C++0x
standard.

This macro is deprecated and has been superseded by the
AX_CXX_COMPILE_STDCXX_11 macro which should be used instead.

Source Code
***********

Download the latest version of 'ax_cxx_compile_stdcxx_0x.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_compile_stdcxx_0x.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_compile_stdcxx_0x.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_compile_stdcxx_11
========================

Synopsis
********

     AX_CXX_COMPILE_STDCXX_11([ext|noext], [mandatory|optional])

Description
***********

Check for baseline language coverage in the compiler for the C++11
standard; if necessary, add switches to CXX and CXXCPP to enable
support.

This macro is a convenience alias for calling the AX_CXX_COMPILE_STDCXX
macro with the version set to C++11.  The two optional arguments are
forwarded literally as the second and third argument respectively.
Please see the documentation for the AX_CXX_COMPILE_STDCXX macro for
more information.  If you want to use this macro, you also need to
download the ax_cxx_compile_stdcxx.m4 file.

Source Code
***********

Download the latest version of 'ax_cxx_compile_stdcxx_11.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_compile_stdcxx_11.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_compile_stdcxx_11.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>
Copyright (C) 2012 Zack Weinberg <zackw@panix.com>
Copyright (C) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
Copyright (C) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>

Copyright (C) 2015 Paul Norman <penorman@mac.com>
Copyright (C) 2015 Moritz Klammler <moritz@klammler.eu>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_compile_stdcxx_14
========================

Synopsis
********

     AX_CXX_COMPILE_STDCXX_14([ext|noext], [mandatory|optional])

Description
***********

Check for baseline language coverage in the compiler for the C++14
standard; if necessary, add switches to CXX and CXXCPP to enable
support.

This macro is a convenience alias for calling the AX_CXX_COMPILE_STDCXX
macro with the version set to C++14.  The two optional arguments are
forwarded literally as the second and third argument respectively.
Please see the documentation for the AX_CXX_COMPILE_STDCXX macro for
more information.  If you want to use this macro, you also need to
download the ax_cxx_compile_stdcxx.m4 file.

Source Code
***********

Download the latest version of 'ax_cxx_compile_stdcxx_14.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_compile_stdcxx_14.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_compile_stdcxx_14.m4).

License
*******

Copyright (C) 2015 Moritz Klammler <moritz@klammler.eu>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_compile_stdcxx_17
========================

Synopsis
********

     AX_CXX_COMPILE_STDCXX_17([ext|noext], [mandatory|optional])

Description
***********

Check for baseline language coverage in the compiler for the C++17
standard; if necessary, add switches to CXX and CXXCPP to enable
support.

This macro is a convenience alias for calling the AX_CXX_COMPILE_STDCXX
macro with the version set to C++17.  The two optional arguments are
forwarded literally as the second and third argument respectively.
Please see the documentation for the AX_CXX_COMPILE_STDCXX macro for
more information.  If you want to use this macro, you also need to
download the ax_cxx_compile_stdcxx.m4 file.

Source Code
***********

Download the latest version of 'ax_cxx_compile_stdcxx_17.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_compile_stdcxx_17.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_compile_stdcxx_17.m4).

License
*******

Copyright (C) 2015 Moritz Klammler <moritz@klammler.eu>
Copyright (C) 2016 Krzesimir Nowak <qdlacz@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_complex_math_in_namespace_std
====================================

Synopsis
********

     AX_CXX_COMPLEX_MATH_IN_NAMESPACE_STD

Description
***********

If the C math functions are in the cmath header file and std::
namespace, define HAVE_MATH_FN_IN_NAMESPACE_STD.

Source Code
***********

Download the latest version of 'ax_cxx_complex_math_in_namespace_std.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_complex_math_in_namespace_std.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_complex_math_in_namespace_std.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_const_cast
=================

Synopsis
********

     AX_CXX_CONST_CAST

Description
***********

If the compiler supports const_cast<>, define HAVE_CONST_CAST.

Source Code
***********

Download the latest version of 'ax_cxx_const_cast.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_const_cast.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_const_cast.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_cppflags_std_lang
========================

Synopsis
********

     AX_CXX_CPPFLAGS_STD_LANG(CPP-FLAGS)

Description
***********

Append to CPP-FLAGS the set of flags that should be passed to the C++
preprocessor in order to enable use of C++ features as defined in the
ANSI C++ standard (eg.  use of standard iostream classes in the 'std'
namespace, etc.).

Source Code
***********

Download the latest version of 'ax_cxx_cppflags_std_lang.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_cppflags_std_lang.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_cppflags_std_lang.m4).

License
*******

Copyright (C) 2008 Ludovic Courtes <ludo@chbouib.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_cxxflags_std_lang
========================

Synopsis
********

     AX_CXX_CXXFLAGS_STD_LANG(CXX-FLAGS)

Description
***********

Append to variable CXX-FLAGS the set of compile-time flags that should
be passed to the C++ compiler in order to enable use of C++ features as
defined in the ANSI C++ standard (eg.  use of standard iostream classes
in the 'std' namespace, etc.).  Note that if you use GNU Libtool you may
need to prefix each of those flags with '-Xcompiler' so that Libtool
doesn't discard them (see Libtool's manual and 'AC_LIBTOOLIZE_CFLAGS').

Source Code
***********

Download the latest version of 'ax_cxx_cxxflags_std_lang.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_cxxflags_std_lang.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_cxxflags_std_lang.m4).

License
*******

Copyright (C) 2008 Ludovic Courtes <ludo@chbouib.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_default_template_parameters
==================================

Synopsis
********

     AX_CXX_DEFAULT_TEMPLATE_PARAMETERS

Description
***********

If the compiler supports default template parameters, define
HAVE_DEFAULT_TEMPLATE_PARAMETERS.

Source Code
***********

Download the latest version of 'ax_cxx_default_template_parameters.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_default_template_parameters.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_default_template_parameters.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_delete_method
====================

Synopsis
********

     AX_CXX_DELETE_METHOD

Description
***********

Check whether the C++11 '= delete' syntax, for suppressing undesired
implicit methods, is supported.  If it is, the macro DELETE_METHOD is
defined to '= delete'; otherwise it is defined to nothing.  Thus, you
can write

       class foo {
         ...
       private:
         foo(foo const&) DELETE_METHOD;
       };

to delete the 'foo' copy constructor or fall back to the idiom of a
private undefined method if the compiler doesn't support this.

Does not test '= delete' on a template specialization.  Does not ensure
that the compiler is in C++11 mode.

Source Code
***********

Download the latest version of 'ax_cxx_delete_method.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_delete_method.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_delete_method.m4).

License
*******

Copyright (C) 2012 Zack Weinberg <zackw@panix.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_dtor_after_atexit
========================

Synopsis
********

     AX_CXX_DTOR_AFTER_ATEXIT

Description
***********

If the C++ compiler calls global destructors after atexit functions,
define HAVE_DTOR_AFTER_ATEXIT.

Conformant behavior is to have global destructors after atexit

Per Paragraph 3.6.3/1 of the C++11 Standard:

Destructors (12.4) for initialized objects [..]  with static storage
duration are called as a result of returning from main and as a result
of calling std::exit (18.5).

And per Paragraph 3.6.3/3:

If the completion of the initialization of an object with static storage
duration is sequenced before a call to std::atexit [..], the call to the
function passed to std::atexit is sequenced before the call to the
destructor for the object.

WARNING: If cross-compiling, the test cannot be performed, the default
action is to define HAVE_DTOR_AFTER_ATEXIT.

Source Code
***********

Download the latest version of 'ax_cxx_dtor_after_atexit.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_dtor_after_atexit.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_dtor_after_atexit.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_dynamic_cast
===================

Synopsis
********

     AX_CXX_DYNAMIC_CAST

Description
***********

If the compiler supports dynamic_cast<>, define HAVE_DYNAMIC_CAST.

Source Code
***********

Download the latest version of 'ax_cxx_dynamic_cast.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_dynamic_cast.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_dynamic_cast.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_enum_computations
========================

Synopsis
********

     AX_CXX_ENUM_COMPUTATIONS

Description
***********

If the compiler handle computations inside an enum, define
HAVE_ENUM_COMPUTATIONS.

Source Code
***********

Download the latest version of 'ax_cxx_enum_computations.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_enum_computations.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_enum_computations.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_enum_computations_with_cast
==================================

Synopsis
********

     AX_CXX_ENUM_COMPUTATIONS_WITH_CAST

Description
***********

If the compiler handle (int) casts in enum computations, define
HAVE_ENUM_COMPUTATIONS_WITH_CAST.

Source Code
***********

Download the latest version of 'ax_cxx_enum_computations_with_cast.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_enum_computations_with_cast.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_enum_computations_with_cast.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_erase_iterator_type
==========================

Synopsis
********

     AX_CXX_ERASE_ITERATOR_TYPE

Description
***********

If the compiler supports define erase with constant iterator or with
classical iterator.

Define autoconfigured_erase_iterator to const_iterator if supported and
iterator if not supported.

Define HAVE_ERASE_CONSTANT_ITERATOR if supported

Source Code
***********

Download the latest version of 'ax_cxx_erase_iterator_type.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_erase_iterator_type.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_erase_iterator_type.m4).

License
*******

Copyright (C) 2015 Bastien ROUCARIES

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_exceptions
=================

Synopsis
********

     AX_CXX_EXCEPTIONS

Description
***********

If the C++ compiler supports exceptions handling (try, throw and catch),
define HAVE_EXCEPTIONS.

Source Code
***********

Download the latest version of 'ax_cxx_exceptions.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_exceptions.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_exceptions.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_explicit
===============

Synopsis
********

     AX_CXX_EXPLICIT

Description
***********

If the compiler can be asked to prevent using implicitly one argument
constructors as converting constructors with the explicit keyword,
define HAVE_EXPLICIT.

Source Code
***********

Download the latest version of 'ax_cxx_explicit.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_explicit.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_explicit.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_explicit_instantiations
==============================

Synopsis
********

     AX_CXX_EXPLICIT_INSTANTIATIONS

Description
***********

If the C++ compiler supports explicit instantiations syntax, define
HAVE_INSTANTIATIONS.

Source Code
***********

Download the latest version of 'ax_cxx_explicit_instantiations.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_explicit_instantiations.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_explicit_instantiations.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_explicit_template_function_qualification
===============================================

Synopsis
********

     AX_CXX_EXPLICIT_TEMPLATE_FUNCTION_QUALIFICATION

Description
***********

If the compiler supports explicit template function qualification,
define HAVE_EXPLICIT_TEMPLATE_FUNCTION_QUALIFICATION.

Source Code
***********

Download the latest version of
'ax_cxx_explicit_template_function_qualification.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_explicit_template_function_qualification.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_explicit_template_function_qualification.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_extern_template
======================

Synopsis
********

     AX_CXX_EXTERN_TEMPLATE

Description
***********

Test whether the C++ compiler supports "extern template".

Source Code
***********

Download the latest version of 'ax_cxx_extern_template.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_extern_template.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_extern_template.m4).

License
*******

Copyright (C) 2008 Patrick Mauritz <oxygene@studentenbude.ath.cx>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_full_specialization_syntax
=================================

Synopsis
********

     AX_CXX_FULL_SPECIALIZATION_SYNTAX

Description
***********

If the compiler recognizes the full specialization syntax, define
HAVE_FULL_SPECIALIZATION_SYNTAX.

Source Code
***********

Download the latest version of 'ax_cxx_full_specialization_syntax.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_full_specialization_syntax.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_full_specialization_syntax.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_function_nontype_parameters
==================================

Synopsis
********

     AX_CXX_FUNCTION_NONTYPE_PARAMETERS

Description
***********

If the compiler supports function templates with non-type parameters,
define HAVE_FUNCTION_NONTYPE_PARAMETERS.

Source Code
***********

Download the latest version of 'ax_cxx_function_nontype_parameters.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_function_nontype_parameters.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_function_nontype_parameters.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_function_try_blocks
==========================

Synopsis
********

     AX_CXX_FUNCTION_TRY_BLOCKS

Description
***********

If the C++ compiler supports function try blocks, define
'HAVE_FUNCTION_TRY_BLOCKS'.

Source Code
***********

Download the latest version of 'ax_cxx_function_try_blocks.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_function_try_blocks.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_function_try_blocks.m4).

License
*******

Copyright (C) 2008 Matthew D. Langston

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cxx_gcc_abi_demangle
=======================

Synopsis
********

     AX_CXX_GCC_ABI_DEMANGLE

Description
***********

If the compiler supports GCC C++ ABI name demangling (has header
cxxabi.h and abi::__cxa_demangle() function), define
HAVE_GCC_ABI_DEMANGLE

Adapted from AX_CXX_RTTI by Luc Maisonobe

Source Code
***********

Download the latest version of 'ax_cxx_gcc_abi_demangle.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_gcc_abi_demangle.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_gcc_abi_demangle.m4).

License
*******

Copyright (C) 2008 Neil Ferguson <nferguso@eso.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_gnucxx_hashmap
=====================

Synopsis
********

     AX_CXX_GNUCXX_HASHMAP

Description
***********

Test for the presence of GCC's hashmap STL extension.

Source Code
***********

Download the latest version of 'ax_cxx_gnucxx_hashmap.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_gnucxx_hashmap.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_gnucxx_hashmap.m4).

License
*******

Copyright (C) 2008 Patrick Mauritz <oxygene@studentenbude.ath.cx>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_bad_function_call
=============================

Synopsis
********

     AX_CXX_HAVE_BAD_FUNCTION_CALL()

Description
***********

This macro checks if std::bad_function_call, added in C++11, is defined
in the <functional> header.

If it is, define the ax_cv_cxx_have_bad_function_call environment
variable to "yes" and define HAVE_CXX_BAD_FUNCTION_CALL.

Source Code
***********

Download the latest version of 'ax_cxx_have_bad_function_call.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_bad_function_call.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_bad_function_call.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_bind
================

Synopsis
********

     AX_CXX_HAVE_BIND()

Description
***********

This macro checks if std::bind, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_bind environment variable to "yes"
and define HAVE_CXX_BIND.

Source Code
***********

Download the latest version of 'ax_cxx_have_bind.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_bind.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_bind.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_bit_and
===================

Synopsis
********

     AX_CXX_HAVE_BIT_AND()

Description
***********

This macro checks if std::bit_and, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_bit_and environment variable to
"yes" and define HAVE_CXX_BIT_AND.

Source Code
***********

Download the latest version of 'ax_cxx_have_bit_and.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_bit_and.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_bit_and.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_bit_or
==================

Synopsis
********

     AX_CXX_HAVE_BIT_OR()

Description
***********

This macro checks if std::bit_or, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_bit_or environment variable to "yes"
and define HAVE_CXX_BIT_OR.

Source Code
***********

Download the latest version of 'ax_cxx_have_bit_or.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_bit_or.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_bit_or.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_bit_xor
===================

Synopsis
********

     AX_CXX_HAVE_BIT_XOR()

Description
***********

This macro checks if std::bit_xor, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_bit_xor environment variable to
"yes" and define HAVE_CXX_BIT_XOR.

Source Code
***********

Download the latest version of 'ax_cxx_have_bit_xor.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_bit_xor.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_bit_xor.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_complex
===================

Synopsis
********

     AX_CXX_HAVE_COMPLEX

Description
***********

If the compiler has complex<T>, define HAVE_COMPLEX.

Source Code
***********

Download the latest version of 'ax_cxx_have_complex.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_complex.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_complex.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_complex_math1
=========================

Synopsis
********

     AX_CXX_HAVE_COMPLEX_MATH1

Description
***********

If the compiler has the complex math functions cos, cosh, exp, log, pow,
sin, sinh, sqrt, tan and tanh, define HAVE_COMPLEX_MATH1.

Source Code
***********

Download the latest version of 'ax_cxx_have_complex_math1.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_complex_math1.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_complex_math1.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_complex_math2
=========================

Synopsis
********

     AX_CXX_HAVE_COMPLEX_MATH2

Description
***********

If the compiler has the complex math functions acos, asin, atan, atan2
and log10, define HAVE_COMPLEX_MATH2.

Source Code
***********

Download the latest version of 'ax_cxx_have_complex_math2.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_complex_math2.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_complex_math2.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_cref
================

Synopsis
********

     AX_CXX_HAVE_CREF()

Description
***********

This macro checks if std::cref, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_cref environment variable to "yes"
and define HAVE_CXX_CREF.

Source Code
***********

Download the latest version of 'ax_cxx_have_cref.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_cref.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_cref.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_empty_iostream
==========================

Synopsis
********

     AX_CXX_HAVE_EMPTY_IOSTREAM

Description
***********

Check if the compiler allow the empty iostream constructor.  Ok before
gcc3, not after.

Source Code
***********

Download the latest version of 'ax_cxx_have_empty_iostream.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_empty_iostream.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_empty_iostream.m4).

License
*******

Copyright (C) 2008 Alain BARBET <alian@cpan.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cxx_have_ext_hash_map
========================

Synopsis
********

     AX_CXX_HAVE_EXT_HASH_MAP

Description
***********

Check if the compiler has ext/hash_map Eg:

       #if defined(HAVE_EXT_HASH_MAP)
       #include <ext/hash_map>
       #else
       #if defined(HAVE_STL)
       #include <hash_map>
       #else
       # Can't find hash_map header !
       #endif
       #endif

This file is Alain BARBET's AC_CXX_HAVE_EXT_HASH_SET 1.1 with
s/set/map/g :)

Source Code
***********

Download the latest version of 'ax_cxx_have_ext_hash_map.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_ext_hash_map.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_ext_hash_map.m4).

License
*******

Copyright (C) 2008 Perceval ANICHINI

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cxx_have_ext_hash_set
========================

Synopsis
********

     AX_CXX_HAVE_EXT_HASH_SET

Description
***********

Check if the compiler has ext/hash_set Eg:

       #if defined(HAVE_EXT_HASH_SET)
       #include <ext/hash_set>
       #else
       #if defined(HAVE_STL)
       #include <hash_set>
       #else
       # Can't find hash_set header !
       #endif
       #endif

Source Code
***********

Download the latest version of 'ax_cxx_have_ext_hash_set.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_ext_hash_set.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_ext_hash_set.m4).

License
*******

Copyright (C) 2008 Alain BARBET <alian@cpan.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cxx_have_ext_slist
=====================

Synopsis
********

     AX_CXX_HAVE_EXT_SLIST

Description
***********

Check if the compiler has ext/slist.  Eg:

       #if defined(HAVE_EXT_SLIST)
       #include <ext/slist>
       #else
       #if defined(HAVE_STL)
       #include <slist>
       #else
       # Can't find slist header !
       #endif
       #endif

Source Code
***********

Download the latest version of 'ax_cxx_have_ext_slist.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_ext_slist.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_ext_slist.m4).

License
*******

Copyright (C) 2008 Alain BARBET <alian@cpan.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cxx_have_freeze_sstream
==========================

Synopsis
********

     AX_CXX_HAVE_FREEZE_SSTREAM

Description
***********

Check if the compiler has (need) freeze method call in stringstream/
strstream.  Seems that Win32 and STLPort have it, libstdc++ not ...

Eg:

       #include <sstream>
       #ifdef HAVE_NAMESPACES
       using namespace std;
       #endif
       #ifdef HAVE_SSTREAM
       stringstream message;
       #else
       strstream message;
       #endif
       message << "Hello";
       #ifdef HAVE_FREEZE_SSTREAM
       message.freeze(0);
       #endif

Source Code
***********

Download the latest version of 'ax_cxx_have_freeze_sstream.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_freeze_sstream.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_freeze_sstream.m4).

License
*******

Copyright (C) 2008 Alain BARBET <alian@cpan.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cxx_have_function
====================

Synopsis
********

     AX_CXX_HAVE_FUNCTION()

Description
***********

This macro checks if std::function, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_function environment variable to
"yes" and define HAVE_CXX_FUNCTION.

Source Code
***********

Download the latest version of 'ax_cxx_have_function.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_function.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_function.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_hash
================

Synopsis
********

     AX_CXX_HAVE_HASH()

Description
***********

This macro checks if std::hash, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_hash environment variable to "yes"
and define HAVE_CXX_HASH.

Source Code
***********

Download the latest version of 'ax_cxx_have_hash.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_hash.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_hash.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_ieee_math
=====================

Synopsis
********

     AX_CXX_HAVE_IEEE_MATH

Description
***********

If the compiler has the double math functions acosh, asinh, atanh, cbrt,
expm1, erf, erfc, isnan, j0, j1, jn, gamma, lgamma, ilogb, logb, log1p,
rint, y0, y1, yn, hypot, nextafter, remainder and scalb, define
HAVE_IEEE_MATH.

Source Code
***********

Download the latest version of 'ax_cxx_have_ieee_math.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_ieee_math.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_ieee_math.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_is_bind_expression
==============================

Synopsis
********

     AX_CXX_HAVE_IS_BIND_EXPRESSION()

Description
***********

This macro checks if std::is_bind_expression, added in C++11, is defined
in the <functional> header.

If it is, define the ax_cv_cxx_have_is_bind_expression environment
variable to "yes" and define HAVE_CXX_IS_BIND_EXPRESSION.

Source Code
***********

Download the latest version of 'ax_cxx_have_is_bind_expression.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_is_bind_expression.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_is_bind_expression.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_is_placeholder
==========================

Synopsis
********

     AX_CXX_HAVE_IS_PLACEHOLDER()

Description
***********

This macro checks if std::is_placeholder, added in C++11, is defined in
the <functional> header.

If it is, define the ax_cv_cxx_have_is_placeholder environment variable
to "yes" and define HAVE_CXX_IS_PLACEHOLDER.

Source Code
***********

Download the latest version of 'ax_cxx_have_is_placeholder.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_is_placeholder.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_is_placeholder.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_koenig_lookup
=========================

Synopsis
********

     AX_CXX_HAVE_KOENIG_LOOKUP

Description
***********

Define CXX_HAVE_KOENIG_LOOKUP if the C++ compiler has argument-dependent
name lookup (a.k.a.  Koenig lookup).

Source Code
***********

Download the latest version of 'ax_cxx_have_koenig_lookup.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_koenig_lookup.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_koenig_lookup.m4).

License
*******

Copyright (C) 2008 Steve M. Robbins <smr@debian.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_long_long_for_iostream
==================================

Synopsis
********

     AX_CXX_HAVE_LONG_LONG_FOR_IOSTREAM

Description
***********

Check if the compiler allow long long for [i|o]stream Seems that OpenBSD
/ gcc-3 don't have it.

Eg:

       #include <iostream>
       #ifdef HAVE_SSTREAM
       #include <strstream>
       #else
       #include <sstream>
       #endif
       #ifdef HAVE_NAMESPACES
       using namespace std;
       #endif
       ostream str((streambuf *)0);
       long long lo=1;
       str <<
       #ifdef HAVE_LONG_LONG_FOR_IOSTREAM
         (long int)
       #endif
               lo;

Source Code
***********

Download the latest version of 'ax_cxx_have_long_long_for_iostream.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_long_long_for_iostream.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_long_long_for_iostream.m4).

License
*******

Copyright (C) 2008 Alain BARBET <alian@cpan.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cxx_have_mem_fn
==================

Synopsis
********

     AX_CXX_HAVE_MEM_FN()

Description
***********

This macro checks if std::mem_fn, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_mem_fn environment variable to "yes"
and define HAVE_CXX_MEM_FN.

Source Code
***********

Download the latest version of 'ax_cxx_have_mem_fn.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_mem_fn.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_mem_fn.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_numeric_limits
==========================

Synopsis
********

     AX_CXX_HAVE_NUMERIC_LIMITS

Description
***********

If the compiler has numeric_limits<T>, define HAVE_NUMERIC_LIMITS.

Source Code
***********

Download the latest version of 'ax_cxx_have_numeric_limits.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_numeric_limits.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_numeric_limits.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_placeholders
========================

Synopsis
********

     AX_CXX_HAVE_PLACEHOLDERS()

Description
***********

This macro checks if std::placeholders, added in C++11, is defined in
the <functional> header.

If it is, define the ax_cv_cxx_have_placeholders environment variable to
"yes" and define HAVE_CXX_PLACEHOLDERS.

Source Code
***********

Download the latest version of 'ax_cxx_have_placeholders.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_placeholders.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_placeholders.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_ref
===============

Synopsis
********

     AX_CXX_HAVE_REF()

Description
***********

This macro checks if std::ref, added in C++11, is defined in the
<functional> header.

If it is, define the ax_cv_cxx_have_ref environment variable to "yes"
and define HAVE_CXX_REF.

Source Code
***********

Download the latest version of 'ax_cxx_have_ref.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_ref.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_ref.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_reference_wrapper
=============================

Synopsis
********

     AX_CXX_HAVE_REFERENCE_WRAPPER()

Description
***********

This macro checks if std::reference_wrapper, added in C++11, is defined
in the <functional> header.

If it is, define the ax_cv_cxx_have_reference_wrapper environment
variable to "yes" and define HAVE_CXX_REFERENCE_WRAPPER.

Source Code
***********

Download the latest version of 'ax_cxx_have_reference_wrapper.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_reference_wrapper.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_reference_wrapper.m4).

License
*******

Copyright (C) 2014 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_sstream
===================

Synopsis
********

     AX_CXX_HAVE_SSTREAM

Description
***********

If the C++ library has a working stringstream, define HAVE_SSTREAM.

Source Code
***********

Download the latest version of 'ax_cxx_have_sstream.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_sstream.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_sstream.m4).

License
*******

Copyright (C) 2008 Ben Stanley <Ben.Stanley@exemail.com.au>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_std
===============

Synopsis
********

     AX_CXX_HAVE_STD

Description
***********

If the compiler supports ISO C++ standard library (i.e., can include the
files iostream, map, iomanip and cmath), define HAVE_STD.

Source Code
***********

Download the latest version of 'ax_cxx_have_std.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_std.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_std.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_stl
===============

Synopsis
********

     AX_CXX_HAVE_STL

Description
***********

If the compiler supports the Standard Template Library, define HAVE_STL.

Source Code
***********

Download the latest version of 'ax_cxx_have_stl.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_stl.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_stl.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_string_push_back
============================

Synopsis
********

     AX_CXX_HAVE_STRING_PUSH_BACK

Description
***********

If the implementation of the C++ library provides the method
std::string::push_back (char), define HAVE_STRING_PUSH_BACK.

Source Code
***********

Download the latest version of 'ax_cxx_have_string_push_back.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_string_push_back.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_string_push_back.m4).

License
*******

Copyright (C) 2008 Jan Langer <jan@langernetz.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_system_v_math
=========================

Synopsis
********

     AX_CXX_HAVE_SYSTEM_V_MATH

Description
***********

If the compiler has the double math functions _class, trunc, itrunc,
nearest, rsqrt, uitrunc, copysign, drem, finite, and unordered, define
HAVE_SYSTEM_V_MATH.

Source Code
***********

Download the latest version of 'ax_cxx_have_system_v_math.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_system_v_math.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_system_v_math.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_valarray
====================

Synopsis
********

     AX_CXX_HAVE_VALARRAY

Description
***********

If the compiler has valarray<T>, define HAVE_VALARRAY.

Source Code
***********

Download the latest version of 'ax_cxx_have_valarray.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_valarray.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_valarray.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_have_vector_at
=====================

Synopsis
********

     AX_CXX_HAVE_VECTOR_AT

Description
***********

If the implementation of the C++ library provides the method
std::vector::at(std::size_t), define HAVE_VECTOR_AT.

Source Code
***********

Download the latest version of 'ax_cxx_have_vector_at.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_have_vector_at.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_have_vector_at.m4).

License
*******

Copyright (C) 2008 Jan Langer <jan@langernetz.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_header_pre_stdcxx
========================

Synopsis
********

     AX_CXX_HEADER_PRE_STDCXX

Description
***********

Check whether pre-ISO-C++ headers exist.

Source Code
***********

Download the latest version of 'ax_cxx_header_pre_stdcxx.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_header_pre_stdcxx.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_header_pre_stdcxx.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_header_stdcxx_0x
=======================

Synopsis
********

     AX_CXX_HEADER_STDCXX_0X

Description
***********

Check for library coverage of the C++0x standard.

Source Code
***********

Download the latest version of 'ax_cxx_header_stdcxx_0x.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_header_stdcxx_0x.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_header_stdcxx_0x.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_header_stdcxx_98
=======================

Synopsis
********

     AX_CXX_HEADER_STDCXX_98

Description
***********

Check for complete library coverage of the C++1998/2003 standard.

Source Code
***********

Download the latest version of 'ax_cxx_header_stdcxx_98.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_header_stdcxx_98.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_header_stdcxx_98.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_header_stdcxx_tr1
========================

Synopsis
********

     AX_CXX_HEADER_STDCXX_TR1

Description
***********

Check for library coverage of the TR1 standard.

Source Code
***********

Download the latest version of 'ax_cxx_header_stdcxx_tr1.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_header_stdcxx_tr1.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_header_stdcxx_tr1.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_header_tr1_unordered_map
===============================

Synopsis
********

     AX_CXX_HEADER_TR1_UNORDERED_MAP

Description
***********

Check whether the TR1 include <unordered_map> exists and define
HAVE_TR1_UNORDERED_MAP if it does.

Source Code
***********

Download the latest version of 'ax_cxx_header_tr1_unordered_map.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_header_tr1_unordered_map.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_header_tr1_unordered_map.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_header_tr1_unordered_set
===============================

Synopsis
********

     AX_CXX_HEADER_TR1_UNORDERED_SET

Description
***********

Check whether the TR1 include <unordered_set> exists and define
HAVE_TR1_UNORDERED_SET if it does.

Source Code
***********

Download the latest version of 'ax_cxx_header_tr1_unordered_set.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_header_tr1_unordered_set.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_header_tr1_unordered_set.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_header_unordered_map
===========================

Synopsis
********

     AX_CXX_HEADER_UNORDERED_MAP

Description
***********

Check whether the C++ include <unordered_map> exists and define
HAVE_UNORDERED_MAP if it does.

Source Code
***********

Download the latest version of 'ax_cxx_header_unordered_map.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_header_unordered_map.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_header_unordered_map.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_header_unordered_set
===========================

Synopsis
********

     AX_CXX_HEADER_UNORDERED_SET

Description
***********

Check whether the C++ include <unordered_set> exists and define
HAVE_UNORDERED_SET if it does.

Source Code
***********

Download the latest version of 'ax_cxx_header_unordered_set.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_header_unordered_set.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_header_unordered_set.m4).

License
*******

Copyright (C) 2008 Benjamin Kosnik <bkoz@redhat.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_ldflags_std_lang
=======================

Synopsis
********

     AX_CXX_LDFLAGS_STD_LANG(LD-FLAGS)

Description
***********

Append to LD-FLAGS the set of link-time flags that should be passed to
the C++ compiler in order to enable use of C++ features as defined in
the ANSI C++ standard (eg.  use of standard iostream classes in the
'std' namespace, etc.).  Note that if you use GNU Libtool you may need
to prefix each of those switches with '-Xlinker' so that Libtool doesn't
discard them (see Libtool's manual and 'AC_LIBTOOLIZE_LDFLAGS').

Source Code
***********

Download the latest version of 'ax_cxx_ldflags_std_lang.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_ldflags_std_lang.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_ldflags_std_lang.m4).

License
*******

Copyright (C) 2008 Ludovic Courtes <ludo@chbouib.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_member_constants
=======================

Synopsis
********

     AX_CXX_MEMBER_CONSTANTS

Description
***********

If the compiler supports member constants, define HAVE_MEMBER_CONSTANTS.

Source Code
***********

Download the latest version of 'ax_cxx_member_constants.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_member_constants.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_member_constants.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_member_templates
=======================

Synopsis
********

     AX_CXX_MEMBER_TEMPLATES

Description
***********

If the compiler supports member templates, define HAVE_MEMBER_TEMPLATES.

Source Code
***********

Download the latest version of 'ax_cxx_member_templates.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_member_templates.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_member_templates.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_member_templates_outside_class
=====================================

Synopsis
********

     AX_CXX_MEMBER_TEMPLATES_OUTSIDE_CLASS

Description
***********

If the compiler supports member templates outside the class declaration,
define HAVE_MEMBER_TEMPLATES_OUTSIDE_CLASS.

Source Code
***********

Download the latest version of
'ax_cxx_member_templates_outside_class.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_member_templates_outside_class.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_member_templates_outside_class.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_mutable
==============

Synopsis
********

     AX_CXX_MUTABLE

Description
***********

If the compiler allows modifying class data members flagged with the
mutable keyword even in const objects (for example in the body of a
const member function), define HAVE_MUTABLE.

Source Code
***********

Download the latest version of 'ax_cxx_mutable.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_mutable.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_mutable.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_namespace_std
====================

Synopsis
********

     AX_CXX_NAMESPACE_STD

Description
***********

If the compiler supports namespace std, define HAVE_NAMESPACE_STD.

Source Code
***********

Download the latest version of 'ax_cxx_namespace_std.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_namespace_std.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_namespace_std.m4).

License
*******

Copyright (C) 2009 Todd Veldhuizen
Copyright (C) 2009 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_namespaces
=================

Synopsis
********

     AX_CXX_NAMESPACES

Description
***********

If the compiler can prevent names clashes using namespaces, define
HAVE_NAMESPACES.

Source Code
***********

Download the latest version of 'ax_cxx_namespaces.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_namespaces.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_namespaces.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>
Copyright (C) 2013 Bastien Roucaries <roucaries.bastien+autoconf@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_new_for_scoping
======================

Synopsis
********

     AX_CXX_NEW_FOR_SCOPING

Description
***********

If the compiler accepts the new for scoping rules (the scope of a
variable declared inside the parentheses is restricted to the for-body),
define HAVE_NEW_FOR_SCOPING.

Source Code
***********

Download the latest version of 'ax_cxx_new_for_scoping.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_new_for_scoping.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_new_for_scoping.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_old_for_scoping
======================

Synopsis
********

     AX_CXX_OLD_FOR_SCOPING

Description
***********

If the compiler accepts the old for scoping rules (the scope of a
variable declared inside the parentheses extends outside the for-body),
define HAVE_OLD_FOR_SCOPING. Note that some compilers (notably g++ and
egcs) support both new and old rules since they accept the old rules and
only generate a warning.

Source Code
***********

Download the latest version of 'ax_cxx_old_for_scoping.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_old_for_scoping.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_old_for_scoping.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_partial_ordering
=======================

Synopsis
********

     AX_CXX_PARTIAL_ORDERING

Description
***********

If the compiler supports partial ordering, define HAVE_PARTIAL_ORDERING.

Source Code
***********

Download the latest version of 'ax_cxx_partial_ordering.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_partial_ordering.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_partial_ordering.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_partial_specialization
=============================

Synopsis
********

     AX_CXX_PARTIAL_SPECIALIZATION

Description
***********

If the compiler supports partial specialization, define
HAVE_PARTIAL_SPECIALIZATION.

Source Code
***********

Download the latest version of 'ax_cxx_partial_specialization.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_partial_specialization.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_partial_specialization.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_reinterpret_cast
=======================

Synopsis
********

     AX_CXX_REINTERPRET_CAST

Description
***********

If the compiler supports reinterpret_cast<>, define
HAVE_REINTERPRET_CAST.

Source Code
***********

Download the latest version of 'ax_cxx_reinterpret_cast.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_reinterpret_cast.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_reinterpret_cast.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_restrict_this
====================

Synopsis
********

     AX_CXX_RESTRICT_THIS

Description
***********

Determine whether the C++ compiler supports qualifying a member function
with a restricted "this" pointer.  Define "restrict_this" to the correct
spelling; use like this:

       T::fn() restrict_this { /* code */ }

Otherwise, define "restrict_this" to be empty.

Note: the syntax above is a GCC extension.  If your C++ compiler has a
different way of applying the 'restricted' qualifier to the "this"
pointer, please consider reporting it.

Source Code
***********

Download the latest version of 'ax_cxx_restrict_this.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_restrict_this.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_restrict_this.m4).

License
*******

Copyright (C) 2010 Riccardo Murri <riccardo.murri@gmail.com>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

Under Section 7 of GPL version 3, you are granted additional permissions
described in the Autoconf Configure Script Exception, version 3.0, as
published by the Free Software Foundation.

You should have received a copy of the GNU General Public License and a
copy of the Autoconf Configure Script Exception along with this program;
see the files COPYINGv3 and COPYING.EXCEPTION respectively.  If not, see
<https://www.gnu.org/licenses/>.

ax_cxx_rtti
===========

Synopsis
********

     AX_CXX_RTTI

Description
***********

If the compiler supports Run-Time Type Identification (typeinfo header
and typeid keyword), define HAVE_RTTI.

Source Code
***********

Download the latest version of 'ax_cxx_rtti.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_rtti.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_rtti.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_rvalue_references
========================

Synopsis
********

     AX_CXX_RVALUE_REFERENCES

Description
***********

Check whether C++11 rvalue references are supported.  If they are, the
macro HAVE_RVALUE_REFERENCES is defined.

Does not ensure that the compiler is in C++11 mode.

Source Code
***********

Download the latest version of 'ax_cxx_rvalue_references.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_rvalue_references.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_rvalue_references.m4).

License
*******

Copyright (C) 2012 Tudor Bosman <tudorb@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_static_cast
==================

Synopsis
********

     AX_CXX_STATIC_CAST

Description
***********

If the compiler supports static_cast<>, define HAVE_STATIC_CAST.

Source Code
***********

Download the latest version of 'ax_cxx_static_cast.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_static_cast.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_static_cast.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_stlport_hashmap
======================

Synopsis
********

     AX_CXX_STLPORT_HASHMAP

Description
***********

Test for the presence of STLport's hashmap extension.

Source Code
***********

Download the latest version of 'ax_cxx_stlport_hashmap.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_stlport_hashmap.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_stlport_hashmap.m4).

License
*******

Copyright (C) 2008 Patrick Mauritz <oxygene@studentenbude.ath.cx>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_template_keyword_qualifier
=================================

Synopsis
********

     AX_CXX_TEMPLATE_KEYWORD_QUALIFIER

Description
***********

If the compiler supports use of the template keyword as a qualifier,
define HAVE_TEMPLATE_KEYWORD_QUALIFIER.

Source Code
***********

Download the latest version of 'ax_cxx_template_keyword_qualifier.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_template_keyword_qualifier.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_template_keyword_qualifier.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Bernardo Innocenti
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_template_qualified_base_class
====================================

Synopsis
********

     AX_CXX_TEMPLATE_QUALIFIED_BASE_CLASS

Description
***********

If the compiler supports template-qualified base class specifiers,
define HAVE_TEMPLATE_QUALIFIED_BASE_CLASS.

Source Code
***********

Download the latest version of 'ax_cxx_template_qualified_base_class.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_template_qualified_base_class.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_template_qualified_base_class.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_template_qualified_return_type
=====================================

Synopsis
********

     AX_CXX_TEMPLATE_QUALIFIED_RETURN_TYPE

Description
***********

If the compiler supports template-qualified return types, define
HAVE_TEMPLATE_QUALIFIED_RETURN_TYPE.

Source Code
***********

Download the latest version of
'ax_cxx_template_qualified_return_type.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_template_qualified_return_type.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_template_qualified_return_type.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_template_scoped_argument_matching
========================================

Synopsis
********

     AX_CXX_TEMPLATE_SCOPED_ARGUMENT_MATCHING

Description
***********

If the compiler supports function matching with argument types which are
template scope-qualified, define HAVE_TEMPLATE_SCOPED_ARGUMENT_MATCHING.

Source Code
***********

Download the latest version of
'ax_cxx_template_scoped_argument_matching.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_template_scoped_argument_matching.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_template_scoped_argument_matching.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_templates
================

Synopsis
********

     AX_CXX_TEMPLATES

Description
***********

If the compiler supports basic templates, define HAVE_TEMPLATES.

Source Code
***********

Download the latest version of 'ax_cxx_templates.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_templates.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_templates.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_templates_as_template_arguments
======================================

Synopsis
********

     AX_CXX_TEMPLATES_AS_TEMPLATE_ARGUMENTS

Description
***********

If the compiler supports templates as template arguments, define
HAVE_TEMPLATES_AS_TEMPLATE_ARGUMENTS.

Source Code
***********

Download the latest version of
'ax_cxx_templates_as_template_arguments.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_templates_as_template_arguments.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_templates_as_template_arguments.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_typename
===============

Synopsis
********

     AX_CXX_TYPENAME

Description
***********

If the compiler recognizes the typename keyword, define HAVE_TYPENAME.

Source Code
***********

Download the latest version of 'ax_cxx_typename.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_typename.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_typename.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_use_numtrait
===================

Synopsis
********

     AX_CXX_USE_NUMTRAIT

Description
***********

If the compiler supports numeric traits promotions, define
HAVE_USE_NUMTRAIT.

Source Code
***********

Download the latest version of 'ax_cxx_use_numtrait.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_use_numtrait.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_use_numtrait.m4).

License
*******

Copyright (C) 2008 Todd Veldhuizen
Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_cxx_var_prettyfunc
=====================

Synopsis
********

     AX_CXX_VAR_PRETTYFUNC

Description
***********

This function tries to determine the best C++ macro/identifier that
contains the current function name.  Depending on the compiler, this may
be __PRETTY_FUNCTION__ (GCC), __FUNCSIG__ (MSVC), __func__ (C++
standard), __FUNCTION__ (fallback).

The function will define HAVE_PRETTYFUNC if a macro exists, and define
__PRETTYFUNC__ to the best possible macro.  When HAVE_PRETTYFUNC is not
defined, __PRETTYFUNC__ will contain the constant string "<<unknown>>".

Source Code
***********

Download the latest version of 'ax_cxx_var_prettyfunc.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_var_prettyfunc.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_var_prettyfunc.m4).

License
*******

Copyright (C) 2014 Olaf Lenz <olenz@icp.uni-stuttgart.de>

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_cxx_verbose_terminate_handler
================================

Synopsis
********

     AX_CXX_VERBOSE_TERMINATE_HANDLER

Description
***********

Check if the terminate handler for the current compiler/standard library
prints useful information to stdout/stderr (i.e.  the type of the
uncaught exception and/or the what() string).

The intended use case for this check is to help program authors decide
if they need to add a top-level try-catch or custom terminate handler to
print useful information if an uncaught exception occurs, or if this
task can be left to the standard library implementation.  Alternatively,
it can be used to detect if such output needs to be silenced with a
custom terminate handler.

Output:

Define HAVE_VERBOSE_TERMINATE_HANDLER if useful information is printed.

Source Code
***********

Download the latest version of 'ax_cxx_verbose_terminate_handler.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_cxx_verbose_terminate_handler.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_cxx_verbose_terminate_handler.m4).

License
*******

Copyright (C) 2009 Kevin Locke <klocke@digitalenginesoftware.com>
Copyright (C) 2008 Lapo Luchini <lapo@lapo.it>

Copying and distribution of this file, with or without modification, is
permitted in any medium, without royalty, provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.  This file is offered as-is, without any warranty.

ax_czmq
=======

Synopsis
********

     AX_CZMQ([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])

Description
***********

Test for the CZMQ libraries of a particular version (or newer).  The
default version tested for is 3.0.0.

The macro tests for CZMQ libraries in the library/include path, and,
when provided, also in the path given by -with-czmq.

This macro calls:

       AC_SUBST(CZMQ_CPPFLAGS) / AC_SUBST(CZMQ_LDFLAGS) / AC_SUBST(CZMQ_LIBS)

And sets:

       HAVE_CZMQ

Source Code
***********

Download the latest version of 'ax_czmq.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_czmq.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_czmq.m4).

License
*******

Copyright (C) 2016 Jeroen Meijer <jjgmeijer@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_decl_wchar_max
=================

Synopsis
********

     AX_DECL_WCHAR_MAX

Description
***********

Checks whether the system headers define WCHAR_MAX or not.  If it is
already defined, does nothing.  Otherwise checks the size and signedness
of 'wchar_t', and defines WCHAR_MAX to the maximum value that can be
stored in a variable of type 'wchar_t'.

Source Code
***********

Download the latest version of 'ax_decl_wchar_max.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_decl_wchar_max.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_decl_wchar_max.m4).

License
*******

Copyright (C) 2008 Ville Laurikari <vl@iki.fi>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_define_integer_bits
======================

Synopsis
********

     AX_DEFINE_INTEGER_BITS (TYPE [, CANDIDATE-TYPE]...)

Description
***********

Given a TYPE of the form "int##_t" or "uint##_t", see if the datatype
TYPE is predefined.  If not, then define TYPE - both with AC_DEFINE and
as a shell variable - to the first datatype of exactly ## bits in a list
of CANDIDATE-TYPEs.  If none of the CANDIDATE-TYPEs contains exactly ##
bits, then set the TYPE shell variable to "no".

For example, the following ensures that uint64_t is defined as a 64-bit
datatype:

       AX_DEFINE_INTEGER_BITS(uint64_t, unsigned long long, unsigned __int64, long)
       if test "$uint64_t" = no; then
         AC_MSG_ERROR([unable to continue without a 64-bit datatype])
       fi

You should then put the following in your C code to ensure that all
datatypes defined by AX_DEFINE_INTEGER_BITS are visible to your program:

       #include "config.h"

       #if HAVE_INTTYPES_H
       # include <inttypes.h>
       #else
       # if HAVE_STDINT_H
       #  include <stdint.h>
       # endif
       #endif

Source Code
***********

Download the latest version of 'ax_define_integer_bits.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_define_integer_bits.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_define_integer_bits.m4).

License
*******

Copyright (C) 2008 Scott Pakin <pakin@uiuc.edu>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_define_sub_path
==================

Synopsis
********

     AX_DEFINE_SUB_PATH(DEFNAME, varname, description)

Description
***********

Look at varname and detect the subpath that it contains relative to
$prefix/$exec_prefix.  If the path is indeed relative to
$prefix/$exec_prefix, then a single "./" (dotslash) is prepended,
otherwise it can be seen as an absolute path that cannot be moved, which
you possibly do for "/etc" files, or even those ending up in
"/lib/modules" or "/winnt/system".

This macro is not very intelligent, it's just a first try in this
direction.  It does currently just look into the current patterns, and
replaces a ${prefix} with a simple dot.  Amazingly, it works quite well
for most packages.

Example (configure.ac):

       AX_DEFINE_DIR([EPREFIX], [exec_prefix], [--exec-prefix or default])
       AX_DEFINE_SUB_PATH([PATH_LIBDIR], [libdir], [--bindir subdir])
       AC_DEFINE_UNQUOTED([PACKAGE],"$PACKAGE", [Name of package])

Example (in C):

       static const char _libdir[] = PATH_LIBDIR; /* configure default */
       char* libdir;
       char* eprefix = getenv (PACKAGE "DIR");
       if (! eprefix) eprefix = EPREFIX; /* default */
       if (*_libdir != '.') libdir = strdup(_libdir);
       else {
          libdir = malloc(strlen(eprefix) + strlen(_libdir) + 2);
          strcpy(libdir, eprefix);
          strcat(libdir, PATH_DELIMITER_STRING);
          strcat(libdir, _libdir);
       }
       ...
       free (libdir);

The AX_DEFINE_SUB_PATHS(varnames) macro looks for the given various
install-paths that largely depend on either ${prefix} or ${exec_prefix}.
Just cut out the prefix and ac_define the value.  The value is
uppercased and PATH_ prepended ie.  ax_define_sub_paths(bindir libdir
pkgdatadir) will create the defines PATH_BINDIR PATH_LIBDIR
PATH_PKGDATADIR - see posix' include/paths.h that creates _PATH_DEV and
friends.

Source Code
***********

Download the latest version of 'ax_define_sub_path.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_define_sub_path.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_define_sub_path.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_dirname
==========

Synopsis
********

     AX_DIRNAME(PATHNAME)

Description
***********

Parts of the implementation have been taken from AS_DIRNAME from the
main autoconf package in generation 2.5x.  However, we do only use "sed"
to cut out the dirname, and we do additionally clean up some dir/..
parts in the resulting pattern.

this macro may be used in autoconf 2.13 scripts as well.

Source Code
***********

Download the latest version of 'ax_dirname.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_dirname.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_dirname.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_dist_msi
===========

Synopsis
********

     AX_DIST_MSI([File])

Description
***********

Adds support for a msi (Microsoft Installer) dist target.

You must manually build the msi file yourself (probably from another
computer).  But it will be added to the list of extra bin dists and
flagged for uploading (see ax_extra_dist.m4 and ax_upload.m4 for
details).

Source Code
***********

Download the latest version of 'ax_dist_msi.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_dist_msi.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_dist_msi.m4).

License
*******

Copyright (C) 2009 Tom Howard <tomhoward@users.sf.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_dist_rpm
===========

Synopsis
********

     AX_DIST_RPM([SPEC])

Description
***********

Adds support for a rpm dist target.

You will need to create a spec template with everything except the files
and the Changelog.  Use @PACKAGE@ and @VERSION@ to refer to the package
name and version respectively.  The files and ChangeLog will be filled
in automatically.  For instance:

       Summary: Foobar
       Name: @PACKAGE@
       Version: @VERSION@
       Release: 0
       License: GPL
       Group: Productivity/Networking
       Source0: http://somewhere/Foobar/%{name}-%{version}.tar.gz
       URL: http://somewhere
       BuildRoot: %{_tmppath}/%{name}-root
       Prefix: %{_prefix}

       %description
       Foobar does something

       %prep
       %setup

       %build
       %configure
       make

       %install
       %makeinstall

       %clean
       rm -rf $RPM_BUILD_ROOT

       %files
       %defattr(-,root,root)

       %doc AUTHORS BUGS COPYING INSTALL NEWS README

       %changelog

Make sure ax_upload.am is added to aminclude_static.am and you have
'include aminclude_static.am' in Makefile.am

Source Code
***********

Download the latest version of 'ax_dist_rpm.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_dist_rpm.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_dist_rpm.m4).

License
*******

Copyright (C) 2009 Tom Howard <tomhoward@users.sf.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_dll_string
=============

Synopsis
********

     AX_DLL_STRING

Description
***********

Tests for a bug currently in g++ 3.4.4 on Cygwin (maybe other targets
with statically linked libstdc++?)  where passing an empty std::string
to a dll will cause a crash on destruction due to incorrect memory
handling.  See bug 24196 in gcc's bugzilla for more details:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24196

Source Code
***********

Download the latest version of 'ax_dll_string.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_dll_string.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_dll_string.m4).

License
*******

Copyright (C) 2008 Steven Brown <swbrown@variadic.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_elisp
========

Synopsis
********

     AX_ELISP_CONFIG_FILE(FILENAME)
     AX_ELISP_CHECK(SYMBOL,DESCRIPTION,BODY,SUCCESS-EXPR)
     AX_ELISP_CHECK_FEATURE(SYMBOL)
     AX_ELISP_CHECK_FBOUNDP(SYMBOL,[FEATURE [...]])
     AX_ELISP_CHECK_BOUNDP(SYMBOL,[FEATURE [...]])

Description
***********

This is a simple library to check the Emacs reality by way of Emacs Lisp
forms evaluated under $EMACS -batch -Q. This means you MUST have the
shell variable EMACS set to a valid Emacs executable prior to the first
call to any of the AX_ELISP_CHECK et al macros.  Those work by saving
their results to the file defined by calling AX_ELISP_CONFIG_FILE so you
MUST call that prior, too.  For example:

       dnl Arrange to save config answers in $top_builddir/lisp/config.el.
       AX_ELISP_CONFIG_FILE([lisp/config.el])

       dnl Set shell variable EMACS and AC_SUBST it, too.
       dnl (NB: This is a separate Autoconf Archive macro.)
       AX_PROG_EMACS

In the following detailed descriptions, SYMBOL stands for an Emacs Lisp
symbol, which may contain hyphens, e.g., 'define-error' or 'org-src'.
Likewise, FEATURE is an Emacs Lisp symbol (naming a feature).  BODY and
SUCCESS-EXPR are Emacs Lisp forms, zero or more for BODY and exactly one
for SUCCESS-EXPR. In these forms you must take care to avoid apostrophe
(U+27).  Instead of 'foo, write (quote foo).

* AX_ELISP_CONFIG_FILE(FILENAME)

This arranges for future AX_ELISP_CHECK (et al) calls to save their
results in FILENAME. May be called multiple times.  FILENAME should be
relative to the top build dir.

* AX_ELISP_CHECK(SYMBOL,DESCRIPTION,BODY,SUCCESS-EXPR)

This is the general macro that the other AX_ELISP_CHECK* macros use.  It
constructs a short Emacs Lisp file comprising BODY and evaluates it via
$EMACS -batch -Q. The exit value of this script depends on the result of
evaluating SUCCESS-EXPR: non-nil is success and nil is failure.  On
success, append SYMBOL on a line of its own to the config file.  This
macro uses AC_CACHE_CHECK and passes DESCRIPTION to it.

* AX_ELISP_CHECK_FEATURE(FEATURE)

This checks if (require (quote FEATURE)) is successful.  If so, add
featurep-FEATURE to the config file (NB the "featurep-" prefix).

* AX_ELISP_CHECK_FBOUNDP(SYMBOL,[FEATURE [...]])

This checks if (fboundp (quote SYMBOL)) is successful.  If so, append
SYMBOL to the config file.  Optional 2nd arg is a space-separated list
of features to require prior to the fboundp check.

* AX_ELISP_CHECK_BOUNDP(SYMBOL,[FEATURE [...]])

This checks if (boundp (quote SYMBOL)) is successful.  If so, append
SYMBOL to the config file.  Optional 2nd arg is a space-separated list
of features to require prior to the boundp check.

Source Code
***********

Download the latest version of 'ax_elisp.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_elisp.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_elisp.m4).

License
*******

Copyright (C) 2016-2017 Thien-Thi Nguyen

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_enable_builddir
==================

Synopsis
********

     AX_ENABLE_BUILDDIR [(dirstring-or-command [,Makefile.mk [,-all]])]

Description
***********

If the current configure was run within the srcdir then we move all
configure-files into a subdir and let the configure steps continue
there.  We provide an option -disable-builddir to suppress the move into
a separate builddir.

Defaults:

       $1 = $host (overridden with $HOST)
       $2 = Makefile.mk
       $3 = -all

This macro must be called before AM_INIT_AUTOMAKE. It creates a default
toplevel srcdir Makefile from the information found in the created
toplevel builddir Makefile.  It just copies the variables and
rule-targets, each extended with a default rule-execution that recurses
into the build directory of the current "HOST". You can override the
auto-detection through 'config.guess' and build-time of course, as in

       make HOST=i386-mingw-cross

which can of course set at configure time as well using

       configure --host=i386-mingw-cross

After the default has been created, additional rules can be appended
that will not just recurse into the subdirectories and only ever exist
in the srcdir toplevel makefile - these parts are read from the $2 =
Makefile.mk file

The automatic rules are usually scanning the toplevel Makefile for lines
like '#### $host |$builddir' to recognize the place where to recurse
into.  Usually, the last one is the only one used.  However, almost all
targets have an additional "*-all" rule which makes the script to
recurse into _all_ variants of the current HOST (!!)  setting.  The
"-all" suffix can be overridden for the macro as well.

a special rule is only given for things like "dist" that will copy the
tarball from the builddir to the sourcedir (or $(PUB)) for reason of
convenience.

Source Code
***********

Download the latest version of 'ax_enable_builddir.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_enable_builddir.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_enable_builddir.m4).

License
*******

Copyright (C) 2009 Guido U. Draheim <guidod@gmx.de>
Copyright (C) 2009 Alan Jenkins <alan-jenkins@tuffmail.co.uk>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_execinfo
===========

Synopsis
********

     AX_EXECINFO([ACTION-IF-EXECINFO-H-IS-FOUND], [ACTION-IF-EXECINFO-H-IS-NOT-FOUND], [ADDITIONAL-TYPES-LIST])

Description
***********

Checks for execinfo.h header and if the len parameter/return type can be
found from a list, also define backtrace_size_t to that type.

By default the list of types to try contains int and size_t, but should
some yet undiscovered system use e.g.  unsigned, the 3rd argument can be
used for extensions.  I'd like to hear of further suggestions.

Executes ACTION-IF-EXECINFO-H-IS-FOUND when present and the execinfo.h
header is found or ACTION-IF-EXECINFO-H-IS-NOT-FOUND in case the header
seems unavailable.

Also adds -lexecinfo to LIBS on BSD if needed.

Source Code
***********

Download the latest version of 'ax_execinfo.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_execinfo.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_execinfo.m4).

License
*******

Copyright (C) 2014 Thomas Jahns <jahns@dkrz.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_expand_prefix
================

Synopsis
********

     AX_EXPAND_PREFIX

Description
***********

When $prefix and $exec_prefix are still set to NONE then set them to the
usual default values - being based on $ac_default_prefix.  - this macro
can be AC_REQUIREd by other macros that need to compute values for
installation directories.  It has been observed that it was done wrong
over and over again, so this is a bit more safe to do.

remember - setting exec_prefix='${prefix}' needs you interpolate
directories multiple times, it is not sufficient to just say
MYVAR="${datadir}/putter" but you do have to run 'eval' a few times,
sth.  like MYVAR='eval "echo \"$MYVAR\""' done at least two times.

The implementation of this macro simply picks up the lines that would be
run at the start of AC_OUTPUT anyway to set the prefix/exec_prefix
defaults.  Between AC_INIT and the first command to AC_REQUIRE this
macro you can set the two variables to something explicit instead.
Probably, any command to compute installation directories should be run
_after_ AM_INIT_AUTOMAKE

Source Code
***********

Download the latest version of 'ax_expand_prefix.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_expand_prefix.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_expand_prefix.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_ext
======

Synopsis
********

     AX_EXT

Description
***********

Find supported SIMD extensions by requesting cpuid.  When a SIMD
extension is found, the -m"simdextensionname" is added to SIMD_FLAGS if
compiler supports it.  For example, if "sse2" is available then "-msse2"
is added to SIMD_FLAGS.

Find other supported CPU extensions by requesting cpuid.  When a
processor extension is found, the -m"extensionname" is added to
CPUEXT_FLAGS if compiler supports it.  For example, if "bmi2" is
available then "-mbmi2" is added to CPUEXT_FLAGS.

This macro calls:

       AC_SUBST(SIMD_FLAGS)
       AC_SUBST(CPUEXT_FLAGS)

And defines:

       HAVE_RDRND / HAVE_BMI1 / HAVE_BMI2 / HAVE_ADX / HAVE_MPX
       HAVE_PREFETCHWT1 / HAVE_ABM / HAVE_MMX / HAVE_SSE / HAVE_SSE2
       HAVE_SSE3 / HAVE_SSSE3 / HAVE_SSE4_1 / HAVE_SSE4_2 / HAVE_SSE4a
       HAVE_SHA / HAVE_AES / HAVE_AVX / HAVE_FMA3 / HAVE_FMA4 / HAVE_XOP
       HAVE_AVX2 / HAVE_AVX512_F / HAVE_AVX512_CD / HAVE_AVX512_PF
       HAVE_AVX512_ER / HAVE_AVX512_VL / HAVE_AVX512_BW / HAVE_AVX512_DQ
       HAVE_AVX512_IFMA / HAVE_AVX512_VBMI / HAVE_ALTIVEC / HAVE_VSX

Source Code
***********

Download the latest version of 'ax_ext.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_ext.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_ext.m4).

License
*******

Copyright (C) 2007 Christophe Tournayre <turn3r@users.sourceforge.net>
Copyright (C) 2013,2015 Michael Petch <mpetch@capp-sysware.com>
Copyright (C) 2017 Rafael de Lucena Valle <rafaeldelucena@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_ext_check_header
===================

Synopsis
********

     AX_EXT_CHECK_HEADER(<header>, <paths>).

Description
***********

Check for <header> with -I<path> for each path in <paths> if need be.
The first sucecssful path is chosen (eg if you say
AX_EXT_CHECK_HEADER(foo.h, bar baz qux) and -Ibaz works then -Iqux will
not be tested.

Any -I flags that locate a header are added to CFLAGS and CPPFLAGS. AS
with AC_CHECK_HEADERS it causes HAVE_<header>_H to be defined as 1.

Example:

      AX_EXT_HAVE_HEADER(openssl/rsa.h, /usr/local/include /usr/local/ssl/include /usr/local/openssl/include)

Source Code
***********

Download the latest version of 'ax_ext_check_header.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_ext_check_header.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_ext_check_header.m4).

License
*******

Copyright (C) 2008 Duncan Simpson <dps@simpson.demon.co.uk>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_ext_have_lib
===============

Synopsis
********

     AX_EXT_HAVE_LIB(<directories>, <library>, <function>, <extra libraries>)

Description
***********

AX_EXT_HAVE_LIB is identical to AC_SEARCH_LIBS with the exception that
will add -L<directory> when looking, and use a different variable for
each directory.

Any required -L<directory> flags are added to LDFLAGS and located
libraies are added to LIBS

Some libraries are unlinkable without other extra libraries, which can
be specified in the 4th argument.  The mysql client library needs -lz,
for example.

Example:

      AX_EXT_HAVE_LIB(/lib /usr/lib /usr/local/lib /usr/lib/mysql /usr/local/mysql/lib, mysqlclient, mysql_init, [-lz])

which finds the mysql client library if succeeds system when it tries
with -L/usr/lib/mysql then it adds -lmysqlclient to LIBS and
-L/usr/lib/mysql to LDFLAGS.

The test itself is based on the autoconf 2.53 version of AC_SEARCH_LIBS.

Source Code
***********

Download the latest version of 'ax_ext_have_lib.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_ext_have_lib.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_ext_have_lib.m4).

License
*******

Copyright (C) 2008 Duncan Simpson <dps@simpson.demon.co.uk>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_extend_srcdir
================

Synopsis
********

     AX_EXTEND_SRCDIR

Description
***********

The AX_EXTEND_SRCDIR macro extends $srcdir by one path component.

As an example, when working in /home/michael/i3-4.12/build and calling
../configure, your $srcdir is "..".  After calling AX_EXTEND_SRCDIR,
$srcdir will be set to "../../i3-4.12".

The result of extending $srcdir is that filenames (e.g.  in the output
of the "backtrace" gdb command) will include one more path component of
the absolute source path.  The additional path component makes it easy
for users to recognize which files belong to the PACKAGE, and - provided
a dist tarball was unpacked - which version of PACKAGE was used.

As an example, in "backtrace", you will see:

       #0  main (argc=1, argv=0x7fffffff1fc8) at ../../i3-4.12/src/main.c:187

instead of:

       #0  main (argc=1, argv=0x7fffffff1fc8) at ../src/main.c:187

In case your code uses the __FILE__ preprocessor directive to refer to
the filename of the current source file (e.g.  in debug messages), using
the extended path might be undesirable.  For this purpose,
AX_EXTEND_SRCDIR defines the output variable AX_EXTEND_SRCDIR_CPPFLAGS,
which can be added to AM_CPPFLAGS in Makefile.am in order to define the
preprocessor directive STRIPPED__FILE__.  As an example, when compiling
the file "../../i3-4.12/src/main.c", STRIPPED__FILE__ evaluates to
"main.c".

There are some caveats: When $srcdir is "."  (i.e.  when ./configure was
called instead of ../configure in a separate build directory),
AX_EXTEND_SRCDIR will still extend $srcdir, but the intended effect will
not be achieved because of the way automake specifies file paths:
automake defines COMPILE to use "'test -f '$source' || echo
'\$(srcdir)/''$source" in order to prefer files in the current directory
over specifying $srcdir explicitly.

The AX_EXTEND_SRCDIR author is not aware of any way to influence this
automake behavior.  Patches very welcome.

To work around this issue, you can use AX_ENABLE_BUILDDIR i.e.  by
adding the following code to configure.ac:

       AX_ENABLE_BUILDDIR
       dnl ...
       AX_EXTEND_SRCDIR

Then also add this bit to Makefile.am (if you wish to use
STRIPPED__FILE__ in your code):

       AM_CPPFLAGS = @AX_EXTEND_SRCDIR_CPPFLAGS@

Source Code
***********

Download the latest version of 'ax_extend_srcdir.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_extend_srcdir.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_extend_srcdir.m4).

License
*******

Copyright (C) 2016 Michael Stapelberg <michael@i3wm.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_extra_dist
=============

Synopsis
********

     AX_EXTRA_DIST

Description
***********

Allow support for custom dist targets.

To add custom dist targets, you must create a dist-<TYPE> target within
your Makefile.am, where <TYPE> is the name of the dist and then add
<TYPE> to EXTRA_SRC_DISTS or EXTRA_BIN_DISTS. For example:

       dist-foobar:
        <rules for making the foobar dist>

       EXTRA_BIN_DISTS += foobar

You can then build all the src dist targets by running:

       make dist-src

You can build all the binary dist targets by running:

       make dist-bin

and you can build both the src and dist targets by running:

       make all-dist

Source Code
***********

Download the latest version of 'ax_extra_dist.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_extra_dist.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_extra_dist.m4).

License
*******

Copyright (C) 2009 Tom Howard <tomhoward@users.sf.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_f77_cmain_fflags
===================

Synopsis
********

     AX_F77_CMAIN_FFLAGS([ACTION-IF-SUCCEED], [ACTION-IF-FAIL])

Description
***********

This macro figures out if extra Fortran compiler flags are required in
order to use the Fortran linker to link programs where the main()
function is defined via C (or other language).  On some systems, notably
the Alpha with Compaq compilers, the Fortran libraries have their own
main() function which must be disabled.

Runs ACTION-IF-SUCCEED if successful, and ACTION-IF-FAIL if not.
Defines the output variable F77_CMAIN_FFLAGS to any discovered flags.
(If ACTION-IF-FAIL is not specified, defaults to halting with an error.)

This macro is especially useful in conjunction with automake, since by
default automake uses $F77 to link programs mixing C and Fortran,
leading to a link error on some systems.  In this case, you should set
the FFLAGS for that program to include F77_CMAIN_FFLAGS.

Source Code
***********

Download the latest version of 'ax_f77_cmain_fflags.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_f77_cmain_fflags.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_f77_cmain_fflags.m4).

License
*******

Copyright (C) 2008 Steven G. Johnson <stevenj@alum.mit.edu>

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_f90_header
=============

Synopsis
********

     AX_F90_HEADER(HEADER, HEADER-REGEXP, FUNCTION-BODY [, SEARCH-PATH [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])

Description
***********

Set up the compiler flags to use a given fortran 90 header.  HEADER is
the name of the header.  HEADER-REGEXP is a regular expression (used by
find) matched by the filename of the header.  FUNCTION-BODY is the body
of a function (including the 'use' statement and the call to a function
defined by the module) SEARCH-PATH is a colon-separated list of
directories that will be recursively searched for header files.  If
empty, the search path will be composed of $prefix, $ac_default_prefix,
and all directories exactly one level *above* the directories in
$LD_LIBRARY_PATH (the rationale is that when libraries are put in
/some/path/lib, the headers are often put in a directory like
/some/path/include).  An output variable named F90_HEADER_xxx will be
set up with the proper flag for substitution in Makefiles (xxx is built
from the first argument, with autoconf traditional escapes).

Source Code
***********

Download the latest version of 'ax_f90_header.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_f90_header.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_f90_header.m4).

License
*******

Copyright (C) 2008 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_f90_internal_headmod
=======================

Synopsis
********

     AX_F90_INTERNAL_HEADMOD(MESSAGE, FILE-REGEXP, FLAG, FUNCTION-BODY, OUTPUT-VAR[, SEARCH-PATH [, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]])

Description
***********

Internal macro used by AX_F90_HEADER and AX_F90_MODULE.

Source Code
***********

Download the latest version of 'ax_f90_internal_headmod.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_f90_internal_headmod.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_f90_internal_headmod.m4).

License
*******

Copyright (C) 2009 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_f90_library
==============

Synopsis
********

     AX_F90_LIBRARY(LIBRARY, LIB-REGEXP, FUNCTION-BODY [, SEARCH-PATH [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])

Description
***********

Set up the compiler flags to link a given fortran 90 library LIBRARY is
the name of the library.  LIB-REGEXP is a regular expression (used by
find) matched by the filename of the library, this is useful either if
the library filename does not follow the traditional libxxx.a or
libxxx.so pattern, or if some specific information is embedded into the
name, like compiler used, debugging status ...).  FUNCTION-BODY is the
body of a function (including the 'use' statements and the call to a
function defined by the library) SEARCH-PATH is a colon-separated list
of directories that will be used as the base directories for 'find' to
look for the library file.  If empty, the search path will be composed
of $prefix/lib, $ac_default_prefix/lib, and $LD_LIBRARY_PATH. Two output
variables named F90_LDFLAGS_xxx and F90_LIBS_xxx will be set up with the
proper flag for substitution in Makefiles (xxx is built from the first
argument, with autoconf traditional escapes).

Source Code
***********

Download the latest version of 'ax_f90_library.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_f90_library.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_f90_library.m4).

License
*******

Copyright (C) 2009 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_f90_library_setup
====================

Synopsis
********

     AX_F90_LIBRARY_SETUP(LIBRARY, HEADER-REGEXP, MODULE-REGEXP, LIB-REGEXP, FUNCTION-BODY)

Description
***********

Convenience macro to set up a fortran 90 library in a simplified way.
LIBRARY is the name of the library.  HEADER-REGEXP is a regular
expression (used by find) matched by the header file to look for (may be
empty).  MODULE-REGEXP is a regular expression (used by find) matched by
the filename of the module (may be empty).  LIB-REGEXP is a regular
expression (used by find) matched by the filename of the library, this
is useful either if the library filename does not follow the traditional
libxxx.a or libxxx.so pattern, or if some specific information is
embedded into the name, like compiler used, debugging status ...).
FUNCTION-BODY is the body of a function (including the 'use' statements
and the call to a function defined by the library).

This macro is a simple wrapper around AX_F90_MODULE and AX_F90_LIBRARY
that uses the parameters provided by the end user through a -with-xxx
option to set up the search path.  Both a module and a library will be
tested, the same path will be used for both tests, so the path must be
set up with a common parent directory of both the library file and the
module file.  The macro also automatically updates the FCFLAGS, LDFLAGS
and LIBS variables in addition to providing the F90_HEADER_xxx,
F90_MODULE_xxx, F90_LDFLAGS_xxx and F90_LIBS_xxx output variables.

Example: suppose you have /home/nostradamus/esoteric/lib/libalchemy.a
and /home/nostradamus/esoteric/mod/alchemy.mod which provides a function
transmute_into_gold, you can use the following in you configure.ac:

       AX_F90_MODULE_EXTENSION
       if test x$ax_cv_f90_modext = xunknown ; then
         AC_MSG_ERROR([unable to find f90 modules extension])
       fi
       AX_F90_LIBRARY_SETUP(alchemy,[],alchemy.$ax_cv_f90_modext,libalchemy*,[
          use alchemy
          call transmute_into_gold('lead')
         ])

and the user could configure your package using a command like this:

       ./configure --with-alchemy=$HOME/esoteric

Source Code
***********

Download the latest version of 'ax_f90_library_setup.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_f90_library_setup.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_f90_library_setup.m4).

License
*******

Copyright (C) 2009 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_f90_module
=============

Synopsis
********

     AX_F90_MODULE(MODULE, MODULE-REGEXP, FUNCTION-BODY [, SEARCH-PATH [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])

Description
***********

Set up the compiler flags to use a given fortran 90 module MODULE is the
name of the module.  MODULE-REGEXP is a regular expression (used by
find) matched by the filename of the module.  FUNCTION-BODY is the body
of a function (including the 'use' statement and the call to a function
defined by the module) SEARCH-PATH is a colon-separated list of
directories that will be recursively searched for modules files.  If
empty, the search path will be composed of $prefix, $ac_default_prefix,
and all directories exactly one level *above* the directories in
$LD_LIBRARY_PATH (the rationale is that when libraries are put in
/some/path/lib, the modules are often put in a directory like
/some/path/include or /some/path/mod or something similar).  An output
variable named F90_MODULE_xxx will be set up with the proper flag for
substitution in Makefiles (xxx is built from the first argument, with
autoconf traditional escapes).

Source Code
***********

Download the latest version of 'ax_f90_module.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_f90_module.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_f90_module.m4).

License
*******

Copyright (C) 2009 Luc Maisonobe <luc@spaceroots.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_f90_module_extension
=======================

Synopsis
********

     AX_F90_MODULE_EXTENSION

Description
***********

Find Fortran 90 modules file extension.  The module extension is stored
in the cached variable ax_f90_modext, or "unknown" if the extension
cannot be found.

Source Code
***********

Download the latest version of 'ax_f90_module_extension.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_f90_module_extension.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_f90_module_extension.m4).

License
*******

Copyright (C) 2009 Luc Maisonobe <luc@spaceroots.org>
Copyright (C) 2009 Alexander Pletzer <pletzer@txcorp.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_f90_module_flag
==================

Synopsis
********

     AX_F90_MODULE_FLAG

Description
***********

Find Fortran 90 modules inclusion flag.  The module inclusion flag is
stored in the cached variable ax_f90_modflag.  An error is triggered if
the flag cannot be found.  Supported are the -I GNU compilers flag, the
-M SUN compilers flag, and the -p Absoft Pro Fortran compiler flag.

Source Code
***********

Download the latest version of 'ax_f90_module_flag.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_f90_module_flag.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_f90_module_flag.m4).

License
*******

Copyright (C) 2009 Luc Maisonobe <luc@spaceroots.org>
Copyright (C) 2009 Julian C. Cummings <cummings@cacr.caltech.edu>
Copyright (C) 2009 Alexander Pletzer <pletzer@txcorp.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_fc_check_define
==================

Synopsis
********

     AX_FC_CHECK_DEFINE([symbol], [ACTION-IF-FOUND], [ACTION-IF-NOT])

Description
***********

This macro checks to see if the Fortran pre-processor has a symbol
defined.

Consider a usage like:

       AC_FC_PP_DEFINE()
       AX_FC_CHECK_DEFINE(__BIGGEST_ALIGNMENT__, [],
                          AX_APPEND_FLAG([${FC_DEFINE}__BIGGEST_ALIGNMENT__=64],
                                         [FCFLAGS]))

Source Code
***********

Download the latest version of 'ax_fc_check_define.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_fc_check_define.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_fc_check_define.m4).

License
*******

Copyright (C) 2016 Timothy Brown <tbrown@freeshell.org>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_file_escapes
===============

Synopsis
********

     AX_FILE_ESCAPES

Description
***********

Writes the specified data to the specified file.

Source Code
***********

Download the latest version of 'ax_file_escapes.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_file_escapes.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_file_escapes.m4).

License
*******

Copyright (C) 2008 Tom Howard <tomhoward@users.sf.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_find_hamcrest
================

Synopsis
********

     AX_FIND_HAMCREST

Description
***********

AX_FIND_HAMCREST will look for the Hamcrest java library.  When found
its path will be put in HAMCREST_CPF as a classpath fragment.

To override the location define HAMCREST_JAR to the wanted path.

Source Code
***********

Download the latest version of 'ax_find_hamcrest.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_find_hamcrest.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_find_hamcrest.m4).

License
*******

Copyright (C) 2013 Sveinung Kvilhaugsvik <sveinung84@users.sourceforge.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_find_junit
=============

Synopsis
********

     AX_FIND_JUNIT

Description
***********

AX_FIND_JUNIT will look for the JUnit java library.  When found its path
will be put in JUNIT_CPF as a classpath fragment.

To override the location define JUNIT_JAR to the wanted path.

Source Code
***********

Download the latest version of 'ax_find_junit.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_find_junit.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_find_junit.m4).

License
*******

Copyright (C) 2013 Sveinung Kvilhaugsvik <sveinung84@users.sourceforge.net>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_find_scala_stdlib
====================

Synopsis
********

     AX_FIND_SCALA_STDLIB

Description
***********

AX_FIND_SCALA_STDLIB will look for the Scala Standard Library.  When
found its path will be put in SCALA_STDLIB_CPF as a classpath fragment.

To override the location define SCALA_STDLIB to the wanted path

Source Code
***********

Download the latest version of 'ax_find_scala_stdlib.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_find_scala_stdlib.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_find_scala_stdlib.m4).

License
*******

Copyright (C) 2013 Sveinung Kvilhaugsvik <sveinung84@users.sourceforge.net>

Copying and distribution of this file, with or without modification,are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_forceinline
==============

Synopsis
********

     AX_FORCEINLINE()

Description
***********

Provides a test for C compiler support of forced inlining.  If usable,
#define FORCEINLINE to the appropriate force inline keyword.  Otherwise
#define FORCEINLINE to be 'inline'.

Source Code
***********

Download the latest version of 'ax_forceinline.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_forceinline.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_forceinline.m4).

License
*******

Copyright (C) 2008 Alan Woodland <ajw05@aber.ac.uk>
Copyright (C) 2009 Rhys Ulerich <rhys.ulerich@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_func_accept_argtypes
=======================

Synopsis
********

     AX_FUNC_ACCEPT_ARGTYPES

Description
***********

Checks the data types of the three arguments to accept().  Results are
placed into the symbols ACCEPT_TYPE_ARG[123], consistent with the
following example:

       #define ACCEPT_TYPE_ARG1 int
       #define ACCEPT_TYPE_ARG2 struct sockaddr *
       #define ACCEPT_TYPE_ARG3 socklen_t *

This macro requires AC_CHECK_HEADERS to have already verified the
presence or absence of sys/types.h and sys/socket.h.

NOTE: This is just a modified version of the AC_FUNC_SELECT_ARGTYPES
macro.  Credit for that one goes to David MacKenzie et.  al.

Source Code
***********

Download the latest version of 'ax_func_accept_argtypes.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_accept_argtypes.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_func_accept_argtypes.m4).

License
*******

Copyright (C) 2008 Daniel Richard G. <skunk@iskunk.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_func_getopt_long
===================

Synopsis
********

     AX_FUNC_GETOPT_LONG

Description
***********

Check for getopt_long support.

This assume that the standard getopt.h file (from GNU libc) is available
as lib/gnugetopt.h.  If needed, this file will be linked as getopt.h,
but we want to default to the system's getopt.h file.  (See
http://sources.redhat.com/ml/automake/2000-09/msg00041.html for an
explanation about why using the system's getopt.h file is important.)

Source Code
***********

Download the latest version of 'ax_func_getopt_long.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_getopt_long.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_func_getopt_long.m4).

License
*******

Copyright (C) 2008 Alexandre Duret-Lutz <adl@gnu.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_func_memmove
===============

Synopsis
********

     AX_FUNC_MEMMOVE

Description
***********

Checks for a memmove that can handle overlaps correctly.  If no working
memmove is found, request a replacement and warn the user about it.

Source Code
***********

Download the latest version of 'ax_func_memmove.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_memmove.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_func_memmove.m4).

License
*******

Copyright (C) 2008 Ruediger Kuhlmann <info@ruediger-kuhlmann.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_func_mkdir
=============

Synopsis
********

     AX_FUNC_MKDIR

Description
***********

Check whether mkdir() is mkdir or _mkdir, and whether it takes one or
two arguments.

This macro can define HAVE_MKDIR, HAVE__MKDIR, and MKDIR_TAKES_ONE_ARG,
which are expected to be used as follows:

       #if HAVE_MKDIR
       #  if MKDIR_TAKES_ONE_ARG
            /* MinGW32 */
       #    define mkdir(a, b) mkdir(a)
       #  endif
       #else
       #  if HAVE__MKDIR
            /* plain Windows 32 */
       #    define mkdir(a, b) _mkdir(a)
       #  else
       #    error "Don't know how to create a directory on this system."
       #  endif
       #endif

Source Code
***********

Download the latest version of 'ax_func_mkdir.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_mkdir.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_func_mkdir.m4).

License
*******

Copyright (C) 2008 Alexandre Duret-Lutz <adl@gnu.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_func_posix_memalign
======================

Synopsis
********

     AX_FUNC_POSIX_MEMALIGN

Description
***********

Some versions of posix_memalign (notably glibc 2.2.5) incorrectly apply
their power-of-two check to the size argument, not the alignment
argument.  AX_FUNC_POSIX_MEMALIGN defines HAVE_POSIX_MEMALIGN if the
power-of-two check is correctly applied to the alignment argument.

Source Code
***********

Download the latest version of 'ax_func_posix_memalign.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_posix_memalign.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_func_posix_memalign.m4).

License
*******

Copyright (C) 2008 Scott Pakin <pakin@uiuc.edu>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_func_snprintf
================

Synopsis
********

     AX_FUNC_SNPRINTF

Description
***********

Checks for a fully C99 compliant snprintf, in particular checks whether
it does bounds checking and returns the correct string length; does the
same check for vsnprintf.  If no working snprintf or vsnprintf is found,
request a replacement and warn the user about it.  Note: the mentioned
replacement is freely available and may be used in any project
regardless of it's license.

Source Code
***********

Download the latest version of 'ax_func_snprintf.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_snprintf.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_func_snprintf.m4).

License
*******

Copyright (C) 2008 Ruediger Kuhlmann <info@ruediger-kuhlmann.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_func_which_gethostbyname_r
=============================

Synopsis
********

     AX_FUNC_WHICH_GETHOSTBYNAME_R

Description
***********

Determines which historical variant of the gethostbyname_r() call
(taking three, five, or six arguments) is available on the system and
defines one of the following macros accordingly:

       HAVE_FUNC_GETHOSTBYNAME_R_6
       HAVE_FUNC_GETHOSTBYNAME_R_5
       HAVE_FUNC_GETHOSTBYNAME_R_3

as well as

       HAVE_GETHOSTBYNAME_R

If used in conjunction with gethostname.c, the API demonstrated in
test.c can be used regardless of which gethostbyname_r() is available.
These example files can be found at
http://www.csn.ul.ie/~caolan/publink/gethostbyname_r

based on David Arnold's autoconf suggestion in the threads faq

Originally named "AC_caolan_FUNC_WHICH_GETHOSTBYNAME_R". Rewritten for
Autoconf 2.5x, and updated for 2.68 by Daniel Richard G.

Source Code
***********

Download the latest version of 'ax_func_which_gethostbyname_r.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_which_gethostbyname_r.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_func_which_gethostbyname_r.m4).

License
*******

Copyright (C) 2008 Caolan McNamara <caolan@skynet.ie>
Copyright (C) 2008 Daniel Richard G. <skunk@iskunk.org>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_func_which_getservbyname_r
=============================

Synopsis
********

     AX_FUNC_WHICH_GETSERVBYNAME_R

Description
***********

Provides a test to determine the correct way to call getservbyname_r:

      - defines HAVE_FUNC_GETSERVBYNAME_R_6 if it needs 6 arguments (e.g linux)
      - defines HAVE_FUNC_GETSERVBYNAME_R_5 if it needs 5 arguments (e.g. solaris)
      - defines HAVE_FUNC_GETSERVBYNAME_R_4 if it needs 4 arguments (e.g. osf/1)

An example use can be found at
http://raf.org/autoconf/net_getservbyname.c

Based on Caolan McNamara's gethostbyname_r macro.  Based on David
Arnold's autoconf suggestion in the threads faq.

Source Code
***********

Download the latest version of 'ax_func_which_getservbyname_r.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_which_getservbyname_r.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_func_which_getservbyname_r.m4).

License
*******

Copyright (C) 2008 raf <raf@raf.org>

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_gcc_archflag
===============

Synopsis
********

     AX_GCC_ARCHFLAG([PORTABLE?], [ACTION-SUCCESS], [ACTION-FAILURE])

Description
***********

This macro tries to guess the "native" arch corresponding to the target
architecture for use with gcc's -march=arch or -mtune=arch flags.  If
found, the cache variable $ax_cv_gcc_archflag is set to this flag and
ACTION-SUCCESS is executed; otherwise $ax_cv_gcc_archflag is set to
"unknown" and ACTION-FAILURE is executed.  The default ACTION-SUCCESS is
to add $ax_cv_gcc_archflag to the end of $CFLAGS.

PORTABLE? should be either [yes] (default) or [no].  In the former case,
the flag is set to -mtune (or equivalent) so that the architecture is
only used for tuning, but the instruction set used is still portable.
In the latter case, the flag is set to -march (or equivalent) so that
architecture-specific instructions are enabled.

The user can specify -with-gcc-arch=<arch> in order to override the
macro's choice of architecture, or -without-gcc-arch to disable this.

When cross-compiling, or if $CC is not gcc, then ACTION-FAILURE is
called unless the user specified -with-gcc-arch manually.

Requires macros: AX_CHECK_COMPILE_FLAG, AX_GCC_X86_CPUID

(The main emphasis here is on recent CPUs, on the principle that doing
high-performance computing on old hardware is uncommon.)

Source Code
***********

Download the latest version of 'ax_gcc_archflag.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_archflag.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_archflag.m4).

License
*******

Copyright (C) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
Copyright (C) 2008 Matteo Frigo
Copyright (C) 2014 Tsukasa Oi
Copyright (C) 2017-2018 Alexey Kopytov

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_gcc_builtin
==============

Synopsis
********

     AX_GCC_BUILTIN(BUILTIN)

Description
***********

This macro checks if the compiler supports one of GCC's built-in
functions; many other compilers also provide those same built-ins.

The BUILTIN parameter is the name of the built-in function.

If BUILTIN is supported define HAVE_<BUILTIN>.  Keep in mind that since
builtins usually start with two underscores they will be copied over
into the HAVE_<BUILTIN> definition (e.g.  HAVE___BUILTIN_EXPECT for
__builtin_expect()).

The macro caches its result in the ax_cv_have_<BUILTIN> variable (e.g.
ax_cv_have___builtin_expect).

The macro currently supports the following built-in functions:

      __builtin_assume_aligned
      __builtin_bswap16
      __builtin_bswap32
      __builtin_bswap64
      __builtin_choose_expr
      __builtin___clear_cache
      __builtin_clrsb
      __builtin_clrsbl
      __builtin_clrsbll
      __builtin_clz
      __builtin_clzl
      __builtin_clzll
      __builtin_complex
      __builtin_constant_p
      __builtin_cpu_init
      __builtin_cpu_is
      __builtin_cpu_supports
      __builtin_ctz
      __builtin_ctzl
      __builtin_ctzll
      __builtin_expect
      __builtin_ffs
      __builtin_ffsl
      __builtin_ffsll
      __builtin_fpclassify
      __builtin_huge_val
      __builtin_huge_valf
      __builtin_huge_vall
      __builtin_inf
      __builtin_infd128
      __builtin_infd32
      __builtin_infd64
      __builtin_inff
      __builtin_infl
      __builtin_isinf_sign
      __builtin_nan
      __builtin_nand128
      __builtin_nand32
      __builtin_nand64
      __builtin_nanf
      __builtin_nanl
      __builtin_nans
      __builtin_nansf
      __builtin_nansl
      __builtin_object_size
      __builtin_parity
      __builtin_parityl
      __builtin_parityll
      __builtin_popcount
      __builtin_popcountl
      __builtin_popcountll
      __builtin_powi
      __builtin_powif
      __builtin_powil
      __builtin_prefetch
      __builtin_trap
      __builtin_types_compatible_p
      __builtin_unreachable

Unsupported built-ins will be tested with an empty parameter set and the
result of the check might be wrong or meaningless so use with care.

Source Code
***********

Download the latest version of 'ax_gcc_builtin.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_builtin.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_builtin.m4).

License
*******

Copyright (C) 2013 Gabriele Svelto <gabriele.svelto@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_gcc_const_call
=================

Synopsis
********

     AX_GCC_CONST_CALL

Description
***********

The macro will compile a test program to see whether the compiler does
understand the per-function postfix pragma.

Source Code
***********

Download the latest version of 'ax_gcc_const_call.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_const_call.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_const_call.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_gcc_func_attribute
=====================

Synopsis
********

     AX_GCC_FUNC_ATTRIBUTE(ATTRIBUTE)

Description
***********

This macro checks if the compiler supports one of GCC's function
attributes; many other compilers also provide function attributes with
the same syntax.  Compiler warnings are used to detect supported
attributes as unsupported ones are ignored by default so quieting
warnings when using this macro will yield false positives.

The ATTRIBUTE parameter holds the name of the attribute to be checked.

If ATTRIBUTE is supported define HAVE_FUNC_ATTRIBUTE_<ATTRIBUTE>.

The macro caches its result in the ax_cv_have_func_attribute_<attribute>
variable.

The macro currently supports the following function attributes:

      alias
      aligned
      alloc_size
      always_inline
      artificial
      cold
      const
      constructor
      constructor_priority for constructor attribute with priority
      deprecated
      destructor
      dllexport
      dllimport
      error
      externally_visible
      fallthrough
      flatten
      format
      format_arg
      gnu_format
      gnu_inline
      hot
      ifunc
      leaf
      malloc
      noclone
      noinline
      nonnull
      noreturn
      nothrow
      optimize
      pure
      sentinel
      sentinel_position
      unused
      used
      visibility
      warning
      warn_unused_result
      weak
      weakref

Unsupported function attributes will be tested with a prototype
returning an int and not accepting any arguments and the result of the
check might be wrong or meaningless so use with care.

Source Code
***********

Download the latest version of 'ax_gcc_func_attribute.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_func_attribute.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_func_attribute.m4).

License
*******

Copyright (C) 2013 Gabriele Svelto <gabriele.svelto@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_gcc_lib
==========

Synopsis
********

     AX_GCC_LIB(LIBRARY,[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND])

Description
***********

AX_GCC_LIB looks for LIBRARY inside gcc install directory, performs
ACTION-IF-FOUND if the library is available, ACTION-IF-NOT-FOUND
otherwise.  The gcc install directory is retrieved using
AX_GCC_INSTALL_DIR macro.

Source Code
***********

Download the latest version of 'ax_gcc_lib.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_lib.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_lib.m4).

License
*******

Copyright (C) 2009 Francesco Salvestrini <salvestrini@users.sourceforge.net>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_gcc_libgcc_eh
================

Synopsis
********

     AX_GCC_LIBGCC_EH(VARIABLE)

Description
***********

AX_GCC_LIBGCC_EH defines VARIABLE as the absolute path to libgcc_eh.a if
it is available on the system, empty otherwise

Source Code
***********

Download the latest version of 'ax_gcc_libgcc_eh.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_libgcc_eh.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_libgcc_eh.m4).

License
*******

Copyright (C) 2009 Francesco Salvestrini <salvestrini@users.sourceforge.net>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_gcc_libsupcxx
================

Synopsis
********

     AX_GCC_LIBSUPCXX(VARIABLE)

Description
***********

AX_GCC_LIBSUPCXX defines VARIABLE as the absolute path to libsupc++.a if
it is available on the system, empty otherwise.

Source Code
***********

Download the latest version of 'ax_gcc_libsupcxx.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_libsupcxx.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_libsupcxx.m4).

License
*******

Copyright (C) 2009 Francesco Salvestrini <salvestrini@users.sourceforge.net>

Copyright (C) 2009 Alessandro Massignan <ff0000.it@gmail.com>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_gcc_malloc_call
==================

Synopsis
********

     AX_GCC_MALLOC_CALL

Description
***********

The macro will compile a test program to see whether the compiler does
understand the per-function postfix pragma.

Source Code
***********

Download the latest version of 'ax_gcc_malloc_call.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_malloc_call.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_malloc_call.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_gcc_var_attribute
====================

Synopsis
********

     AX_GCC_VAR_ATTRIBUTE(ATTRIBUTE)

Description
***********

This macro checks if the compiler supports one of GCC's variable
attributes; many other compilers also provide variable attributes with
the same syntax.  Compiler warnings are used to detect supported
attributes as unsupported ones are ignored by default so quieting
warnings when using this macro will yield false positives.

The ATTRIBUTE parameter holds the name of the attribute to be checked.

If ATTRIBUTE is supported define HAVE_VAR_ATTRIBUTE_<ATTRIBUTE>.

The macro caches its result in the ax_cv_have_var_attribute_<attribute>
variable.

The macro currently supports the following variable attributes:

      aligned
      cleanup
      common
      nocommon
      deprecated
      mode
      packed
      tls_model
      unused
      used
      vector_size
      weak
      dllimport
      dllexport
      init_priority

Unsupported variable attributes will be tested against a global integer
variable and without any arguments given to the attribute itself; the
result of this check might be wrong or meaningless so use with care.

Source Code
***********

Download the latest version of 'ax_gcc_var_attribute.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_var_attribute.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_var_attribute.m4).

License
*******

Copyright (C) 2013 Gabriele Svelto <gabriele.svelto@gmail.com>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_gcc_warn_unused_result
=========================

Synopsis
********

     AX_GCC_WARN_UNUSED_RESULT

Description
***********

The macro will compile a test program to see whether the compiler does
understand the per-function postfix pragma.

Source Code
***********

Download the latest version of 'ax_gcc_warn_unused_result.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_warn_unused_result.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_warn_unused_result.m4).

License
*******

Copyright (C) 2008 Guido U. Draheim <guidod@gmx.de>

Copying and distribution of this file, with or without modification, are
permitted in any medium without royalty provided the copyright notice
and this notice are preserved.  This file is offered as-is, without any
warranty.

ax_gcc_x86_avx_xgetbv
=====================

Synopsis
********

     AX_GCC_X86_AVX_XGETBV

Description
***********

On later x86 processors with AVX SIMD support, with gcc or a compiler
that has a compatible syntax for inline assembly instructions, run a
small program that executes the xgetbv instruction with input OP. This
can be used to detect if the OS supports AVX instruction usage.

On output, the values of the eax and edx registers are stored as
hexadecimal strings as "eax:edx" in the cache variable
ax_cv_gcc_x86_avx_xgetbv.

If the xgetbv instruction fails (because you are running a
cross-compiler, or because you are not using gcc, or because you are on
a processor that doesn't have this instruction),
ax_cv_gcc_x86_avx_xgetbv_OP is set to the string "unknown".

This macro mainly exists to be used in AX_EXT.

Source Code
***********

Download the latest version of 'ax_gcc_x86_avx_xgetbv.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_x86_avx_xgetbv.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_x86_avx_xgetbv.m4).

License
*******

Copyright (C) 2013 Michael Petch <mpetch@capp-sysware.com>

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_gcc_x86_cpu_supports
=======================

Synopsis
********

     AX_GCC_X86_CPU_SUPPORTS(X86-INSTRUCTION-SET,
       [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND])

Description
***********

Checks if the host cpu supports X86-INSTRUCTION-SET. The instruction set
that can be tested are "mmx, popcnt, sse, sse2, sse3, sse4.1, sse4.2,
sse4a, avx, avx2, avx512f, fma, fma4, bmi, bmi2".  If the instruction
set is supported by the host cpu, the C preprocessor macro
HAVE_XXX_INSTRUCTIONS is set to 1.  The XXX is up-cased instruction case
with dot replaced by underscore.  For example, the test for "sse4.2"
would export HAVE_SSE4_2_INSTRUCTIONS=1.  This macro requires gcc
extended builtin function "__builtin_cpu_init" and
"__builtin_cpu_supports" to detect the cpu features.  It will error out
if the compiler doesn't has these builtins.

If the test for the instruction set succeeded, the hook ACTION-IF-FOUND
would run.  Otherwise the hook ACTION-IF-NOT-FOUND would run if
specified.

See also AX_CHECK_X86_FEATURES, which checks all the possible
instruction set and export the corresponding CFLAGS.

Source Code
***********

Download the latest version of 'ax_gcc_x86_cpu_supports.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_x86_cpu_supports.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_x86_cpu_supports.m4).

License
*******

Copyright (C) 2016 Felix Chern <idryman@gmail.com>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.

ax_gcc_x86_cpuid
================

Synopsis
********

     AX_GCC_X86_CPUID(OP)
     AX_GCC_X86_CPUID_COUNT(OP, COUNT)

Description
***********

On Pentium and later x86 processors, with gcc or a compiler that has a
compatible syntax for inline assembly instructions, run a small program
that executes the cpuid instruction with input OP. This can be used to
detect the CPU type.  AX_GCC_X86_CPUID_COUNT takes an additional COUNT
parameter that gets passed into register ECX before calling cpuid.

On output, the values of the eax, ebx, ecx, and edx registers are stored
as hexadecimal strings as "eax:ebx:ecx:edx" in the cache variable
ax_cv_gcc_x86_cpuid_OP.

If the cpuid instruction fails (because you are running a
cross-compiler, or because you are not using gcc, or because you are on
a processor that doesn't have this instruction), ax_cv_gcc_x86_cpuid_OP
is set to the string "unknown".

This macro mainly exists to be used in AX_GCC_ARCHFLAG.

Source Code
***********

Download the latest version of 'ax_gcc_x86_cpuid.m4'
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_gcc_x86_cpuid.m4)
or browse the macro's revision history
(http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_gcc_x86_cpuid.m4).

License
*******

Copyright (C) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
Copyright (C) 2008 Matteo Frigo
Copyright (C) 2015 Michael Petch <mpetch@capp-sysware.com>

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <https://www.gnu.org/licenses/>.

As a special exception, the respective Autoconf Macro's copyright owner
gives unlimited permission to copy, distribute and modify the configure
scripts that are the output of Autoconf when processing the Macro.  You
need not follow the terms of the GNU General Public License when using
or distributing such scripts, even though portions of the text of the
Macro appear in them.  The GNU General Public License (GPL) does govern
all other use of the material that constitutes the Autoconf Macro.

This special exception to the GPL applies to versions of the Autoconf
Macro released by the Autoconf Archive.  When you make and distribute a
modified version of the Autoconf Macro, you may extend this special
exception to the GPL to apply to your modified version as well.