| set(CMAKE_CXX_STANDARD 17) |
| # Forward CMake options as preprocessor definitions |
| if(EIGEN_SYCL_USE_DEFAULT_SELECTOR) |
| add_definitions(-DEIGEN_SYCL_USE_DEFAULT_SELECTOR=${EIGEN_SYCL_USE_DEFAULT_SELECTOR}) |
| endif() |
| if(EIGEN_SYCL_NO_LOCAL_MEM) |
| add_definitions(-DEIGEN_SYCL_NO_LOCAL_MEM=${EIGEN_SYCL_NO_LOCAL_MEM}) |
| endif() |
| if(EIGEN_SYCL_LOCAL_MEM) |
| add_definitions(-DEIGEN_SYCL_LOCAL_MEM=${EIGEN_SYCL_LOCAL_MEM}) |
| endif() |
| if(EIGEN_SYCL_MAX_GLOBAL_RANGE) |
| add_definitions(-DEIGEN_SYCL_MAX_GLOBAL_RANGE=${EIGEN_SYCL_MAX_GLOBAL_RANGE}) |
| endif() |
| if(EIGEN_SYCL_LOCAL_THREAD_DIM0) |
| add_definitions(-DEIGEN_SYCL_LOCAL_THREAD_DIM0=${EIGEN_SYCL_LOCAL_THREAD_DIM0}) |
| endif() |
| if(EIGEN_SYCL_LOCAL_THREAD_DIM1) |
| add_definitions(-DEIGEN_SYCL_LOCAL_THREAD_DIM1=${EIGEN_SYCL_LOCAL_THREAD_DIM1}) |
| endif() |
| if(EIGEN_SYCL_REG_M) |
| add_definitions(-DEIGEN_SYCL_REG_M=${EIGEN_SYCL_REG_M}) |
| endif() |
| if(EIGEN_SYCL_REG_N) |
| add_definitions(-DEIGEN_SYCL_REG_N=${EIGEN_SYCL_REG_N}) |
| endif() |
| if(EIGEN_SYCL_ASYNC_EXECUTION) |
| add_definitions(-DEIGEN_SYCL_ASYNC_EXECUTION=${EIGEN_SYCL_ASYNC_EXECUTION}) |
| endif() |
| if(EIGEN_SYCL_DISABLE_SKINNY) |
| add_definitions(-DEIGEN_SYCL_DISABLE_SKINNY=${EIGEN_SYCL_DISABLE_SKINNY}) |
| endif() |
| if(EIGEN_SYCL_DISABLE_DOUBLE_BUFFER) |
| add_definitions(-DEIGEN_SYCL_DISABLE_DOUBLE_BUFFER=${EIGEN_SYCL_DISABLE_DOUBLE_BUFFER}) |
| endif() |
| if(EIGEN_SYCL_DISABLE_SCALAR) |
| add_definitions(-DEIGEN_SYCL_DISABLE_SCALAR=${EIGEN_SYCL_DISABLE_SCALAR}) |
| endif() |
| if(EIGEN_SYCL_DISABLE_GEMV) |
| add_definitions(-DEIGEN_SYCL_DISABLE_GEMV=${EIGEN_SYCL_DISABLE_GEMV}) |
| endif() |
| if(EIGEN_SYCL_DISABLE_ARM_GPU_CACHE_OPTIMISATION) |
| add_definitions(-DEIGEN_SYCL_DISABLE_ARM_GPU_CACHE_OPTIMISATION=${EIGEN_SYCL_DISABLE_ARM_GPU_CACHE_OPTIMISATION}) |
| endif() |
| |
| if(EIGEN_SYCL_ComputeCpp) |
| if(MSVC) |
| list(APPEND COMPUTECPP_USER_FLAGS -DWIN32) |
| else() |
| list(APPEND COMPUTECPP_USER_FLAGS -Wall) |
| endif() |
| # The following flags are not supported by Clang and can cause warnings |
| # if used with -Werror so they are removed here. |
| if(COMPUTECPP_USE_COMPILER_DRIVER) |
| set(CMAKE_CXX_COMPILER ${ComputeCpp_DEVICE_COMPILER_EXECUTABLE}) |
| string(REPLACE "-Wlogical-op" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) |
| string(REPLACE "-Wno-psabi" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) |
| endif() |
| list(APPEND COMPUTECPP_USER_FLAGS |
| -DEIGEN_NO_ASSERTION_CHECKING=1 |
| -no-serial-memop |
| -Xclang |
| -cl-mad-enable) |
| endif(EIGEN_SYCL_ComputeCpp) |