Warning, /acts/thirdparty/algebra-plugins/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 cmake_minimum_required(VERSION 3.25)
0010
0011 # CMake include(s).
0012 include(FetchContent)
0013
0014 # Tell the user what's happening.
0015 message(STATUS "Building algebra-plugins as part of the Acts project")
0016
0017 FetchContent_Declare(AlgebraPlugins SYSTEM ${ACTS_ALGEBRAPLUGINS_SOURCE})
0018
0019 # Options used in the build of Algebra Plugins.
0020 set(ALGEBRA_PLUGINS_BUILD_TESTING
0021 FALSE
0022 CACHE BOOL
0023 "Turn off the build of the Algebra Plugins unit tests"
0024 )
0025 set(ALGEBRA_PLUGINS_INCLUDE_EIGEN
0026 TRUE
0027 CACHE BOOL
0028 "Turn on the build of algebra::eigen"
0029 )
0030 set(ALGEBRA_PLUGINS_INCLUDE_VC
0031 FALSE
0032 CACHE BOOL
0033 "Turn off the build of algebra::vc_array"
0034 )
0035 set(ALGEBRA_PLUGINS_INCLUDE_VECMEM
0036 TRUE
0037 CACHE BOOL
0038 "Turn on the build of algebra::vecmem_array"
0039 )
0040
0041 # Build smatrix plugin only when it needs to be
0042 # ROOT is not provided in native github compilers :/
0043 set(ALGEBRA_PLUGINS_INCLUDE_SMATRIX
0044 ${DETRAY_SMATRIX_PLUGIN}
0045 CACHE BOOL
0046 "Turn on/off the build of algebra::smatrix"
0047 )
0048
0049 set(ALGEBRA_PLUGINS_SETUP_EIGEN3
0050 OFF
0051 CACHE BOOL
0052 "Do not have Algebra Plugins set up Eigen3 for itself"
0053 )
0054 set(ALGEBRA_PLUGINS_SETUP_VC
0055 OFF
0056 CACHE BOOL
0057 "Do not have Algebra Plugins set up Vc for itself"
0058 )
0059 set(ALGEBRA_PLUGINS_USE_SYSTEM_VC
0060 OFF
0061 CACHE BOOL
0062 "Have Algebra Plugins build Vc itself"
0063 )
0064 set(ALGEBRA_PLUGINS_SETUP_VECMEM
0065 FALSE
0066 CACHE BOOL
0067 "Do not set up VecMem in Algebra Plugins"
0068 )
0069 set(ALGEBRA_PLUGINS_SETUP_GOOGLETEST
0070 FALSE
0071 CACHE BOOL
0072 "Do not set up GoogleTest in Algebra Plugins"
0073 )
0074
0075 set(ALGEBRA_PLUGINS_SETUP_BENCHMARK
0076 FALSE
0077 CACHE BOOL
0078 "Do not setup Algebra Plugins benchmark"
0079 )
0080
0081 # Now set up its build.
0082 FetchContent_MakeAvailable(AlgebraPlugins)