Warning, /acts/Core/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 configure_file(
0002 ActsVersion.hpp.in
0003 ${CMAKE_CURRENT_BINARY_DIR}/Acts/ActsVersion.hpp)
0004
0005 # source files will be added later
0006 add_library(
0007 ActsCore SHARED "")
0008
0009 target_sources(
0010 ActsCore
0011 PRIVATE
0012 src/ActsVersion.cpp)
0013
0014 target_compile_features(
0015 ActsCore
0016 PUBLIC ${ACTS_CXX_STANDARD_FEATURE})
0017
0018 target_include_directories(
0019 ActsCore
0020 PUBLIC
0021 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
0022 # for the generated version header
0023 $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
0024 $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
0025 target_link_libraries(
0026 ActsCore
0027 PUBLIC Boost::boost Eigen3::Eigen)
0028
0029
0030 if(ACTS_PARAMETER_DEFINITIONS_HEADER)
0031 target_compile_definitions(
0032 ActsCore
0033 PUBLIC -DACTS_PARAMETER_DEFINITIONS_HEADER="${ACTS_PARAMETER_DEFINITIONS_HEADER}")
0034 endif()
0035
0036 if(ACTS_SOURCELINK_SBO_SIZE)
0037 target_compile_definitions(
0038 ActsCore
0039 PUBLIC -DACTS_SOURCELINK_SBO_SIZE=${ACTS_SOURCELINK_SBO_SIZE})
0040 endif()
0041
0042 if(ACTS_CUSTOM_SCALARTYPE)
0043 target_compile_definitions(
0044 ActsCore
0045 PUBLIC -DACTS_CUSTOM_SCALARTYPE=${ACTS_CUSTOM_SCALARTYPE})
0046 endif()
0047
0048 if(ACTS_LOG_FAILURE_THRESHOLD)
0049 message(STATUS "Enable log failure threshold, set to ${ACTS_LOG_FAILURE_THRESHOLD}")
0050 target_compile_definitions(
0051 ActsCore
0052 PUBLIC
0053 -DACTS_LOG_FAILURE_THRESHOLD=${ACTS_LOG_FAILURE_THRESHOLD}
0054 -DACTS_ENABLE_LOG_FAILURE_THRESHOLD)
0055
0056 else()
0057
0058 if(ACTS_ENABLE_LOG_FAILURE_THRESHOLD)
0059 message(STATUS "Enable log failure threshold")
0060 target_compile_definitions(
0061 ActsCore
0062 PUBLIC
0063 -DACTS_ENABLE_LOG_FAILURE_THRESHOLD)
0064 endif()
0065
0066 endif()
0067
0068 if(ACTS_ENABLE_CPU_PROFILING)
0069 message(STATUS "added lprofiler")
0070
0071 if(NOT ACTS_GPERF_INSTALL_DIR STREQUAL "")
0072 find_library(PROFILER_LIBRARY profiler HINTS ${ACTS_GPERF_INSTALL_DIR})
0073
0074 target_link_libraries(
0075 ActsCore
0076 PUBLIC ${PROFILER_LIBRARY})
0077 else()
0078 target_link_libraries(
0079 ActsCore
0080 PUBLIC -lprofiler)
0081 endif()
0082
0083 target_link_options(
0084 ActsCore
0085 PUBLIC "LINKER:-no-as-needed")
0086 endif()
0087
0088 if(ACTS_ENABLE_MEMORY_PROFILING)
0089 message(STATUS "added ltcmalloc")
0090
0091 if(NOT ACTS_GPERF_INSTALL_DIR STREQUAL "")
0092 find_library(TCMALLOC_LIBRARY tcmalloc HINTS ${ACTS_GPERF_INSTALL_DIR})
0093
0094 target_link_libraries(
0095 ActsCore
0096 PUBLIC ${TCMALLOC_LIBRARY})
0097 else()
0098 target_link_libraries(
0099 ActsCore
0100 PUBLIC -ltcmalloc)
0101 endif()
0102 endif()
0103
0104 install(
0105 TARGETS ActsCore
0106 EXPORT ActsCoreTargets
0107 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
0108 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
0109 install(
0110 DIRECTORY include/Acts
0111 DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
0112 install(
0113 FILES ${CMAKE_CURRENT_BINARY_DIR}/Acts/ActsVersion.hpp
0114 DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/Acts)
0115
0116 # target source files are added separately
0117 add_subdirectory(src/EventData)
0118 add_subdirectory(src/Digitization)
0119 add_subdirectory(src/Definitions)
0120 add_subdirectory(src/Detector)
0121 add_subdirectory(src/Geometry)
0122 add_subdirectory(src/MagneticField)
0123 add_subdirectory(src/Material)
0124 add_subdirectory(src/Propagator)
0125 add_subdirectory(src/Surfaces)
0126 add_subdirectory(src/TrackFinding)
0127 add_subdirectory(src/TrackFitting)
0128 add_subdirectory(src/Utilities)
0129 add_subdirectory(src/Vertexing)
0130 add_subdirectory(src/Visualization)
0131 add_subdirectory(src/AmbiguityResolution)