| # Do all the work for Automake. -*- Autoconf -*- |
| |
| # Copyright (C) 1996-2018 Free Software Foundation, Inc. |
| # |
| # This file is free software; the Free Software Foundation |
| # gives unlimited permission to copy and/or distribute it, |
| # with or without modifications, as long as this notice is preserved. |
| |
| # This macro actually does too much. Some checks are only needed if |
| # your package does certain things. But this isn't really a big deal. |
| |
| dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. |
| m4_define([AC_PROG_CC], |
| m4_defn([AC_PROG_CC]) |
| [_AM_PROG_CC_C_O |
| ]) |
| |
| # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) |
| # AM_INIT_AUTOMAKE([OPTIONS]) |
| # ----------------------------------------------- |
| # The call with PACKAGE and VERSION arguments is the old style |
| # call (pre autoconf-2.50), which is being phased out. PACKAGE |
| # and VERSION should now be passed to AC_INIT and removed from |
| # the call to AM_INIT_AUTOMAKE. |
| # We support both call styles for the transition. After |
| # the next Automake release, Autoconf can make the AC_INIT |
| # arguments mandatory, and then we can depend on a new Autoconf |
| # release and drop the old call support. |
| AC_DEFUN([AM_INIT_AUTOMAKE], |
| [AC_PREREQ([2.65])dnl |
| dnl Autoconf wants to disallow AM_ names. We explicitly allow |
| dnl the ones we care about. |
| m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl |
| AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl |
| AC_REQUIRE([AC_PROG_INSTALL])dnl |
| if test "`cd $srcdir && pwd`" != "`pwd`"; then |
| # Use -I$(srcdir) only when $(srcdir) != ., so that make's output |
| # is not polluted with repeated "-I." |
| AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl |
| # test to see if srcdir already configured |
| if test -f $srcdir/config.status; then |
| AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) |
| fi |
| fi |
| |
| # test whether we have cygpath |
| if test -z "$CYGPATH_W"; then |
| if (cygpath --version) >/dev/null 2>/dev/null; then |
| CYGPATH_W='cygpath -w' |
| else |
| CYGPATH_W=echo |
| fi |
| fi |
| AC_SUBST([CYGPATH_W]) |
| |
| # Define the identity of the package. |
| dnl Distinguish between old-style and new-style calls. |
| m4_ifval([$2], |
| [AC_DIAGNOSE([obsolete], |
| [$0: two- and three-arguments forms are deprecated.]) |
| m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl |
| AC_SUBST([PACKAGE], [$1])dnl |
| AC_SUBST([VERSION], [$2])], |
| [_AM_SET_OPTIONS([$1])dnl |
| dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. |
| m4_if( |
| m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), |
| [ok:ok],, |
| [m4_fatal([AC_INIT should be called with package and version arguments])])dnl |
| AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl |
| AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl |
| |
| _AM_IF_OPTION([no-define],, |
| [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) |
| AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl |
| |
| # Some tools Automake needs. |
| AC_REQUIRE([AM_SANITY_CHECK])dnl |
| AC_REQUIRE([AC_ARG_PROGRAM])dnl |
| AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) |
| AM_MISSING_PROG([AUTOCONF], [autoconf]) |
| AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) |
| AM_MISSING_PROG([AUTOHEADER], [autoheader]) |
| AM_MISSING_PROG([MAKEINFO], [makeinfo]) |
| AC_REQUIRE([AM_PROG_INSTALL_SH])dnl |
| AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl |
| AC_REQUIRE([AC_PROG_MKDIR_P])dnl |
| # For better backward compatibility. To be removed once Automake 1.9.x |
| # dies out for good. For more background, see: |
| # <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html> |
| # <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html> |
| AC_SUBST([mkdir_p], ['$(MKDIR_P)']) |
| # We need awk for the "check" target (and possibly the TAP driver). The |
| # system "awk" is bad on some platforms. |
| AC_REQUIRE([AC_PROG_AWK])dnl |
| AC_REQUIRE([AC_PROG_MAKE_SET])dnl |
| AC_REQUIRE([AM_SET_LEADING_DOT])dnl |
| _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], |
| [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], |
| [_AM_PROG_TAR([v7])])]) |
| _AM_IF_OPTION([no-dependencies],, |
| [AC_PROVIDE_IFELSE([AC_PROG_CC], |
| [_AM_DEPENDENCIES([CC])], |
| [m4_define([AC_PROG_CC], |
| m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl |
| AC_PROVIDE_IFELSE([AC_PROG_CXX], |
| [_AM_DEPENDENCIES([CXX])], |
| [m4_define([AC_PROG_CXX], |
| m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl |
| AC_PROVIDE_IFELSE([AC_PROG_OBJC], |
| [_AM_DEPENDENCIES([OBJC])], |
| [m4_define([AC_PROG_OBJC], |
| m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl |
| AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], |
| [_AM_DEPENDENCIES([OBJCXX])], |
| [m4_define([AC_PROG_OBJCXX], |
| m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl |
| ]) |
| AC_REQUIRE([AM_SILENT_RULES])dnl |
| dnl The testsuite driver may need to know about EXEEXT, so add the |
| dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This |
| dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. |
| AC_CONFIG_COMMANDS_PRE(dnl |
| [m4_provide_if([_AM_COMPILER_EXEEXT], |
| [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl |
| |
| # POSIX will say in a future version that running "rm -f" with no argument |
| # is OK; and we want to be able to make that assumption in our Makefile |
| # recipes. So use an aggressive probe to check that the usage we want is |
| # actually supported "in the wild" to an acceptable degree. |
| # See automake bug#10828. |
| # To make any issue more visible, cause the running configure to be aborted |
| # by default if the 'rm' program in use doesn't match our expectations; the |
| # user can still override this though. |
| if rm -f && rm -fr && rm -rf; then : OK; else |
| cat >&2 <<'END' |
| Oops! |
| |
| Your 'rm' program seems unable to run without file operands specified |
| on the command line, even when the '-f' option is present. This is contrary |
| to the behaviour of most rm programs out there, and not conforming with |
| the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542> |
| |
| Please tell bug-automake@gnu.org about your system, including the value |
| of your $PATH and any error possibly output before this message. This |
| can help us improve future automake versions. |
| |
| END |
| if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then |
| echo 'Configuration will proceed anyway, since you have set the' >&2 |
| echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 |
| echo >&2 |
| else |
| cat >&2 <<'END' |
| Aborting the configuration process, to ensure you take notice of the issue. |
| |
| You can download and install GNU coreutils to get an 'rm' implementation |
| that behaves properly: <https://www.gnu.org/software/coreutils/>. |
| |
| If you want to complete the configuration process using your problematic |
| 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM |
| to "yes", and re-run configure. |
| |
| END |
| AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) |
| fi |
| fi |
| dnl The trailing newline in this macro's definition is deliberate, for |
| dnl backward compatibility and to allow trailing 'dnl'-style comments |
| dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. |
| ]) |
| |
| dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not |
| dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further |
| dnl mangled by Autoconf and run in a shell conditional statement. |
| m4_define([_AC_COMPILER_EXEEXT], |
| m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) |
| |
| # When config.status generates a header, we must update the stamp-h file. |
| # This file resides in the same directory as the config header |
| # that is generated. The stamp files are numbered to have different names. |
| |
| # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the |
| # loop where config.status creates the headers, so we can generate |
| # our stamp files there. |
| AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], |
| [# Compute $1's index in $config_headers. |
| _am_arg=$1 |
| _am_stamp_count=1 |
| for _am_header in $config_headers :; do |
| case $_am_header in |
| $_am_arg | $_am_arg:* ) |
| break ;; |
| * ) |
| _am_stamp_count=`expr $_am_stamp_count + 1` ;; |
| esac |
| done |
| echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) |