Commit Graph

2 Commits

Author SHA1 Message Date
Zoltan Somogyi
148712f641 Carve three new modules out of make.dependencies.m.
Each of the new modules, and the old one, have improved cohesion.

compiler/make.check_up_to_date.m:
compiler/make.deps_cache.m:
compiler/make.find_local_modules.m:
    Carve these new modules out of make.dependencies.m.

    make.check_up_to_date.m contains code to test whether the other files
    that the current target file depends on are up to date or not.

    make.deps_cache.m contains the caches that make.dependecies.m uses,
    which are also components of the make_info structure.

    make.find_local_modules.m contains code to find the set of modules
    in the current directory that a module (such as a module that
    defines main/2) depends on.

compiler/make.m:
    Include the new modules in the make package.

compiler/notes/compiler_design.html:
    Document the new modules.

compiler/make.make_info.m:
    Move two types here from make.dependencies.m, since they define
    the type of one the pieces information stored in the make_info,
    and they are also used by other modules.

compiler/make.dependencies.m:
    Delete the code moved to other modules.

compiler/make.build.m:
compiler/make.deps_set.m:
compiler/make.file_names.m:
compiler/make.hash.m:
compiler/make.module_target.m:
compiler/make.program_target.m:
compiler/make.timestamp.m:
compiler/make.top_level.m:
compiler/make.track_flags.m:
compiler/make.util.m:
    Conform to the changes above.
2023-09-17 18:53:48 +10:00
Zoltan Somogyi
5a65105be3 Carve three new modules out of make.util.m.
Each of the new modules, and the new make.util.m, has better cohesion
than the old make.util.m. (For example, the lists of modules they import
don't overlap all that much.)

compiler/make.file_names.m:
compiler/make.hash.m:
compiler/make.timestamp.m:
    Carve these three modules out of make.util.m

    - make.file_names.m does filename translations.
    - make.hash.m does hashing.
    - make.hash.m looks up and compares timestamps.

compiler/make.m:
    Include the new modules.

compiler/notes/compiler_design.html:
    Document the new modules.

compiler/make.dependencies.m:
compiler/make.module_dep_file.m:
compiler/make.module_target.m:
compiler/make.program_target.m:
compiler/make.top_level.m:
compiler/make.util.m:
    Update module imports.
2023-08-07 13:13:17 +02:00