## verify-freezefile.api
## (C) 2000 Lucent Technologies, Bell Laboratories
## Author: Matthias Blume (blume@kurims.kyoto-u.ac.jp)
# Compiled by:
#
src/app/makelib/makelib.sublib# Verifying the validity of an existing freezefile.
#
# - This is used for "paranoia" mode during bootstrap compilation.
# Normally, makelib accepts freezefiles and doesn't ask questions,
# but during bootstrap compilation it takes the freezefile only
# if it is verified to be valid.
stipulate
package ad = anchor_dictionary; # anchor_dictionary is from
src/app/makelib/paths/anchor-dictionary.pkg package ftm = frozenlib_tome_map; # frozenlib_tome_map is from
src/app/makelib/freezefile/frozenlib-tome-map.pkg package sg = intra_library_dependency_graph; # intra_library_dependency_graph is from
src/app/makelib/depend/intra-library-dependency-graph.pkg package lg = inter_library_dependency_graph; # inter_library_dependency_graph is from
src/app/makelib/depend/inter-library-dependency-graph.pkg package ms = makelib_state; # makelib_state is from
src/app/makelib/main/makelib-state.pkg package mvi = makelib_version_intlist; # makelib_version_intlist is from
src/app/makelib/stuff/makelib-version-intlist.pkg package sps = source_path_set; # source_path_set is from
src/app/makelib/paths/source-path-set.pkgherein
# This api is implemented in:
#
src/app/makelib/freezefile/verify-freezefile-g.pkg api Verify_Freezefile {
#
Exportmap = ftm::Map( thawedlib_tome::Thawedlib_Tome );
#
verify' : ms::Makelib_State
->
Exportmap
->
( ad::File, # libfile
List( sg::Tome_Tin ), # export_nodes
List( lg::Library_Thunk ), # sublibraries
sps::Set, # freezefiles
Null_Or( mvi::Makelib_Version_Intlist )
)
->
Bool;
verify: ms::Makelib_State
-> Exportmap
-> lg::Inter_Library_Dependency_Graph
-> Bool;
};
end;