Back to home page

EIC code displayed by LXR

 
 

    


Warning, /combined_benchmarks/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 cmake_minimum_required(VERSION 3.16)
0002 
0003 project(combined_benchmarks VERSION 0.0.0)
0004 
0005 # Make C++17 a default
0006 if(NOT "${CMAKE_CXX_STANDARD}")
0007     set(CMAKE_CXX_STANDARD 17)
0008 endif()
0009 
0010 # Enable -fPIC for all targets
0011 set(CMAKE_POSITION_INDEPENDENT_CODE ON)
0012 
0013 # Install to the top directory by default
0014 if( ${CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT} )
0015     set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR} CACHE PATH "Install in top directory by default" FORCE)
0016 endif()
0017 
0018 # Add CMake additional functionality:
0019 include(cmake/print_functions.cmake)                        # Helpers to print fancy headers, file names, etc
0020 include(cmake/print_subdirectory_tree.cmake)                # Prints processed subdirectories
0021 list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)   # Find Find<Modules>.cmake
0022 
0023 
0024 # ------------------------------------------------------------------
0025 print_grand_header("    B U I L D   E I C R E C O N   P A R T S    ")
0026 # ------------------------------------------------------------------
0027 
0028 
0029 
0030 # Print what we had built
0031 print_header("CMake processed subdirectories:")
0032 print_subdirectory_tree()
0033 message(STATUS "\n-------------------------------")
0034 
0035 add_executable(track_fitting_rec_single_tracks
0036         executables/track_fitting_rec_single_tracks.cc
0037         reconstruction_benchmarks/benchmarks/track_fitting/scripts/rec_single_tracks.cxx
0038         )
0039 
0040 # include logging by default
0041 find_package(spdlog REQUIRED)
0042 find_package(fmt REQUIRED)
0043 find_package(EDM4HEP REQUIRED)
0044 find_package(EDM4EIC REQUIRED)
0045 find_package(podio REQUIRED)
0046 find_package(DD4hep REQUIRED)
0047 set(fmt_INCLUDE_DIR ${fmt_DIR}/../../../include)
0048 
0049 # include ROOT by default
0050 find_package(ROOT REQUIRED)
0051 
0052 # Define plugin
0053 target_include_directories(track_fitting_rec_single_tracks
0054         SYSTEM PUBLIC
0055             ${podio_INCLUDE_DIR}
0056             ${EDM4HEP_INCLUDE_DIR}
0057             ${EDM4EIC_INCLUDE_DIR}
0058             ${ROOT_INCLUDE_DIRS}
0059             ${fmt_INCLUDE_DIR}
0060         PUBLIC
0061             ${CMAKE_SOURCE_DIR}/executables
0062             ${CMAKE_SOURCE_DIR}/common_bench/include
0063         )
0064 
0065 message(STATUS "{ROOT_LIBRARIES} ${ROOT_LIBRARIES}")
0066 
0067 #set_target_properties(track_fitting_rec_single_tracks PROPERTIES PREFIX "" OUTPUT_NAME "${_name}" SUFFIX ".so")
0068 target_link_libraries(track_fitting_rec_single_tracks spdlog::spdlog EDM4HEP::edm4hep DD4hep::DDCore EDM4EIC::edm4eic ROOT::Core ${ROOT_LIBRARIES})
0069 
0070 # Install plugin
0071 install(TARGETS track_fitting_rec_single_tracks)
0072 
0073 # Install all cmake helpers
0074 #include(CMakePackageConfigHelpers)
0075 #configure_package_config_file(cmake/EICreconConfig.cmake.in cmake/EICreconConfig.cmake INSTALL_DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/cmake/EICrecon)
0076 #install(FILES ${CMAKE_BINARY_DIR}/cmake/EICreconConfig.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/cmake/EICrecon)  # why is this needed?
0077 #file(GLOB EICRECON_CMAKE_FILES cmake/*.cmake)
0078 #install(FILES ${EICRECON_CMAKE_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/cmake/EICrecon)
0079