summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
authorshiqian <shiqian@861a406c-534a-0410-8894-cb66d6ee9925>2008-07-03 22:38:12 +0000
committershiqian <shiqian@861a406c-534a-0410-8894-cb66d6ee9925>2008-07-03 22:38:12 +0000
commit4b6829f0d28990dd645e16386eb226d0f10c8731 (patch)
tree4ef57d8e22984324df5ce975b9961d578e270e53 /m4
parent06db5d43ac33e00b5a08978beb18d13e1c26acaf (diff)
downloadgtest-4b6829f0d28990dd645e16386eb226d0f10c8731.tar.gz
gtest-4b6829f0d28990dd645e16386eb226d0f10c8731.tar.bz2
gtest-4b6829f0d28990dd645e16386eb226d0f10c8731.tar.xz
Initial import.
git-svn-id: http://googletest.googlecode.com/svn/trunk@40 861a406c-534a-0410-8894-cb66d6ee9925
Diffstat (limited to 'm4')
-rw-r--r--m4/gtest.m461
1 files changed, 61 insertions, 0 deletions
diff --git a/m4/gtest.m4 b/m4/gtest.m4
new file mode 100644
index 0000000..ebb488a
--- /dev/null
+++ b/m4/gtest.m4
@@ -0,0 +1,61 @@
+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],[:])])
+])