diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-08-29 11:28:10 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-08-29 11:28:10 +0200 |
commit | 94fb7608441bd960315df71ce953d9a88a9f74a3 (patch) | |
tree | e80bc0010abd61710289dc0d21c3388988b71aeb /gcc/ada/makeutl.ads | |
parent | c5ecd6b73c89668590555d62b39f954618c27978 (diff) | |
download | gcc-94fb7608441bd960315df71ce953d9a88a9f74a3.zip gcc-94fb7608441bd960315df71ce953d9a88a9f74a3.tar.gz gcc-94fb7608441bd960315df71ce953d9a88a9f74a3.tar.bz2 |
[multiple changes]
2011-08-29 Thomas Quinot <quinot@adacore.com>
* get_scos.adb: When reading a P statement SCO without a pragma name
(from an older ALI file), ensure that the Pragma_Name component is set
to Unknown_Pragma (not left uninitialized).
2011-08-29 Vincent Celier <celier@adacore.com>
* makeutl.adb (Get_Directories): New procedure moved from Buildgpr and
modified to compute correctly the object path of a SAL project that is
extending another library project.
(Write_Path_File): New procedure.
* makeutl.ads (Directories): New table moved from Buildgpr
(Get_Directories): New procedure moved from Buildgpr
(Write_Path_File): New procedure
* mlib-prj.adb (Build_Library): Use Makeutl.Get_Directories to set the
paths before binding SALs, instead of Set_Ada_Paths.
* prj-env.adb (Set_Path_File_Var): Procedure has been moved to package
Prj.
* prj.adb (Set_Path_File_Var): New procedure moved from Prj.Env
(Current_Source_Path_File_Of): New function
(Set_Current_Object_Path_File_Of): New procedure
(Current_Source_Object_File_Of): New function
(Set_Current_Object_Path_File_Of): New procedure
* prj.ads (Set_Path_File_Var): New procedure moved from Prj.Env
(Current_Source_Path_File_Of): New function
(Set_Current_Object_Path_File_Of): New procedure
(Current_Source_Object_File_Of): New function
(Set_Current_Object_Path_File_Of): New procedure
2011-08-29 Ed Schonberg <schonberg@adacore.com>
* exp_ch5.adb (Expand_N_Assignment_Statement): For an assignment to a
packed entity, use a bit-field assignment only if there is no change of
representation.
From-SVN: r178177
Diffstat (limited to 'gcc/ada/makeutl.ads')
-rw-r--r-- | gcc/ada/makeutl.ads | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/gcc/ada/makeutl.ads b/gcc/ada/makeutl.ads index f3ac998..f7eadac 100644 --- a/gcc/ada/makeutl.ads +++ b/gcc/ada/makeutl.ads @@ -33,6 +33,8 @@ with Opt; with Osint; with Prj; use Prj; with Prj.Tree; +with Snames; use Snames; +with Table; with Types; use Types; with GNAT.OS_Lib; use GNAT.OS_Lib; @@ -65,6 +67,16 @@ package Makeutl is Create_Map_File_Switch : constant String := "--create-map-file"; -- Switch to create a map file when an executable is linked + package Directories is new Table.Table + (Table_Component_Type => Path_Name_Type, + Table_Index_Type => Integer, + Table_Low_Bound => 1, + Table_Initial => 200, + Table_Increment => 100, + Table_Name => "Makegpr.Directories"); + -- Table of all the source or object directories, filled up by + -- Get_Directories. + procedure Add (Option : String_Access; To : in out String_List_Access; @@ -159,6 +171,30 @@ package Makeutl is -- is printed last. Both N1 and N2 are printed in quotation marks. The two -- forms differ only in taking Name_Id or File_name_Type arguments. + type Name_Ids is array (Positive range <>) of Name_Id; + No_Names : constant Name_Ids := (1 .. 0 => No_Name); + -- Name_Ids is used for list of language names in procedure Get_Directories + -- below. + Ada_Only : constant Name_Ids := (1 => Name_Ada); + -- Used to invoke Get_Directories in gnatmake + + type Activity_Type is (Compilation, Executable_Binding, SAL_Binding); + + procedure Get_Directories + (Project_Tree : Project_Tree_Ref; + For_Project : Project_Id; + Activity : Activity_Type; + Languages : Name_Ids); + -- Put in table Directories the source (when Sources is True) or + -- object/library (when Sources is False) directories of project + -- For_Project and of all the project it imports directly or indirectly. + -- The source directories of imported projects are only included if one + -- of the declared languages is in the list Languages. + + procedure Write_Path_File (FD : File_Descriptor); + -- Write in the specified open path file the directories in table + -- Directories, then closed the path file. + procedure Get_Switches (Source : Source_Id; Pkg_Name : Name_Id; |