62 lines
2.5 KiB
Plaintext
62 lines
2.5 KiB
Plaintext
|
dnl GTEST_LIB_CHECK([minimum version [,
|
||
|
dnl action if found [,action if not found]]])
|
||
|
dnl
|
||
|
dnl Check for the presence of the Google Test library, optionally at a minimum
|
||
|
dnl version, and indicate a viable version with the HAVE_GTEST flag. It defines
|
||
|
dnl standard variables for substitution including GTEST_CPPFLAGS,
|
||
|
dnl GTEST_CXXFLAGS, GTEST_LDFLAGS, and GTEST_LIBS. It also defines
|
||
|
dnl GTEST_VERSION as the version of Google Test found. Finally, it provides
|
||
|
dnl optional custom action slots in the event GTEST is found or not.
|
||
|
AC_DEFUN([GTEST_LIB_CHECK],
|
||
|
[
|
||
|
dnl Provide a flag to enable or disable Google Test usage.
|
||
|
AC_ARG_ENABLE([gtest],
|
||
|
[AS_HELP_STRING([--enable-gtest],
|
||
|
[Enable tests using the Google C++ Testing Framework.]
|
||
|
[(Default is enabled.)])],
|
||
|
[],
|
||
|
[enable_gtest=check])
|
||
|
AC_ARG_VAR([GTEST_CONFIG],
|
||
|
[The exact path of Google Test's 'gtest-config' script.])
|
||
|
AC_ARG_VAR([GTEST_CPPFLAGS],
|
||
|
[C-like preprocessor flags for Google Test.])
|
||
|
AC_ARG_VAR([GTEST_CXXFLAGS],
|
||
|
[C++ compile flags for Google Test.])
|
||
|
AC_ARG_VAR([GTEST_LDFLAGS],
|
||
|
[Linker path and option flags for Google Test.])
|
||
|
AC_ARG_VAR([GTEST_LIBS],
|
||
|
[Library linking flags for Google Test.])
|
||
|
AC_ARG_VAR([GTEST_VERSION],
|
||
|
[The version of Google Test available.])
|
||
|
HAVE_GTEST="no"
|
||
|
AS_IF([test "x$enable_gtest" != "xno"],
|
||
|
[AC_PATH_PROG([GTEST_CONFIG], [gtest-config])
|
||
|
AS_IF([test -x "$GTEST_CONFIG"],
|
||
|
[AS_IF([test "x$1" != "x"],
|
||
|
[_min_version="--min-version=$1"
|
||
|
AC_MSG_CHECKING([for Google Test at least version >= $1])],
|
||
|
[_min_version="--min-version=0"
|
||
|
AC_MSG_CHECKING([for Google Test])])
|
||
|
AS_IF([$GTEST_CONFIG $_min_version],
|
||
|
[AC_MSG_RESULT([yes])
|
||
|
HAVE_GTEST="yes"],
|
||
|
[AC_MSG_RESULT([no])])])
|
||
|
AS_IF([test "x$HAVE_GTEST" = "xyes"],
|
||
|
[GTEST_CPPFLAGS=$($GTEST_CONFIG --cppflags)
|
||
|
GTEST_CXXFLAGS=$($GTEST_CONFIG --cxxflags)
|
||
|
GTEST_LDFLAGS=$($GTEST_CONFIG --ldflags)
|
||
|
GTEST_LIBS=$($GTEST_CONFIG --libs)
|
||
|
GTEST_VERSION=$($GTEST_CONFIG --version)
|
||
|
AC_DEFINE([HAVE_GTEST],[1],[Defined when Google Test is available.])],
|
||
|
[AS_IF([test "x$enable_gtest" = "xyes"],
|
||
|
[AC_MSG_ERROR([
|
||
|
The Google C++ Testing Framework was explicitly enabled, but a viable version
|
||
|
could not be found on the system.
|
||
|
])])])])
|
||
|
AC_SUBST([HAVE_GTEST])
|
||
|
AM_CONDITIONAL([HAVE_GTEST],[test "x$HAVE_GTEST" = "xyes"])
|
||
|
AS_IF([test "x$HAVE_GTEST" = "xyes"],
|
||
|
[AS_IF([test "x$2" != "x"],[$2],[:])],
|
||
|
[AS_IF([test "x$3" != "x"],[$3],[:])])
|
||
|
])
|