Warning, /eic-opticks/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.18)
0002
0003 list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
0004
0005 if(NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
0006 set(CMAKE_CUDA_ARCHITECTURES 75)
0007 endif()
0008
0009 # Default CMAKE_BUILD_TYPE=Debug for single-config generators (Ninja/Makefiles) when not specified
0010 if(NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
0011 set(CMAKE_BUILD_TYPE Debug CACHE STRING "Build type")
0012 endif()
0013
0014 project(eic-opticks VERSION 0.3.0 LANGUAGES CXX CUDA)
0015
0016 set(CMAKE_CXX_STANDARD 17)
0017 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0018 set(CMAKE_CXX_EXTENSIONS OFF)
0019
0020 set(BUILD_SHARED_LIBS ON)
0021
0022 include(GNUInstallDirs)
0023 include(CTest)
0024
0025 # used by src/config.h.in
0026 set(GPHOX_INSTALL_FULL_DATADIR "${CMAKE_INSTALL_FULL_DATADIR}/${PROJECT_NAME}")
0027
0028 add_subdirectory(sysrap)
0029 add_subdirectory(sysrap/tests)
0030 add_subdirectory(CSG)
0031 add_subdirectory(CSG/tests)
0032 add_subdirectory(qudarap)
0033 add_subdirectory(qudarap/tests)
0034 add_subdirectory(CSGOptiX)
0035 add_subdirectory(CSGOptiX/tests)
0036 add_subdirectory(gdxml)
0037 add_subdirectory(gdxml/tests)
0038 add_subdirectory(u4)
0039 add_subdirectory(u4/tests)
0040 add_subdirectory(g4cx)
0041 add_subdirectory(g4cx/tests)
0042 add_subdirectory(src)
0043
0044 # Export configs
0045 include(CMakePackageConfigHelpers)
0046
0047 # Generate the config file
0048 configure_package_config_file(cmake/Config.cmake.in
0049 ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
0050 INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
0051 )
0052
0053 # Create and install version file
0054 write_basic_package_version_file(
0055 ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
0056 VERSION ${PROJECT_VERSION}
0057 COMPATIBILITY SameMajorVersion
0058 )
0059
0060 install(
0061 FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
0062 ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
0063 ${CMAKE_CURRENT_SOURCE_DIR}/cmake/FindOptiX.cmake
0064 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
0065 )
0066
0067 install(
0068 EXPORT ${PROJECT_NAME}Targets
0069 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
0070 NAMESPACE ${PROJECT_NAME}::
0071 )
0072
0073 install(
0074 DIRECTORY ./config
0075 DESTINATION ${GPHOX_INSTALL_FULL_DATADIR}
0076 )