summaryrefslogtreecommitdiff
path: root/gcc/ada/prj-conf.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-07-13 09:04:17 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-07-13 09:04:17 +0000
commit189243d59e89001449ec294fa1ff7816c7ef68f3 (patch)
tree0248d58807123b435413867f377c3448a7f12aef /gcc/ada/prj-conf.ads
parent1cb8dd63a9f58d7f106b2d90f39fe4170bc593ec (diff)
downloadgcc-189243d59e89001449ec294fa1ff7816c7ef68f3.tar.gz
2009-07-13 Emmanuel Briot <briot@adacore.com>
* gnatcmd.adb, make.adb, mlib-prj.adb, prj-part.adb, mlib.adb, prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-tree.adb, prj-tree.ads (Immediate_Directory_Of): Removed. (Prj.Pars): Now parse the project simulating a default config file. (Add_Default_GNAT_Naming_Scheme): New subprogram (Check_Naming_Multi_Lang): Fix default value for Dot_Replacement. Remove gnatmake-specific parsing of source files. (Check_Illegal_Suffix): Renames Is_Illegal_Suffix, since it now raises the error itself to provide more precise diagnostics. (Process_Exceptions_Unit_Based): Avoid duplicate error message when a unit belongs to several projects. (Copy_Interface_Sources): Search the full path of files to copy in the list of sources of the application rather than in the list of units. (Parse_Project_And_Apply_Config): Do not reset the name of the main project file. (Check_File): Use htables to find out whether a source is duplicated. (Add_Source): check whether the source or unit were already seen earlier * gcc-interface/Makefile.in: Update gnatmake dependencies. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149557 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/prj-conf.ads')
-rw-r--r--gcc/ada/prj-conf.ads16
1 files changed, 15 insertions, 1 deletions
diff --git a/gcc/ada/prj-conf.ads b/gcc/ada/prj-conf.ads
index 4eb8691bfc4..80f28ab1cac 100644
--- a/gcc/ada/prj-conf.ads
+++ b/gcc/ada/prj-conf.ads
@@ -99,10 +99,15 @@ package Prj.Conf is
Report_Error : Put_Line_Access := null;
On_Load_Config : Config_File_Hook := null;
Compiler_Driver_Mandatory : Boolean := True;
- Allow_Duplicate_Basenames : Boolean := False);
+ Allow_Duplicate_Basenames : Boolean := False;
+ Reset_Tree : Boolean := True;
+ When_No_Sources : Error_Warning := Warning);
-- 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.
+ -- If Reset_Tree is true, all projects are first removed from the tree.
+ -- When_No_Sources indicates what should be done when no sources are found
+ -- for one of the languages of the project.
Invalid_Config : exception;
@@ -162,6 +167,15 @@ package Prj.Conf is
-- projects, so that when the second phase of the processing is performed
-- these attributes are automatically taken into account.
+ procedure Add_Default_GNAT_Naming_Scheme
+ (Config_File : in out Prj.Tree.Project_Node_Id;
+ Project_Tree : Prj.Tree.Project_Node_Tree_Ref);
+ -- A hook for Get_Or_Create_Configuration_File and
+ -- Process_Project_And_Apply_Config that will create a new config file (in
+ -- memory) and add the default GNAT naming scheme to it. Nothing is done
+ -- if the config_file already exists, to avoid overriding what the user
+ -- might have put in there.
+
--------------
-- Runtimes --
--------------