Back to home page

EIC code displayed by LXR

 
 

    


Warning, /acts/Detray/tests/integration_tests/device/cuda/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # This file is part of the ACTS project.
0002 #
0003 # Copyright (C) 2016 CERN for the benefit of the ACTS project
0004 #
0005 # This Source Code Form is subject to the terms of the Mozilla Public
0006 # License, v. 2.0. If a copy of the MPL was not distributed with this
0007 # file, You can obtain one at https://mozilla.org/MPL/2.0/.
0008 
0009 message(STATUS "Building detray CUDA integration tests")
0010 
0011 # C++17 support for CUDA requires CMake 3.18.
0012 cmake_minimum_required(VERSION 3.18)
0013 
0014 # Enable CUDA as a language.
0015 enable_language(CUDA)
0016 
0017 # Set the CUDA build flags.
0018 include(detray-compiler-options-cuda)
0019 
0020 # make unit tests for multiple algebras
0021 # Currently vc and smatrix is not supported
0022 set(algebras "array")
0023 
0024 if(DETRAY_EIGEN_PLUGIN)
0025     list(APPEND algebras "eigen")
0026 endif()
0027 
0028 foreach(algebra ${algebras})
0029     # Unit tests for the selected algebra.
0030     detray_add_integration_test(cuda_${algebra}
0031        "propagator_cuda_kernel.hpp"
0032        "propagator_cuda.cpp"
0033        "propagator_cuda_kernel.cu"
0034        LINK_LIBRARIES GTest::gtest_main CUDA::cudart vecmem::cuda covfie::cuda
0035                        detray::core detray::algebra_${algebra} detray::test_device
0036                        detray::test_common
0037     )
0038 
0039     target_compile_definitions(
0040         detray_integration_test_cuda_${algebra}
0041         PRIVATE ${algebra}=${algebra}
0042     )
0043 
0044     set_tests_properties(
0045         detray_integration_test_cuda_${algebra}
0046         PROPERTIES
0047             DEPENDS "detray_unit_test_cuda;detray_unit_test_cuda_${algebra}"
0048     )
0049 endforeach()
0050 
0051 # CUDA navigation validation for the telescope detector
0052 detray_add_integration_test(telescope_detector_cuda
0053                            "telescope_navigation_validation.cpp"
0054                             LINK_LIBRARIES GTest::gtest GTest::gtest_main
0055                             vecmem::cuda detray::core_array
0056                             detray::test_cuda detray::test_common
0057 )
0058 
0059 set_tests_properties(
0060     detray_integration_test_telescope_detector_cuda
0061     PROPERTIES
0062         DEPENDS
0063             "detray_integration_test_cuda_array,detray_integration_test_telescope_detector"
0064 )
0065 
0066 # CUDA navigation validation for the toy detector
0067 detray_add_integration_test(toy_detector_cuda
0068                            "toy_detector_navigation_validation.cpp"
0069                             LINK_LIBRARIES GTest::gtest GTest::gtest_main
0070                             vecmem::cuda covfie::cuda detray::core_array
0071                             detray::test_cuda detray::test_common
0072 )
0073 
0074 set_tests_properties(
0075     detray_integration_test_toy_detector_cuda
0076     PROPERTIES
0077         DEPENDS
0078             "detray_integration_test_cuda_array,detray_integration_test_toy_detector"
0079 )
0080 
0081 # CUDA navigation validation for the wire chamber
0082 detray_add_integration_test(wire_chamber_cuda
0083                            "wire_chamber_navigation_validation.cpp"
0084                             LINK_LIBRARIES GTest::gtest GTest::gtest_main
0085                             vecmem::cuda detray::core_array
0086                             detray::test_cuda detray::test_common
0087 )
0088 
0089 set_tests_properties(
0090     detray_integration_test_wire_chamber_cuda
0091     PROPERTIES
0092         DEPENDS
0093             "detray_integration_test_cuda_array,detray_integration_test_wire_chamber"
0094 )