|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 7168 (0x1c00)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Create_Program_Library, seg_03be09, separate Library_Extensions
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Directory;
with Directory_Tools;
with Rcf_Switch_Implementation;
separate (Library_Extensions)
procedure Create_Program_Library
(Host_View : String;
Remote_Directory : String;
Remote_Program_Library : String;
Remote_Machine : String;
Status : in out Simple_Status.Condition) is
Remote_Connection : Remote_Command_Interface.Context;
Build_Adalib_Command : constant String := "a.mklib -f " & Remote_Directory;
function Remote_Parent_Library_Name return String is
Subsystem_Path_Name : constant String :=
Directory_Tools.Naming.Full_Name ("<subsystem>");
Library_Switch_File : constant String :=
Subsystem_Path_Name & "." & "library_switches";
Remote_Parent_Library_Option : constant String :=
"M68K_Sunos_Vdx_Remote_Parent_Library";
Object : Directory.Object;
Name_Status : Directory.Naming.Name_Status;
begin
Directory.Naming.Resolve (Name => Library_Switch_File,
The_Object => Object,
Status => Name_Status);
return Rcf_Switch_Implementation.Value
(Name => Remote_Parent_Library_Option, Switch_File => Object);
end Remote_Parent_Library_Name;
begin
-- This routine reads a switch named Remote_Parent_Library in order
-- to determine if a parent library needs to be associated with the
-- library to be created. If so, it is appended to the a.mklib
-- command.
--
-- The library switch file is assumed to reside in the subsystem
-- level library. That is, the library containing the names of all
-- the views within the subsystem.
Log.Put_Line
(Message => "Creating remote program library = " &
Remote_Program_Library,
Kind => Profile.Debug_Msg);
Acquire_Connection
(Remote_Connection => Remote_Connection,
Remote_Machine => Remote_Machine,
Status => Status);
Log.Put_Line
(Message => "Executing remote command: " & Build_Adalib_Command,
Kind => Profile.Note_Msg);
Rci.Execute_Command
(Command_Line => Build_Adalib_Command & " " & Remote_Parent_Library_Name,
Remote_Connection => Remote_Connection,
Status => Status,
Error_Pattern => "",
Parse_Error_Output => False,
Parse_Standard_Output => False,
Show_Parsed_Output => True,
Trace_Command => Trace_Rci_Commands);
if Simple_Status.Error (Status) then
Log.Put_Line
(Message => Simple_Status.Message (Status),
Kind => Profile.Negative_Msg);
Set_Status
(Status => Status,
Message => "Unable to create the remote adalib in, " &
Remote_Directory & ".");
Log.Put_Line
(Message => "Creation of the Remote Ada Library Failed",
Kind => Profile.Error_Msg);
Log.Put_Line
(Message => "Possible causes of this failure include: ",
Kind => Profile.Negative_Msg);
Log.Put_Line
(Message => " - Invalid Username & Password from your " &
"switches or remote passwords file.",
Kind => Profile.Negative_Msg);
Log.Put_Line
(Message =>
" - Remote machine is not accessable via the network",
Kind => Profile.Negative_Msg);
Log.Put_Line
(Message => " - Invalid permissions on the target",
Kind => Profile.Negative_Msg);
Log.Put_Line
(Message =>
"After resolving this problem use Rcf.Build_Remote_Library " &
"to create the Ada library on the target.",
Kind => Profile.Negative_Msg);
end if;
-- Rci.Release
-- (Remote_Connection => Remote_Connection,
-- Status => Local_Status,
-- Trace_Command => Trace_Rci_Commands);
--
exception
when others =>
Unhandled_Exception (Status, "Create_Program_Library");
-- BEGIN
-- Rci.Release
-- (Remote_Connection => Remote_Connection,
-- Status => Local_Status,
-- Trace_Command => Trace_Rci_Commands);
--
-- EXCEPTION
-- WHEN OTHERS =>
-- NULL;
-- END;
--
end Create_Program_Library;
nblk1=6
nid=0
hdr6=c
[0x00] rec0=18 rec1=00 rec2=01 rec3=01a
[0x01] rec0=00 rec1=00 rec2=06 rec3=006
[0x02] rec0=17 rec1=00 rec2=02 rec3=04c
[0x03] rec0=1d rec1=00 rec2=03 rec3=048
[0x04] rec0=1b rec1=00 rec2=04 rec3=06c
[0x05] rec0=1e rec1=00 rec2=05 rec3=000
tail 0x21739bbe2856574afd15b 0x42a00088462062803