mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-28 11:28:38 +00:00
d7aca2a1bb
Remove the hardcoded module2dir mapping and use the results from echo-requires-recursive instead. Add README which briefly explains how module-deps is supposed to work. Add XSLT hacks to modules.mk.footer. Add cygdrive hacks to modules.mk.stub. Force string & embedstring to be built after xpcom since they now live in the xpcom hierarchy.
51 lines
2.1 KiB
Plaintext
51 lines
2.1 KiB
Plaintext
Here's a brief "how this works" doc to refresh my memory when I look at this in another 8 months.
|
|
|
|
The files:
|
|
|
|
all.dot - A dependency list of all of the modules in the current tree.
|
|
- Generated by running module-graph.pl on an existing build tree.
|
|
- Only contains the dependencies for the platform it was run on
|
|
(Bug 185188)
|
|
|
|
allmakefiles.stub - This is the stub portion of allmakefiles.sh which is used
|
|
when running bootstrap.pl so that only specific Makefiles are generated
|
|
|
|
bootstrap.pl - This script was originally designed to use the results from
|
|
module-graph.pl to create a cvs checkout list & build order and to
|
|
build the tree using those lists. It has been modified to be able to
|
|
update the standard allmakefiles.sh & modules.mk files to track module
|
|
changes as well.
|
|
|
|
extra.dot - This file contains a mapping of additional module dependencies
|
|
which could not be found by module-graph.pl.
|
|
|
|
force_order.txt - This file contains hard ordering rules for use with
|
|
module-graph.pl's --force-order command line option.
|
|
|
|
meta.dot - This generated file is the combination of all.dot & extra.dot and
|
|
is used when creating allmakefiles.sh & modules.mk.
|
|
|
|
module2dir.map - This file contains the mapping of the modules and their
|
|
dependencies based upon the directory. This file is created by
|
|
running 'make -s echo-requires-recursively _REPORT_ALL_DIRS=1 > file'
|
|
on an existing tree.
|
|
|
|
module-graph.pl - Outputs a Graphviz-compatible graph description file.
|
|
It can output a dependency graph based upon an existing description
|
|
file or it can generate a new one based upon the values of MODULE &
|
|
REQUIRES in Makefiles in an existing tree.
|
|
|
|
modules.mk.footer - Footer for generated modules.mk
|
|
|
|
modules.mk.stub - Header for generated mdoules.mk
|
|
|
|
|
|
How to regenerate allmakefiles.sh & modules.mk when modules change:
|
|
|
|
cd $MOZ_OBJDIR
|
|
perl ../mozilla/tools/module-deps/module-graph.pl > ../mozilla/tools/module-deps/all.dot
|
|
make -s echo-requires-recursive _REPORT_ALL_DIRS=1 > ../mozilla/tools/module-deps/module2dir.map
|
|
cd ../mozilla
|
|
perl tools/module-deps/bootstrap.pl --topsrcdir `pwd` --module-file-only
|
|
|