aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/prj.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2011-12-21 12:50:02 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2011-12-21 12:50:02 +0100
commit76f734d8f50612486c0eb696468582fce0128f92 (patch)
tree63f6709f6bf7f6b0777b446a6e923af90c5c130b /gcc/ada/prj.ads
parent916e8d27947d5f0590d31bb1c5529e82dc2136e9 (diff)
downloadgcc-76f734d8f50612486c0eb696468582fce0128f92.zip
gcc-76f734d8f50612486c0eb696468582fce0128f92.tar.gz
gcc-76f734d8f50612486c0eb696468582fce0128f92.tar.bz2
[multiple changes]
2011-12-21 Pascal Obry <obry@adacore.com> * prj-attr.adb, snames.ads-tmpl: Add Library_Standalone, Library_Fully_Standalone_Options and Library_Fully_Standalone_Supported attributes. * prj-nmsc.adb (Check_Library): Update check to take into account fully standalone libraries. Such shared libraries can only depend on static libraries. (Check_Stand_Alone_Library): Add support for fully standalone libraries. (Process_Project_Level_Simple_Attributes): Store value for configuration attribute Library_Fully_Standalone_Supported. * prj.ads, makeutl.adb (Standalone): New enumeration type. (Project_Data): Standalone_Library now of type Standlone. (Project_Configuration): Add Lib_Fully_Standalone_Supported field. (Default_Project_Config): Initialize new Lib_Fully_Standalone_Supported field. * clean.adb (Clean_Project): Adjust to new type for Standalone. * make.adb (Library_Phase): Adjust to new type for Standalone. (Gnatmake): Likewise. * mlib-prj.adb (Build_Library): Adjust to new type for Standalone. 2011-12-21 Thomas Quinot <quinot@adacore.com> * gnatls.adb (Gnatls): Call Set_Standard_Error at startup, and then Set_Standard_Output just before producing normal (non-diagnostic) output. * gnatcmd.adb (Gnatcmd): Call Set_Standard_Error at initialization (and again after parsing project files). 2011-12-21 Vincent Celier <celier@adacore.com> * prj-conf.adb (Do_Autoconf): When the object directory does not exist, create auto.cgpr in the directory where temporary files are created. From-SVN: r182573
Diffstat (limited to 'gcc/ada/prj.ads')
-rw-r--r--gcc/ada/prj.ads66
1 files changed, 36 insertions, 30 deletions
diff --git a/gcc/ada/prj.ads b/gcc/ada/prj.ads
index e88455d..7b9c0db 100644
--- a/gcc/ada/prj.ads
+++ b/gcc/ada/prj.ads
@@ -1025,6 +1025,9 @@ package Prj is
-- The level of library support. Specified in the configuration. Support
-- is none, static libraries only or both static and shared libraries.
+ Lib_Fully_Standalone_Supported : Boolean := False;
+ -- True when building fully standalone libraries supported on the target
+
Archive_Builder : Name_List_Index := No_Name_List;
-- The name of the executable to build archives, with the minimum
-- switches. Specified in the configuration.
@@ -1077,37 +1080,38 @@ package Prj is
end record;
Default_Project_Config : constant Project_Configuration :=
- (Target => No_Name,
- Run_Path_Option => No_Name_List,
- Run_Path_Origin => No_Name,
- Library_Install_Name_Option => No_Name,
- Separate_Run_Path_Options => False,
- Executable_Suffix => No_Name,
- Linker => No_Path,
- Map_File_Option => No_Name,
+ (Target => No_Name,
+ Run_Path_Option => No_Name_List,
+ Run_Path_Origin => No_Name,
+ Library_Install_Name_Option => No_Name,
+ Separate_Run_Path_Options => False,
+ Executable_Suffix => No_Name,
+ Linker => No_Path,
+ Map_File_Option => No_Name,
Trailing_Linker_Required_Switches =>
No_Name_List,
- Linker_Executable_Option => No_Name_List,
- Linker_Lib_Dir_Option => No_Name,
- Linker_Lib_Name_Option => No_Name,
- Library_Builder => No_Path,
- Max_Command_Line_Length => 0,
- Resp_File_Format => None,
- Resp_File_Options => No_Name_List,
- Lib_Support => None,
- Archive_Builder => No_Name_List,
- Archive_Builder_Append_Option => No_Name_List,
- Archive_Indexer => No_Name_List,
- Archive_Suffix => No_File,
- Lib_Partial_Linker => No_Name_List,
- Shared_Lib_Driver => No_File,
- Shared_Lib_Prefix => No_File,
- Shared_Lib_Suffix => No_File,
- Shared_Lib_Min_Options => No_Name_List,
- Lib_Version_Options => No_Name_List,
- Symbolic_Link_Supported => False,
- Lib_Maj_Min_Id_Supported => False,
- Auto_Init_Supported => False);
+ Linker_Executable_Option => No_Name_List,
+ Linker_Lib_Dir_Option => No_Name,
+ Linker_Lib_Name_Option => No_Name,
+ Library_Builder => No_Path,
+ Max_Command_Line_Length => 0,
+ Resp_File_Format => None,
+ Resp_File_Options => No_Name_List,
+ Lib_Support => None,
+ Lib_Fully_Standalone_Supported => False,
+ Archive_Builder => No_Name_List,
+ Archive_Builder_Append_Option => No_Name_List,
+ Archive_Indexer => No_Name_List,
+ Archive_Suffix => No_File,
+ Lib_Partial_Linker => No_Name_List,
+ Shared_Lib_Driver => No_File,
+ Shared_Lib_Prefix => No_File,
+ Shared_Lib_Suffix => No_File,
+ Shared_Lib_Min_Options => No_Name_List,
+ Lib_Version_Options => No_Name_List,
+ Symbolic_Link_Supported => False,
+ Lib_Maj_Min_Id_Supported => False,
+ Auto_Init_Supported => False);
-------------------------
-- Aggregated projects --
@@ -1139,6 +1143,8 @@ package Prj is
-- The following record describes a project file representation
+ type Standalone is (No, Standard, Full);
+
type Project_Data (Qualifier : Project_Qualifier := Unspecified) is record
-------------
@@ -1251,7 +1257,7 @@ package Prj is
Lib_Internal_Name : Name_Id := No_Name;
-- If a library project, internal name store inside the library
- Standalone_Library : Boolean := False;
+ Standalone_Library : Standalone := No;
-- Indicate that this is a Standalone Library Project File
Lib_Interface_ALIs : String_List_Id := Nil_String;