#
# This file is part of the GROMACS molecular simulation package.
#
-# Copyright (c) 2012, by the GROMACS development team, led by
-# David van der Spoel, Berk Hess, Erik Lindahl, and including many
-# others, as listed in the AUTHORS file in the top-level source
-# directory and at http://www.gromacs.org.
+# Copyright (c) 2009,2013, by the GROMACS development team, led by
+# Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
+# and including many others, as listed in the AUTHORS file in the
+# top-level source directory and at http://www.gromacs.org.
#
# GROMACS is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public License
#
# To help us fund GROMACS development, we humbly ask that you cite
# the research papers on the package. Check out http://www.gromacs.org.
-#
-# - Define macro to check we are compiling for CRAY XT catamount
+
+# - Define function to check we are compiling for CRAY XT catamount
#
# GMX_TEST_CATAMOUNT(VARIABLE)
#
# VARIABLE will be set to true if we are compiling for catamount
#
-MACRO(GMX_TEST_CATAMOUNT VARIABLE)
- IF(NOT DEFINED ${VARIABLE})
-
- MESSAGE(STATUS "Checking for CRAY XT Catamount compile")
-
- # First check without any special flags
- TRY_COMPILE(CATAMOUNT_COMPILE_OK "${CMAKE_BINARY_DIR}"
- "${CMAKE_SOURCE_DIR}/cmake/TestCatamount.c")
-
- if(CATAMOUNT_COMPILE_OK)
- MESSAGE(STATUS "Checking for CRAY XT Catamount target - yes")
- else(CATAMOUNT_COMPILE_OK)
- MESSAGE(STATUS "Checking for CRAY XT Catamount target - no")
- endif(CATAMOUNT_COMPILE_OK)
-
- set(${VARIABLE} ${CATAMOUNT_COMPILE_OK} CACHE INTERNAL
- "Result of test for CRAY XT Catamount target" FORCE)
-
- ENDIF(NOT DEFINED ${VARIABLE})
-ENDMACRO(GMX_TEST_CATAMOUNT VARIABLE)
-
-
-
+function(GMX_TEST_CATAMOUNT VARIABLE)
+ include(CheckCSourceCompiles)
+ check_c_source_compiles(
+ "int
+main()
+{
+#if defined __QK_USER__
+ return 0;
+#else
+# error not catamount
+#endif
+}" CATAMOUNT_COMPILE_OK)
+ set(${VARIABLE} ${CATAMOUNT_COMPILE_OK} PARENT_SCOPE)
+endfunction()