code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>RESOURCE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="RULE_LAUNCH_COMPILE" href="RULE_LAUNCH_COMPILE.html" />
    <link rel="prev" title="PUBLIC_HEADER" href="PUBLIC_HEADER.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RESOURCE

RESOURCE¶

Specify resource files in a FRAMEWORK or BUNDLE.

Target marked with the FRAMEWORK or BUNDLE property
generate framework or application bundle (both macOS and iOS is supported)
or normal shared libraries on other platforms.
This property may be set to a list of files to be placed in the corresponding
directory (eg. Resources directory for macOS) inside the bundle.
On non-Apple platforms these files may be installed using the RESOURCE
option to the install(TARGETS) command.

Following example of Application Bundle:

add_executable(ExecutableTarget
  addDemo.c
  resourcefile.txt
  appresourcedir/appres.txt)

target_link_libraries(ExecutableTarget heymath mul)

set(RESOURCE_FILES
  resourcefile.txt
  appresourcedir/appres.txt)

set_target_properties(ExecutableTarget PROPERTIES
  MACOSX_BUNDLE TRUE
  MACOSX_FRAMEWORK_IDENTIFIER org.cmake.ExecutableTarget
  RESOURCE "${RESOURCE_FILES}")

will produce flat structure for iOS systems:

ExecutableTarget.app
  appres.txt
  ExecutableTarget
  Info.plist
  resourcefile.txt

For macOS systems it will produce following directory structure:

ExecutableTarget.app/
  Contents
    Info.plist
    MacOS
      ExecutableTarget
    Resources
      appres.txt
      resourcefile.txt

For Linux, such CMake script produce following files:

ExecutableTarget
Resources
  appres.txt
  resourcefile.txt

Previous topic

PUBLIC_HEADER

Next topic

RULE_LAUNCH_COMPILE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RESOURCE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>RULE_LAUNCH_COMPILE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="RULE_LAUNCH_CUSTOM" href="RULE_LAUNCH_CUSTOM.html" />
    <link rel="prev" title="RESOURCE" href="RESOURCE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RULE_LAUNCH_COMPILE

RULE_LAUNCH_COMPILE¶

Specify a launcher for compile rules.

Note

This property is intended for internal use by ctest(1).  Projects
and developers should use the <LANG>_COMPILER_LAUNCHER target
properties or the associated CMAKE_<LANG>_COMPILER_LAUNCHER
variables instead.

See the global property of the same name
for details.  This overrides the global and directory property for a target.

Previous topic

RESOURCE

Next topic

RULE_LAUNCH_CUSTOM

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RULE_LAUNCH_COMPILE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.

repo_name: lazytadpole/codenamesilverfish

license: mit


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>RULE_LAUNCH_CUSTOM — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="RULE_LAUNCH_LINK" href="RULE_LAUNCH_LINK.html" />
    <link rel="prev" title="RULE_LAUNCH_COMPILE" href="RULE_LAUNCH_COMPILE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RULE_LAUNCH_CUSTOM

RULE_LAUNCH_CUSTOM¶

Specify a launcher for custom rules.

See the global property of the same name for details.  This overrides
the global and directory property for a target.

Previous topic

RULE_LAUNCH_COMPILE

Next topic

RULE_LAUNCH_LINK

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RULE_LAUNCH_CUSTOM

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>RULE_LAUNCH_LINK — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="RUNTIME_OUTPUT_DIRECTORY" href="RUNTIME_OUTPUT_DIRECTORY.html" />
    <link rel="prev" title="RULE_LAUNCH_CUSTOM" href="RULE_LAUNCH_CUSTOM.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RULE_LAUNCH_LINK

RULE_LAUNCH_LINK¶

Specify a launcher for link rules.

Note

This property is intended for internal use by ctest(1).  Projects
and developers should use the <LANG>_LINKER_LAUNCHER target
properties or the associated CMAKE_<LANG>_LINKER_LAUNCHER
variables instead.

See the global property of the same name for
details.  This overrides the global and directory property for a target.

Previous topic

RULE_LAUNCH_CUSTOM

Next topic

RUNTIME_OUTPUT_DIRECTORY

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RULE_LAUNCH_LINK

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>RUNTIME_OUTPUT_DIRECTORY — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="RUNTIME_OUTPUT_DIRECTORY_<CONFIG>" href="RUNTIME_OUTPUT_DIRECTORY_CONFIG.html" />
    <link rel="prev" title="RULE_LAUNCH_LINK" href="RULE_LAUNCH_LINK.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RUNTIME_OUTPUT_DIRECTORY

RUNTIME_OUTPUT_DIRECTORY¶

Output directory in which to build RUNTIME target files.

This property specifies the directory into which runtime target files
should be built.  The property value may use
generator expressions.
Multi-configuration generators (Visual Studio,
Xcode, Ninja Multi-Config) append a
per-configuration subdirectory to the specified directory unless a generator
expression is used.

This property is initialized by the value of the
CMAKE_RUNTIME_OUTPUT_DIRECTORY variable if it is set when a target is created.

See also the RUNTIME_OUTPUT_DIRECTORY_<CONFIG> target property.

Previous topic

RULE_LAUNCH_LINK

Next topic

RUNTIME_OUTPUT_DIRECTORY_<CONFIG>

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RUNTIME_OUTPUT_DIRECTORY

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>RUNTIME_OUTPUT_DIRECTORY_<CONFIG> — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="RUNTIME_OUTPUT_NAME" href="RUNTIME_OUTPUT_NAME.html" />
    <link rel="prev" title="RUNTIME_OUTPUT_DIRECTORY" href="RUNTIME_OUTPUT_DIRECTORY.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RUNTIME_OUTPUT_DIRECTORY_<CONFIG>

<span id="prop_tgt:RUNTIME_OUTPUT_DIRECTORY_<CONFIG>">
RUNTIME_OUTPUT_DIRECTORY_<CONFIG>¶

Per-configuration output directory for
RUNTIME target files.

This is a per-configuration version of the
RUNTIME_OUTPUT_DIRECTORY target property, but
multi-configuration generators (Visual Studio Generators,
Xcode) do NOT append a
per-configuration subdirectory to the specified directory.  This
property is initialized by the value of the
CMAKE_RUNTIME_OUTPUT_DIRECTORY_<CONFIG> variable if
it is set when a target is created.

Contents of RUNTIME_OUTPUT_DIRECTORY_<CONFIG> may use
generator expressions.

Previous topic

RUNTIME_OUTPUT_DIRECTORY

Next topic

RUNTIME_OUTPUT_NAME

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RUNTIME_OUTPUT_DIRECTORY_<CONFIG>

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>RUNTIME_OUTPUT_NAME — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="RUNTIME_OUTPUT_NAME_<CONFIG>" href="RUNTIME_OUTPUT_NAME_CONFIG.html" />
    <link rel="prev" title="RUNTIME_OUTPUT_DIRECTORY_<CONFIG>" href="RUNTIME_OUTPUT_DIRECTORY_CONFIG.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RUNTIME_OUTPUT_NAME

RUNTIME_OUTPUT_NAME¶

Output name for RUNTIME target files.

This property specifies the base name for runtime target files.  It
overrides OUTPUT_NAME and OUTPUT_NAME_<CONFIG>
properties.

See also the RUNTIME_OUTPUT_NAME_<CONFIG> target property.

Previous topic

RUNTIME_OUTPUT_DIRECTORY_<CONFIG>

Next topic

RUNTIME_OUTPUT_NAME_<CONFIG>

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RUNTIME_OUTPUT_NAME

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>RUNTIME_OUTPUT_NAME_<CONFIG> — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="SKIP_BUILD_RPATH" href="SKIP_BUILD_RPATH.html" />
    <link rel="prev" title="RUNTIME_OUTPUT_NAME" href="RUNTIME_OUTPUT_NAME.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RUNTIME_OUTPUT_NAME_<CONFIG>

<span id="prop_tgt:RUNTIME_OUTPUT_NAME_<CONFIG>">
RUNTIME_OUTPUT_NAME_<CONFIG>¶

Per-configuration output name for
RUNTIME target files.

This is the configuration-specific version of the
RUNTIME_OUTPUT_NAME target property.

Previous topic

RUNTIME_OUTPUT_NAME

Next topic

SKIP_BUILD_RPATH

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

RUNTIME_OUTPUT_NAME_<CONFIG>

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>SKIP_BUILD_RPATH — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="SOURCE_DIR" href="SOURCE_DIR.html" />
    <link rel="prev" title="RUNTIME_OUTPUT_NAME_<CONFIG>" href="RUNTIME_OUTPUT_NAME_CONFIG.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SKIP_BUILD_RPATH

SKIP_BUILD_RPATH¶

Should rpaths be used for the build tree.

SKIP_BUILD_RPATH is a boolean specifying whether to skip automatic
generation of an rpath allowing the target to run from the build tree,
see also the BUILD_RPATH target property.
This property is initialized by the value of the variable
CMAKE_SKIP_BUILD_RPATH if it is set when a target is created.

Previous topic

RUNTIME_OUTPUT_NAME_<CONFIG>

Next topic

SOURCE_DIR

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SKIP_BUILD_RPATH

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>SOURCES — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="SOVERSION" href="SOVERSION.html" />
    <link rel="prev" title="SOURCE_DIR" href="SOURCE_DIR.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SOURCES

SOURCES¶

This specifies the list of paths to source files for the target.
The following commands all set or add to the SOURCES target property
and are the usual way to manipulate it:

add_executable()

add_library()

add_custom_target()

target_sources()

Contents of SOURCES may use
generator expressions.
If a path starts with a generator expression, it is expected to
evaluate to an absolute path. Not doing so is considered undefined behavior.

Paths that are for files generated by the build will be treated
as relative to the build directory of the target, if the path is not
already specified as an absolute path.  Note that whether a file is seen as
generated may be affected by policy CMP0118.

If a path does not start with a generator expression, is not an
absolute path and is not a generated file, it will be treated as relative to
the location selected by the first of the following that matches:

If a file by the specified path exists relative to the target's source
directory, use that file.

If policy CMP0115 is not set to NEW, try appending each
known source file extension to the path and check if that exists
relative to the target's source directory.

Repeat the above two steps, this time relative to the target's binary
directory instead.

Note that the above decisions are made at generation time, not build time.

See the cmake-buildsystem(7) manual for more on defining
buildsystem properties.

Previous topic

SOURCE_DIR

Next topic

SOVERSION

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SOURCES

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>SOURCE_DIR — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="SOURCES" href="SOURCES.html" />
    <link rel="prev" title="SKIP_BUILD_RPATH" href="SKIP_BUILD_RPATH.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SOURCE_DIR

SOURCE_DIR¶

New in version 3.4.

This read-only property reports the value of the
CMAKE_CURRENT_SOURCE_DIR variable in the directory in which
the target was defined.

Previous topic

SKIP_BUILD_RPATH

Next topic

SOURCES

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SOURCE_DIR

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>SOVERSION — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="STATIC_LIBRARY_FLAGS" href="STATIC_LIBRARY_FLAGS.html" />
    <link rel="prev" title="SOURCES" href="SOURCES.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SOVERSION

SOVERSION¶

ABI version number of a shared library target.

For shared libraries VERSION and SOVERSION can be used to
specify the build version and ABI version respectively.  When building or
installing appropriate symlinks are created if the platform supports
symlinks and the linker supports so-names.  If only one of both is
specified the missing is assumed to have the same version number.
SOVERSION is ignored if NO_SONAME property is set.

A common convention is to specify both VERSION and SOVERSION
such that SOVERSION matches the first component of VERSION:

set_target_properties(mylib PROPERTIES VERSION 1.2.3 SOVERSION 1)

The idea is that breaking changes to the ABI increment both the
SOVERSION and the major VERSION number.

Windows Versions¶

For shared libraries and executables on Windows the VERSION
attribute is parsed to extract a <major>.<minor> version number.
These numbers are used as the image version of the binary.

Mach-O Versions¶

For shared libraries and executables on Mach-O systems (e.g. macOS, iOS),
the SOVERSION property corresponds to the compatibility version and
VERSION corresponds to the current version (unless Mach-O
specific overrides are provided, as discussed below).
See the FRAMEWORK target property for an example.

For shared libraries, the MACHO_COMPATIBILITY_VERSION and
MACHO_CURRENT_VERSION properties can be used to
override the compatibility version and current version respectively.
Note that SOVERSION will still be used to form the install_name
and both SOVERSION and VERSION may also affect the file
and symlink names.

Versions of Mach-O binaries may be checked with the otool -L <binary>
command.

Table of Contents

SOVERSION

Windows Versions

Mach-O Versions

Previous topic

SOURCES

Next topic

STATIC_LIBRARY_FLAGS

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SOVERSION

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>STATIC_LIBRARY_FLAGS — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="STATIC_LIBRARY_FLAGS_<CONFIG>" href="STATIC_LIBRARY_FLAGS_CONFIG.html" />
    <link rel="prev" title="SOVERSION" href="SOVERSION.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

STATIC_LIBRARY_FLAGS

STATIC_LIBRARY_FLAGS¶

Archiver (or MSVC librarian) flags for a static library target.
Targets that are shared libraries, modules, or executables need to use
the LINK_OPTIONS or LINK_FLAGS target properties.

The STATIC_LIBRARY_FLAGS property, managed as a string, can be used to add
extra flags to the link step of a static library target.
STATIC_LIBRARY_FLAGS_<CONFIG> will add to the configuration
<CONFIG>, for example, DEBUG, RELEASE, MINSIZEREL,
RELWITHDEBINFO, ...

Note

This property has been superseded by STATIC_LIBRARY_OPTIONS
property.

Previous topic

SOVERSION

Next topic

STATIC_LIBRARY_FLAGS_<CONFIG>

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

STATIC_LIBRARY_FLAGS

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>STATIC_LIBRARY_FLAGS_<CONFIG> — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="STATIC_LIBRARY_OPTIONS" href="STATIC_LIBRARY_OPTIONS.html" />
    <link rel="prev" title="STATIC_LIBRARY_FLAGS" href="STATIC_LIBRARY_FLAGS.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

STATIC_LIBRARY_FLAGS_<CONFIG>

<span id="prop_tgt:STATIC_LIBRARY_FLAGS_<CONFIG>">
STATIC_LIBRARY_FLAGS_<CONFIG>¶

Per-configuration archiver (or MSVC librarian) flags for a static library
target.

This is the configuration-specific version of STATIC_LIBRARY_FLAGS.

Note

This property has been superseded by STATIC_LIBRARY_OPTIONS
property.

Previous topic

STATIC_LIBRARY_FLAGS

Next topic

STATIC_LIBRARY_OPTIONS

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

STATIC_LIBRARY_FLAGS_<CONFIG>

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>STATIC_LIBRARY_OPTIONS — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="SUFFIX" href="SUFFIX.html" />
    <link rel="prev" title="STATIC_LIBRARY_FLAGS_<CONFIG>" href="STATIC_LIBRARY_FLAGS_CONFIG.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

STATIC_LIBRARY_OPTIONS

STATIC_LIBRARY_OPTIONS¶

New in version 3.13.

Archiver (or MSVC librarian) flags for a static library target.
Targets that are shared libraries, modules, or executables need to use
the LINK_OPTIONS target property.

This property holds a semicolon-separated list of options
specified so far for its target.  Use set_target_properties() or
set_property() commands to set its content.

Contents of STATIC_LIBRARY_OPTIONS may use "generator expressions" with the
syntax $<...>.  See the cmake-generator-expressions(7) manual
for available expressions.  See the cmake-buildsystem(7) manual
for more on defining buildsystem properties.

Note

This property must be used in preference to STATIC_LIBRARY_FLAGS
property.

Option De-duplication¶

The final set of options used for a target is constructed by
accumulating options from the current target and the usage requirements of
its dependencies.  The set of options is de-duplicated to avoid repetition.

New in version 3.12: While beneficial for individual options, the de-duplication step can break
up option groups.  For example, -option A -option B becomes
-option A B.  One may specify a group of options using shell-like
quoting along with a SHELL: prefix.  The SHELL: prefix is dropped,
and the rest of the option string is parsed using the
separate_arguments() UNIX_COMMAND mode. For example,
"SHELL:-option A" "SHELL:-option B" becomes -option A -option B.

Table of Contents

STATIC_LIBRARY_OPTIONS

Option De-duplication

Previous topic

STATIC_LIBRARY_FLAGS_<CONFIG>

Next topic

SUFFIX

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

STATIC_LIBRARY_OPTIONS

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>SUFFIX — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Swift_COMPILATION_MODE" href="Swift_COMPILATION_MODE.html" />
    <link rel="prev" title="STATIC_LIBRARY_OPTIONS" href="STATIC_LIBRARY_OPTIONS.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SUFFIX

SUFFIX¶

What comes after the target name.

A target property that can be set to override the suffix (such as
.so or .exe) on the name of a library, module or executable.

Previous topic

STATIC_LIBRARY_OPTIONS

Next topic

Swift_COMPILATION_MODE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SUFFIX

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>SYSTEM — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="TEST_LAUNCHER" href="TEST_LAUNCHER.html" />
    <link rel="prev" title="Swift_MODULE_NAME" href="Swift_MODULE_NAME.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SYSTEM

SYSTEM¶

New in version 3.25.

Specifies that a target is a system target.  This has the following
effects:

Entries of INTERFACE_INCLUDE_DIRECTORIES are treated as
system include directories when compiling consumers.
Entries of INTERFACE_SYSTEM_INCLUDE_DIRECTORIES are not
affected, and will always be treated as system include directories.

On Apple platforms, If the FRAMEWORK target property is true,
the frameworks directory is treated as system.

For imported targets, this property defaults to true, which means
that their INTERFACE_INCLUDE_DIRECTORIES and, if the
FRAMEWORK target property is true, frameworks directory are
treated as system directories by default.  If their SYSTEM property is
false, then their INTERFACE_INCLUDE_DIRECTORIES as well as
frameworks will not be treated as system.  Use the EXPORT_NO_SYSTEM
property to change how a target's SYSTEM property is set when it is
installed.

For non-imported targets, this target property is initialized from
the SYSTEM directory property when the target is created.

Previous topic

Swift_MODULE_NAME

Next topic

TEST_LAUNCHER

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

SYSTEM

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>Swift_COMPILATION_MODE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Swift_DEPENDENCIES_FILE" href="Swift_DEPENDENCIES_FILE.html" />
    <link rel="prev" title="SUFFIX" href="SUFFIX.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_COMPILATION_MODE

Swift_COMPILATION_MODE¶

New in version 3.29.

Specify how Swift compiles a target.

The allowed values are:

incremental

Compiles each Swift source in the module separately, resulting in better
parallelism in the build. The compiler emits additional information into
the build directory improving rebuild performance when small changes are made
to the source between rebuilds. This is the best option to use while
iterating on changes in a project.

wholemodule

Whole-module optimizations are slowest to compile, but results in the most
optimized library. The entire context is loaded into once instance of the
compiler, so there is no parallelism across source files in the module.

singlefile

Compiles each source in a Swift modules separately, resulting in better
parallelism. Unlike the incremental build mode, no additional information
is emitted by the compiler during the build, so rebuilding after making small
changes to the source file will not run faster. This option should be used
sparingly, preferring incremental builds, unless working around a compiler
bug.

Use generator expressions to support
per-configuration specification. For example, the code:

add_library(foo foo.swift)
set_property(TARGET foo PROPERTY
  Swift_COMPILATION_MODE "$<IF:$<CONFIG:Release>,wholemodule,incremental>")

sets the Swift compilation mode to wholemodule mode in the release configuration
and sets the property to incremental mode in other configurations.

The property is initialized from the value of the
CMAKE_Swift_COMPILATION_MODE variable, if it is set. If the property
is not set or is empty, then CMake uses the default value incremental to
specify the swift compilation mode.

Note

This property only has effect when policy CMP0157 is set to NEW
prior to the first project() or enable_language() command
that enables the Swift language.

Previous topic

SUFFIX

Next topic

Swift_DEPENDENCIES_FILE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_COMPILATION_MODE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>Swift_DEPENDENCIES_FILE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Swift_LANGUAGE_VERSION" href="Swift_LANGUAGE_VERSION.html" />
    <link rel="prev" title="Swift_COMPILATION_MODE" href="Swift_COMPILATION_MODE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_DEPENDENCIES_FILE

Swift_DEPENDENCIES_FILE¶

New in version 3.15.

This property sets the path for the Swift dependency file (swiftdep) for the
target.  If one is not specified, it will default to <TARGET>.swiftdeps.

Previous topic

Swift_COMPILATION_MODE

Next topic

Swift_LANGUAGE_VERSION

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_DEPENDENCIES_FILE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>Swift_LANGUAGE_VERSION — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Swift_MODULE_DIRECTORY" href="Swift_MODULE_DIRECTORY.html" />
    <link rel="prev" title="Swift_DEPENDENCIES_FILE" href="Swift_DEPENDENCIES_FILE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_LANGUAGE_VERSION

Swift_LANGUAGE_VERSION¶

New in version 3.16.

This property sets the language version for the Swift sources in the target.  If
one is not specified, it will default to
CMAKE_Swift_LANGUAGE_VERSION if specified, otherwise it is the
latest version supported by the compiler.

Previous topic

Swift_DEPENDENCIES_FILE

Next topic

Swift_MODULE_DIRECTORY

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_LANGUAGE_VERSION

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>Swift_MODULE_DIRECTORY — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Swift_MODULE_NAME" href="Swift_MODULE_NAME.html" />
    <link rel="prev" title="Swift_LANGUAGE_VERSION" href="Swift_LANGUAGE_VERSION.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_MODULE_DIRECTORY

Swift_MODULE_DIRECTORY¶

New in version 3.15.

Specify output directory for Swift modules provided by the target.

If the target contains Swift source files, this specifies the directory in which
the modules will be placed.  When this property is not set, the modules will be
placed in the build directory corresponding to the target's source directory.
If the variable CMAKE_Swift_MODULE_DIRECTORY is set when a target is
created its value is used to initialize this property.

Previous topic

Swift_LANGUAGE_VERSION

Next topic

Swift_MODULE_NAME

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_MODULE_DIRECTORY

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>Swift_MODULE_NAME — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="SYSTEM" href="SYSTEM.html" />
    <link rel="prev" title="Swift_MODULE_DIRECTORY" href="Swift_MODULE_DIRECTORY.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_MODULE_NAME

Swift_MODULE_NAME¶

New in version 3.15.

This property specifies the name of the Swift module.  It is defaulted to the
name of the target.

Previous topic

Swift_MODULE_DIRECTORY

Next topic

SYSTEM

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

Swift_MODULE_NAME

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>TEST_LAUNCHER — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="TYPE" href="TYPE.html" />
    <link rel="prev" title="SYSTEM" href="SYSTEM.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

TEST_LAUNCHER

TEST_LAUNCHER¶

New in version 3.29.

Use the given launcher to run executables.
This command will be added as a prefix to add_test() commands
for build target system executables and is meant to be run on the host
machine.

It effectively acts as a run script for tests in a similar way
to how CMAKE_<LANG>_COMPILER_LAUNCHER works for compilation.

If this property contains a semicolon-separated list, then the first value is the command and remaining values are its
arguments.

Contents of TEST_LAUNCHER may use
generator expressions.

This property is initialized by the value of the
CMAKE_TEST_LAUNCHER variable if it is set when a target
is created.

Previous topic

SYSTEM

Next topic

TYPE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

TEST_LAUNCHER

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>TYPE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="UNITY_BUILD" href="UNITY_BUILD.html" />
    <link rel="prev" title="TEST_LAUNCHER" href="TEST_LAUNCHER.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

TYPE

TYPE¶

The type of the target.

This read-only property can be used to test the type of the given
target.  It will be one of STATIC_LIBRARY, MODULE_LIBRARY,
SHARED_LIBRARY, OBJECT_LIBRARY, INTERFACE_LIBRARY, EXECUTABLE
or one of the internal target types.

Previous topic

TEST_LAUNCHER

Next topic

UNITY_BUILD

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

TYPE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>UNITY_BUILD — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="UNITY_BUILD_BATCH_SIZE" href="UNITY_BUILD_BATCH_SIZE.html" />
    <link rel="prev" title="TYPE" href="TYPE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD

UNITY_BUILD¶

New in version 3.16.

When this property is set to true, the target source files will be combined
into batches for faster compilation.  This is done by creating a (set of)
unity sources which #include the original sources, then compiling these
unity sources instead of the originals.  This is known as a Unity or Jumbo
build.

CMake provides different algorithms for selecting which sources are grouped
together into a bucket. Algorithm selection is decided by the
UNITY_BUILD_MODE target property, which has the following acceptable
values:

BATCH
When in this mode CMake determines which files are grouped together.
The UNITY_BUILD_BATCH_SIZE property controls the upper limit on
how many sources can be combined per unity source file.

GROUP
When in this mode each target explicitly specifies how to group
source files. Each source file that has the same
UNITY_GROUP value will be grouped together. Any sources
that don't have this property will be compiled individually. The
UNITY_BUILD_BATCH_SIZE property is ignored when using
this mode.

If no explicit UNITY_BUILD_MODE has been specified, CMake will
default to BATCH.

Unity builds are supported for the following languages:

C

New in version 3.16.

CXX

New in version 3.16.

OBJC

New in version 3.29.

OBJCXX

New in version 3.29.

For targets that mix source files from more than one language, CMake
separates the languages such that each generated unity source file only
contains sources for a single language.

This property is initialized by the value of the CMAKE_UNITY_BUILD
variable when a target is created.

Note

Projects should not directly set the UNITY_BUILD property or its
associated CMAKE_UNITY_BUILD variable to true.  Depending
on the capabilities of the build machine and compiler used, it might or
might not be appropriate to enable unity builds.  Therefore, this feature
should be under developer control, which would normally be through the
developer choosing whether or not to set the CMAKE_UNITY_BUILD
variable on the cmake(1) command line or some other equivalent
method.  However, it IS recommended to set the UNITY_BUILD target
property to false if it is known that enabling unity builds for the
target can lead to problems.

ODR (One definition rule) errors¶

When multiple source files are included into one source file, as is done
for unity builds, it can potentially lead to ODR errors.  CMake provides
a number of measures to help address such problems:

Any source file that has a non-empty COMPILE_OPTIONS,
COMPILE_DEFINITIONS, COMPILE_FLAGS, or
INCLUDE_DIRECTORIES source property will not be combined
into a unity source.

Any source file which is scanned for C++ module sources via
CXX_SCAN_FOR_MODULES, CXX_SCAN_FOR_MODULES, or
membership of a CXX_MODULES file set will not be combined into a unity
source.  See cmake-cxxmodules(7) for details.

Projects can prevent an individual source file from being combined into
a unity source by setting its SKIP_UNITY_BUILD_INCLUSION
source property to true.  This can be a more effective way to prevent
problems with specific files than disabling unity builds for an entire
target.

Projects can set UNITY_BUILD_UNIQUE_ID to cause a valid
C-identifier to be generated which is unique per file in a unity
build.  This can be used to avoid problems with anonymous namespaces
in unity builds.

The UNITY_BUILD_CODE_BEFORE_INCLUDE and
UNITY_BUILD_CODE_AFTER_INCLUDE target properties can be used
to inject code into the unity source files before and after every
#include statement.

The order of source files added to the target via commands like
add_library(), add_executable() or
target_sources() will be preserved in the generated unity source
files.  This can be used to manually enforce a specific grouping based on
the UNITY_BUILD_BATCH_SIZE target property.

Table of Contents

UNITY_BUILD

ODR (One definition rule) errors

Previous topic

TYPE

Next topic

UNITY_BUILD_BATCH_SIZE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>UNITY_BUILD_BATCH_SIZE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="UNITY_BUILD_CODE_AFTER_INCLUDE" href="UNITY_BUILD_CODE_AFTER_INCLUDE.html" />
    <link rel="prev" title="UNITY_BUILD" href="UNITY_BUILD.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_BATCH_SIZE

UNITY_BUILD_BATCH_SIZE¶

New in version 3.16.

Specifies the maximum number of source files that can be combined into any one
unity source file when unity builds are enabled by the UNITY_BUILD
target property.  The original source files will be distributed across as many
unity source files as necessary to honor this limit.

The initial value for this property is taken from the
CMAKE_UNITY_BUILD_BATCH_SIZE variable when the target is created.
If that variable has not been set, the initial value will be 8.

The batch size needs to be selected carefully.  If set too high, the size of
the combined source files could result in the compiler using excessive memory
or hitting other similar limits.  In extreme cases, this can even result in
build failure.  On the other hand, if the batch size is too low, there will be
little gain in build performance.

Although strongly discouraged, the batch size may be set to a value of 0 to
combine all the sources for the target into a single unity file, regardless of
how many sources are involved.  This runs the risk of creating an excessively
large unity source file and negatively impacting the build performance, so
a value of 0 is not generally recommended.

Previous topic

UNITY_BUILD

Next topic

UNITY_BUILD_CODE_AFTER_INCLUDE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_BATCH_SIZE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>UNITY_BUILD_CODE_AFTER_INCLUDE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="UNITY_BUILD_CODE_BEFORE_INCLUDE" href="UNITY_BUILD_CODE_BEFORE_INCLUDE.html" />
    <link rel="prev" title="UNITY_BUILD_BATCH_SIZE" href="UNITY_BUILD_BATCH_SIZE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_CODE_AFTER_INCLUDE

UNITY_BUILD_CODE_AFTER_INCLUDE¶

New in version 3.16.

Code snippet which is included verbatim by the UNITY_BUILD
feature just after every #include statement in the generated unity
source files.  For example:

set(after [[
#if defined(NOMINMAX)
#undef NOMINMAX
#endif
]])
set_target_properties(myTarget PROPERTIES
  UNITY_BUILD_CODE_AFTER_INCLUDE "${after}"
)

See also UNITY_BUILD_CODE_BEFORE_INCLUDE.

Previous topic

UNITY_BUILD_BATCH_SIZE

Next topic

UNITY_BUILD_CODE_BEFORE_INCLUDE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_CODE_AFTER_INCLUDE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>UNITY_BUILD_CODE_BEFORE_INCLUDE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="UNITY_BUILD_MODE" href="UNITY_BUILD_MODE.html" />
    <link rel="prev" title="UNITY_BUILD_CODE_AFTER_INCLUDE" href="UNITY_BUILD_CODE_AFTER_INCLUDE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_CODE_BEFORE_INCLUDE

UNITY_BUILD_CODE_BEFORE_INCLUDE¶

New in version 3.16.

Code snippet which is included verbatim by the UNITY_BUILD
feature just before every #include statement in the generated unity
source files.  For example:

set(before [[
#if !defined(NOMINMAX)
#define NOMINMAX
#endif
]])
set_target_properties(myTarget PROPERTIES
  UNITY_BUILD_CODE_BEFORE_INCLUDE "${before}"
)

See also UNITY_BUILD_CODE_AFTER_INCLUDE.

Previous topic

UNITY_BUILD_CODE_AFTER_INCLUDE

Next topic

UNITY_BUILD_MODE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_CODE_BEFORE_INCLUDE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>UNITY_BUILD_MODE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="UNITY_BUILD_UNIQUE_ID" href="UNITY_BUILD_UNIQUE_ID.html" />
    <link rel="prev" title="UNITY_BUILD_CODE_BEFORE_INCLUDE" href="UNITY_BUILD_CODE_BEFORE_INCLUDE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_MODE

UNITY_BUILD_MODE¶

New in version 3.18.

CMake provides different algorithms for selecting which sources are grouped
together into a bucket. Selection is decided by this property,
which has the following acceptable values:

BATCH

When in this mode CMake determines which files are grouped together.
The UNITY_BUILD_BATCH_SIZE property controls the upper limit on
how many sources can be combined per unity source file.

Example usage:

add_library(example_library
            source1.cxx
            source2.cxx
            source3.cxx
            source4.cxx)

set_target_properties(example_library PROPERTIES
                      UNITY_BUILD_MODE BATCH
                      UNITY_BUILD_BATCH_SIZE 2
                      )

GROUP

When in this mode each target explicitly specifies how to group
source files. Each source file that has the same
UNITY_GROUP value will be grouped together. Any sources
that don't have this property will be compiled individually. The
UNITY_BUILD_BATCH_SIZE property is ignored when using
this mode.

Example usage:

add_library(example_library
            source1.cxx
            source2.cxx
            source3.cxx
            source4.cxx)

set_target_properties(example_library PROPERTIES
                      UNITY_BUILD_MODE GROUP
                      )

set_source_files_properties(source1.cxx source2.cxx source3.cxx
                            PROPERTIES UNITY_GROUP "bucket1"
                            )
set_source_files_properties(source4.cxx
                            PROPERTIES UNITY_GROUP "bucket2"
                            )

If no explicit UNITY_BUILD_MODE has been specified, CMake will
default to BATCH.

Previous topic

UNITY_BUILD_CODE_BEFORE_INCLUDE

Next topic

UNITY_BUILD_UNIQUE_ID

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_MODE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>UNITY_BUILD_UNIQUE_ID — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VERIFY_INTERFACE_HEADER_SETS" href="VERIFY_INTERFACE_HEADER_SETS.html" />
    <link rel="prev" title="UNITY_BUILD_MODE" href="UNITY_BUILD_MODE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_UNIQUE_ID

UNITY_BUILD_UNIQUE_ID¶

New in version 3.20.

The name of a valid C-identifier which is set to a unique per-file
value during unity builds.

When this property is populated and when UNITY_BUILD
is true, the property value is used to define a compiler definition
of the specified name. The value of the defined symbol is unspecified,
but it is unique per file path.

Given:

set_target_properties(myTarget PROPERTIES
  UNITY_BUILD "ON"
  UNITY_BUILD_UNIQUE_ID "MY_UNITY_ID"
)

the MY_UNITY_ID symbol is defined to a unique per-file value.

One known use case for this identifier is to disambiguate the
variables in an anonymous namespace in a limited scope.
Anonymous namespaces present a problem for unity builds because
they are used to ensure that certain variables and declarations
are scoped to a translation unit which is approximated by a
single source file.  When source files are combined in a unity
build file, those variables in different files are combined in
a single translation unit and the names clash.  This property can
be used to avoid that with code like the following:

// Needed for when unity builds are disabled
#ifndef MY_UNITY_ID
#define MY_UNITY_ID
#endif

namespace { namespace MY_UNITY_ID {
  // The name 'i' clashes (or could clash) with other
  // variables in other anonymous namespaces
  int i = 42;
}}

int use_var()
{
  return MY_UNITY_ID::i;
}

The pseudonymous namespace is used within a truly anonymous namespace.
On many platforms, this maintains the invariant that the symbols within
do not get external linkage when performing a unity build.

Previous topic

UNITY_BUILD_MODE

Next topic

VERIFY_INTERFACE_HEADER_SETS

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

UNITY_BUILD_UNIQUE_ID

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VERIFY_INTERFACE_HEADER_SETS — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VERSION" href="VERSION.html" />
    <link rel="prev" title="UNITY_BUILD_UNIQUE_ID" href="UNITY_BUILD_UNIQUE_ID.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VERIFY_INTERFACE_HEADER_SETS

VERIFY_INTERFACE_HEADER_SETS¶

New in version 3.24.

Used to verify that all headers in a target's PUBLIC and INTERFACE
header sets can be included on their own.

When this property is set to true, and the target is an object library, static
library, shared library, interface library, or executable with exports enabled,
and the target has one or more PUBLIC or INTERFACE header sets, an
object library target named <target_name>_verify_interface_header_sets is
created. This verification target has one source file per header in the
PUBLIC and INTERFACE header sets. Each source file only includes its
associated header file. The verification target links against the original
target to get all of its usage requirements. The verification target has its
EXCLUDE_FROM_ALL and DISABLE_PRECOMPILE_HEADERS
properties set to true, and its AUTOMOC, AUTORCC,
AUTOUIC, and UNITY_BUILD properties set to false.

If the header's LANGUAGE property is set, the value of that property
is used to determine the language with which to compile the header file.
Otherwise, if the target has any C++ sources, the header is compiled as C++.
Otherwise, if the target has any C sources, the header is compiled as C.
Otherwise, if C++ is enabled globally, the header is compiled as C++.
Otherwise, if C is enabled globally, the header is compiled as C. Otherwise,
the header file is not compiled.

If the header's SKIP_LINTING property is set to true, the file is
not compiled.

If any verification targets are created, a top-level target called
all_verify_interface_header_sets is created which depends on all
verification targets.

This property is initialized by the value of the
CMAKE_VERIFY_INTERFACE_HEADER_SETS variable if it is set when
a target is created.

If the project wishes to control which header sets are verified by this
property, it can set INTERFACE_HEADER_SETS_TO_VERIFY.

Previous topic

UNITY_BUILD_UNIQUE_ID

Next topic

VERSION

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VERIFY_INTERFACE_HEADER_SETS

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VERSION — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VISIBILITY_INLINES_HIDDEN" href="VISIBILITY_INLINES_HIDDEN.html" />
    <link rel="prev" title="VERIFY_INTERFACE_HEADER_SETS" href="VERIFY_INTERFACE_HEADER_SETS.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VERSION

VERSION¶

Version number of a shared library target.

For shared libraries VERSION and SOVERSION can be used
to specify the build version and ABI version respectively.  When building or
installing appropriate symlinks are created if the platform supports
symlinks and the linker supports so-names.  If only one of both is
specified the missing is assumed to have the same version number.  For
executables VERSION can be used to specify the build version.  When
building or installing appropriate symlinks are created if the
platform supports symlinks.

A common convention is to specify both VERSION and SOVERSION
such that SOVERSION matches the first component of VERSION:

set_target_properties(mylib PROPERTIES VERSION 1.2.3 SOVERSION 1)

The idea is that breaking changes to the ABI increment both the
SOVERSION and the major VERSION number.

Windows Versions¶

For shared libraries and executables on Windows the VERSION
attribute is parsed to extract a <major>.<minor> version number.
These numbers are used as the image version of the binary.

Mach-O Versions¶

For shared libraries and executables on Mach-O systems (e.g. macOS, iOS),
the SOVERSION property corresponds to the compatibility version
and VERSION corresponds to the current version (unless Mach-O specific
overrides are provided, as discussed below).
See the FRAMEWORK target property for an example.

For shared libraries, the MACHO_COMPATIBILITY_VERSION and
MACHO_CURRENT_VERSION properties can be used to
override the compatibility version and current version respectively.
Note that SOVERSION will still be used to form the
install_name and both SOVERSION and VERSION may also
affect the file and symlink names.

Versions of Mach-O binaries may be checked with the otool -L <binary>
command.

Table of Contents

VERSION

Windows Versions

Mach-O Versions

Previous topic

VERIFY_INTERFACE_HEADER_SETS

Next topic

VISIBILITY_INLINES_HIDDEN

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VERSION

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VISIBILITY_INLINES_HIDDEN — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_CONFIGURATION_TYPE" href="VS_CONFIGURATION_TYPE.html" />
    <link rel="prev" title="VERSION" href="VERSION.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VISIBILITY_INLINES_HIDDEN

VISIBILITY_INLINES_HIDDEN¶

Whether to add a compile flag to hide symbols of inline functions

The VISIBILITY_INLINES_HIDDEN property determines whether a flag for
hiding symbols for inline functions, such as -fvisibility-inlines-hidden,
should be used when invoking the compiler.  This property affects compilation
in sources of all types of targets (subject to policy CMP0063).

This property is initialized by
the value of the CMAKE_VISIBILITY_INLINES_HIDDEN variable if it
is set when a target is created.

Previous topic

VERSION

Next topic

VS_CONFIGURATION_TYPE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VISIBILITY_INLINES_HIDDEN

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_CONFIGURATION_TYPE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DEBUGGER_COMMAND" href="VS_DEBUGGER_COMMAND.html" />
    <link rel="prev" title="VISIBILITY_INLINES_HIDDEN" href="VISIBILITY_INLINES_HIDDEN.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_CONFIGURATION_TYPE

VS_CONFIGURATION_TYPE¶

New in version 3.6.

Visual Studio project configuration type.

Sets the ConfigurationType attribute for a generated Visual Studio project.
The property value may use
generator expressions.
If this property is set, it overrides the default setting that is based on the
target type (e.g. StaticLibrary, Application, ...).

Supported on Visual Studio Generators for VS 2010 and higher.

Previous topic

VISIBILITY_INLINES_HIDDEN

Next topic

VS_DEBUGGER_COMMAND

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_CONFIGURATION_TYPE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_DEBUGGER_COMMAND — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DEBUGGER_COMMAND_ARGUMENTS" href="VS_DEBUGGER_COMMAND_ARGUMENTS.html" />
    <link rel="prev" title="VS_CONFIGURATION_TYPE" href="VS_CONFIGURATION_TYPE.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DEBUGGER_COMMAND

VS_DEBUGGER_COMMAND¶

New in version 3.12.

Sets the local debugger command for Visual Studio C++ targets.
The property value may use
generator expressions.
This is defined in <LocalDebuggerCommand> in the Visual Studio
project file.  This property is initialized by the value of the variable
CMAKE_VS_DEBUGGER_COMMAND if it is set when a target is
created.

This property only works for Visual Studio 12 2013 and above;
it is ignored on other generators.

Previous topic

VS_CONFIGURATION_TYPE

Next topic

VS_DEBUGGER_COMMAND_ARGUMENTS

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DEBUGGER_COMMAND

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_DEBUGGER_COMMAND_ARGUMENTS — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DEBUGGER_ENVIRONMENT" href="VS_DEBUGGER_ENVIRONMENT.html" />
    <link rel="prev" title="VS_DEBUGGER_COMMAND" href="VS_DEBUGGER_COMMAND.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DEBUGGER_COMMAND_ARGUMENTS

VS_DEBUGGER_COMMAND_ARGUMENTS¶

New in version 3.13.

Sets the local debugger command line arguments for Visual Studio C++ targets.
The property value may use
generator expressions.
This is defined in <LocalDebuggerCommandArguments> in the Visual Studio
project file.  This property is initialized by the value of the variable
CMAKE_VS_DEBUGGER_COMMAND_ARGUMENTS if it is set when a target is
created.

This property only works for Visual Studio 12 2013 and above;
it is ignored on other generators.

Previous topic

VS_DEBUGGER_COMMAND

Next topic

VS_DEBUGGER_ENVIRONMENT

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DEBUGGER_COMMAND_ARGUMENTS

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_DEBUGGER_ENVIRONMENT — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DEBUGGER_WORKING_DIRECTORY" href="VS_DEBUGGER_WORKING_DIRECTORY.html" />
    <link rel="prev" title="VS_DEBUGGER_COMMAND_ARGUMENTS" href="VS_DEBUGGER_COMMAND_ARGUMENTS.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DEBUGGER_ENVIRONMENT

VS_DEBUGGER_ENVIRONMENT¶

New in version 3.13.

Sets the local debugger environment for Visual Studio C++ targets.
The property value may use
generator expressions.
This is defined in <LocalDebuggerEnvironment> in the Visual Studio
project file.  This property is initialized by the value of the variable
CMAKE_VS_DEBUGGER_ENVIRONMENT if it is set when a target is
created.

This property only works for Visual Studio 12 2013 and above;
it is ignored on other generators.

Previous topic

VS_DEBUGGER_COMMAND_ARGUMENTS

Next topic

VS_DEBUGGER_WORKING_DIRECTORY

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DEBUGGER_ENVIRONMENT

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_DEBUGGER_WORKING_DIRECTORY — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DESKTOP_EXTENSIONS_VERSION" href="VS_DESKTOP_EXTENSIONS_VERSION.html" />
    <link rel="prev" title="VS_DEBUGGER_ENVIRONMENT" href="VS_DEBUGGER_ENVIRONMENT.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DEBUGGER_WORKING_DIRECTORY

VS_DEBUGGER_WORKING_DIRECTORY¶

New in version 3.8.

Sets the local debugger working directory for Visual Studio C++ targets.
The property value may use
generator expressions.
This is defined in <LocalDebuggerWorkingDirectory> in the Visual Studio
project file.  This property is initialized by the value of the variable
CMAKE_VS_DEBUGGER_WORKING_DIRECTORY if it is set when a target is
created.

This property only works for Visual Studio 12 2013 and above;
it is ignored on other generators.

Previous topic

VS_DEBUGGER_ENVIRONMENT

Next topic

VS_DESKTOP_EXTENSIONS_VERSION

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DEBUGGER_WORKING_DIRECTORY

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_DESKTOP_EXTENSIONS_VERSION — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DOTNET_DOCUMENTATION_FILE" href="VS_DOTNET_DOCUMENTATION_FILE.html" />
    <link rel="prev" title="VS_DEBUGGER_WORKING_DIRECTORY" href="VS_DEBUGGER_WORKING_DIRECTORY.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DESKTOP_EXTENSIONS_VERSION

VS_DESKTOP_EXTENSIONS_VERSION¶

New in version 3.4.

Visual Studio Windows 10 Desktop Extensions Version

Specifies the version of the Desktop Extensions that should be included in the
target. For example 10.0.10240.0. If the value is not specified, the Desktop
Extensions will not be included. To use the same version of the extensions as
the Windows 10 SDK that is being used, you can use the
CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION variable.

Previous topic

VS_DEBUGGER_WORKING_DIRECTORY

Next topic

VS_DOTNET_DOCUMENTATION_FILE

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DESKTOP_EXTENSIONS_VERSION

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_DOTNET_DOCUMENTATION_FILE — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DOTNET_REFERENCE_<refname>" href="VS_DOTNET_REFERENCE_refname.html" />
    <link rel="prev" title="VS_DESKTOP_EXTENSIONS_VERSION" href="VS_DESKTOP_EXTENSIONS_VERSION.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DOTNET_DOCUMENTATION_FILE

VS_DOTNET_DOCUMENTATION_FILE¶

New in version 3.17.

Visual Studio managed project .NET documentation output

Sets the target XML documentation file output.

Previous topic

VS_DESKTOP_EXTENSIONS_VERSION

Next topic

VS_DOTNET_REFERENCE_<refname>

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DOTNET_DOCUMENTATION_FILE

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname> — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DOTNET_REFERENCES" href="VS_DOTNET_REFERENCES.html" />
    <link rel="prev" title="VS_DOTNET_REFERENCE_<refname>" href="VS_DOTNET_REFERENCE_refname.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname>

<span id="prop_tgt:VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname>">
VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname>¶

New in version 3.10.

Defines an XML property <tagname> for a .NET reference
<refname>.

Reference properties can be set for .NET references which are
defined by the target properties VS_DOTNET_REFERENCES,
VS_DOTNET_REFERENCE_<refname>
and also for project references to other C# targets which are
established by target_link_libraries().

This property is only applicable to C# targets and Visual Studio
generators 2010 and later.

Previous topic

VS_DOTNET_REFERENCE_<refname>

Next topic

VS_DOTNET_REFERENCES

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname>

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.


code:
<!DOCTYPE html>

    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />

  <title>VS_DOTNET_REFERENCES — CMake 3.29.0-rc3 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />

    <link rel="icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="VS_DOTNET_REFERENCES_COPY_LOCAL" href="VS_DOTNET_REFERENCES_COPY_LOCAL.html" />
    <link rel="prev" title="VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname>" href="VS_DOTNET_REFERENCEPROP_refname_TAG_tagname.html" />

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DOTNET_REFERENCES

VS_DOTNET_REFERENCES¶

Visual Studio managed project .NET references

Adds one or more semicolon-delimited .NET references to a generated
Visual Studio project.  For example, "System;System.Windows.Forms".

Previous topic

VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname>

Next topic

VS_DOTNET_REFERENCES_COPY_LOCAL

This Page

Show Source

Quick search

    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>

Navigation

          index

          next |

          previous |

    CMake »

    3.29.0-rc3 Documentation »

cmake-properties(7) »

VS_DOTNET_REFERENCES

        © Copyright 2000-2024 Kitware, Inc. and Contributors.
      Created using Sphinx 6.2.1.