|
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 - downloadIndex: ┃ B T ┃
Length: 27098 (0x69da) Types: TextFile Names: »B«
└─⟦516dceb10⟧ Bits:30000751 8mm tape, Rational 1000, RCI_VADS └─ ⟦9a14c9417⟧ »DATA« └─⟦this⟧
separate (M68k_Sunos_Vdx) function Get_Operational_Info return Op.Object is 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); -- Help text for the Options switches. Apply_Suppress_Help : constant String := "-S (suppress) " & "Applies pragma SUPPRESS to the entire compilation for all " & "suppressible checks. (See also pragma SUPPRESS (ALL_CHECKS))."; Archive_File_Name_Help : constant String := "-a file_name (archive) " & "Treats file_name as an object archive file " & "created by the SunOS command ar. " & "Since some archive files end with .a, -a is used to " & "distinguish archive files from Ada source files."; Debug_Overflow_Help : constant String := "-DX (debug) " & "Debug memory overflow (used in cases where linking a " & "large number of units causes the error message " & """local symbol overflow"" to occur)."; Define_Preprocessor_Value_Help : constant String := "-# identifier type value (define) " & "Defines an identifier of the specified type and value."; Dependencies_Only_Help : constant String := "-d (dependencies) " & "Analyzes for dependencies only. " & "Does not do semantic analysis or code generation. " & "Updates the library, marking any defined units as uncompiled."; Dependent_Files_Help : constant String := "-F (files) " & "Prints a list of dependent files in order and suppresses linking."; Dependent_Units_Help : constant String := "-U (units) " & "Prints a list of dependent units in order and suppresses linking."; Elaborate_Help : constant String := "-E unit_name (elaborate) " & "Elaborates unit_name as early in the elaboration order " & "as possible."; Error_Listing_Help : constant String := "-El (error listing) " & "Same as the -E (Error_Output) option, except that a " & "source listing with errors is produced."; Error_Output_Help : constant String := "-E (error output) " & "If this switch is True, 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."; Executable_Output_Help : constant String := "-o executable_file (output) " & "This option can only be used in conjunction with the -M option. " & "The name of the executable will be executable_file rather than " & "the default a.out."; Invoke_Preprocessor_Help : constant String := "-P (preprocessor) " & "Invokes the Ada Preprocessor."; Keep_Intermediate_Help : constant String := "-K (keep) " & "Keeps the intermediate language (IL) file produced by " & "the compiler front end. The IL file will be placed in " & "the .objects directory, with the file name ada_source.i."; Main_Help : constant String := "-M unit_name, -M source_file (main). -M unit_name : " & "Produces 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. " & "-M source_file : " & "Produces 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. " & "In either case, the executable program will be named a.out " & "unless overridden with the -o option."; Optimization_Help : constant String := "-O[0-9] (optimize) " & "Invokes the code optimizer (OPTIM3). An optional " & "digit (there is no space before the digit) provides " & "the level of optimization. The default is -O4. " & "Note that an entire option string, such as ""-O2"" or ""-O"", " & "must be supplied as an argument for this switch. " & "-O : full optimization, " & "-O0 : prevents optimization, " & "-O1 : no hoisting, " & "-O2 : no hoisting but more passes, " & "-O3 : no hoisting but even more passes, " & "-O4 : hoisting from loops, " & "-O5 : hoisting from loops but more passes, " & "-O6 : hoisting from loops with maximum passes, " & "-O7 : hoisting from loops and branches, " & "-O8 : hoisting from loops and branches, more passes, " & "-O9 : hoisting from loops and branches, maximum passes."; Recompile_Instantiation_Help : constant String := "-R SunAda_library (recompile instantiation) " & "Forces analysis of all generic instantiations, " & "causing reinstantiation of any that are out of date."; Show_Tool_Name_Only_Help : constant String := "-sh (show) " & "Displays the name of the tool executable but does not execute it."; Suppress_Warnings_Help : constant String := "-w (warnings) " & "Suppresses warning diagnostics."; Timing_Help : constant String := "-T (timing) " & "Prints timing information for the compilation."; Verbose_Help : constant String := "-v (verbose) " & "During compilation, prints the compiler version number, date and " & "time of compilation, name of file compiled, command input line, " & "total compilation time, error summary line, and " & "storage usage information about the object file. " & "During linking, prints the linker command before executing it."; Remote_Parent_Library_Help : constant String := "Use this switch to specify the location of the remote parent" & " library on the remote host. By default, the RCI will attempt" & " to access the MC68881 library."; -- Commented descriptions for each of the options defined below are taken -- mainly from the man pages supplied by the SunAda "a.help" command. Option_List : constant Op.Option_List := ( -------- COMPILER OPTIONS -------- -- --{ The SPARC ada compiler appears to be happy if these options are -- made post-options instead of pre-options. } -- -- -# identifier type value (define) Define an identifier of a -- specified type and value. See Chapter 10, Sun Ada ADA -- PREPROCESSOR REFERENCE. Op.Build (For_Target => T_Name, Option_Name => "-#", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Define_Preprocessor_Value", Default_Value => "", Option_Takes_Arg => True, Is_Pre_Option => True, Help => Define_Preprocessor_Value_Help), -- -a file_name -- (archive) Treat file_name as an object -- archive file created by ar. Since some archive files end -- with .a, -a is used to distinguish archive files from Ada -- source files. Op.Build (For_Target => T_Name, Option_Name => "-a", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Archive_File_Name", Default_Value => "", Option_Takes_Arg => True, Is_Pre_Option => True, Help => Archive_File_Name_Help), -- -d -- (dependencies) Analyze for dependencies only. Do not do -- semantic analysis or code generation. Update the library, -- marking any defined units as uncompiled. The -d option is -- used by a.make to establish dependencies among new files. Op.Build (For_Target => T_Name, Option_Name => "-d", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Dependencies_Only", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Dependencies_Only_Help), -- -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. -- --{ We can only use one -E option (either -E or -El). } Op.Build (For_Target => T_Name, Option_Name => "-E", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Error_Output", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Error_Output_Help), -- -El -- -El file -- -El directory -- Same as the -E option, except that a source listing with errors -- is produced. -- --{ This is partly true. The source listing with errors goes to the -- standard output, but the error file will only contain the errors, -- not the source listing, so for RCI purposes -E (Error_Output) and -- -El (Error_Listing) are identical. } Op.Build (For_Target => T_Name, Option_Name => "-El", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Error_Listing", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Error_Listing_Help), -- -K -- (keep) Keep the intermediate language (IL) file -- produced by the compiler front end. The IL file will be placed -- in the .objects directory, with the file name ada_source.i. Op.Build (For_Target => T_Name, Option_Name => "-K", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Keep_Intermediate", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Keep_Intermediate_Help), -- -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", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Main", Default_Value => "", Option_Takes_Arg => True, Is_Pre_Option => True, Help => Main_Help), -- -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", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Executable_Output", Default_Value => "", Option_Takes_Arg => True, Is_Pre_Option => True, Help => Executable_Output_Help), -- -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 switch argument must be a string containing the desired -- optimization option, which must contain a minus sign followed by the -- letter 'O' followed by a digit ("-O0" .. "-O9"). Note that the -- argument must contain the '-' prefix. Op.Build (For_Target => T_Name, Option_Name => "", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Optimization", Default_Value => "", Option_Takes_Arg => True, Is_Pre_Option => True, Help => Optimization_Help), -- -P -- Invoke the Ada Preprocessor. See Chapter 10, Sun Ada ADA -- PREPROCESSOR REFERENCE. Op.Build (For_Target => T_Name, Option_Name => "-P", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Invoke_Preprocessor", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Invoke_Preprocessor_Help), -- -R SunAda_library -- (recompile instantiation) Force analysis of all generic -- instantiations, causing reinstantiation of any that are out of date. -- Op.Build (For_Target => T_Name, Option_Name => "-R", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Recompile_Instantiation", Default_Value => "", Option_Takes_Arg => True, Is_Pre_Option => True, Help => Recompile_Instantiation_Help), -- -S -- (suppress) Apply pragma SUPPRESS to the entire -- compilation for all suppressible checks. (See also pragma -- SUPPRESS(ALL_CHECKS) on page PG F-6. Op.Build (For_Target => T_Name, Option_Name => "-S", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Apply_Suppress", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Apply_Suppress_Help), -- -sh -- (show) Display the name of the tool executable but do -- not execute it. Op.Build (For_Target => T_Name, Option_Name => "-sh", Active_Phases => (Op.Promote => True, Op.Link => True, others => False), Switch_Dependent => True, Switch_Name => "Show_Tool_Name_Only", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Show_Tool_Name_Only_Help), -- -T -- (timing) Print timing information for the compilation. Op.Build (For_Target => T_Name, Option_Name => "-T", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Timing", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Timing_Help), -- -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", Active_Phases => (Op.Promote => True, Op.Link => True, others => False), Switch_Dependent => True, Switch_Name => "Verbose", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Verbose_Help), -- -w -- (warnings) Suppress warning diagnostics. Op.Build (For_Target => T_Name, Option_Name => "-w", Active_Phases => (Op.Promote => True, others => False), Switch_Dependent => True, Switch_Name => "Suppress_Warnings", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Suppress_Warnings_Help), -------- LINKER OPTIONS -------- -- -- -DX -- (debug) Debug memory overflow (use in cases where linking a -- large number of units causes the error message "local symbol -- overflow" to occur). Op.Build (For_Target => T_Name, Option_Name => "-DX", Active_Phases => (Op.Link => True, others => False), Switch_Dependent => True, Switch_Name => "Debug_Overflow", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Debug_Overflow_Help), -- -E unit_name -- (elaborate) Elaborate unit_name as early in the elaboration order -- as possible. Op.Build (For_Target => T_Name, Option_Name => "-E", Active_Phases => (Op.Link => True, others => False), Switch_Dependent => True, Switch_Name => "Elaborate", Default_Value => "", Option_Takes_Arg => True, Is_Pre_Option => True, Help => Elaborate_Help), -- -F -- (files) Print a list of dependent files in order and -- suppress linking. Op.Build (For_Target => T_Name, Option_Name => "-F", Active_Phases => (Op.Link => True, others => False), Switch_Dependent => True, Switch_Name => "Dependent_Files", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Dependent_Files_Help), -- -sh -- (show) Display the name of the tool executable but do not execute it. -- (defined above) -- -U -- (units) Print a list of dependent units in order and -- suppress linking. Op.Build (For_Target => T_Name, Option_Name => "-U", Active_Phases => (Op.Link => True, others => False), Switch_Dependent => True, Switch_Name => "Dependent_Units", Default_Value => "False", Option_Takes_Arg => False, Is_Pre_Option => True, Help => Dependent_Units_Help), -- -v -- (verbose) Print the linker command before executing it. -- (defined above) -- ============================================================= -- -- 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 => Remote_Parent_Library_Help)); Associated_File_List : constant Op.Associated_File_List := --{ Only one of the following 2 associated files is possible for any -- given compilation. } (Op.Build (For_Target => T_Name, The_File_Type => Op.Text, The_Retrieve_Condition => Op.On_Error, Retrieve_Phase => Op.Promote, Option_Dependent => True, Associated_Option_Switch => "Error_Output", Host_Filename_Extension => "list", 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.On_Error, Retrieve_Phase => Op.Promote, Option_Dependent => True, Associated_Option_Switch => "Error_Listing", Host_Filename_Extension => "list", Remote_Filename_Type => Op.File_Name, Argument_Overrides_Fixed_Name => False, Fixed_Remote_Filename => "", Remote_Filename_Extension => "err"), -- The Sparc does not support Binary FTP file transfer, i.e., the -- FTP.Use_Type (Binary) fails. It does support FTP.Use_Type -- (Local_Binary), but this enumeration is NOT defined in the -- Rcf_Customization_Interface subsystem package -- Operational_Characteristics. Text transfer seems to work fine -- however, so we'll use that for now (even though the file really is a -- binary file). Op.Build (For_Target => T_Name, The_File_Type => Op.Text, The_Retrieve_Condition => Op.On_Normal, Retrieve_Phase => Op.Link, Option_Dependent => False, Associated_Option_Switch => "", Host_Filename_Extension => "exe", Remote_Filename_Type => Op.Fixed_Name, Argument_Overrides_Fixed_Name => True, Fixed_Remote_Filename => "a.out", Remote_Filename_Extension => "") ); -------------------------------------------------- Op_Characteristics : Op.Object := Op.Build (Properties => Compiler_Properties, Max_Filename_Length => 255, Full_Pathname_Length => 800, -- This is the limit specified in the Sun Ada User's Guide. Spec_Filename_Extension => "a", Body_Filename_Extension => "a", Extension_Separator => ".", Directory_Separator => "/", Directory_Prefix => "", Directory_Suffix => "", Directory_Unit_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;