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})

RavEngine/RavEngine deps/RGL/deps/Vulkan-Headers/CMakeLists.txt :72

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

kokkos/kokkos cmake/kokkos_tribits.cmake :373

target_sources(
        ${LIBRARY_NAME} PUBLIC FILE_SET ${LIBRARY_NAME}_file_set TYPE CXX_MODULES FILES ${PARSE_MODULE_INTERFACE}
      )

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 :29

target_sources(${AVND_BASE_TARGET} PRIVATE FILE_SET CXX_MODULES FILES
        "${CMAKE_BINARY_DIR}/${AVND_BASE_TARGET}.cpp"
      )

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})

WerWolv/ImHex lib/libimhex/CMakeLists.txt :80

target_sources(libimhex
                PUBLIC
                FILE_SET cxx_modules TYPE CXX_MODULES
                FILES
                include/hex.cppm
        )

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}
    )

alibaba/async_simple async_simple/CMakeLists.txt :43

target_sources(async_simple_static
      PUBLIC
        FILE_SET CXX_MODULES FILES
          ${MODULES_SRCS}
    )

google/filament third_party/dawn/third_party/vulkan-headers/src/CMakeLists.txt :72

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

nanodbc/nanodbc CMakeLists.txt :82

target_sources(nanodbc
  PUBLIC FILE_SET HEADERS FILES
  nanodbc/nanodbc.h
  $<$<CXX_COMPILER_ID:MSVC>:nanodbc/variant_row_cached_result.h>)

scylladb/seastar src/CMakeLists.txt :6

target_sources (seastar-module
  PUBLIC
    FILE_SET CXX_MODULES
    TYPE CXX_MODULES
    FILES
      seastar.cc
  PRIVATE
    core/alien.cc
    core/app-template.cc
    core/condition-variable.cc
    core/disk_params.cc
    core/exception_hacks.cc
    core/execution_stage.cc
    core/fair_queue.cc
    core/file.cc
    core/fsnotify.cc
    core/fstream.cc
    core/future-util.cc
    core/future.cc
    core/io_queue.cc
    core/linux-aio.cc
    core/memory.cc
    core/metrics.cc
    core/on_internal_error.cc
    core/posix.cc
    core/program_options.cc
    core/reactor.cc
    core/reactor_backend.cc
    core/resource.cc
    core/sharded.cc
    core/scollectd.cc
    core/semaphore.cc
    core/signal.cc
    core/smp.cc
    core/sstring.cc
    core/systemwide_memory_barrier.cc
    core/thread.cc
    core/thread_pool.cc
    core/uname.cc
    util/alloc_failure_injector.cc
    util/backtrace.cc
    util/conversions.cc
    util/file.cc
    util/log.cc
    util/process.cc
    util/program-options.cc
    util/read_first_line.cc
    util/short_streams.cc
    net/config.cc
    net/arp.cc
    net/dhcp.cc
    net/dpdk.cc
    net/ip.cc
    net/tcp.cc
    net/udp.cc
    net/stack.cc
    net/native-stack.cc
    net/posix-stack.cc
    net/net.cc
    net/proxy.cc
    net/ip_checksum.cc
    net/packet.cc
    net/inet_address.cc
    net/socket_address.cc
    net/tls.cc
    net/virtio.cc
    http/client.cc
    http/common.cc
    http/file_handler.cc
    http/httpd.cc
    http/json_path.cc
    http/matcher.cc
    http/mime_types.cc
    http/reply.cc
    http/request.cc
    http/routes.cc
    http/transformers.cc
    http/url.cc
    json/formatter.cc
    json/json_elements.cc
  )

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
)

KiCad/kicad-source-mirror thirdparty/fmt/CMakeLists.txt :75

target_sources(${name} PUBLIC FILE_SET fmt TYPE CXX_MODULES
                   FILES ${sources})

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
)

Jackarain/proxy third_party/boost/libs/any/CMakeLists.txt :10

target_sources(boost_any PUBLIC
        FILE_SET modules_public TYPE CXX_MODULES FILES
            ${CMAKE_CURRENT_LIST_DIR}/modules/boost_any.cppm
    )

hypengw/Qcm app/CMakeLists.txt :225

target_sources(app PRIVATE FILE_SET CXX_MODULES FILES ${MODULES})

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

target_sources(${PROJECT_NAME} PUBLIC FILE_SET CXX_MODULES TYPE CXX_MODULES FILES ctre.cppm)

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"
    )

axmolengine/axmol 3rdparty/fmt/CMakeLists.txt :79

target_sources(${name} PUBLIC FILE_SET fmt TYPE CXX_MODULES
                   FILES ${sources})

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"
      )

PCSX2/pcsx2 3rdparty/fmt/CMakeLists.txt :75

target_sources(${name} PUBLIC FILE_SET fmt TYPE CXX_MODULES
                   FILES ${sources})

OFFTKP/felix86 external/fmt/CMakeLists.txt :75

target_sources(${name} PUBLIC FILE_SET fmt TYPE CXX_MODULES
                   FILES ${sources})

jinja2cpp/Jinja2Cpp CMakeLists.txt :156

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

openc2e/openc2e externals/fmt/CMakeLists.txt :75

target_sources(${name} PUBLIC FILE_SET fmt TYPE CXX_MODULES
                   FILES ${sources})

trilinos/Trilinos packages/kokkos/cmake/kokkos_tribits.cmake :370

target_sources(
        ${LIBRARY_NAME} PUBLIC FILE_SET ${LIBRARY_NAME}_file_set TYPE CXX_MODULES FILES ${PARSE_MODULE_INTERFACE}
      )

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 CMakeLists.txt :98

target_sources(redumper
    PUBLIC
    "dvd/css/css_tables.cc"
    "main.cc"
    "systems/system.hh"
    "utils/throw_line.hh"
    "redumper.manifest"
    PRIVATE FILE_SET cxx_modules TYPE CXX_MODULES FILES
    "analyzers/analyzer.ixx"
    "analyzers/silence.ixx"
    "analyzers/sync.ixx"
    "cd/cd.ixx"
    "cd/cd_common.ixx"
    "cd/cd_dump_extra.ixx"
    "cd/cd_dump.ixx"
    "cd/cdrom.ixx"
    "cd/ecc.ixx"
    "cd/edc.ixx"
    "cd/fix_msf.ixx"
    "cd/offset_manager.ixx"
    "cd/protection.ixx"
    "cd/scrambler.ixx"
    "cd/cd_split.ixx"
    "cd/subcode.ixx"
    "cd/toc.ixx"
    "crc/crc.ixx"
    "crc/crc16_gsm.ixx"
    "crc/crc32.ixx"
    "drive/flash_plextor.ixx"
    "drive/flash_sd616.ixx"
    "drive/flash_tsst.ixx"
    "drive/plextor.ixx"
    "drive/mediatek.ixx"
    "drive/test.ixx"
    "dvd/dvd_dump.ixx"
    "dvd/dvd_key.ixx"
    "dvd/dvd_split.ixx"
    "dvd/css/css.ixx"
    "filesystem/high_sierra/high_sierra.ixx"
    "filesystem/high_sierra/high_sierra_browser.ixx"
    "filesystem/high_sierra/high_sierra_defs.ixx"
    "filesystem/iso9660/iso9660.ixx"
    "filesystem/iso9660/iso9660_browser.ixx"
    "filesystem/iso9660/iso9660_defs.ixx"
    "filesystem/iso9660/iso9660_entry.ixx"
    "filesystem/iso9660/iso9660_map.ixx"
    "hash/block_hasher.ixx"
    "hash/md5.ixx"
    "hash/sha1.ixx"
    "readers/disc_read_cdda_reader.ixx"
    "readers/disc_read_reader.ixx"
    "readers/image_bin_reader.ixx"
    "readers/image_iso_reader.ixx"
    "readers/image_raw_reader.ixx"
    "readers/image_scram_reader.ixx"
    "readers/image_simple_reader.ixx"
    "readers/data_reader.ixx"
    "scsi/cmd.ixx"
    "scsi/mmc.ixx"
    "scsi/sptd.ixx"
    "systems/securom.ixx"
    "systems/s_cdrom.ixx"
    "systems/s_high_sierra.ixx"
    "systems/s_iso.ixx"
    "systems/dc.ixx"
    "systems/mcd.ixx"
    "systems/psx.ixx"
    "systems/ps2.ixx"
    "systems/ps3.ixx"
    "systems/ps4.ixx"
    "systems/ps5.ixx"
    "systems/sat.ixx"
    "systems/systems.ixx"
    "utils/animation.ixx"
    "utils/endian.ixx"
    "utils/file_io.ixx"
    "utils/hex_bin.ixx"
    "utils/logger.ixx"
    "utils/misc.ixx"
    "utils/signal.ixx"
    "utils/strings.ixx"
	"utils/win32.ixx"
    "utils/xbox.ixx"
    "common.ixx"
    "debug.ixx"
    "drive.ixx"
    "hash.ixx"
    "info.ixx"
    "offsets.ixx"
    "options.ixx"
    "range.ixx"
    "redumper.ixx"
    "rings.ixx"
    "rom_entry.ixx"
    "skeleton.ixx"
    "version.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})

PixarAnimationStudios/OpenUSD extras/usd/examples/workTaskflowExample/CMakeLists.txt :60

target_sources(
    workTaskflowExample
    PRIVATE
        detachedTask.cpp
        dispatcher.cpp
    PUBLIC
        FILE_SET HEADERS
            FILES
                api.h
                detachedTask.h
                dispatcher.h
                executorStack.h
                impl.h
                loops.h
                reduce.h
                sort.h
                threadLimits.h
                withScopedParallelism.h
)

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}
  )

WujekFoliarz/DualSenseY-v2 thirdparty/json/src/modules/CMakeLists.txt :11

target_sources(${target} PUBLIC FILE_SET CXX_MODULES FILES ${NLOHMANN_JSON_MODULES})

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
    )