|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 15667 (0x3d33)
Types: TextFile
Names: »B«
└─⟦516dceb10⟧ Bits:30000751 8mm tape, Rational 1000, RCI_VADS
└─⟦9a14c9417⟧ »DATA«
└─⟦this⟧
with Help_Text;
with Sparc_Strings;
separate (M68k_Sunos_Vdx)
function Get_Operational_Info return Op.Object is
-- Sun Ada 1.0 provides limited support for Code_Shared_Generics. Because
-- the support is limited and may be dependent on pragmas and switches, we
-- will set the Generics_Share_Code property FALSE. This may cause some
-- unneeded recompilation at times, but will insure that we ALWAYS
-- recompile anything that needs recompilation
Compiler_Properties : constant Op.Compiler_Property_List :=
(Op.Generics_Share_Code => False,
Op.Require_Body_And_Generic_In_Same_Compilation => False,
Op.Requires_Subunits_And_Generic_In_Same_Compilation => False,
Op.Implements_Pragma_Inline => True,
Op.Separate_Subunits_Are_Inefficient => False);
-- Commented descriptions for each of the options defined below are
-- taken from the man pages supplied by the SunAda "a.help ada".
--
Option_List : constant Op.Option_List :=
(
-- -# identifier type value
-- Define an identifier of a specified type and value. See Chapter ,
-- VADS ADA PREPROCESSOR REFERENCE.
Op.Build (For_Target => T_Name,
Option_Name => "-#",
Switch_Dependent => True,
Switch_Name => "Define_Preprocessor_Value",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "",
Is_Pre_Option => True,
Option_Takes_Arg => True,
Help => Help_Text.Define),
-- -E
-- -E file
-- -E directory
-- Without a file or directory argument, ada processes error
-- messages using a.error and directs a brief output to
-- standard output; the raw error messages are left in
-- ada_source.err. If a file pathname is given, the raw
-- error messages are placed in that file. If a directory
-- argument is supplied, the raw error output is placed in
-- dir/source.err. The file of raw error messages can be used
-- as input to a.error
--
Op.Build (For_Target => T_Name,
Option_Name => "-E",
Switch_Dependent => True,
Switch_Name => "Error_Output",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "false",
Is_Pre_Option => True,
Option_Takes_Arg => False,
Help => Help_Text.Error_Output),
-- -El
-- -El file
-- -El directory
-- Same as the -E option, except that source listing with errors is
-- produced.
--
Op.Build (For_Target => T_Name,
Option_Name => "-El",
Switch_Dependent => True,
Switch_Name => "Error_Listing",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "",
Option_Takes_Arg => True,
Is_Pre_Option => True,
Help => Help_Text.Error_Listing),
-- -M unit_name
-- (main) Produce an executable program by linking the named unit as
-- the main program. unit_name must already be compiled. It must be
-- either a parameterless procedure or a parameterless function
-- returning an integer. The executable program will be named a.out
-- unless overridden with the -o option.
--
-- -M source_file
-- (main) Produce an executable program by compiling and linking
-- source_file. The main unit of the program is assumed to be the
-- root name of the .a file (for foo.a the unit is foo). Only one .a
-- file may be preceded by -M. The executable program will be named
-- a.out unless overridden with the -o option.
--
Op.Build (For_Target => T_Name,
Option_Name => "-M",
Switch_Dependent => True,
Switch_Name => "Main",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "",
Option_Takes_Arg => True,
Is_Pre_Option => True,
Help => Help_Text.Main),
-- -o executable_file
-- (output) This option is to be used in conjunction with the -M
-- option. executable_file is the name of the executable rather than
-- the default a.out.
Op.Build
(For_Target => T_Name,
Option_Name => "-o",
Switch_Dependent => True,
Switch_Name => "Executable_Output",
Active_Phases => (Op.Link | Op.Promote => True, others => False),
Default_Value => "",
Option_Takes_Arg => True,
Is_Pre_Option => True,
Help => Help_Text.Output),
-- -O[0-9] (optimize) Invoke the code optimizer (OPTIM3). An
-- optional digit (there is no space before the digit) provides
-- the level of optimization. The default is -O4.
--
-- The user will supply a string with the correct optimization switch
-- in the range O0 - O9. When the null string is specified the
-- default is used by the compiler (O4).
--
Op.Build
(For_Target => T_Name,
Option_Name => "",
Switch_Dependent => True,
Switch_Name => "Optimization",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "",
Option_Takes_Arg => True,
Is_Pre_Option => True,
Help => Help_Text.Optimize),
-- -P
-- Invoke the Ada Preprocessor. See Chapter , VADS ADA
-- PREPROCESSOR REFERENCE.
Op.Build
(For_Target => T_Name,
Option_Name => "-P",
Switch_Dependent => True,
Switch_Name => "Invoke_Preprocessor",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "False",
Option_Takes_Arg => False,
Is_Pre_Option => True,
Help => Help_Text.Preprocess),
-- -S
-- (suppress) Apply pragma SUPPRESS to the entire compilation for
-- all suppressible checks. (See also pragma SUPPRESS(ALL_CHECKS) on
-- page
Op.Build
(For_Target => T_Name,
Option_Name => "-S",
Switch_Dependent => True,
Switch_Name => "Apply_Suppress",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "False",
Option_Takes_Arg => False,
Is_Pre_Option => True,
Help => Help_Text.Suppress),
-- -sh
-- (show) Display the name of the tool executable but do
-- not execute it.
Op.Build
(For_Target => T_Name,
Option_Name => "-sh",
Switch_Dependent => True,
Switch_Name => "Show_Tool_Name_Only",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "False",
Option_Takes_Arg => False,
Is_Pre_Option => True,
Help => Help_Text.Show_Tool),
-- -T
-- (timing) Print timing information for the compilation.
Op.Build
(For_Target => T_Name,
Option_Name => "-T",
Switch_Dependent => True,
Switch_Name => "Timing",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "False",
Option_Takes_Arg => False,
Is_Pre_Option => True,
Help => Help_Text.Timing),
-- -v
-- (verbose) Print compiler version number, date and time
-- of compilation, name of file compiled, command input line,
-- total compilation time, and error summary line. Storage
-- usage information about the object file is provided. With
-- OPTIM3 the output format of compression (the size of
-- optimized instructions) is as a percentage of input
-- (unoptimized instructions).
Op.Build
(For_Target => T_Name,
Option_Name => "-v",
Switch_Dependent => True,
Switch_Name => "Verbose",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "False",
Option_Takes_Arg => False,
Is_Pre_Option => True,
Help => Help_Text.Verbose),
-- -w
-- (warnings) Suppress warning diagnostics.
Op.Build
(For_Target => T_Name,
Option_Name => "-w",
Switch_Dependent => True,
Switch_Name => "Supress_Warnings",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "False",
Option_Takes_Arg => False,
Is_Pre_Option => True,
Help => Help_Text.Warning),
Op.Build
(For_Target => T_Name,
Option_Name => "",
Switch_Dependent => True,
Switch_Name => "Other_Compiler_Options",
Active_Phases => (Op.Promote => True, others => False),
Default_Value => "",
Option_Takes_Arg => True,
Is_Pre_Option => True,
Help => Help_Text.Other_Compiler_Options),
-- ========================================
-- Linker Options
-- ========================================
Op.Build
(For_Target => T_Name,
Option_Name => "",
Switch_Dependent => True,
Switch_Name => "Other_Linker_Options",
Active_Phases => (Op.Link => True, others => False),
Default_Value => "",
Option_Takes_Arg => True,
Is_Pre_Option => True,
Help => Help_Text.Other_Linker_Options),
-- =============================================================
--
-- The following option provides a capability to define a parent
-- library that will be used on the a.mklib command.
--
-- =============================================================
Op.Build
(For_Target => T_Name,
Option_Name => "",
Switch_Dependent => True,
Switch_Name => "Remote_Parent_Library",
Active_Phases => (others => False),
Default_Value => "",
Option_Takes_Arg => True,
Is_Pre_Option => True,
Help => Help_Text.Remote_Parent_Library));
--------------------------------------------------
-- Associated file retrieval did not work correctly in the baselined RCF
-- release Rev1_0_0. This section will be implemented after the
-- maintanence release is available.
--
Null_File_List : Op.Associated_File_List (1 .. 0);
Associated_File_List : constant Op.Associated_File_List :=
(
-- Retrieve the executable image after linking.
--
Op.Build (For_Target => T_Name,
The_File_Type => Op.Binary,
The_Retrieve_Condition => Op.On_Normal,
Retrieve_Phase => Op.Link,
Option_Dependent => False,
Associated_Option_Switch => "",
Host_Filename_Extension => "exe",
Remote_Filename_Type => Op.Ada_Name,
Argument_Overrides_Fixed_Name => False,
Fixed_Remote_Filename => "",
Remote_Filename_Extension => ""),
-- Retrieve the "ada_source.err"
--
Op.Build (For_Target => T_Name,
The_File_Type => Op.Text,
The_Retrieve_Condition => Op.Always,
Retrieve_Phase => Op.Promote,
Option_Dependent => True,
Associated_Option_Switch => "Error_Output",
Host_Filename_Extension => "err",
Remote_Filename_Type => Op.File_Name,
Argument_Overrides_Fixed_Name => False,
Fixed_Remote_Filename => "",
Remote_Filename_Extension => "err"),
Op.Build (For_Target => T_Name,
The_File_Type => Op.Text,
The_Retrieve_Condition => Op.Always,
Retrieve_Phase => Op.Promote,
Option_Dependent => True,
Associated_Option_Switch => "Error_Listing",
Host_Filename_Extension => "err",
Remote_Filename_Type => Op.File_Name,
Argument_Overrides_Fixed_Name => False,
Fixed_Remote_Filename => "",
Remote_Filename_Extension => "err"));
--------------------------------------------------
Op_Characteristics : Op.Object :=
Op.Build
(Properties => Compiler_Properties,
Max_Filename_Length => 31, --[?]
Full_Pathname_Length => 255, --[?]
Spec_Filename_Extension => "a",
Body_Filename_Extension => "a",
Extension_Separator => ".",
Directory_Separator => Sparc_Strings.Directory_Separator,
Directory_Prefix => "",
Directory_Suffix => "",
Directory_Unit_Separator => Sparc_Strings.Directory_Separator,
Case_Sensitive => True,
Command_Line_Case => Op.Lower,
Max_Command_Line_Length => 255, --[?]
Compiler_Command => "ada ",
Compiler_Pre_Command => "",
Compiler_Post_Command => "",
Linker_Command => "a.ld",
Linker_Pre_Command => "",
Linker_Post_Command => "",
Executable_Option => "-o",
Executable_Option_Is_Pre_Option => True,
Context_Command => "cd",
Library_Command => "",
Default_Program_Library_Name => "",
Parse_Standard_Output => False,
Parse_Standard_Error => False,
Error_Pattern => "",
Remote_Operating_System => Op.Unix, -- not used yet
The_Transfer_Type => Op.Ftp,
Option_Separator => " ",
Option_Header => "",
Option_Argument_Separator => " ",
Options => Option_List,
Ada_Name_Subunit_Separator => "__",
Ada_Name_Spec_Suffix => "_",
Ada_Name_Body_Suffix => "",
Associated_Files => Associated_File_List,
For_Target => T_Name);
begin
return Op_Characteristics;
end Get_Operational_Info;