From 01ce56d7ee611fd4e6422609f6770b9a6c6a164e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Oberhuber?= <oberhuber.tomas@gmail.com> Date: Tue, 4 May 2021 17:22:42 +0200 Subject: [PATCH] Refactoring CMakeLists for smart pointers examples. --- .../Examples/Pointers/CMakeLists.txt | 35 ++++++++++++------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/Documentation/Examples/Pointers/CMakeLists.txt b/Documentation/Examples/Pointers/CMakeLists.txt index ef7a5f6150..2b08ac3299 100644 --- a/Documentation/Examples/Pointers/CMakeLists.txt +++ b/Documentation/Examples/Pointers/CMakeLists.txt @@ -1,15 +1,26 @@ -IF( BUILD_CUDA ) - CUDA_ADD_EXECUTABLE(UniquePointerExampleCuda UniquePointerExample.cu) - ADD_CUSTOM_COMMAND( COMMAND UniquePointerExampleCuda > ${TNL_DOCUMENTATION_OUTPUT_SNIPPETS_PATH}/UniquePointerExample.out OUTPUT UniquePointerExample.out ) - CUDA_ADD_EXECUTABLE(SharedPointerExampleCuda SharedPointerExample.cu) - ADD_CUSTOM_COMMAND( COMMAND SharedPointerExampleCuda > ${TNL_DOCUMENTATION_OUTPUT_SNIPPETS_PATH}/SharedPointerExample.out OUTPUT SharedPointerExample.out ) - CUDA_ADD_EXECUTABLE(DevicePointerExampleCuda DevicePointerExample.cu) - ADD_CUSTOM_COMMAND( COMMAND DevicePointerExampleCuda > ${TNL_DOCUMENTATION_OUTPUT_SNIPPETS_PATH}/DevicePointerExample.out OUTPUT DevicePointerExample.out ) +set( COMMON_EXAMPLES + UniquePointerExample + SharedPointerExample + DevicePointerExample +) -ADD_CUSTOM_TARGET( RunPointersExamples ALL DEPENDS - UniquePointerExample.out - SharedPointerExample.out - DevicePointerExample.out - ) +if( BUILD_CUDA ) + foreach( target IN ITEMS ${COMMON_EXAMPLES} ) + cuda_add_executable( ${target}-cuda ${target}.cu OPTIONS ) + add_custom_command( COMMAND ${target}-cuda > ${TNL_DOCUMENTATION_OUTPUT_SNIPPETS_PATH}/${target}.out OUTPUT ${target}.out ) + set( CUDA_OUTPUTS ${CUDA_OUTPUTS} ${target}.out ) + endforeach() +else() + foreach( target IN ITEMS ${COMMON_EXAMPLES} ) + add_executable( ${target} ${target}.cpp ) + add_custom_command( COMMAND ${target} > ${TNL_DOCUMENTATION_OUTPUT_SNIPPETS_PATH}/${target}.out OUTPUT ${target}.out ) + set( HOST_OUTPUTS ${HOST_OUTPUTS} ${target}.out ) + endforeach() +endif() +IF( BUILD_CUDA ) + ADD_CUSTOM_TARGET( RunPointersExamples-cuda ALL DEPENDS ${CUDA_OUTPUTS} ) +ELSE() + ADD_CUSTOM_TARGET( RunPointersExamples ALL DEPENDS ${HOST_OUTPUTS} ) ENDIF() + -- GitLab