cmake fetchcontent_declare examples

Signatures

fetchcontent_declare(
  <name>
  <contentOptions>...
  [EXCLUDE_FROM_ALL]
  [SYSTEM]
  [OVERRIDE_FIND_PACKAGE |
  FIND_PACKAGE_ARGS args...]
)

Examples

kahypar/mt-kahypar CMakeLists.txt :388

FetchContent_Declare(
    googletest EXCLUDE_FROM_ALL SYSTEM
    GIT_REPOSITORY https://github.com/google/googletest.git
    GIT_TAG        ${KAHYPAR_GOOGLETEST_VERSION}
  )

STEllAR-GROUP/hpx cmake/HPX_SetupBoost.cmake :74

fetchcontent_declare(
      Boost
      URL https://github.com/boostorg/boost/releases/download/boost-${HPX_WITH_BOOST_VERSION}/boost-${HPX_WITH_BOOST_VERSION}-cmake.tar.xz
      TLS_VERIFY true
      DOWNLOAD_EXTRACT_TIMESTAMP true SYSTEM
    )

facebookincubator/velox CMake/resolve_dependency_modules/absl.cmake :32

FetchContent_Declare(
  absl
  URL ${VELOX_ABSL_SOURCE_URL}
  URL_HASH ${VELOX_ABSL_BUILD_SHA256_CHECKSUM}
  OVERRIDE_FIND_PACKAGE
  EXCLUDE_FROM_ALL
  SYSTEM
  PATCH_COMMAND git apply ${CMAKE_CURRENT_LIST_DIR}/absl/absl-macos.patch
)

mortbopet/Ripes external/CMakeLists.txt :16

FetchContent_Declare(
    libelfin
    SYSTEM
    GIT_REPOSITORY https://github.com/mortbopet/libelfin.git
    GIT_TAG        93a424940dc6e721818c5634b1876c8800e3f980
)

mendersoftware/mender src/common/cmake/boost.cmake :15

FetchContent_Declare(
    Boost
    # SYSTEM is only supported in CMake 3.25 and later, but is necessary in order to exclude Boost
    # from our restrictive warnings-as-errors, in particular -Wsuggest-override. See workaround
    # below.
    SYSTEM
    DOWNLOAD_EXTRACT_TIMESTAMP ON
    URL https://github.com/boostorg/boost/releases/download/boost-1.83.0/boost-1.83.0.tar.gz
    URL_HASH SHA256=0c6049764e80aa32754acd7d4f179fd5551d8172a83b71532ae093e7384e98da
  )

hypengw/Qcm third_party/CMakeLists.txt :43

FetchContent_Declare(
    pegtl
    GIT_REPOSITORY https://github.com/taocpp/PEGTL.git
    GIT_TAG 3.2.8
    GIT_SHALLOW 1
    GIT_PROGRESS 1
    SYSTEM EXCLUDE_FROM_ALL FIND_PACKAGE_ARGS 3.2.7 QUIET GLOBAL)

mhx/dwarfs cmake/need_fmt.cmake :24

FetchContent_Declare(
    fmt
    GIT_REPOSITORY ${LIBFMT_GIT_REPO}
    GIT_TAG ${LIBFMT_PREFERRED_VERSION}
    EXCLUDE_FROM_ALL
    SYSTEM
  )

cwida/ALP publication/source_code/bench_end_to_end/btrblocks_copy/cmake/dynamic_bitset.cmake :30

FetchContent_Declare(
    boost_src
    GIT_REPOSITORY "https://github.com/boostorg/boost.git"
    GIT_TAG b6928ae5c92e21a04bbe17a558e6e066dbe632f6
    GIT_SUBMODULES ${BOOST_SUBMODULES}
    GIT_PROGRESS TRUE
    CONFIGURE_COMMAND ""  # tell CMake it's not a cmake project
    SYSTEM TRUE # this is a system library, don't lint/tidy it etc.
)

ailab-hanyang/Radar4Motion 3rdparty/sophus/sophus.cmake :29

FetchContent_Declare(sophus SYSTEM URL https://github.com/nachovizzo/Sophus/archive/refs/tags/1.22.11.tar.gz)

daquexian/faster-rwkv CMakeLists.txt :69

FetchContent_Declare(
        ncnn
        GIT_REPOSITORY https://github.com/daquexian/ncnn
        # This commit reduces peak memory usage
        # https://github.com/Tencent/ncnn/pull/4966
        GIT_TAG c0daa4fd
        SYSTEM
        )

IntelRealSense/RealSenseID cmake/libuvc.cmake :21

FetchContent_Declare(
        libuvc
        SOURCE_DIR ${THIRD_PARTY_DIRECTORY}/libuvc-0.0.7-custom
        # EXCLUDE_FROM_ALL # When we reach cmake 3.28
        SYSTEM
)

FreeRDP/FreeRDP client/SDL/common/aad/CMakeLists.txt :38

FetchContent_Declare(webview GIT_REPOSITORY https://github.com/akallabeth/webview GIT_TAG navigation-listener SYSTEM)