
<!DOCTYPE html>

<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>CTEST_CUSTOM_WARNING_MATCH &mdash; CMake 3.23.1 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />
    
    <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
    <script src="../_static/jquery.js"></script>
    <script src="../_static/underscore.js"></script>
    <script 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="CTEST_CVS_CHECKOUT" href="CTEST_CVS_CHECKOUT.html" />
    <link rel="prev" title="CTEST_CUSTOM_WARNING_EXCEPTION" href="CTEST_CUSTOM_WARNING_EXCEPTION.html" />
 

  </head><body>

    <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="CTEST_CVS_CHECKOUT.html" title="CTEST_CVS_CHECKOUT"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="CTEST_CUSTOM_WARNING_EXCEPTION.html" title="CTEST_CUSTOM_WARNING_EXCEPTION"
             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.23.1 Documentation</a> &#187;
  </li>

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

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="ctest-custom-warning-match">
<span id="variable:CTEST_CUSTOM_WARNING_MATCH"></span><h1>CTEST_CUSTOM_WARNING_MATCH<a class="headerlink" href="#ctest-custom-warning-match" title="Permalink to this headline">¶</a></h1>
<p>A list of regular expressions which will be used to detect warning messages in
build outputs by the <span class="target" id="index-0-command:ctest_build"></span><a class="reference internal" href="../command/ctest_build.html#command:ctest_build" title="ctest_build"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">ctest_build()</span></code></a> command.</p>
<p>It is initialized by <span class="target" id="index-0-manual:ctest(1)"></span><a class="reference internal" href="../manual/ctest.1.html#manual:ctest(1)" title="ctest(1)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">ctest(1)</span></code></a>, but may be edited in a <code class="docutils literal notranslate"><span class="pre">CTestCustom</span></code>
file. See <span class="target" id="index-0-command:ctest_read_custom_files"></span><a class="reference internal" href="../command/ctest_read_custom_files.html#command:ctest_read_custom_files" title="ctest_read_custom_files"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">ctest_read_custom_files()</span></code></a> documentation.</p>
</div>


            <div class="clearer"></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="CTEST_CUSTOM_WARNING_EXCEPTION.html"
                        title="previous chapter">CTEST_CUSTOM_WARNING_EXCEPTION</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="CTEST_CVS_CHECKOUT.html"
                        title="next chapter">CTEST_CVS_CHECKOUT</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../_sources/variable/CTEST_CUSTOM_WARNING_MATCH.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <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>
    </div>
</div>
<script>$('#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="CTEST_CVS_CHECKOUT.html" title="CTEST_CVS_CHECKOUT"
             >next</a> |</li>
        <li class="right" >
          <a href="CTEST_CUSTOM_WARNING_EXCEPTION.html" title="CTEST_CUSTOM_WARNING_EXCEPTION"
             >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.23.1 Documentation</a> &#187;
  </li>

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

    <div class="footer" role="contentinfo">
        &#169; Copyright 2000-2022 Kitware, Inc. and Contributors.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 4.1.2.
    </div>
  </body>
</html>