3.3.4 : Le CMakeLists.txt principal
Écrivons le fichier CMakeLists.txt :On définit le projet comme d'abitude :
1 2 |
project(HadamardProductCuda) cmake_minimum_required(VERSION 3.0) |
On demande d'avoir Cuda :
1 2 3 4 5 6 7 8 |
find_package(CUDA REQUIRED) message(STATUS "Found headers CUDA : ${CUDA_INCLUDE_DIRS}") message(STATUS "Found lib CUDA : ${CUDA_LIBRARIES}") if(SELECTED_GPU) add_definitions(-DSELECTED_GPU="${SELECTED_GPU}") endif() |
On ajoute les dossiers d'inclusion pour Cuda et nos sources :
1 2 |
include_directories(${CUDA_INCLUDE_DIRS}) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/AstericsHPC) |
On ajoute quelques définissions au passage
1 |
add_definitions(-DVECTOR_ALIGNEMENT=32 -O2) |
Puis les sous dossiers que nous avons déjà créés :
1 2 3 |
add_subdirectory(AstericsHPC) add_subdirectory(src) add_subdirectory(program) |
Le fichier CMakeLists.txt complet.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
project(HadamardProductCuda) cmake_minimum_required(VERSION 3.0) find_package(CUDA REQUIRED) message(STATUS "Found headers CUDA : ${CUDA_INCLUDE_DIRS}") message(STATUS "Found lib CUDA : ${CUDA_LIBRARIES}") if(SELECTED_GPU) add_definitions(-DSELECTED_GPU="${SELECTED_GPU}") endif() include_directories(${CUDA_INCLUDE_DIRS}) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/AstericsHPC) add_definitions(-DVECTOR_ALIGNEMENT=32 -O2) add_subdirectory(AstericsHPC) add_subdirectory(src) add_subdirectory(program) |
Vous pouvez télécharger le fichier ici.