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.

From-SVN: r194889
This commit is contained in:
Arnaud Charlet 2013-01-04 10:14:29 +01:00
parent ae05cdd6a5
commit 2a328c94e1
4 changed files with 106 additions and 11 deletions

View 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> 2013-01-04 Robert Dewar <dewar@adacore.com>
* exp_prag.adb, gnatcmd.adb, exp_util.adb, table.adb, sem_prag.adb, * exp_prag.adb, gnatcmd.adb, exp_util.adb, table.adb, sem_prag.adb,

View File

@ -214,6 +214,7 @@ AdaCore@*
* Compatibility and Porting Guide:: * Compatibility and Porting Guide::
@ifset unw @ifset unw
* Microsoft Windows Topics:: * Microsoft Windows Topics::
* Mac OS Topics::
@end ifset @end ifset
* GNU Free Documentation License:: * GNU Free Documentation License::
* Index:: * Index::
@ -666,6 +667,10 @@ Microsoft Windows Topics
* Debugging a DLL:: * Debugging a DLL::
* Setting Stack Size from gnatlink:: * Setting Stack Size from gnatlink::
* Setting Heap Size from gnatlink:: * Setting Heap Size from gnatlink::
Mac OS Topics
* Codesigning the Debugger::
@end ifset @end ifset
* Index:: * Index::
@ -919,6 +924,10 @@ to assist in porting code from those environments.
@item @item
@ref{Microsoft Windows Topics}, presents information relevant to the @ref{Microsoft Windows Topics}, presents information relevant to the
Microsoft Windows platform. Microsoft Windows platform.
@item
@ref{Mac OS Topics}, presents information relevant to Apple's OS X
platform.
@end ifset @end ifset
@end itemize @end itemize
@ -18363,10 +18372,12 @@ relative to the object directory of the project file.
@item --separates @item --separates
@cindex @option{--separates} (@command{gnattest}) @cindex @option{--separates} (@command{gnattest})
Bodies of all test routines are generated as separates. This option is Bodies of all test routines are generated as separates. Note that this mode is
temporarily provided for compatibility to support the old way of generating test kept for compatibility reasons only and it is not advised to use it due to
skeletons. Its usage is not recommended because at some point the option will be possible problems with hash in names of test skeletons when using an
abandoned together with this way of generating test packages. inconsistent casing. Separate test skeletons can be incorporated to monolith
test package with improved hash being used by using @option{--transition}
switch.
@item --transition @item --transition
@ -30186,6 +30197,81 @@ because the coma is a separator for this option.
@end itemize @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 @end ifset
@c ********************************** @c **********************************

View File

@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- 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 -- -- 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- -- -- terms of the GNU General Public License as published by the Free Soft- --
@ -31,13 +31,14 @@
with System.Storage_Elements; with System.Storage_Elements;
with System.Storage_Pools; with System.Storage_Pools;
package System.Checked_Pools is package System.Checked_Pools is
type Checked_Pool is abstract type Checked_Pool is abstract
new System.Storage_Pools.Root_Storage_Pool with private; new System.Storage_Pools.Root_Storage_Pool with private;
-- Equivalent of storage pools with the addition that Dereference is -- Equivalent of storage pools with the addition that Dereference is
-- called on each implicit or explicit dereference of a pointer which -- called on each implicit or explicit dereference of a pointer which
-- has such a storage pool -- has such a storage pool.
procedure Dereference procedure Dereference
(Pool : in out Checked_Pool; (Pool : in out Checked_Pool;

View File

@ -331,11 +331,6 @@ begin
Write_Switch_Char ("n[?]"); Write_Switch_Char ("n[?]");
Write_Line ("Enable pragma Inline (both within and across units, ?=1/2)"); 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 -- Line for -gnato switch
Write_Switch_Char ("o"); Write_Switch_Char ("o");