4.1.19 gm2-libs/M2Dependent

DEFINITION MODULE M2Dependent ;

FROM SYSTEM IMPORT ADDRESS ;


TYPE
   ArgCVEnvP = PROCEDURE (INTEGER, ADDRESS, ADDRESS) ;


PROCEDURE ConstructModules (applicationmodule, libname: ADDRESS;
                            argc: INTEGER; argv, envp: ADDRESS) ;

PROCEDURE DeconstructModules (applicationmodule, libname: ADDRESS;
                              argc: INTEGER; argv, envp: ADDRESS) ;


(*
   RegisterModule - adds module name to the list of outstanding
                    modules which need to have their dependencies
                    explored to determine initialization order.
*)

PROCEDURE RegisterModule (modulename, libname: ADDRESS;
                          init, fini:  ArgCVEnvP;
                          dependencies: PROC) ;


(*
   RequestDependant - used to specify that modulename:libname
                      is dependant upon
                      module dependantmodule:dependantlibname
*)

PROCEDURE RequestDependant (modulename, libname,
                            dependantmodule, dependantlibname: ADDRESS) ;


END M2Dependent.