# -*-python-*- Import(["env", "libgambc"]) cpppath = [".", "#include", "#lib"] env.Replace(CPPPATH=cpppath) gambitSourceFiles = ["_back.scm", "_env.scm", "_front.scm", "_gvm.scm", "_host.scm", "_parms.scm", "_prims.scm", "_ptree1.scm", "_ptree2.scm", "_source.scm", "_t-c-1.scm", "_t-c-2.scm", "_utils.scm"] gambitGenericDependentSourceFiles = ["_t-c-3.scm", "_gsc.scm"] # This "GenericDependent" contortion is because source files can't have dependencies gambitTargetFiles = env.GambitCompiler(gambitSourceFiles) gambitGenericDependentTargetFiles = env.GambitCompiler(gambitGenericDependentSourceFiles) # The target files are not strictly dependent upon the entire # libgambc but on some of the files generated during its build env.Depends(gambitTargetFiles, libgambc) env.Depends(gambitGenericDependentTargetFiles, libgambc) env.Depends(gambitTargetFiles, ["fixnum.scm", "_envadt.scm", "_gvmadt.scm", "_ptreeadt.scm", "_sourceadt.scm"]) env.Depends(gambitGenericDependentTargetFiles, ["fixnum.scm", "_envadt.scm", "_gvmadt.scm", "_ptreeadt.scm", "_sourceadt.scm"]) env.Depends(gambitGenericDependentTargetFiles, ["generic.scm"]) gscLinkerFile = env.GambitLinker([gambitTargetFiles, gambitGenericDependentTargetFiles]) gsc = env.Program("gsc", [gambitTargetFiles, gambitGenericDependentTargetFiles, gscLinkerFile, libgambc]) Return("gsc")