DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦57413428d⟧ Ada Source

    Length: 11264 (0x2c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Compilation_Extensions, seg_0508c3

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



with Directory;  
with Remote_Command_Interface;  
with Simple_Status;
with Target_Dependent_Interface;

package Compilation_Extensions is
    -- Contains the procedures that are to be invoked by the RCI as
    -- compilation extensions.

    procedure Promote_Preprocess
                 (Host_Unit : Directory.Object;
                  Remote_Unit_Name : String;
                  Remote_Library : String;
                  Remote_Machine : String;
                  Remote_Directory : String;
                  Pre_Options : String;
                  Post_Options : String;
                  Options_Separator : String;  
                  Remote_Connection : Remote_Command_Interface.Context;
                  Is_Secondary : Boolean;
                  Status : in out Simple_Status.Condition);

    -- Called during PROMOTE before executing the remote compilation
    -- command. The sequence is described below :-
    --    Promote
    --      Execute_Compile
    --         Acquire remote connection, set remote context, download files..
    --         Promote_Preprocess
    --         Execute remote command ...
    --         Promote_Postprocess
    --
    -- The "Is_Secondary" flag: indicates if the given host unit is a secondary
    -- referencer. If an ADA primary has several secondary referencers then
    -- this procedure is called once for each of the secondary referencers.
    -- This hook provides a way for users to implement remote compilation
    -- themselves.


    procedure Promote_Postprocess
                 (Host_Unit : Directory.Object;
                  Remote_Unit_Name : String;
                  Remote_Library : String;
                  Remote_Machine : String;
                  Remote_Directory : String;
                  Pre_Options : String;
                  Post_Options : String;
                  Options_Separator : String;  
                  Remote_Connection : Remote_Command_Interface.Context;
                  Is_Secondary : Boolean;
                  Status : in out Simple_Status.Condition);

    -- Called during PROMOTE after execution of a remote compilation
    -- command. The sequence is described below :-
    --    Promote
    --      Execute_Compile
    --        Acquire remote connection, set remote context, download files..
    --        Promote_Preprocess
    --        Execute remote command ...
    --        Promote_Postprocess
    --
    -- The "Is_Secondary" flag: indicates if the given host unit is a secondary
    -- referencer.  If an ADA primary has several secondary referencers then
    -- this procedure is called once for each of the secondary referencers.
    -- This hook provides a way for users to implement remote compilation
    -- themselves.


    procedure Demote_Preprocess (Host_Unit : Directory.Object;
                                 Remote_Unit_Name : String;
                                 Remote_Library : String;
                                 Remote_Machine : String;
                                 Remote_Directory : String;
                                 Status : in out Simple_Status.Condition);

    -- Called during DEMOTE before the call to destroy the associated files.
    -- The sequence is :-
    --   Demote
    --      Set context ...
    --      Demote_Preprocess
    --      Destroy associated files..
    --      Demote_Postprocess
    --      Restore context...


    procedure Demote_Postprocess (Host_Unit : Directory.Object;
                                  Remote_Unit_Name : String;
                                  Remote_Library : String;
                                  Remote_Machine : String;
                                  Remote_Directory : String;
                                  Status : in out Simple_Status.Condition);

    -- Called during DEMOTE before the call to destroy the associated files.
    -- The sequence is :-   --   Demote
    --      Set context ...
    --      Demote_Preprocess
    --      Destroy associated files..
    --      Demote_Postprocess
    --      Restore context...


    procedure Retrieve_Associated_Files_Preprocess
                 (Host_Unit : Directory.Object;  
                  Remote_Unit_Name : String;
                  Remote_Library : String;
                  Remote_Machine : String;
                  Remote_Directory : String;  
                  Remote_Connection : Remote_Command_Interface.Context;
                  The_Retrieve_Condition :
                     Target_Dependent_Interface.Retrieve_Condition;
                  Phases : Target_Dependent_Interface.Phase_Map;
                  Status : in out Simple_Status.Condition);

    -- Called before the RCF begins retrieving (after deleting any old
    -- ones) the standard associated files (ie: the associated files described
    -- thru the customization).
    --
    -- The sequence is :-
    --      Phase command (eg: Compile, Link, etc.)
    --        Destroy_And_Retrieve (Associated Files)
    --           Retrieve_Associated_Files_Preprocess
    --           Destroy, retrieve associated files..
    --           Retrieve_Associated_Files_Postprocess
    --
    -- "The_Retrieve_Condition" indicates the status
    -- of the current phase (eg: Compile, Link, etc.).  "Phases" indicates
    -- the phase. This hook provides users with a means of retrieving
    -- any additional associated files from the remote machine.
    -- NOTE :- if "Phases" denotes DEMOTION then "Remote_Connection"
    -- has a null value.


    procedure Retrieve_Associated_Files_Postprocess
                 (Host_Unit : Directory.Object;  
                  Remote_Unit_Name : String;
                  Remote_Library : String;
                  Remote_Machine : String;
                  Remote_Directory : String;
                  Remote_Connection : Remote_Command_Interface.Context;
                  The_Retrieve_Condition :
                     Target_Dependent_Interface.Retrieve_Condition;
                  Phases : Target_Dependent_Interface.Phase_Map;
                  Status : in out Simple_Status.Condition);

    -- Called after the RCF has retrieved the standard associated files
    -- (ie: the associated files described thru customization).
    -- The sequence is :-
    --      Phase command (eg: Compile, Link, etc.)
    --        Destroy_And_Retrieve (Associated Files)
    --           Retrieve_Associated_Files_Preprocess
    --           Destroy, retrieve associated files..
    --           Retrieve_Associated_Files_Postprocess
    --
    -- "The_Retrieve_Condition" indicates the status of the
    -- current phase (eg: Compile, Link, etc.).  "Phases" indicates
    -- the current phase. This hook provides users with a means of
    -- retrieving any additional associated files from the remote machine.


    function Build_Default_Target_Name
                (Host_Unit : Directory.Object;
                 Suffix_Type : Target_Dependent_Interface.Suffix_Type;
                 Serial_Number : Positive) return String;

    -- Called by the RCF when it wants to set the default target name for
    -- a given ADA unit.  If this function returns a "" value
    -- for "Default_Target_Name" then the RCF will use its own
    -- procedure (driven by the customization) to build a target name.
    --
    -- The sequence is :-
    --       Default_Target_Name
    --           declare
    --              Default_Name : constant String := Build_Default_Target_Name
    --           begin
    --             if Default_Name /= "" then
    --                return Default_Name
    --             endif
    --           end
    --           Proceed to build the name from customization information
    --
    -- "Suffix_Type" indicates if the given host unit is a spec, body
    -- or simply a file.  "Serial_Number" is a unique number assigned
    -- to the "Host_Unit" when it was added to the library.  It could
    -- be used in target name generation.
    -- This hook provides users with a way of changing the target names
    -- associated with host Ada names.


    procedure Change_Remote_Context_Preprocess
                 (Remote_Directory : String;
                  Remote_Library : String;
                  Remote_Connection : Remote_Command_Interface.Context;
                  Status : in out Simple_Status.Condition);

    -- Called by RCF compilation commands before they change the remote
    -- directory.
    --
    -- The sequence is :-
    --        Compilation or linker command
    --           Execute_Context_Change
    --               Change_Remote_Context_Preprocess
    --               Execute remote command to change context
    --               Change_Remote_Context_Postprocess
    -- This hook provides users with an opportunity to do something in the
    -- remote directory before the context is changed.


    procedure Change_Remote_Context_Postprocess
                 (Remote_Directory : String;
                  Remote_Library : String;
                  Remote_Connection : Remote_Command_Interface.Context;
                  Status : in out Simple_Status.Condition);

    -- Called by the RCF after it has switched to a new remote directory
    -- (and library).
    -- The sequence is :-
    --        Compilation or linker command
    --           Execute_Context_Change
    --               Change_Remote_Context_Preprocess
    --               Execute remote command to change context
    --               Change_Remote_Context_Postprocess
    -- This hook provides the user with an opportunity
    -- to do something within the new context.

end Compilation_Extensions;

E3 Meta Data

    nblk1=a
    nid=0
    hdr6=14
        [0x00] rec0=1b rec1=00 rec2=01 rec3=034
        [0x01] rec0=16 rec1=00 rec2=02 rec3=078
        [0x02] rec0=16 rec1=00 rec2=03 rec3=060
        [0x03] rec0=18 rec1=00 rec2=04 rec3=002
        [0x04] rec0=18 rec1=00 rec2=05 rec3=020
        [0x05] rec0=15 rec1=00 rec2=06 rec3=06a
        [0x06] rec0=15 rec1=00 rec2=07 rec3=012
        [0x07] rec0=16 rec1=00 rec2=08 rec3=022
        [0x08] rec0=16 rec1=00 rec2=09 rec3=062
        [0x09] rec0=16 rec1=00 rec2=0a rec3=000
    tail 0x2154af386878e74075ea2 0x42a00088462060003