aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/makeutl.adb6
-rw-r--r--gcc/ada/makeutl.ads60
-rw-r--r--gcc/ada/prj-proc.adb44
-rw-r--r--gcc/ada/prj.adb4
-rw-r--r--gcc/ada/prj.ads201
6 files changed, 170 insertions, 150 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 39eea98..8fa1757 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * makeutl.adb, makeutl.ads, prj-proc.adb, prj.adb, prj.ads: Minor
+ reformatting.
+
2009-11-30 Thomas Quinot <quinot@adacore.com>
* osint.adb: Minor reformatting
diff --git a/gcc/ada/makeutl.adb b/gcc/ada/makeutl.adb
index 4b579f1..1f64da3 100644
--- a/gcc/ada/makeutl.adb
+++ b/gcc/ada/makeutl.adb
@@ -167,12 +167,13 @@ package body Makeutl is
Index_Separator : Character) return File_Name_Type
is
Result : File_Name_Type;
+
begin
Name_Len := 0;
Add_Str_To_Name_Buffer (Base_Name (Main));
- -- Remove the extension, if any, that is the last part of the base
- -- name starting with a dot and following some characters.
+ -- Remove the extension, if any, that is the last part of the base name
+ -- starting with a dot and following some characters.
for J in reverse 2 .. Name_Len loop
if Name_Buffer (J) = '.' then
@@ -192,6 +193,7 @@ package body Makeutl is
Add_Str_To_Name_Buffer (Img (2 .. Img'Last));
end;
end if;
+
Result := Name_Find;
return Result;
end Base_Name_Index_For;
diff --git a/gcc/ada/makeutl.ads b/gcc/ada/makeutl.ads
index 915c00a..a7614f3 100644
--- a/gcc/ada/makeutl.ads
+++ b/gcc/ada/makeutl.ads
@@ -66,8 +66,8 @@ package Makeutl is
(Main : String;
Main_Index : Int;
Index_Separator : Character) return File_Name_Type;
- -- Returns the base name of Main, without the extension, plus the
- -- Index_Separator followed by the Main_Index, if Main_Index is not 0.
+ -- Returns the base name of Main, without the extension, followed by the
+ -- Index_Separator followed by the Main_Index if it is non-zero.
function Executable_Prefix_Path return String;
-- Return the absolute path parent directory of the directory where the
@@ -87,9 +87,9 @@ package Makeutl is
-- one of its source. Returns False otherwise.
function Check_Source_Info_In_ALI (The_ALI : ALI.ALI_Id) return Boolean;
- -- Check whether all file references in ALI are still valid (ie the
+ -- Check whether all file references in ALI are still valid (i.e. the
-- source files are still associated with the same units). Return True
- -- if everything is still valid
+ -- if everything is still valid.
function Is_External_Assignment
(Tree : Prj.Tree.Project_Node_Tree_Ref;
@@ -121,11 +121,11 @@ package Makeutl is
S2 : String := "";
Prefix : String := " -> ";
Minimum_Verbosity : Opt.Verbosity_Level_Type := Opt.Low);
- -- If the verbose flag (Verbose_Mode) is set and the verbosity level is
- -- at least equal to Minimum_Verbosity, then print Prefix to standard
- -- output followed by N1 and S1. If N2 /= No_Name then N2 is printed after
- -- S1. S2 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.
+ -- If the verbose flag (Verbose_Mode) is set and the verbosity level is at
+ -- least equal to Minimum_Verbosity, then print Prefix to standard output
+ -- followed by N1 and S1. If N2 /= No_Name then N2 is printed after S1. S2
+ -- 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.
function Linker_Options_Switches
(Project : Project_Id;
@@ -142,10 +142,30 @@ package Makeutl is
-- Find the index of a unit in a source file. Return zero if the file is
-- not a multi-unit source file.
- package Mains is
+ procedure Test_If_Relative_Path
+ (Switch : in out String_Access;
+ Parent : String;
+ Including_L_Switch : Boolean := True;
+ Including_Non_Switch : Boolean := True;
+ Including_RTS : Boolean := False);
+ -- Test if Switch is a relative search path switch. If it is, fail if
+ -- Parent is the empty string, otherwise prepend the path with Parent.
+ -- This subprogram is only called when using project files. For gnatbind
+ -- switches, Including_L_Switch is False, because the argument of the -L
+ -- switch is not a path. If Including_RTS is True, process also switches
+ -- --RTS=.
- -- Mains are stored in a table. An index is used to retrieve the mains
- -- from the table.
+ function Path_Or_File_Name (Path : Path_Name_Type) return String;
+ -- Returns a file name if -df is used, otherwise return a path name
+
+ -----------
+ -- Mains --
+ -----------
+
+ -- Mains are stored in a table. An index is used to retrieve the mains
+ -- from the table.
+
+ package Mains is
procedure Add_Main (Name : String);
-- Add one main to the table
@@ -180,22 +200,6 @@ package Makeutl is
end Mains;
- procedure Test_If_Relative_Path
- (Switch : in out String_Access;
- Parent : String;
- Including_L_Switch : Boolean := True;
- Including_Non_Switch : Boolean := True;
- Including_RTS : Boolean := False);
- -- Test if Switch is a relative search path switch. If it is, fail if
- -- Parent is the empty string, otherwise prepend the path with Parent.
- -- This subprogram is only called when using project files. For gnatbind
- -- switches, Including_L_Switch is False, because the argument of the -L
- -- switch is not a path. If Including_RTS is True, process also switches
- -- --RTS=.
-
- function Path_Or_File_Name (Path : Path_Name_Type) return String;
- -- Returns a file name if -df is used, otherwise return a path name
-
----------------------
-- Marking Routines --
----------------------
diff --git a/gcc/ada/prj-proc.adb b/gcc/ada/prj-proc.adb
index 9dde01b..4984152 100644
--- a/gcc/ada/prj-proc.adb
+++ b/gcc/ada/prj-proc.adb
@@ -1869,12 +1869,16 @@ package body Prj.Proc is
else
declare
Index_Name : Name_Id :=
- Associative_Array_Index_Of
- (Current_Item, From_Project_Node_Tree);
+ Associative_Array_Index_Of
+ (Current_Item,
+ From_Project_Node_Tree);
+
Source_Index : constant Int :=
- Source_Index_Of
- (Current_Item, From_Project_Node_Tree);
- The_Array : Array_Id;
+ Source_Index_Of
+ (Current_Item,
+ From_Project_Node_Tree);
+
+ The_Array : Array_Id;
The_Array_Element : Array_Element_Id :=
No_Array_Element;
@@ -1892,9 +1896,9 @@ package body Prj.Proc is
if Pkg /= No_Package then
The_Array :=
In_Tree.Packages.Table (Pkg).Decl.Arrays;
-
else
- The_Array := Project.Decl.Arrays;
+ The_Array :=
+ Project.Decl.Arrays;
end if;
while
@@ -1903,8 +1907,8 @@ package body Prj.Proc is
In_Tree.Arrays.Table (The_Array).Name /=
Current_Item_Name
loop
- The_Array := In_Tree.Arrays.Table
- (The_Array).Next;
+ The_Array :=
+ In_Tree.Arrays.Table (The_Array).Next;
end loop;
-- If the array cannot be found, create a new entry
@@ -1952,7 +1956,7 @@ package body Prj.Proc is
and then
(In_Tree.Array_Elements.Table
(The_Array_Element).Index /= Index_Name
- or else
+ or else
In_Tree.Array_Elements.Table
(The_Array_Element).Src_Index /= Source_Index)
loop
@@ -1968,21 +1972,23 @@ package body Prj.Proc is
if The_Array_Element = No_Array_Element then
Array_Element_Table.Increment_Last
(In_Tree.Array_Elements);
- The_Array_Element := Array_Element_Table.Last
- (In_Tree.Array_Elements);
+ The_Array_Element :=
+ Array_Element_Table.Last
+ (In_Tree.Array_Elements);
In_Tree.Array_Elements.Table
(The_Array_Element) :=
- (Index => Index_Name,
- Src_Index => Source_Index,
+ (Index => Index_Name,
+ Src_Index => Source_Index,
Index_Case_Sensitive =>
not Case_Insensitive
(Current_Item, From_Project_Node_Tree),
- Value => New_Value,
- Next => In_Tree.Arrays.Table
- (The_Array).Value);
- In_Tree.Arrays.Table
- (The_Array).Value := The_Array_Element;
+ Value => New_Value,
+ Next =>
+ In_Tree.Arrays.Table (The_Array).Value);
+
+ In_Tree.Arrays.Table (The_Array).Value :=
+ The_Array_Element;
-- An element with the same index already exists,
-- just replace its value with the new one.
diff --git a/gcc/ada/prj.adb b/gcc/ada/prj.adb
index ff484f5..1d87d19 100644
--- a/gcc/ada/prj.adb
+++ b/gcc/ada/prj.adb
@@ -687,10 +687,11 @@ package body Prj is
is
Index_Img : constant String := Source_Index'Img;
Last : Natural;
+
begin
Get_Name_String (Source_File_Name);
- Last := Name_Len;
+ Last := Name_Len;
while Last > 1 and then Name_Buffer (Last) /= '.' loop
Last := Last - 1;
end loop;
@@ -704,7 +705,6 @@ package body Prj is
if Object_File_Suffix = No_Name then
Add_Str_To_Name_Buffer (Object_Suffix);
-
else
Add_Str_To_Name_Buffer (Get_Name_String (Object_File_Suffix));
end if;
diff --git a/gcc/ada/prj.ads b/gcc/ada/prj.ads
index 0a27372..c19dd8d 100644
--- a/gcc/ada/prj.ads
+++ b/gcc/ada/prj.ads
@@ -346,6 +346,8 @@ package Prj is
Equal => "=");
-- A hash table to store the mapping files that are not used
+ -- The following record ???
+
type Lang_Naming_Data is record
Dot_Replacement : File_Name_Type := No_File;
-- The string to replace '.' in the source file name (for Ada)
@@ -401,10 +403,11 @@ package Prj is
type Path_Syntax_Kind is
(Canonical,
-- Unix style
-
Host);
-- Host specific syntax, for example on VMS (the default)
+ -- The following record describes the configuration of a language
+
type Language_Config is record
Kind : Language_Kind := File_Based;
-- Kind of language. All languages are file based, except Ada which is
@@ -414,10 +417,10 @@ package Prj is
-- The naming data for the languages (prefixes, etc.)
Include_Compatible_Languages : Name_List_Index := No_Name_List;
- -- The list of languages that are "include compatible" with this
- -- language. A language B (for example "C") is "include compatible" with
- -- a language A (for example "C++") if it is expected that sources of
- -- language A may "include" header files from language B.
+ -- List of languages that are "include compatible" with this language. A
+ -- language B (for example "C") is "include compatible" with a language
+ -- A (for example "C++") if it is expected that sources of language A
+ -- may "include" header files from language B.
Compiler_Driver : File_Name_Type := No_File;
-- The name of the executable for the compiler of the language
@@ -433,22 +436,21 @@ package Prj is
-- The list of final switches that are required as a minimum to invoke
-- the compiler driver.
- Multi_Unit_Switches : Name_List_Index := No_Name_List;
- -- The switch(es) to indicate the index of a unit in a multi-source
- -- file.
+ Multi_Unit_Switches : Name_List_Index := No_Name_List;
+ -- The switch(es) to indicate the index of a unit in a multi-source file
- Multi_Unit_Object_Separator : Character := ' ';
- -- The string separating the base name of a source from the index of
- -- the unit in a multi-source file, in the object file name.
+ Multi_Unit_Object_Separator : Character := ' ';
+ -- The string separating the base name of a source from the index of the
+ -- unit in a multi-source file, in the object file name.
- Path_Syntax : Path_Syntax_Kind := Host;
+ Path_Syntax : Path_Syntax_Kind := Host;
-- Value may be Canonical (Unix style) or Host (host syntax, for example
-- on VMS for DEC C).
- Object_File_Suffix : Name_Id := No_Name;
+ Object_File_Suffix : Name_Id := No_Name;
-- Optional alternate object file suffix
- Object_File_Switches : Name_List_Index := No_Name_List;
+ Object_File_Switches : Name_List_Index := No_Name_List;
-- Optional object file switches. When this is defined, the switches
-- are used to specify the object file. The object file name is appended
-- to the last switch in the list. Example: ("-o", "").
@@ -458,48 +460,47 @@ package Prj is
-- shared libraries. Specified in the configuration. When not specified,
-- there is no need for such switch.
- Object_Generated : Boolean := True;
+ Object_Generated : Boolean := True;
-- False in no object file is generated
- Objects_Linked : Boolean := True;
+ Objects_Linked : Boolean := True;
-- False if object files are not use to link executables and build
-- libraries.
- Runtime_Library_Dir : Name_Id := No_Name;
+ Runtime_Library_Dir : Name_Id := No_Name;
-- Path name of the runtime library directory, if any
- Runtime_Source_Dir : Name_Id := No_Name;
+ Runtime_Source_Dir : Name_Id := No_Name;
-- Path name of the runtime source directory, if any
- Mapping_File_Switches : Name_List_Index := No_Name_List;
+ Mapping_File_Switches : Name_List_Index := No_Name_List;
-- The option(s) to provide a mapping file to the compiler. Specified in
-- the configuration. When value is No_Name_List, there is no mapping
-- file.
- Mapping_Spec_Suffix : File_Name_Type := No_File;
+ Mapping_Spec_Suffix : File_Name_Type := No_File;
-- Placeholder representing the spec suffix in a mapping file
- Mapping_Body_Suffix : File_Name_Type := No_File;
+ Mapping_Body_Suffix : File_Name_Type := No_File;
-- Placeholder representing the body suffix in a mapping file
- Config_File_Switches : Name_List_Index := No_Name_List;
+ Config_File_Switches : Name_List_Index := No_Name_List;
-- The option(s) to provide a config file to the compiler. Specified in
- -- the configuration. When value is No_Name_List, there is no config
- -- file.
+ -- the configuration. If value is No_Name_List there is no config file.
- Dependency_Kind : Dependency_File_Kind := None;
+ Dependency_Kind : Dependency_File_Kind := None;
-- The kind of dependency to be checked: none, Makefile fragment or
-- ALI file (for Ada).
- Dependency_Option : Name_List_Index := No_Name_List;
+ Dependency_Option : Name_List_Index := No_Name_List;
-- The option(s) to be used to create the dependency file. When value is
-- No_Name_List, there is not such option(s).
- Compute_Dependency : Name_List_Index := No_Name_List;
+ Compute_Dependency : Name_List_Index := No_Name_List;
-- Hold the value of attribute Dependency_Driver, if declared for the
-- language.
- Include_Option : Name_List_Index := No_Name_List;
+ Include_Option : Name_List_Index := No_Name_List;
-- Hold the value of attribute Include_Switches, if declared for the
-- language.
@@ -519,55 +520,54 @@ package Prj is
-- Name of environment variable declared by attribute Objects_Path_File
-- for the language.
- Config_Body : Name_Id := No_Name;
+ Config_Body : Name_Id := No_Name;
-- The template for a pragma Source_File_Name(_Project) for a specific
-- file name of a body.
- Config_Body_Index : Name_Id := No_Name;
+ Config_Body_Index : Name_Id := No_Name;
-- The template for a pragma Source_File_Name(_Project) for a specific
-- file name of a body in a multi-source file.
- Config_Body_Pattern : Name_Id := No_Name;
+ Config_Body_Pattern : Name_Id := No_Name;
-- The template for a pragma Source_File_Name(_Project) for a naming
-- body pattern.
- Config_Spec : Name_Id := No_Name;
+ Config_Spec : Name_Id := No_Name;
-- The template for a pragma Source_File_Name(_Project) for a specific
-- file name of a spec.
- Config_Spec_Index : Name_Id := No_Name;
+ Config_Spec_Index : Name_Id := No_Name;
-- The template for a pragma Source_File_Name(_Project) for a specific
-- file name of a spec in a multi-source file.
- Config_Spec_Pattern : Name_Id := No_Name;
+ Config_Spec_Pattern : Name_Id := No_Name;
-- The template for a pragma Source_File_Name(_Project) for a naming
-- spec pattern.
- Config_File_Unique : Boolean := False;
+ Config_File_Unique : Boolean := False;
-- Indicate if the config file specified to the compiler needs to be
-- unique. If it is unique, then all config files are concatenated into
-- a temp config file.
- Binder_Driver : File_Name_Type := No_File;
+ Binder_Driver : File_Name_Type := No_File;
-- The name of the binder driver for the language, if any
- Binder_Driver_Path : Path_Name_Type := No_Path;
+ Binder_Driver_Path : Path_Name_Type := No_Path;
-- The path name of the binder driver
- Binder_Required_Switches : Name_List_Index := No_Name_List;
+ Binder_Required_Switches : Name_List_Index := No_Name_List;
-- Hold the value of attribute Binder'Required_Switches for the language
- Binder_Prefix : Name_Id := No_Name;
+ Binder_Prefix : Name_Id := No_Name;
-- Hold the value of attribute Binder'Prefix for the language
- Toolchain_Version : Name_Id := No_Name;
+ Toolchain_Version : Name_Id := No_Name;
-- Hold the value of attribute Toolchain_Version for the language
- Toolchain_Description : Name_Id := No_Name;
+ Toolchain_Description : Name_Id := No_Name;
-- Hold the value of attribute Toolchain_Description for the language
end record;
- -- Record describing the configuration of a language
No_Language_Config : constant Language_Config :=
(Kind => File_Based,
@@ -613,6 +613,8 @@ package Prj is
Toolchain_Version => No_Name,
Toolchain_Description => No_Name);
+ -- The following record ???
+
type Language_Data is record
Name : Name_Id := No_Name;
Display_Name : Name_Id := No_Name;
@@ -661,104 +663,105 @@ package Prj is
-- Structure to define source data
type Source_Data is record
- Project : Project_Id := No_Project;
+ Project : Project_Id := No_Project;
-- Project of the source
- Source_Dir_Rank : Natural := 0;
+ Source_Dir_Rank : Natural := 0;
-- The rank of the source directory in list declared with attribute
-- Source_Dirs. Two source files with the same name cannot appears in
-- different directory with the same rank. That can happen when the
-- recursive notation <dir>/** is used in attribute Source_Dirs.
- Language : Language_Ptr := No_Language_Index;
+ Language : Language_Ptr := No_Language_Index;
-- Index of the language. This is an index into
-- Project_Tree.Languages_Data.
- In_Interfaces : Boolean := True;
+ In_Interfaces : Boolean := True;
-- False when the source is not included in interfaces, when attribute
-- Interfaces is declared.
- Declared_In_Interfaces : Boolean := False;
+ Declared_In_Interfaces : Boolean := False;
-- True when source is declared in attribute Interfaces
- Alternate_Languages : Language_List := null;
+ Alternate_Languages : Language_List := null;
-- List of languages a header file may also be, in addition of language
-- Language_Name.
- Kind : Source_Kind := Spec;
+ Kind : Source_Kind := Spec;
-- Kind of the source: spec, body or subunit
- Unit : Unit_Index := No_Unit_Index;
+ Unit : Unit_Index := No_Unit_Index;
-- Name of the unit, if language is unit based. This is only set for
-- those files that are part of the compilation set (for instance a
-- file in an extended project that is overridden will not have this
-- field set).
- Index : Int := 0;
+ Index : Int := 0;
-- Index of the source in a multi unit source file (the same Source_Data
-- is duplicated several times when there are several units in the same
-- file). Index is 0 if there is either no unit or a single one, and
-- starts at 1 when there are multiple units
- Locally_Removed : Boolean := False;
+ Locally_Removed : Boolean := False;
-- True if the source has been "excluded"
- Replaced_By : Source_Id := No_Source;
+ Replaced_By : Source_Id := No_Source;
+ -- Missing comment ???
- File : File_Name_Type := No_File;
+ File : File_Name_Type := No_File;
-- Canonical file name of the source
- Display_File : File_Name_Type := No_File;
+ Display_File : File_Name_Type := No_File;
-- File name of the source, for display purposes
- Path : Path_Information := No_Path_Information;
+ Path : Path_Information := No_Path_Information;
-- Path name of the source
- Source_TS : Time_Stamp_Type := Empty_Time_Stamp;
+ Source_TS : Time_Stamp_Type := Empty_Time_Stamp;
-- Time stamp of the source file
- Object_Project : Project_Id := No_Project;
+ Object_Project : Project_Id := No_Project;
-- Project where the object file is. This might be different from
-- Project when using extending project files.
- Object : File_Name_Type := No_File;
+ Object : File_Name_Type := No_File;
-- File name of the object file
- Current_Object_Path : Path_Name_Type := No_Path;
+ Current_Object_Path : Path_Name_Type := No_Path;
-- Object path of an existing object file
- Object_Path : Path_Name_Type := No_Path;
+ Object_Path : Path_Name_Type := No_Path;
-- Object path of the real object file
- Object_TS : Time_Stamp_Type := Empty_Time_Stamp;
+ Object_TS : Time_Stamp_Type := Empty_Time_Stamp;
-- Object file time stamp
- Dep_Name : File_Name_Type := No_File;
+ Dep_Name : File_Name_Type := No_File;
-- Dependency file simple name
- Current_Dep_Path : Path_Name_Type := No_Path;
+ Current_Dep_Path : Path_Name_Type := No_Path;
-- Path name of an existing dependency file
- Dep_Path : Path_Name_Type := No_Path;
+ Dep_Path : Path_Name_Type := No_Path;
-- Path name of the real dependency file
- Dep_TS : Time_Stamp_Type := Empty_Time_Stamp;
+ Dep_TS : Time_Stamp_Type := Empty_Time_Stamp;
-- Dependency file time stamp
- Switches : File_Name_Type := No_File;
+ Switches : File_Name_Type := No_File;
-- File name of the switches file. For all languages, this is a file
-- that ends with the .cswi extension.
- Switches_Path : Path_Name_Type := No_Path;
+ Switches_Path : Path_Name_Type := No_Path;
-- Path name of the switches file
- Switches_TS : Time_Stamp_Type := Empty_Time_Stamp;
+ Switches_TS : Time_Stamp_Type := Empty_Time_Stamp;
-- Switches file time stamp
- Naming_Exception : Boolean := False;
+ Naming_Exception : Boolean := False;
-- True if the source has an exceptional name
- Next_In_Lang : Source_Id := No_Source;
+ Next_In_Lang : Source_Id := No_Source;
-- Link to another source of the same language in the same project
end record;
@@ -895,117 +898,117 @@ package Prj is
-- The format of the different response files
type Project_Configuration is record
- Target : Name_Id := No_Name;
+ Target : Name_Id := No_Name;
-- The target of the configuration, when specified
- Run_Path_Option : Name_List_Index := No_Name_List;
+ Run_Path_Option : Name_List_Index := No_Name_List;
-- The option to use when linking to specify the path where to look for
-- libraries.
- Separate_Run_Path_Options : Boolean := False;
+ Separate_Run_Path_Options : Boolean := False;
-- True if each directory needs to be specified in a separate run path
-- option.
- Executable_Suffix : Name_Id := No_Name;
+ Executable_Suffix : Name_Id := No_Name;
-- The suffix of executables, when specified in the configuration or in
-- package Builder of the main project. When this is not specified, the
-- executable suffix is the default for the platform.
-- Linking
- Linker : Path_Name_Type := No_Path;
+ Linker : Path_Name_Type := No_Path;
-- Path name of the linker driver. Specified in the configuration or in
-- the package Builder of the main project.
- Map_File_Option : Name_Id := No_Name;
+ Map_File_Option : Name_Id := No_Name;
-- Option to use when invoking the linker to build a map file
- Minimum_Linker_Options : Name_List_Index := No_Name_List;
+ Minimum_Linker_Options : Name_List_Index := No_Name_List;
-- The minimum options for the linker driver. Specified in the
-- configuration.
- Linker_Executable_Option : Name_List_Index := No_Name_List;
+ Linker_Executable_Option : Name_List_Index := No_Name_List;
-- The option(s) to indicate the name of the executable in the linker
-- command. Specified in the configuration. When not specified, default
-- to -o <executable name>.
- Linker_Lib_Dir_Option : Name_Id := No_Name;
+ Linker_Lib_Dir_Option : Name_Id := No_Name;
-- The option to specify where to find a library for linking. Specified
-- in the configuration. When not specified, defaults to "-L".
- Linker_Lib_Name_Option : Name_Id := No_Name;
+ Linker_Lib_Name_Option : Name_Id := No_Name;
-- The option to specify the name of a library for linking. Specified in
-- the configuration. When not specified, defaults to "-l".
- Max_Command_Line_Length : Natural := 0;
+ Max_Command_Line_Length : Natural := 0;
-- When positive and when Resp_File_Format (see below) is not None,
-- if the command line for the invocation of the linker would be greater
-- than this value, a response file is used to invoke the linker.
- Resp_File_Format : Response_File_Format := None;
+ Resp_File_Format : Response_File_Format := None;
-- The format of a response file, when linking with a response file is
-- supported.
- Resp_File_Options : Name_List_Index := No_Name_List;
+ Resp_File_Options : Name_List_Index := No_Name_List;
-- The switches, if any, that precede the path name of the response
-- file in the invocation of the linker.
-- Libraries
- Library_Builder : Path_Name_Type := No_Path;
+ Library_Builder : Path_Name_Type := No_Path;
-- The executable to build library (specified in the configuration)
- Lib_Support : Library_Support := None;
+ Lib_Support : Library_Support := None;
-- The level of library support. Specified in the configuration. Support
-- is none, static libraries only or both static and shared libraries.
- Archive_Builder : Name_List_Index := No_Name_List;
+ Archive_Builder : Name_List_Index := No_Name_List;
-- The name of the executable to build archives, with the minimum
-- switches. Specified in the configuration.
Archive_Builder_Append_Option : Name_List_Index := No_Name_List;
-- The options to append object files to an archive
- Archive_Indexer : Name_List_Index := No_Name_List;
+ Archive_Indexer : Name_List_Index := No_Name_List;
-- The name of the executable to index archives, with the minimum
-- switches. Specified in the configuration.
- Archive_Suffix : File_Name_Type := No_File;
+ Archive_Suffix : File_Name_Type := No_File;
-- The suffix of archives. Specified in the configuration. When not
-- specified, defaults to ".a".
- Lib_Partial_Linker : Name_List_Index := No_Name_List;
+ Lib_Partial_Linker : Name_List_Index := No_Name_List;
-- Shared libraries
- Shared_Lib_Driver : File_Name_Type := No_File;
+ Shared_Lib_Driver : File_Name_Type := No_File;
-- The driver to link shared libraries. Set with attribute Library_GCC.
-- Default to gcc.
- Shared_Lib_Prefix : File_Name_Type := No_File;
+ Shared_Lib_Prefix : File_Name_Type := No_File;
-- Part of a shared library file name that precedes the name of the
-- library. Specified in the configuration. When not specified, defaults
-- to "lib".
- Shared_Lib_Suffix : File_Name_Type := No_File;
+ Shared_Lib_Suffix : File_Name_Type := No_File;
-- Suffix of shared libraries, after the library name in the shared
-- library name. Specified in the configuration. When not specified,
-- default to ".so".
- Shared_Lib_Min_Options : Name_List_Index := No_Name_List;
+ Shared_Lib_Min_Options : Name_List_Index := No_Name_List;
-- The minimum options to use when building a shared library
- Lib_Version_Options : Name_List_Index := No_Name_List;
+ Lib_Version_Options : Name_List_Index := No_Name_List;
-- The options to use to specify a library version
- Symbolic_Link_Supported : Boolean := False;
+ Symbolic_Link_Supported : Boolean := False;
-- True if the platform supports symbolic link files
- Lib_Maj_Min_Id_Supported : Boolean := False;
+ Lib_Maj_Min_Id_Supported : Boolean := False;
-- True if platform supports library major and minor options, such as
-- libname.so -> libname.so.2 -> libname.so.2.4
- Auto_Init_Supported : Boolean := False;
+ Auto_Init_Supported : Boolean := False;
-- True if automatic initialisation is supported for shared stand-alone
-- libraries.
end record;
@@ -1185,7 +1188,7 @@ package Prj is
-- The sources for all languages including Ada are accessible through
-- the Source_Iterator type
- Interfaces_Defined : Boolean := False;
+ Interfaces_Defined : Boolean := False;
-- True if attribute Interfaces is declared for the project or any
-- project it extends.