cmake try_run examples

Signatures

try_run(<runResultVar> <compileResultVar>
  [SOURCES_TYPE <type>]
  <SOURCES <srcfile...>                 |
  SOURCE_FROM_CONTENT <name> <content> |
  SOURCE_FROM_VAR <name> <var>         |
  SOURCE_FROM_FILE <name> <path>       >...
  [LOG_DESCRIPTION <text>]
  [NO_CACHE]
  [NO_LOG]
  [CMAKE_FLAGS <flags>...]
  [COMPILE_DEFINITIONS <defs>...]
  [LINK_OPTIONS <options>...]
  [LINK_LIBRARIES <libs>...]
  [COMPILE_OUTPUT_VARIABLE <var>]
  [COPY_FILE <fileName> [COPY_FILE_ERROR <var>]]
  [<LANG>_STANDARD <std>]
  [<LANG>_STANDARD_REQUIRED <bool>]
  [<LANG>_EXTENSIONS <bool>]
  [RUN_OUTPUT_VARIABLE <var>]
  [RUN_OUTPUT_STDOUT_VARIABLE <var>]
  [RUN_OUTPUT_STDERR_VARIABLE <var>]
  [WORKING_DIRECTORY <var>]
  [ARGS <args>...]
)

Examples

IFL-CAMP/supra cmake/FindCUDA_old/select_compute_arch.cmake :71

try_run(run_result compile_result ${PROJECT_BINARY_DIR} ${file}
            CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${CUDA_INCLUDE_DIRS}"
            LINK_LIBRARIES ${CUDA_LIBRARIES}
            RUN_OUTPUT_VARIABLE compute_capabilities)

OpenMW/openmw cmake/CheckLuaCustomAllocator.cmake :25

try_run(RUN_RESULT_VAR COMPILE_RESULT_VAR
    ${TMP_ROOT}/temp
    ${TMP_ROOT}/checkluacustomallocator.c
    CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${LUA_INCLUDE_DIR}"
    LINK_LIBRARIES "${LUA_LIBRARIES}"
    )

root-project/root interpreter/llvm-project/llvm/cmake/modules/FindZ3.cmake :30

try_run(
    Z3_RETURNCODE
    Z3_COMPILED
    ${CMAKE_BINARY_DIR}
    ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testz3.cpp
    COMPILE_DEFINITIONS -I"${z3_include}"
    LINK_LIBRARIES ${z3_link_libs}
    COMPILE_OUTPUT_VARIABLE COMPILE_OUTPUT
    RUN_OUTPUT_VARIABLE SRC_OUTPUT
  )

google/filament third_party/benchmark/cmake/CXXFeatureCheck.cmake :46

try_run(RUN_${FEATURE} COMPILE_${FEATURE}
              ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
              CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
              LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})

seladb/PcapPlusPlus cmake/modules/FindPCAP.cmake :111

try_run(
    RUN_RESULT_VAR
    COMPILE_RESULT_VAR
    "${CMAKE_BINARY_DIR}"
    "${detect_pcap_version_file}"
    CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${PCAP_INCLUDE_DIR}"
    LINK_LIBRARIES ${PCAP_LIBRARY}
    RUN_OUTPUT_VARIABLE PCAP_VERSION_OUTPUT
  )

lifting-bits/mcsema cmake/modules/FindZ3.cmake :14

try_run(
    Z3_RETURNCODE
    Z3_COMPILED
    ${CMAKE_BINARY_DIR}
    ${CMAKE_SOURCE_DIR}/cmake/modules/testz3.cpp
    COMPILE_DEFINITIONS -I"${z3_include}"
    LINK_LIBRARIES -L${z3_lib_path} ${z3_link_libs}
    RUN_OUTPUT_VARIABLE SRC_OUTPUT
  )

InsightSoftwareConsortium/ITK Modules/ThirdParty/HDF5/src/itkhdf5/config/cmake/HDF5UseFortran.cmake :46

TRY_RUN (RUN_RESULT_VAR COMPILE_RESULT_VAR
        ${CMAKE_BINARY_DIR}
        ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testFortranCompiler1.f90
        CMAKE_FLAGS "${TMP_CMAKE_Fortran_FLAGS}"
        LINK_LIBRARIES "${HDF5_REQUIRED_LIBRARIES}"
        ${_RUN_OUTPUT_VARIABLE} OUTPUT_VAR
    )

Governikus/AusweisApp cmake/Libraries.cmake :165

try_run(testResult compileResult "${CMAKE_BINARY_DIR}" "${CMAKE_DIR}/tests/openssl.cpp"
		CMAKE_FLAGS INSTALL_RPATH_USE_LINK_PATH:BOOL=ON
		LINK_LIBRARIES ${Qt}::Network OpenSSL::Crypto OpenSSL::SSL
		OUTPUT_VARIABLE runResult)

XiaoBaiiiiii/colmap-pcd cmake/SelectCudaComputeArch.cmake :175

try_run(run_result compile_result ${PROJECT_BINARY_DIR} ${file}
              CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${CUDA_INCLUDE_DIRS}"
              LINK_LIBRARIES ${CUDA_LIBRARIES}
              RUN_OUTPUT_VARIABLE compute_capabilities)

ornladios/ADIOS2 cmake/CheckTypeRepresentation.cmake :170

try_run(RAN_${var} HAVE_${var} ${CMAKE_BINARY_DIR} ${src}
        COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}
        LINK_OPTIONS ${CMAKE_REQUIRED_LINK_OPTIONS}
        LINK_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}
        CMAKE_FLAGS
          "-DCOMPILE_DEFINITIONS:STRING=${CMAKE_REQUIRED_FLAGS}"
          "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}"
        COMPILE_OUTPUT_VARIABLE compile_output
        RUN_OUTPUT_VARIABLE run_output
        )

plstcharles/litiv 3rdparty/googlebench/changes-v1.1.0/cmake/CXXFeatureCheck.cmake :28

try_run(RUN_${FEATURE} COMPILE_${FEATURE}
          ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
          CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
          LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})

QMCPACK/qmcpack external_codes/mpi_wrapper/mpi3/include/mpi3/nccl/test/CMakeLists.txt :93

try_run(NCCL_VERSION_MATCHED compile_result ${PROJECT_BINARY_DIR} ${file}
          RUN_OUTPUT_VARIABLE NCCL_VERSION_FROM_HEADER
          CMAKE_FLAGS  "-DINCLUDE_DIRECTORIES=${NCCL_INCLUDE_DIRS}"
          LINK_LIBRARIES ${NCCL_LIBRARIES})

LMMS/lmms cmake/modules/ImportedTargetHelpers.cmake :43

try_run(
		_dvfs_run_result _dvfs_compile_result "${CMAKE_CURRENT_BINARY_DIR}"
		SOURCES "${_source_file}"
		LINK_LIBRARIES "${_target}"
		CXX_STANDARD 20
		RUN_OUTPUT_VARIABLE _run_output
		COMPILE_OUTPUT_VARIABLE _compile_output
	)

stotko/stdgpu cmake/cuda/check_compute_capability.cmake :9

try_run(STDGPU_RUN_RESULT_VAR STDGPU_COMPILE_RESULT_VAR
        ${CMAKE_BINARY_DIR}
        ${STDGPU_CUDA_COMPUTE_CAPABILITIES_SOURCE}
        LINK_LIBRARIES CUDA::cudart
        COMPILE_OUTPUT_VARIABLE STDGPU_COMPILE_OUTPUT_VAR
        RUN_OUTPUT_VARIABLE STDGPU_RUN_OUTPUT_VAR)

INET-RC/GeoMX 3rdparty/onnx-tensorrt/third_party/onnx/third_party/benchmark/cmake/CXXFeatureCheck.cmake :46

try_run(RUN_${FEATURE} COMPILE_${FEATURE}
              ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
              CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
              LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})

Bitcoin-ABC/bitcoin-abc cmake/modules/FindEvent.cmake :65

try_run(_Event_CheckVersion_RESULT _Event_CheckVersion_BUILD
				"${CMAKE_BINARY_DIR}"
				"${CMAKE_SOURCE_DIR}/cmake/utils/EventCheckVersion.cpp"
				CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${Event_INCLUDE_DIRS}"
				LINK_LIBRARIES "${Event_event_LIBRARY}"
				RUN_OUTPUT_VARIABLE _Event_VERSION
			)

tesseract-ocr/tesseract cmake/CheckFunctions.cmake :34

try_run(
      LEPT_TIFF_RESULT
      LEPT_TIFF_COMPILE_SUCCESS
      SOURCE_FROM_CONTENT tiff_test.cpp "${TIFF_TEST}"
      CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${Leptonica_INCLUDE_DIRS}"
      LINK_LIBRARIES ${Leptonica_LIBRARIES}
      COMPILE_OUTPUT_VARIABLE
      COMPILE_OUTPUT)

Tencent/Forward source/third_party/hdf5/config/cmake/HDF5UseFortran.cmake :49

TRY_RUN (RUN_RESULT_VAR COMPILE_RESULT_VAR
        ${CMAKE_BINARY_DIR}
        ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testFortranCompiler1.f90
        LINK_LIBRARIES "${HDF5_REQUIRED_LIBRARIES}"
    )

eclipse-xacc/xacc cmake/Modules/FindZ3.cmake :39

try_run(
    VERSION_TEST_EXITCODE
    VERSION_TEST_COMPILED
    ${CMAKE_BINARY_DIR}
    ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/z3.cpp
    COMPILE_DEFINITIONS
      -I"${Z3_INCLUDE_DIR}"
      LINK_LIBRARIES ${Z3_LIBRARY} ${GMP_LIBRARY}
    CMAKE_FLAGS
      -DCMAKE_SKIP_RPATH:BOOL=${CMAKE_SKIP_RPATH}
    RUN_OUTPUT_VARIABLE
      VERSION_TEST_RUN_OUTPUT
  )

arrayfire/arrayfire CMakeModules/select_compute_arch.cmake :160

try_run(run_result compile_result ${PROJECT_BINARY_DIR} ${file}
              CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${CUDA_INCLUDE_DIRS}"
              LINK_LIBRARIES ${CUDA_LIBRARIES}
              RUN_OUTPUT_VARIABLE compute_capabilities)

cb-geo/mpm cmake/FindMPI.cmake :1175

try_run(MPI_RUN_RESULT_${LANG}_${MPI_TEST_FILE_NAME}_${MODE} MPI_RESULT_${LANG}_${MPI_TEST_FILE_NAME}_${MODE}
     "${CMAKE_BINARY_DIR}" SOURCES "${MPI_TEST_SOURCE_FILE}"
      COMPILE_DEFINITIONS ${MPI_TEST_COMPILE_DEFINITIONS}
      LINK_LIBRARIES MPI::MPI_${LANG}
      RUN_OUTPUT_VARIABLE MPI_RUN_OUTPUT_${LANG}_${MPI_TEST_FILE_NAME}_${MODE})

NVIDIA/MDL-SDK src/mdl/jit/llvm/dist/cmake/modules/FindZ3.cmake :19

try_run(
    Z3_RETURNCODE
    Z3_COMPILED
    ${CMAKE_BINARY_DIR}
    ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testz3.c
    COMPILE_DEFINITIONS -I"${z3_include}"
    LINK_LIBRARIES -L${z3_lib_path} -lz3
    RUN_OUTPUT_VARIABLE SRC_OUTPUT
  )

ginkgo-project/ginkgo cmake/Modules/FindPAPI.cmake :96

try_run(
                PAPI_${component}_FOUND
                gko_result_unused
                "${WORK_DIR}"
                "${SRC_FILE}"
                CMAKE_FLAGS -DINCLUDE_DIRECTORIES=${PAPI_INCLUDE_DIR}
                LINK_LIBRARIES ${PAPI_LIBRARY}
                COPY_FILE ${BIN_FILE}
            )

Lewuathe/mlir-hello thirdparty/llvm-project/llvm/cmake/modules/FindZ3.cmake :30

try_run(
    Z3_RETURNCODE
    Z3_COMPILED
    ${CMAKE_BINARY_DIR}
    ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testz3.cpp
    COMPILE_DEFINITIONS -I"${z3_include}"
    LINK_LIBRARIES ${z3_link_libs}
    COMPILE_OUTPUT_VARIABLE COMPILE_OUTPUT
    RUN_OUTPUT_VARIABLE SRC_OUTPUT
  )

o2e/OLLVM-9.0.1 cmake/modules/FindZ3.cmake :19

try_run(
    Z3_RETURNCODE
    Z3_COMPILED
    ${CMAKE_BINARY_DIR}
    ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testz3.c
    COMPILE_DEFINITIONS -I"${z3_include}"
    LINK_LIBRARIES -L${z3_lib_path} -lz3
    RUN_OUTPUT_VARIABLE SRC_OUTPUT
  )

Kitware/VTK CMake/patches/3.22/FindMPI.cmake :1282

try_run(MPI_RUN_RESULT_${LANG}_${MPI_TEST_FILE_NAME}_${MODE} MPI_RESULT_${LANG}_${MPI_TEST_FILE_NAME}_${MODE}
     "${CMAKE_BINARY_DIR}" SOURCES "${MPI_TEST_SOURCE_FILE}"
      COMPILE_DEFINITIONS ${MPI_TEST_COMPILE_DEFINITIONS}
      LINK_LIBRARIES MPI::MPI_${LANG}
      RUN_OUTPUT_VARIABLE MPI_RUN_OUTPUT_${LANG}_${MPI_TEST_FILE_NAME}_${MODE}
      COMPILE_OUTPUT_VARIABLE _MPI_TRY_${MPI_TEST_FILE_NAME}_${MODE}_OUTPUT)

PlatONnetwork/pWASM libc++/libcxx/utils/google-benchmark/cmake/CXXFeatureCheck.cmake :28

try_run(RUN_${FEATURE} COMPILE_${FEATURE}
          ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
          CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
          LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})

TheComet/ik ik/thirdparty/benchmark/cmake/CXXFeatureCheck.cmake :28

try_run(RUN_${FEATURE} COMPILE_${FEATURE}
          ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
          CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
          LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})

syslog-ng/syslog-ng cmake/Modules/FindgRPC.cmake :283

try_run(
    _gRPC_GET_VERSION_STATUS
    _gRPC_GET_VERSION_COMPILE_STATUS
    "${CMAKE_BINARY_DIR}"
    "${CMAKE_BINARY_DIR}/get_gRPC_version.cc"
    LINK_LIBRARIES
    gRPC::grpc++
    gRPC::grpc
    COMPILE_OUTPUT_VARIABLE _gRPC_GET_VERSION_COMPILE_OUTPUT
    RUN_OUTPUT_VARIABLE gRPC_VERSION)

Sneeds-Feed-and-Seed/sneedacity cmake-proxies/libsndfile/CMakeLists.txt :179

try_run( r_rc c_rc
   ${CMAKE_CURRENT_BINARY_DIR}
   ${_SRCDIR}/clipcheck.c
   LINK_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}
   RUN_OUTPUT_VARIABLE r_out
   COMPILE_OUTPUT_VARIABLE c_out
)

AIBluefisher/DAGSfM cmake/SelectCudaComputeArch.cmake :154

try_run(run_result compile_result ${PROJECT_BINARY_DIR} ${file}
              CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${CUDA_INCLUDE_DIRS}"
              LINK_LIBRARIES ${CUDA_LIBRARIES}
              RUN_OUTPUT_VARIABLE compute_capabilities)

GANGE666/xVMP src/utils/benchmark/cmake/CXXFeatureCheck.cmake :46

try_run(RUN_${FEATURE} COMPILE_${FEATURE}
              ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
              CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
              LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})

GlobalArrays/ga cmake/linalg-modules/FindBLIS.cmake :37

try_run( BLIS_USES_LP64
           BLIS_TEST_COMPILES
           ${CMAKE_CURRENT_BINARY_DIR}
    SOURCES ${CMAKE_CURRENT_LIST_DIR}/util/blis_int_size.c
    CMAKE_FLAGS -DINCLUDE_DIRECTORIES:STRING=${BLIS_INCLUDE_DIR}
    LINK_LIBRARIES ${BLIS_LIBRARIES}
    COMPILE_OUTPUT_VARIABLE _blis_idx_compile_output
    RUN_OUTPUT_VARIABLE     _blis_idx_run_output
  )

HDFGroup/hdf5 config/HDF5UseFortran.cmake :64

TRY_RUN (RUN_RESULT_VAR COMPILE_RESULT_VAR
        ${CMAKE_BINARY_DIR}
        ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testFortranCompiler1.f90
        CMAKE_FLAGS "${TMP_CMAKE_Fortran_FLAGS}"
        LINK_LIBRARIES "${HDF5_REQUIRED_LIBRARIES}"
        ${_RUN_OUTPUT_VARIABLE} OUTPUT_VAR
    )

merzlab/QUICK cmake/FindCUDA/select_compute_arch.cmake :66

try_run(run_result compile_result ${PROJECT_BINARY_DIR} ${file}
            CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${CUDA_INCLUDE_DIRS}"
            LINK_LIBRARIES ${CUDA_LIBRARIES}
            RUN_OUTPUT_VARIABLE compute_capabilities)