check_include_files(regex.h HAVE_REGEX_H)
check_include_files(sys/types.h HAVE_SYS_TYPES_H)
check_include_files(sys/time.h HAVE_SYS_TIME_H)
-# SSE support
-check_include_files(xmmintrin.h HAVE_XMMINTRIN_H)
-check_include_files(emmintrin.h HAVE_EMMINTRIN_H)
-check_include_files(pmmintrin.h HAVE_PMMINTRIN_H)
-check_include_files(smmintrin.h HAVE_SMMINTRIN_H)
check_include_files(io.h HAVE_IO_H)
include(gmxTestInline)
gmx_test_inline(INLINE_KEYWORD)
-include(gmxTestRestrict)
-gmx_test_inline(RESTRICT_KEYWORD)
-
include(gmxTestPipes)
gmx_test_pipes(HAVE_PIPES)
endif()
endif()
-# if(HAVE_PMMINTRIN_H)
-# set(GMX_SSE3 1)
-# endif(HAVE_PMMINTRIN_H)
-# if(HAVE_SMMINTRIN_H)
-# set(GMX_SSE4_1 1)
-# endif(HAVE_SMMINTRIN_H)
-
elseif(${GMX_ACCELERATION} STREQUAL "FORTRAN")
set(GMX_FORTRAN 1)
#these are switch on by default sometimes
if(isupper)
set(F77_FUNCDEF "${prefix} NAME ${suffix}")
- set(F77_FUNCDEF_ "${prefix} NAME ${extrasuffix}")
+ # The underscored versions are not currently used.
+ #set(F77_FUNCDEF_ "${prefix} NAME ${extrasuffix}")
else(isupper)
set(F77_FUNCDEF "${prefix} name ${suffix}")
- set(F77_FUNCDEF_ "${prefix} name ${extrasuffix}")
+ #set(F77_FUNCDEF_ "${prefix} name ${extrasuffix}")
endif(isupper)
else(GMX_FORTRAN OR GMX_POWER6)
set(F77_FUNCDEF "name ## _")
- set(F77_FUNCDEF_ "name ## _")
+ #set(F77_FUNCDEF_ "name ## _")
endif(GMX_FORTRAN OR GMX_POWER6)
# Process QM/MM Settings
+++ /dev/null
-int foo(int * TESTRESTRICTDEF i, int * TESTRESTRICTDEF j){return *i+*j;}
-int main(int argc, char *argv[]){ int i=0; int j=0; return foo(&i,&j); }
include(CheckCSourceCompiles)
-# Windows NUMA allocator
-if (THREAD_WINDOWS)
- check_c_source_compiles(
- "#include <windows.h>
- int main(void) { PROCESSOR_NUMBER a; return 0; }"
- HAVE_PROCESSOR_NUMBER)
- if(HAVE_PROCESSOR_NUMBER)
- #add_definitions(-DTMPI_WINDOWS_NUMA_API)
- set(TMPI_WINDOWS_NUMA_API 1)
- endif(HAVE_PROCESSOR_NUMBER)
-endif(THREAD_WINDOWS)
-
# option to set affinity
option(THREAD_MPI_SET_AFFINITY "Set thread affinity to a core if number of threads equal to number of hardware threads." ON)
mark_as_advanced(THREAD_MPI_SET_AFFINITY)
+++ /dev/null
-# - Define macro to check restrict keyword
-#
-# GMX_TEST_RESTRICT(VARIABLE)
-#
-# VARIABLE will be set to the keyword
-#
-# Remember to have a cmakedefine for it too...
-
-MACRO(GMX_TEST_RESTRICT VARIABLE)
- IF(NOT DEFINED TEST_${VARIABLE})
-
- MESSAGE(STATUS "Checking for restrict keyword")
-
-# Start with __restrict__, since that is the C++ default keyword.
- FOREACH(KEYWORD "__restrict__" "__restrict" "restrict")
- IF(NOT TEST_${VARIABLE})
- TRY_COMPILE(TEST_${VARIABLE} "${CMAKE_BINARY_DIR}"
- "${CMAKE_SOURCE_DIR}/cmake/TestRestrict.c"
- COMPILE_DEFINITIONS "-DTESTRESTRICTDEF=${KEYWORD}" )
- SET(CHK_RESTRICT_KEYWORD ${KEYWORD})
- ENDIF(NOT TEST_${VARIABLE})
- ENDFOREACH(KEYWORD)
-
- IF(TEST_${VARIABLE})
- SET(${VARIABLE} ${KEYWORD})
- MESSAGE(STATUS "Checking for restrict keyword - ${CHK_RESTRICT_KEYWORD}")
- ELSE(TEST_${VARIABLE})
- SET(${VARIABLE} " ")
- MESSAGE(STATUS "Checking for restrict keyword - not found")
- ENDIF(TEST_${VARIABLE})
-
- ENDIF(NOT DEFINED TEST_${VARIABLE})
-ENDMACRO(GMX_TEST_RESTRICT VARIABLE)
-
-
-
-
case), which must not contain underscores, for linking with Fortran. */
#define F77_FUNC(name,NAME) @F77_FUNCDEF@
-/* As F77_FUNC, but for C identifiers containing underscores. */
-#define F77_FUNC_(name,NAME) @F77_FUNCDEF_@
-
/* IEEE754 floating-point format. Memory layout is defined by macros
* GMX_IEEE754_BIG_ENDIAN_BYTE_ORDER and GMX_IEEE754_BIG_ENDIAN_WORD_ORDER.
*/
/* Define for Linux pthread_setaffinity */
#cmakedefine HAVE_PTHREAD_SETAFFINITY
-/* Define for Windows NUMA-aware allocator functions*/
-#cmakedefine TMPI_WINDOWS_NUMA_API
-
/* Define for sysconf() */
#cmakedefine HAVE_SYSCONF
/* Define to 1 if _fseeki64 (and presumably _fseeki64) exists and is declared. */
#cmakedefine HAVE__FSEEKI64
-/* Define to 1 if you have the m library (-lm). */
-#cmakedefine HAVE_LIBM
-
/* Define to 1 if you have the gsl library (-lgsl). */
#cmakedefine HAVE_LIBGSL
/* Define to 1 if you have the <sys/time.h> header file. */
#cmakedefine HAVE_SYS_TIME_H
-/* Define to 1 if yo have the <xmmintrin.h> header file. */
-#cmakedefine HAVE_XMMINTRIN_H
-
-/* Define to 1 if yo have the <emmintrin.h> header file. */
-#cmakedefine HAVE_EMMINTRIN_H
-
-/* Define to 1 if yo have the <pmmintrin.h> header file. */
-#cmakedefine HAVE_PMMINTRIN_H
-
-/* Define to 1 if yo have the <smmintrin.h> header file. */
-#cmakedefine HAVE_SMMINTRIN_H
-
/* Define for sched.h (this is for thread_mpi)*/
#define HAVE_SCHED_H
/* Some systems requires this to be set to 64 for large file support */
#cmakedefine _FILE_OFFSET_BITS @_FILE_OFFSET_BITS@
-/* Gromacs shortcut define for fseeko & ftello being present with 64-bit support */
-#cmakedefine GMX_LARGEFILES
-
/* Define to int if <sys/types.h> does not define. */
#cmakedefine gid_t int
#define inline ${INLINE_KEYWORD}
#endif
-/* Define to __restrict__ or __restrict if that is what the C compiler
- calls it, or to nothing if restrict is not supported under any name. */
-#define restrict ${RESTRICT_KEYWORD}
-
/* Define to long int if <sys/types.h> does not define. */
#cmakedefine off_t int
-
-/* Define to unsigned int if <sys/types.h> does not define. */
-#cmakedefine size_t int
/* Define to int if <sys/types.h> does not define. */
#cmakedefine uid_t int