<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Mac OS X cmake scripts don’t test for necessary code-signing capacity before attempting to build"
   href="https://bugs.llvm.org/show_bug.cgi?id=36803">36803</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Mac OS X cmake scripts don’t test for necessary code-signing capacity before attempting to build
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Build scripts
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Macintosh
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>MacOS X
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>cmake
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>fish2000@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>If you are building LLVM using `cmake` on a Macintosh and you wish to include
any of the components that require code-signed binaries, you will need to have
already gone through the (perhaps infamous) manual process of creating a
self-signed code-signing certificate in your System Keychain:

    <a href="https://llvm.org/svn/llvm-project/lldb/trunk/docs/code-signing.txt">https://llvm.org/svn/llvm-project/lldb/trunk/docs/code-signing.txt</a>

… if you haven’t already performed everything listed therein, or if this
procedure is somehow alien or off-putting to you, you may be stranded somewhat:
your `cmake` configure step will have successfully executed, but your build
phase will have choked out with a fatal error – likely with one whose
orthogonal nature to the problem will fail to lead to a solution.

A `cmake` function that tests for proper code-signing capacity (by building a
hello-world-ish program, and subsequently invoking `/usr/bin/codesign` on the
programs’ output binary) would surely be a valuable addition to this project,
no?

I, myself, had generated the certificate some time ago, and was happily
building LLVM with all available options – until today, when I was met with the
same sort of cryptically un-Googleable build-time errors. I eventually realized
that my certificate had past its “use-by” date, of two years’ past the
generation date, and had finally expired.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>