gmx_test_inline_asm_gcc_x86(GMX_X86_GCC_INLINE_ASM)
if(GMX_X86_GCC_INLINE_ASM)
- set(GCC_INLINE_ASM_DEFINE "-DGMX_X86_GCC_INLINE_ASM")
+ set(GCC_INLINE_ASM_DEFINE "-DGMX_X86_GCC_INLINE_ASM=1")
else()
- set(GCC_INLINE_ASM_DEFINE "")
+ set(GCC_INLINE_ASM_DEFINE "-DGMX_X86_GCC_INLINE_ASM=0")
endif()
message(STATUS "Detecting best SIMD instructions for this CPU")
# Get CPU SIMD properties information
- set(_compile_definitions "${GCC_INLINE_ASM_DEFINE} -I${CMAKE_SOURCE_DIR}/src -DGMX_CPUID_STANDALONE")
+ set(_compile_definitions "${GCC_INLINE_ASM_DEFINE} -I${CMAKE_SOURCE_DIR}/src -DGMX_CPUINFO_STANDALONE ${GMX_STDLIB_CXX_FLAGS}")
if(GMX_TARGET_X86)
set(_compile_definitions "${_compile_definitions} -DGMX_TARGET_X86")
endif()
# TODO Extract this try_compile to a helper function, because
# it duplicates code in gmxDetectSimd.cmake
set(GMX_DETECTSIMD_BINARY "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/GmxDetectSimd${CMAKE_EXECUTABLE_SUFFIX}")
+ set(LINK_LIBRARIES "${GMX_STDLIB_LIBRARIES}")
try_compile(GMX_DETECTSIMD_COMPILED
"${CMAKE_CURRENT_BINARY_DIR}"
- "${CMAKE_CURRENT_SOURCE_DIR}/src/gromacs/gmxlib/gmx_cpuid.c"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src/gromacs/hardware/cpuinfo.cpp"
COMPILE_DEFINITIONS "${_compile_definitions}"
+ CMAKE_FLAGS "-DLINK_LIBRARIES=${LINK_LIBRARIES}"
OUTPUT_VARIABLE GMX_DETECTSIMD_COMPILED_OUTPUT
COPY_FILE ${GMX_DETECTSIMD_BINARY})
unset(_compile_definitions)