cmake target_sources examples

Signatures

target_sources(<target>
  <INTERFACE|PUBLIC|PRIVATE> [items1...]
[<INTERFACE|PUBLIC|PRIVATE> [items2...] ...])
target_sources(<target>
  [<INTERFACE|PUBLIC|PRIVATE>
  [FILE_SET <set> [TYPE <type>] [BASE_DIRS <dirs>...] [FILES <files>...]]...
  ]...)

Examples

novelrt/NovelRT cmake/NovelRTBuildSystem.cmake :120

target_sources(${cmakeSafeName}
    INTERFACE ${declareModule_SOURCES_INTERFACE} ${declareModule_RESOURCES_INTERFACE}
    PUBLIC ${declareModule_SOURCES_PUBLIC} ${declareModule_RESOURCES_PUBLIC}
    PRIVATE ${declareModule_SOURCES_PRIVATE} ${declareModule_RESOURCES_PRIVATE}

    INTERFACE FILE_SET interface_headers
    TYPE HEADERS
    BASE_DIRS include ${declareModule_HEADERS_BASE_DIRS}
    FILES ${declareModule_HEADERS_INTERFACE}
    PUBLIC FILE_SET public_headers
    TYPE HEADERS
    BASE_DIRS include ${declareModule_HEADERS_BASE_DIRS}
    FILES ${declareModule_HEADERS_PUBLIC}
    PRIVATE FILE_SET private_headers
    TYPE HEADERS
    BASE_DIRS include ${declareModule_HEADERS_BASE_DIRS}
    FILES ${declareModule_HEADERS_PRIVATE}

    INTERFACE FILE_SET interface_resources
    TYPE HEADERS
    BASE_DIRS Resources ${declareModule_RESOURCES_BASE_DIRS}
    FILES ${declareModule_RESOURCES_INTERFACE}
    PUBLIC FILE_SET public_resources
    TYPE HEADERS
    BASE_DIRS Resources ${declareModule_RESOURCES_BASE_DIRS}
    FILES ${declareModule_RESOURCES_PUBLIC}
    PRIVATE FILE_SET private_resources
    TYPE HEADERS
    BASE_DIRS Resources ${declareModule_RESOURCES_BASE_DIRS}
    FILES ${declareModule_RESOURCES_PRIVATE})

eclipse-ecal/ecal contrib/measurement/base/CMakeLists.txt :27

target_sources(measurement_base
  INTERFACE
    FILE_SET measurement_base_headers
    TYPE HEADERS
    BASE_DIRS include
    FILES
      include/ecal/measurement/base/reader.h
      include/ecal/measurement/base/types.h
      include/ecal/measurement/base/writer.h
)

ossia/score cmake/ScoreAvndHelper.cmake :126

target_sources(${AVND_BASE_TARGET}
      PRIVATE FILE_SET CXX_MODULES
      BASE_DIRS
        "${CMAKE_BINARY_DIR}"
        "${CMAKE_CURRENT_SOURCE_DIR}"
      FILES
          ${AVND_SOURCES}
          "${CMAKE_BINARY_DIR}/${AVND_TARGET}_avnd.cppm"
    )

OpenKneeboard/OpenKneeboard cmake/ok_add_library.cmake :18

target_sources(
      "${TARGET}"
      "${HEADER_KIND}"
      FILE_SET HEADERS
      TYPE HEADERS
      BASE_DIRS ${LIBRARY_ARG_INCLUDE_DIRECTORIES}
      FILES ${LIBRARY_ARG_HEADERS}
    )

AcademySoftwareFoundation/MaterialX CMakeLists.txt :388

target_sources(${TARGET_NAME}
        PRIVATE
            ${args_SOURCE_FILES}
        PUBLIC
            FILE_SET
                mxHeaders
            TYPE
                HEADERS
            BASE_DIRS
                ${CMAKE_CURRENT_SOURCE_DIR}/..
                ${CMAKE_CURRENT_BINARY_DIR}/..
            FILES
                ${args_HEADER_FILES}
                ${args_INLINED_FILES})

STEllAR-GROUP/hpx cmake/HPX_AddModule.cmake :397

target_sources(
      hpx_${modulename} PUBLIC
          FILE_SET hpx_${modulename}_public_sources
              TYPE CXX_MODULES
              BASE_DIRS ${lib_module_basedir}
              FILES ${lib_module_file}
    )

infiniflow/infinity CMakeLists.txt :190

target_sources(unused_std_target
        PRIVATE
        FILE_SET CXX_MODULES
        BASE_DIRS ${LIBSTDCXX_MODULE_FILE_DIR}
        FILES ${LIBSTDCXX_MODULE_FILE_DIR}/std.cc ${LIBSTDCXX_MODULE_FILE_DIR}/std.compat.cc
)

rbfx/rbfx Source/ThirdParty/Diligent/ThirdParty/Vulkan-Headers/CMakeLists.txt :60

target_sources(Vulkan-Module
        PUBLIC
            FILE_SET module
                TYPE CXX_MODULES
                BASE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/include"
                FILES "${CMAKE_CURRENT_SOURCE_DIR}/include/vulkan/vulkan.cppm"
    )

OpenDDS/OpenDDS CMakeLists.txt :117

target_sources(OpenDDS_Config
  INTERFACE FILE_SET HEADERS BASE_DIRS "${config_out_dir}" FILES "${config_out_file}")

qbs/qbs tests/auto/blackbox/testdata/cxx-modules/decl-impl/CMakeLists.txt :8

target_sources(declaration_implementation PRIVATE
  FILE_SET all_my_modules TYPE CXX_MODULES
  BASE_DIRS
    ${PROJECT_SOURCE_DIR}
  FILES
    hello.cppm
)

hypengw/Qcm core/CMakeLists.txt :3

target_sources(
  core
  PUBLIC FILE_SET
         all
         TYPE
         CXX_MODULES
         BASE_DIRS
         src
         FILES
         src/mod.cppm
         src/random.cppm
         src/type_list.cppm
         src/log.cppm
         src/core.cppm
         src/mem.cppm
         src/lambda.cppm
         src/fmt.cppm
         src/helper/mod.cppm
         src/helper/str.cppm
         src/helper/container.cppm)

hanickadot/compile-time-regular-expressions CMakeLists.txt :41

target_sources(${PROJECT_NAME} PUBLIC FILE_SET HEADERS TYPE HEADERS
		    BASE_DIRS
			"${CMAKE_CURRENT_SOURCE_DIR}/include"
		    FILES 
			include/ctll.hpp
			include/ctre/functions.hpp
			include/ctre/utility.hpp
			include/ctre/utf8.hpp
			include/ctre/evaluation.hpp
			include/ctre/starts_with_anchor.hpp
			include/ctre/pcre_actions.hpp
			include/ctre/rotate.hpp
			include/ctre/iterators.hpp
			include/ctre/literals.hpp
			include/ctre/return_type.hpp
			include/ctre/find_captures.hpp
			include/ctre/id.hpp
			include/ctre/atoms_characters.hpp
			include/ctre/actions/mode.inc.hpp
			include/ctre/actions/characters.inc.hpp
			include/ctre/actions/class.inc.hpp
			include/ctre/actions/look.inc.hpp
			include/ctre/actions/sequence.inc.hpp
			include/ctre/actions/fusion.inc.hpp
			include/ctre/actions/asserts.inc.hpp
			include/ctre/actions/capture.inc.hpp
			include/ctre/actions/named_class.inc.hpp
			include/ctre/actions/backreference.inc.hpp
			include/ctre/actions/options.inc.hpp
			include/ctre/actions/atomic_group.inc.hpp
			include/ctre/actions/set.inc.hpp
			include/ctre/actions/hexdec.inc.hpp
			include/ctre/actions/repeat.inc.hpp
			include/ctre/actions/properties.inc.hpp
			include/ctre/actions/boundaries.inc.hpp
			include/ctre/operators.hpp
			include/ctre/pcre.hpp
			include/ctre/atoms_unicode.hpp
			include/ctre/range.hpp
			include/ctre/wrapper.hpp
			include/ctre/first.hpp
			include/ctre/flags_and_modes.hpp
			include/ctre/atoms.hpp
			include/unicode-db.hpp
			include/unicode-db/unicode_interface.hpp
			include/unicode-db/unicode-db.hpp
			include/ctll/parser.hpp
			include/ctll/actions.hpp
			include/ctll/fixed_string.hpp
			include/ctll/list.hpp
			include/ctll/utilities.hpp
			include/ctll/grammars.hpp
			include/ctre.hpp
			include/ctre-unicode.hpp
		)

halide/Halide cmake/HalideGeneratorHelpers.cmake :322

target_sources("${TARGET}" INTERFACE
                   FILE_SET HEADERS
                   BASE_DIRS "${CMAKE_CURRENT_BINARY_DIR}"
                   FILES "${local_out_c_header}")

stotko/stdgpu src/stdgpu/CMakeLists.txt :40

target_sources(stdgpu PUBLIC FILE_SET stdgpu_headers
                                 TYPE HEADERS
                                 BASE_DIRS ${STDGPU_INCLUDE_LOCAL_DIR}
                                 FILES algorithm.h
                                       atomic.cuh
                                       bit.h
                                       bitset.cuh
                                       compiler.h
                                       contract.h
                                       cstddef.h
                                       deque.cuh
                                       device.h
                                       execution.h
                                       functional.h
                                       iterator.h
                                       limits.h
                                       memory.h
                                       mutex.cuh
                                       numeric.h
                                       platform.h
                                       queue.cuh
                                       ranges.h
                                       stack.cuh
                                       type_traits.h
                                       unordered_map.cuh
                                       unordered_set.cuh
                                       utility.h
                                       vector.cuh)

TinyTinni/ValveFileVDF CMakeLists.txt :25

target_sources(ValveFileVDF
    PUBLIC FILE_SET HEADERS
    BASE_DIRS "include"
    FILES
    "include/vdf_parser.hpp"
    )

dealii/dealii module/CMakeLists.txt :293

target_sources(${DEAL_II_TARGET_NAME}_module_${build_lowercase}
      PUBLIC
      FILE_SET module_interface_units
      TYPE CXX_MODULES
      FILES
        ${_interface_module_partition_units}
        ${_primary_module_interface_unit}
      BASE_DIRS "${CMAKE_CURRENT_BINARY_DIR}/interface_module_partitions"
      )

jinja2cpp/Jinja2Cpp CMakeLists.txt :156

target_sources(${LIB_TARGET_NAME}
    PUBLIC FILE_SET HEADERS
    FILES ${PublicHeaders}
    BASE_DIRS include
)

trilinos/Trilinos packages/krino/SierraCmakeCode.cmake :20

target_sources(krino_diagwriter PUBLIC
    FILE_SET krino_diagwriter_headers
    TYPE HEADERS
    BASE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}
    FILES ${krino_diagwriter_headers})

GPUOpen-LibrariesAndSDKs/Capsaicin src/core/CMakeLists.txt :49

target_sources(capsaicin PUBLIC
    FILE_SET capsaicin_shaders TYPE HEADERS
    BASE_DIRS ${CMAKE_CURRENT_SOURCE_DIR} FILES "${CAPSAICIN_SHADER_FILES}"
)

getml/sqlgen CMakeLists.txt :138

target_sources(sqlgen
        PUBLIC
        FILE_SET sqlgen_headers
        TYPE HEADERS
        BASE_DIRS $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/include>
        FILES ${SQLGEN_HEADERS})

superg/redumper tests/CMakeLists.txt :4

target_sources(tests
    PUBLIC
        "tests.cc"
    PUBLIC
    FILE_SET cxx_modules
    TYPE CXX_MODULES
    BASE_DIRS
        "${CMAKE_SOURCE_DIR}"
    FILES
        "${CMAKE_SOURCE_DIR}/cd/cd.ixx"
        "${CMAKE_SOURCE_DIR}/cd/cdrom.ixx"
        "${CMAKE_SOURCE_DIR}/cd/edc.ixx"
        "${CMAKE_SOURCE_DIR}/cd/scrambler.ixx"
        "${CMAKE_SOURCE_DIR}/crc/crc.ixx"
        "${CMAKE_SOURCE_DIR}/crc/crc16_gsm.ixx"
        "${CMAKE_SOURCE_DIR}/crc/crc32.ixx"
        "${CMAKE_SOURCE_DIR}/utils/file_io.ixx"
        "${CMAKE_SOURCE_DIR}/utils/misc.ixx"
        "${CMAKE_SOURCE_DIR}/utils/strings.ixx"
)

podofo/podofo src/podofo/CMakeLists.txt :116

target_sources(${PODOFO_TARGET} PUBLIC FILE_SET headers TYPE HEADERS
    BASE_DIRS "${PROJECT_SOURCE_DIR}/src" ${CMAKE_CURRENT_BINARY_DIR}
    FILES ${PODOFO_HEADERS})

adobe/lagrange cmake/lagrange/lagrange_add_module.cmake :50

target_sources(lagrange_${module_name}
        PRIVATE
            ${SRC_FILES}
        PUBLIC
            FILE_SET HEADERS
            BASE_DIRS
                include
            FILES
                ${INC_FILES}
    )

Kitware/VTK CMake/vtkModule.cmake :3971

target_sources("${target}"
    "${_vtk_add_file_set_VIS}"
      FILE_SET "${_vtk_add_file_set_NAME}"
        TYPE      "${_vtk_add_file_set_TYPE}"
        BASE_DIRS ${_vtk_add_file_set_BASE_DIRS}
        FILES     ${_vtk_add_file_set_FILES})

pongasoft/emscripten-glfw CMakeLists.txt :64

target_sources(${LIBRARY_NAME} PUBLIC
      FILE_SET headers TYPE HEADERS BASE_DIRS src/cpp/emscripten/glfw3 FILES ${glfw3_headers}
  )

LadybirdBrowser/ladybird Services/WebContent/CMakeLists.txt :62

target_sources(webcontentservice PUBLIC FILE_SET server TYPE HEADERS
    BASE_DIRS ${LADYBIRD_SOURCE_DIR}/Services
    FILES ConnectionFromClient.h
          ConsoleGlobalEnvironmentExtensions.h
          Forward.h
          PageHost.h
          WebContentConsoleClient.h
          WebDriverConnection.h
)

steineggerlab/foldmason lib/foldseek/lib/corrosion/cmake/Corrosion.cmake :1736

target_sources(${rust_target}
            INTERFACE
            FILE_SET HEADERS
            BASE_DIRS "${header_placement_dir}"
            FILES "${header_placement_dir}/${output_header_name}"
        )

estkme-group/lpac cjson-ext/CMakeLists.txt :4

target_sources(
    cjson-ext
    PUBLIC
        FILE_SET public_headers
        TYPE HEADERS
        BASE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}
        FILES
            cjson-ext/cJSON_ex.h
)

mxcop/src-dgi extern/fastgltf/CMakeLists.txt :131

target_sources(fastgltf_module PUBLIC
        FILE_SET CXX_MODULES
        BASE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/src
        FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/fastgltf.ixx
    )