OSDN Git Service

2013-01-04 Joel Brobecker <brobecker@adacore.com brobecker>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 4 Jan 2013 09:14:29 +0000 (09:14 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 4 Jan 2013 09:14:29 +0000 (09:14 +0000)
* gnat_ugn.texi: Document procedure to codesign GDB on Darwin.
Update doc on gnattest --separates switch.

2013-01-04  Thomas Quinot  <quinot@adacore.com>

* s-chepoo.ads: Minor reformatting.

2013-01-04  Arnaud Charlet  <charlet@adacore.com>

* usage.adb: Remove mention of -gnatN in usage.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194889 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/ChangeLog
gcc/ada/gnat_ugn.texi
gcc/ada/s-chepoo.ads
gcc/ada/usage.adb

index f765a8e..5e83215 100644 (file)
@@ -1,3 +1,16 @@
+2013-01-04  Joel Brobecker  <brobecker@adacore.com brobecker>
+
+       * gnat_ugn.texi: Document procedure to codesign GDB on Darwin.
+       Update doc on gnattest --separates switch.
+
+2013-01-04  Thomas Quinot  <quinot@adacore.com>
+
+       * s-chepoo.ads: Minor reformatting.
+
+2013-01-04  Arnaud Charlet  <charlet@adacore.com>
+
+       * usage.adb: Remove mention of -gnatN in usage.
+
 2013-01-04  Robert Dewar  <dewar@adacore.com>
 
        * exp_prag.adb, gnatcmd.adb, exp_util.adb, table.adb, sem_prag.adb,
index d96a724..b372f45 100644 (file)
@@ -214,6 +214,7 @@ AdaCore@*
 * Compatibility and Porting Guide::
 @ifset unw
 * Microsoft Windows Topics::
+* Mac OS Topics::
 @end ifset
 * GNU Free Documentation License::
 * Index::
@@ -666,6 +667,10 @@ Microsoft Windows Topics
 * Debugging a DLL::
 * Setting Stack Size from gnatlink::
 * Setting Heap Size from gnatlink::
+
+Mac OS Topics
+
+* Codesigning the Debugger::
 @end ifset
 
 * Index::
@@ -919,6 +924,10 @@ to assist in porting code from those environments.
 @item
 @ref{Microsoft Windows Topics}, presents information relevant to the
 Microsoft Windows platform.
+
+@item
+@ref{Mac OS Topics}, presents information relevant to Apple's OS X
+platform.
 @end ifset
 @end itemize
 
@@ -18363,10 +18372,12 @@ relative to the object directory of the project file.
 
 @item --separates
 @cindex @option{--separates} (@command{gnattest})
-Bodies of all test routines are generated as separates. This option is
-temporarily provided for compatibility to support the old way of generating test
-skeletons. Its usage is not recommended because at some point the option will be
-abandoned together with this way of generating test packages.
+Bodies of all test routines are generated as separates. Note that this mode is
+kept for compatibility reasons only and it is not advised to use it due to
+possible problems with hash in names of test skeletons when using an
+inconsistent casing. Separate test skeletons can be incorporated to monolith
+test package with improved hash being used by using @option{--transition}
+switch.
 
 
 @item --transition
@@ -30186,6 +30197,81 @@ because the coma is a separator for this option.
 
 @end itemize
 
+@node Mac OS Topics
+@appendix Mac OS Topics
+@cindex OS X
+
+@noindent
+This chapter describes topics that are specific to Apple's OS X
+platform.
+
+@menu
+* Codesigning the Debugger::
+@end menu
+
+@node Codesigning the Debugger
+@section Codesigning the Debugger
+
+@noindent
+The Darwin Kernel requires the debugger to have special permissions
+before it is allowed to control other processes. These permissions
+are granted by codesigning the GDB executable. Without these
+permissions, the debugger will report error messages such as:
+
+@smallexample
+Starting program: /x/y/foo
+Unable to find Mach task port for process-id 28885: (os/kern) failure (0x5).
+ (please check gdb is codesigned - see taskgated(8))
+@end smallexample
+
+Codesigning requires a certificate.  The following procedure explains
+how to create one:
+
+@itemize @bullet
+@item Start the Keychain Access application (in
+/Applications/Utilities/Keychain Access.app)
+
+@item Select the Keychain Access -> Certificate Assistant ->
+Create a Certificate... menu
+
+@item Then:
+
+@itemize @bullet
+@item Choose a name for the new certificate (this procedure will use
+"gdb-cert" as an example)
+
+@item Set "Identity Type" to "Self Signed Root"
+
+@item Set "Certificate Type" to "Code Signing"
+
+@item Activate the "Let me override defaults" option
+
+@end itemize
+
+@item Click several times on "Continue" until the "Specify a Location
+For The Certificate" screen appears, then set "Keychain" to "System"
+
+@item Click on "Continue" until the certificate is created
+
+@item Finally, in the view, double-click on the new certificate,
+and set "When using this certificate" to "Always Trust"
+
+@item Exit the Keychain Access application and restart the computer
+(this is unfortunately required)
+
+@end itemize
+
+Once a certificate has been created, the debugger can be codesigned
+as follow. In a Terminal, run the following command...
+
+@smallexample
+codesign -f -s  "gdb-cert"  <gnat_install_prefix>/bin/gdb
+@end smallexample
+
+... where "gdb-cert" should be replaced by the actual certificate
+name chosen above, and <gnat_install_prefix> should be replaced by
+the location where you installed GNAT.
+
 @end ifset
 
 @c **********************************
index 7f614ec..a4a717f 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---          Copyright (C) 1992-2009, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
 
 with System.Storage_Elements;
 with System.Storage_Pools;
+
 package System.Checked_Pools is
 
    type Checked_Pool is abstract
      new System.Storage_Pools.Root_Storage_Pool with private;
    --  Equivalent of storage pools with the addition that Dereference is
    --  called on each implicit or explicit dereference of a pointer which
-   --  has such a storage pool
+   --  has such a storage pool.
 
    procedure Dereference
      (Pool                     : in out Checked_Pool;
index 48fe87d..f96bfe5 100644 (file)
@@ -331,11 +331,6 @@ begin
    Write_Switch_Char ("n[?]");
    Write_Line ("Enable pragma Inline (both within and across units, ?=1/2)");
 
-   --  Line for -gnatN switch
-
-   Write_Switch_Char ("N");
-   Write_Line ("Full (frontend) inlining of subprograms");
-
    --  Line for -gnato switch
 
    Write_Switch_Char ("o");