1dnl Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
2dnl file Copyright.txt or https://cmake.org/licensing for details.
3
4AC_DEFUN([CMAKE_FIND_BINARY],
5[AC_ARG_VAR([CMAKE_BINARY], [path to the cmake binary])dnl
6
7if test "x$ac_cv_env_CMAKE_BINARY_set" != "xset"; then
8    AC_PATH_TOOL([CMAKE_BINARY], [cmake])dnl
9fi
10])dnl
11
12# $1: package name
13# $2: language (e.g. C/CXX/Fortran)
14# $3: The compiler ID, defaults to GNU.
15#     Possible values are: GNU, Intel, Clang, SunPro, HP, XL, VisualAge, PGI,
16#     PathScale, Cray, SCO, MSVC
17# $4: optional extra arguments to cmake, e.g. "-DCMAKE_SIZEOF_VOID_P=8"
18# $5: optional path to cmake binary
19AC_DEFUN([CMAKE_FIND_PACKAGE], [
20AC_REQUIRE([CMAKE_FIND_BINARY])dnl
21
22AC_ARG_VAR([$1][_][$2][FLAGS], [$2 compiler flags for $1. This overrides the cmake output])dnl
23AC_ARG_VAR([$1][_LIBS], [linker flags for $1. This overrides the cmake output])dnl
24
25failed=false
26AC_MSG_CHECKING([for $1])
27if test -z "${$1[]_$2[]FLAGS}"; then
28    $1[]_$2[]FLAGS=`$CMAKE_BINARY --find-package "-DNAME=$1" "-DCOMPILER_ID=m4_default([$3], [GNU])" "-DLANGUAGE=$2" -DMODE=COMPILE $4` || failed=true
29fi
30if test -z "${$1[]_LIBS}"; then
31    $1[]_LIBS=`$CMAKE_BINARY --find-package "-DNAME=$1" "-DCOMPILER_ID=m4_default([$3], [GNU])" "-DLANGUAGE=$2" -DMODE=LINK $4` || failed=true
32fi
33
34if $failed; then
35    unset $1[]_$2[]FLAGS
36    unset $1[]_LIBS
37
38    AC_MSG_RESULT([no])
39    $6
40else
41    AC_MSG_RESULT([yes])
42    $5
43fi[]dnl
44])
45