summaryrefslogtreecommitdiff
path: root/gcc/ada/prj-conf.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2014-02-06 10:19:06 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2014-02-06 10:19:06 +0000
commit5542710d9721b6e72ad27f80a8200a310780c2ae (patch)
tree70f1831653300095e4ad7c8d1f70957a7acbb97e /gcc/ada/prj-conf.ads
parentc85e352b333da4d65db122702473a7cc9a04d491 (diff)
downloadgcc-5542710d9721b6e72ad27f80a8200a310780c2ae.tar.gz
2014-02-06 Eric Botcazou <ebotcazou@adacore.com>
* gnat_rm.texi: Small wording tweak. 2014-02-06 Pascal Obry <obry@adacore.com> * prj-attr.adb, projects.texi, snames.ads-tmpl: Add Included_Patterns and Included_Artifact_Patterns attribute definitions. 2014-02-06 Yannick Moy <moy@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set SPARK_Mode pragma component for all subprograms, including stubs. 2014-02-06 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch10.adb (Analyze_Package_Body_Stub): Maintain the configuration options of the enclosing context in a stack-like fasion. (Analyze_Subprogram_Body_Stub): Maintain the configuration options of the enclosing context in a stack-like fashion. 2014-02-06 Robert Dewar <dewar@adacore.com> * debug.adb: -gnatd.u sets Modify_Tree_For C * exp_ch4.adb (Expand_N_Op_Rotate_Left): Expand out if Modify_Tree_For_C (Expand_N_Op_Rotate_Right): ditto. (Expand_N_Op_Arithmetic_Right_Shift): ditto. * exp_intr.adb (Expand_Shift): Call expander so we do Modify_Tree_For_C expansions. * gnat1drv.adb (Adjust_Global_Switches): Set Modify_Tree_For_C if -gnatd.u set. 2014-02-06 Fedor Rybin <frybin@adacore.com> * prj-proc.ads (Tree_Loaded_Callback): new type Callback used after the phase 1 of the processing of each aggregated project to get access to project trees of aggregated projects. (Process_Project_Tree_Phase_1): new parameter On_New_Tree_Loaded If specified, On_New_Tree_Loaded is called after each aggregated project has been processed succesfully. (Process): new parameter On_New_Tree_Loaded. * prj-proc.adb (Process_Aggregated_Projects): On_New_Tree_Loaded callback added after processing of each aggregated project. (Recursive_Process): new parameter On_New_Tree_Loaded. (Process): new parameter On_New_Tree_Loaded. (Process_Project_Tree_Phase_1): new parameter On_New_Tree_Loaded. * prj-conf.ads (Parse_Project_And_Apply_Config): new parameter On_New_Tree_Loaded. * prj-conf.adb (Parse_Project_And_Apply_Config): new parameter On_New_Tree_Loaded. 2014-02-06 Bob Duff <duff@adacore.com> * gnat_ugn.texi: Implement --insert-blank-lines and --preserve-blank-lines switches. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207545 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/prj-conf.ads')
-rw-r--r--gcc/ada/prj-conf.ads32
1 files changed, 19 insertions, 13 deletions
diff --git a/gcc/ada/prj-conf.ads b/gcc/ada/prj-conf.ads
index 467d9741e03..70382c3da83 100644
--- a/gcc/ada/prj-conf.ads
+++ b/gcc/ada/prj-conf.ads
@@ -26,6 +26,7 @@
-- The following package manipulates the configuration files
with Prj.Tree;
+with Prj.Proc;
package Prj.Conf is
@@ -49,20 +50,21 @@ package Prj.Conf is
procedure Parse_Project_And_Apply_Config
(Main_Project : out Prj.Project_Id;
User_Project_Node : out Prj.Tree.Project_Node_Id;
- Config_File_Name : String := "";
+ Config_File_Name : String := "";
Autoconf_Specified : Boolean;
Project_File_Name : String;
Project_Tree : Prj.Project_Tree_Ref;
Project_Node_Tree : Prj.Tree.Project_Node_Tree_Ref;
Env : in out Prj.Tree.Environment;
Packages_To_Check : String_List_Access;
- Allow_Automatic_Generation : Boolean := True;
+ Allow_Automatic_Generation : Boolean := True;
Automatically_Generated : out Boolean;
Config_File_Path : out String_Access;
- Target_Name : String := "";
+ Target_Name : String := "";
Normalized_Hostname : String;
- On_Load_Config : Config_File_Hook := null;
- Implicit_Project : Boolean := False);
+ On_Load_Config : Config_File_Hook := null;
+ Implicit_Project : Boolean := False;
+ On_New_Tree_Loaded : Prj.Proc.Tree_Loaded_Callback := null);
-- Find the main configuration project and parse the project tree rooted at
-- this configuration project.
--
@@ -103,23 +105,27 @@ package Prj.Conf is
-- invoked without a project file and is using an implicit project file
-- that is virtually in the current working directory, but is physically
-- in another directory.
+ --
+ -- If specified, On_New_Tree_Loaded is called after each aggregated project
+ -- has been processed succesfully.
procedure Process_Project_And_Apply_Config
(Main_Project : out Prj.Project_Id;
User_Project_Node : Prj.Tree.Project_Node_Id;
- Config_File_Name : String := "";
+ Config_File_Name : String := "";
Autoconf_Specified : Boolean;
Project_Tree : Prj.Project_Tree_Ref;
Project_Node_Tree : Prj.Tree.Project_Node_Tree_Ref;
Env : in out Prj.Tree.Environment;
Packages_To_Check : String_List_Access;
- Allow_Automatic_Generation : Boolean := True;
+ Allow_Automatic_Generation : Boolean := True;
Automatically_Generated : out Boolean;
Config_File_Path : out String_Access;
- Target_Name : String := "";
+ Target_Name : String := "";
Normalized_Hostname : String;
- On_Load_Config : Config_File_Hook := null;
- Reset_Tree : Boolean := True);
+ On_Load_Config : Config_File_Hook := null;
+ Reset_Tree : Boolean := True;
+ On_New_Tree_Loaded : Prj.Proc.Tree_Loaded_Callback := null);
-- Same as above, except the project must already have been parsed through
-- Prj.Part.Parse, and only the processing of the project and the
-- configuration is done at this level.
@@ -142,15 +148,15 @@ package Prj.Conf is
Project_Node_Tree : Prj.Tree.Project_Node_Tree_Ref;
Env : in out Prj.Tree.Environment;
Allow_Automatic_Generation : Boolean;
- Config_File_Name : String := "";
+ Config_File_Name : String := "";
Autoconf_Specified : Boolean;
- Target_Name : String := "";
+ Target_Name : String := "";
Normalized_Hostname : String;
Packages_To_Check : String_List_Access := null;
Config : out Prj.Project_Id;
Config_File_Path : out String_Access;
Automatically_Generated : out Boolean;
- On_Load_Config : Config_File_Hook := null);
+ On_Load_Config : Config_File_Hook := null);
-- Compute the name of the configuration file that should be used. If no
-- default configuration file is found, a new one will be automatically
-- generated if Allow_Automatic_Generation is true. This configuration