mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-16 18:03:36 +00:00
compiler/make.deps_cache.m:
Add conditionally-compiled code to count the search and addition
operations on each cache, as well as code to write out these counts.
Where a cache has two versions, one for intermod and non-intermod
operations, put the non-intermod version first, since it is more basic.
Add two new non-intermod cache versions that are not used yet,
but whose intermod versions are used: one for non-intermod
indirect imports, and one for non-intermod anc0_dir1_indir2.
For the latter, include "intermod" in the name of the old cache,
which uses intermodule information.
compiler/make.make_info.m:
Add those two caches, and follow the updated order and names of the caches.
compiler/mercury_compile_main.m:
Call make.deps_cache.m to dump out its cache, it it was enabled
and gathered any info.
compiler/make.m:
Make make.deps_cache.m visible from outside the make package,
in order to make possible the change top mercury_compile_main.m above.
compiler/make.dependencies.m:
Conform to the changes above.
tools/make_deps_cache_stats:
A new script to summarize the information recorded by the new code.
48 lines
1.6 KiB
Mathematica
48 lines
1.6 KiB
Mathematica
%---------------------------------------------------------------------------%
|
|
% vim: ft=mercury ts=4 sw=4 et
|
|
%---------------------------------------------------------------------------%
|
|
% Copyright (C) 2002-2012 The University of Melbourne.
|
|
% Copyright (C) 2013-2021 The Mercury team.
|
|
% This file may only be copied under the terms of the GNU General
|
|
% Public License - see the file COPYING in the Mercury distribution.
|
|
%---------------------------------------------------------------------------%
|
|
%
|
|
% File: make.m.
|
|
% Main author: stayl.
|
|
%
|
|
% A package for "mmc --make", a builtin Mercury-specific make replacement.
|
|
%
|
|
%---------------------------------------------------------------------------%
|
|
|
|
:- module make.
|
|
:- interface.
|
|
|
|
:- include_module build.
|
|
:- include_module deps_cache.
|
|
:- include_module get_module_dep_info.
|
|
:- include_module module_dep_file.
|
|
:- include_module options_file.
|
|
:- include_module top_level.
|
|
|
|
%---------------------------------------------------------------------------%
|
|
%---------------------------------------------------------------------------%
|
|
|
|
:- implementation.
|
|
|
|
:- include_module check_up_to_date.
|
|
:- include_module dependencies.
|
|
:- include_module deps_set.
|
|
:- include_module file_names.
|
|
:- include_module find_local_modules.
|
|
:- include_module hash.
|
|
:- include_module make_info.
|
|
:- include_module module_target.
|
|
:- include_module program_target.
|
|
:- include_module timestamp.
|
|
:- include_module track_flags.
|
|
:- include_module util.
|
|
|
|
%---------------------------------------------------------------------------%
|
|
:- end_module make.
|
|
%---------------------------------------------------------------------------%
|