summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/docs/code-signing.txt22
1 files changed, 18 insertions, 4 deletions
diff --git a/lldb/docs/code-signing.txt b/lldb/docs/code-signing.txt
index 97d3d75c2c7..310f3521e54 100644
--- a/lldb/docs/code-signing.txt
+++ b/lldb/docs/code-signing.txt
@@ -1,7 +1,14 @@
-On MacOSX lldb needs to be code signed. The Debug and Release builds
-are set to code sign using a code signing certificate named
+On MacOSX lldb needs to be code signed. The Debug, DebugClang and Release
+builds are set to code sign using a code signing certificate named
lldb_codesign.
+If you have re-installed a new OS, please delete all old lldb_codesign items
+from your keychain. There will be 3: a code signing certification and a public
+and private key. Reboot after deleting them. You will also need to delete and
+build folders that contained old signed items. The darwin kernel will cache
+code sigining using the executable's file system node, so you will need to
+delete the file so the kernel clears its cache.
+
If you don't have one yet you will need to:
- Launch /Applications/Utilities/Keychain Access.app
@@ -34,20 +41,27 @@ The next steps are necessary on SnowLeopard, but are probably because of a bug
how Keychain Access makes certificates.
[Note: These also apply for Lion and Mountain Lion.]
-- Option-drag the new lldb_codesign certificate from the login keychain to
+- Drag the new lldb_codesign certificate from the login keychain to
the System keychain in the Keychains pane of the main Keychain Access window
to make a copy of this certificate in the System keychain. You'll have to
authorize a few more times, set it to be "Always trusted" when asked.
+- Make sure there is no "~/Desktop/lldb_codesign.cer" file on your desktop,
+ if there is one, delete it first, otherwise when you drag a copy of the
+ lldb_codesign certificate to your desktop it will get renamed as
+ "lldb_codesign_1.cer" and the security command you run below will trust the
+ old incorrect certificate.
- Switch to the System keychain, and drag the copy of lldb_codesign you just
made there onto the desktop.
- Switch to Terminal, and run the following:
sudo security add-trust -d -r trustRoot -p basic -p codeSign -k /Library/Keychains/System.keychain ~/Desktop/lldb_codesign.cer
+rm -rf ~/Desktop/lldb_codesign.cer
- Right click on the "lldb_codesign" certificate in the "System" keychain (NOT
"login", but the one in "System"), and select "Delete" to delete it from
the "System" keychain.
- Reboot
-- Clean and rebuild lldb and you should be able to debug.
+- Clean by removing all previously creating code signed binarires and rebuild
+ lldb and you should be able to debug.
That should do it.
OpenPOWER on IntegriCloud