<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
  <title>add_custom_target &mdash; CMake 3.8.2 Documentation</title>

    
    <link rel="stylesheet" href="../_static/cmake.css" type="text/css" />
    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '../',
        VERSION:     '3.8.2',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true,
        SOURCELINK_SUFFIX: '.txt'
      };
    </script>
    <script type="text/javascript" src="../_static/jquery.js"></script>
    <script type="text/javascript" src="../_static/underscore.js"></script>
    <script type="text/javascript" src="../_static/doctools.js"></script>
    <link rel="shortcut 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="add_definitions" href="add_definitions.html" />
    <link rel="prev" title="add_custom_command" href="add_custom_command.html" /> 
  </head>
  <body role="document">
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="add_definitions.html" title="add_definitions"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="add_custom_command.html" title="add_custom_command"
             accesskey="P">previous</a> |</li>
  <li>
    <img src="../_static/cmake-logo-16.png" alt=""
         style="vertical-align: middle; margin-top: -2px" />
  </li>
  <li>
    <a href="https://cmake.org/">CMake</a> &#187;
  </li>
  <li>
    <a href="../index.html">3.8.2 Documentation</a> &#187;
  </li>

          <li class="nav-item nav-item-1"><a href="../manual/cmake-commands.7.html" accesskey="U">cmake-commands(7)</a> &#187;</li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="add-custom-target">
<span id="command:add_custom_target"></span><h1>add_custom_target<a class="headerlink" href="#add-custom-target" title="Permalink to this headline">¶</a></h1>
<p>Add a target with no output so it will always be built.</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">add_custom_target</span><span class="p">(</span><span class="n">Name</span> <span class="p">[</span><span class="n">ALL</span><span class="p">]</span> <span class="p">[</span><span class="n">command1</span> <span class="p">[</span><span class="n">args1</span><span class="o">...</span><span class="p">]]</span>
                  <span class="p">[</span><span class="n">COMMAND</span> <span class="n">command2</span> <span class="p">[</span><span class="n">args2</span><span class="o">...</span><span class="p">]</span> <span class="o">...</span><span class="p">]</span>
                  <span class="p">[</span><span class="n">DEPENDS</span> <span class="n">depend</span> <span class="n">depend</span> <span class="n">depend</span> <span class="o">...</span> <span class="p">]</span>
                  <span class="p">[</span><span class="n">BYPRODUCTS</span> <span class="p">[</span><span class="n">files</span><span class="o">...</span><span class="p">]]</span>
                  <span class="p">[</span><span class="n">WORKING_DIRECTORY</span> <span class="nb">dir</span><span class="p">]</span>
                  <span class="p">[</span><span class="n">COMMENT</span> <span class="n">comment</span><span class="p">]</span>
                  <span class="p">[</span><span class="n">VERBATIM</span><span class="p">]</span> <span class="p">[</span><span class="n">USES_TERMINAL</span><span class="p">]</span>
                  <span class="p">[</span><span class="n">COMMAND_EXPAND_LISTS</span><span class="p">]</span>
                  <span class="p">[</span><span class="n">SOURCES</span> <span class="n">src1</span> <span class="p">[</span><span class="n">src2</span><span class="o">...</span><span class="p">]])</span>
</pre></div>
</div>
<p>Adds a target with the given name that executes the given commands.
The target has no output file and is <em>always considered out of date</em>
even if the commands try to create a file with the name of the target.
Use the <span class="target" id="index-0-command:add_custom_command"></span><a class="reference internal" href="add_custom_command.html#command:add_custom_command" title="add_custom_command"><code class="xref cmake cmake-command docutils literal"><span class="pre">add_custom_command()</span></code></a> command to generate a file with
dependencies.  By default nothing depends on the custom target.  Use
the <span class="target" id="index-0-command:add_dependencies"></span><a class="reference internal" href="add_dependencies.html#command:add_dependencies" title="add_dependencies"><code class="xref cmake cmake-command docutils literal"><span class="pre">add_dependencies()</span></code></a> command to add dependencies to or
from other targets.</p>
<p>The options are:</p>
<dl class="docutils">
<dt><code class="docutils literal"><span class="pre">ALL</span></code></dt>
<dd>Indicate that this target should be added to the default build
target so that it will be run every time (the command cannot be
called <code class="docutils literal"><span class="pre">ALL</span></code>).</dd>
<dt><code class="docutils literal"><span class="pre">BYPRODUCTS</span></code></dt>
<dd><p class="first">Specify the files the command is expected to produce but whose
modification time may or may not be updated on subsequent builds.
If a byproduct name is a relative path it will be interpreted
relative to the build tree directory corresponding to the
current source directory.
Each byproduct file will be marked with the <span class="target" id="index-0-prop_sf:GENERATED"></span><a class="reference internal" href="../prop_sf/GENERATED.html#prop_sf:GENERATED" title="GENERATED"><code class="xref cmake cmake-prop_sf docutils literal"><span class="pre">GENERATED</span></code></a>
source file property automatically.</p>
<p>Explicit specification of byproducts is supported by the
<span class="target" id="index-0-generator:Ninja"></span><a class="reference internal" href="../generator/Ninja.html#generator:Ninja" title="Ninja"><code class="xref cmake cmake-generator docutils literal"><span class="pre">Ninja</span></code></a> generator to tell the <code class="docutils literal"><span class="pre">ninja</span></code> build tool
how to regenerate byproducts when they are missing.  It is
also useful when other build rules (e.g. custom commands)
depend on the byproducts.  Ninja requires a build rule for any
generated file on which another rule depends even if there are
order-only dependencies to ensure the byproducts will be
available before their dependents build.</p>
<p class="last">The <code class="docutils literal"><span class="pre">BYPRODUCTS</span></code> option is ignored on non-Ninja generators
except to mark byproducts <code class="docutils literal"><span class="pre">GENERATED</span></code>.</p>
</dd>
<dt><code class="docutils literal"><span class="pre">COMMAND</span></code></dt>
<dd><p class="first">Specify the command-line(s) to execute at build time.
If more than one <code class="docutils literal"><span class="pre">COMMAND</span></code> is specified they will be executed in order,
but <em>not</em> necessarily composed into a stateful shell or batch script.
(To run a full script, use the <span class="target" id="index-0-command:configure_file"></span><a class="reference internal" href="configure_file.html#command:configure_file" title="configure_file"><code class="xref cmake cmake-command docutils literal"><span class="pre">configure_file()</span></code></a> command or the
<span class="target" id="index-0-command:file"></span><a class="reference internal" href="file.html#command:file" title="file"><code class="xref cmake cmake-command docutils literal"><span class="pre">file(GENERATE)</span></code></a> command to create it, and then specify
a <code class="docutils literal"><span class="pre">COMMAND</span></code> to launch it.)</p>
<p>If <code class="docutils literal"><span class="pre">COMMAND</span></code> specifies an executable target name (created by the
<span class="target" id="index-0-command:add_executable"></span><a class="reference internal" href="add_executable.html#command:add_executable" title="add_executable"><code class="xref cmake cmake-command docutils literal"><span class="pre">add_executable()</span></code></a> command) it will automatically be replaced
by the location of the executable created at build time. If set, the
<span class="target" id="index-0-prop_tgt:CROSSCOMPILING_EMULATOR"></span><a class="reference internal" href="../prop_tgt/CROSSCOMPILING_EMULATOR.html#prop_tgt:CROSSCOMPILING_EMULATOR" title="CROSSCOMPILING_EMULATOR"><code class="xref cmake cmake-prop_tgt docutils literal"><span class="pre">CROSSCOMPILING_EMULATOR</span></code></a> executable target property will
also be prepended to the command to allow the executable to run on
the host.
Additionally a target-level dependency will be added so that the
executable target will be built before this custom target.</p>
<p>Arguments to <code class="docutils literal"><span class="pre">COMMAND</span></code> may use
<span class="target" id="index-0-manual:cmake-generator-expressions(7)"></span><a class="reference internal" href="../manual/cmake-generator-expressions.7.html#manual:cmake-generator-expressions(7)" title="cmake-generator-expressions(7)"><code class="xref cmake cmake-manual docutils literal"><span class="pre">generator</span> <span class="pre">expressions</span></code></a>.
References to target names in generator expressions imply target-level
dependencies.</p>
<p class="last">The command and arguments are optional and if not specified an empty
target will be created.</p>
</dd>
<dt><code class="docutils literal"><span class="pre">COMMENT</span></code></dt>
<dd>Display the given message before the commands are executed at
build time.</dd>
<dt><code class="docutils literal"><span class="pre">DEPENDS</span></code></dt>
<dd><p class="first">Reference files and outputs of custom commands created with
<span class="target" id="index-1-command:add_custom_command"></span><a class="reference internal" href="add_custom_command.html#command:add_custom_command" title="add_custom_command"><code class="xref cmake cmake-command docutils literal"><span class="pre">add_custom_command()</span></code></a> command calls in the same directory
(<code class="docutils literal"><span class="pre">CMakeLists.txt</span></code> file).  They will be brought up to date when
the target is built.</p>
<p class="last">Use the <span class="target" id="index-1-command:add_dependencies"></span><a class="reference internal" href="add_dependencies.html#command:add_dependencies" title="add_dependencies"><code class="xref cmake cmake-command docutils literal"><span class="pre">add_dependencies()</span></code></a> command to add dependencies
on other targets.</p>
</dd>
<dt><code class="docutils literal"><span class="pre">COMMAND_EXPAND_LISTS</span></code></dt>
<dd>Lists in <code class="docutils literal"><span class="pre">COMMAND</span></code> arguments will be expanded, including those
created with
<span class="target" id="index-1-manual:cmake-generator-expressions(7)"></span><a class="reference internal" href="../manual/cmake-generator-expressions.7.html#manual:cmake-generator-expressions(7)" title="cmake-generator-expressions(7)"><code class="xref cmake cmake-manual docutils literal"><span class="pre">generator</span> <span class="pre">expressions</span></code></a>,
allowing <code class="docutils literal"><span class="pre">COMMAND</span></code> arguments such as
<code class="docutils literal"><span class="pre">${CC}</span> <span class="pre">&quot;-I$&lt;JOIN:$&lt;TARGET_PROPERTY:foo,INCLUDE_DIRECTORIES&gt;,;-I&gt;&quot;</span> <span class="pre">foo.cc</span></code>
to be properly expanded.</dd>
<dt><code class="docutils literal"><span class="pre">SOURCES</span></code></dt>
<dd>Specify additional source files to be included in the custom target.
Specified source files will be added to IDE project files for
convenience in editing even if they have no build rules.</dd>
<dt><code class="docutils literal"><span class="pre">VERBATIM</span></code></dt>
<dd>All arguments to the commands will be escaped properly for the
build tool so that the invoked command receives each argument
unchanged.  Note that one level of escapes is still used by the
CMake language processor before <code class="docutils literal"><span class="pre">add_custom_target</span></code> even sees
the arguments.  Use of <code class="docutils literal"><span class="pre">VERBATIM</span></code> is recommended as it enables
correct behavior.  When <code class="docutils literal"><span class="pre">VERBATIM</span></code> is not given the behavior
is platform specific because there is no protection of
tool-specific special characters.</dd>
<dt><code class="docutils literal"><span class="pre">USES_TERMINAL</span></code></dt>
<dd>The command will be given direct access to the terminal if possible.
With the <span class="target" id="index-1-generator:Ninja"></span><a class="reference internal" href="../generator/Ninja.html#generator:Ninja" title="Ninja"><code class="xref cmake cmake-generator docutils literal"><span class="pre">Ninja</span></code></a> generator, this places the command in
the <code class="docutils literal"><span class="pre">console</span></code> <span class="target" id="index-0-prop_gbl:JOB_POOLS"></span><a class="reference internal" href="../prop_gbl/JOB_POOLS.html#prop_gbl:JOB_POOLS" title="JOB_POOLS"><code class="xref cmake cmake-prop_gbl docutils literal"><span class="pre">pool</span></code></a>.</dd>
<dt><code class="docutils literal"><span class="pre">WORKING_DIRECTORY</span></code></dt>
<dd>Execute the command with the given current working directory.
If it is a relative path it will be interpreted relative to the
build tree directory corresponding to the current source directory.</dd>
</dl>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h4>Previous topic</h4>
  <p class="topless"><a href="add_custom_command.html"
                        title="previous chapter">add_custom_command</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="add_definitions.html"
                        title="next chapter">add_definitions</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../_sources/command/add_custom_target.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <form class="search" action="../search.html" method="get">
      <div><input type="text" name="q" /></div>
      <div><input type="submit" value="Go" /></div>
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="add_definitions.html" title="add_definitions"
             >next</a> |</li>
        <li class="right" >
          <a href="add_custom_command.html" title="add_custom_command"
             >previous</a> |</li>
  <li>
    <img src="../_static/cmake-logo-16.png" alt=""
         style="vertical-align: middle; margin-top: -2px" />
  </li>
  <li>
    <a href="https://cmake.org/">CMake</a> &#187;
  </li>
  <li>
    <a href="../index.html">3.8.2 Documentation</a> &#187;
  </li>

          <li class="nav-item nav-item-1"><a href="../manual/cmake-commands.7.html" >cmake-commands(7)</a> &#187;</li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
        &#169; Copyright 2000-2017 Kitware, Inc. and Contributors.
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.5.2.
    </div>
  </body>
</html>