# The two flags below is to fix Windows problems in relation to multiple defined operators new/delete and some constructors that are defined in our headers
# SET (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /FORCE:MULTIPLE")
# SET (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /FORCE:MULTIPLE")
else(WIN32)
if(UNIX)
# set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /FORCE:MULTIPLE")
# set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /FORCE:MULTIPLE")
MESSAGE("Armadillo is found to use long long for BLAS calls")
else( NOT _armadillo_blas_long_long )
MESSAGE("Armadillo found. Note that ARMADILLO_BLAS_LONG_LONG _must_ be defined in ${ARMADILLO_INCLUDE_DIR}/armadillo_bits/config.hpp to link against the MKL ILP64 interface.")
endif( NOT _armadillo_blas_long_long )
unset(_armadillo_blas_long_long)
endif()
else()
message("Armadillo not found. This will disable many toolboxes and gadgets.")
endif()
find_package(HDF5 1.8 COMPONENTS C CXX HL)
if(HDF5_FOUND)
message("HDF5 Found")
message("Armadillo is found to use long long for BLAS calls")
else()
message("HDF5 not found")
message("Armadillo found. Note that ARMADILLO_BLAS_LONG_LONG _must_ be defined in ${ARMADILLO_INCLUDE_DIR}/armadillo_bits/config.hpp to link against the MKL ILP64 interface.")
endif()
find_package(FFTW3 COMPONENTS single double)
if(FFTW3_FOUND)
message("FFTW3 Found")
else()
message("FFTW3 not found")
unset(_armadillo_blas_long_long)
endif()
find_package(Ismrmrd)
if(ISMRMRD_FOUND)
message("ISMRMRD Found")
else()
message("ISMRMRD not found")
endif()
find_package(HDF5 1.8 COMPONENTS C CXX HL REQUIRED)
find_package(FFTW3 COMPONENTS single double REQUIRED)
find_package(ISMRMRD REQUIRED)
link_directories(${ISMRMRD_LIBRARY_DIRS})
find_package(MKL)
if(MKL_FOUND)
if( MKL_VERSION_STRING VERSION_LESS 11.2.0 )
message(FATAL_ERROR "Gadgetron requires Intel MKL version >= 11.2.0")