pjs/tools/module-deps
cls%seawood.org 760040ffcb Update maps 2004-02-29 00:21:36 +00:00
..
.cvsignore Update module-deps meta files with the latest module data. 2003-08-15 22:37:25 +00:00
README Update module-deps meta files with the latest module data. 2003-08-15 22:37:25 +00:00
all.dot Update maps 2004-02-29 00:21:36 +00:00
allmakefiles.stub Minor comment changes, not part of main mozilla build. 2002-04-16 18:11:37 +00:00
bootstrap.pl Update module-deps meta files with the latest module data. 2003-08-15 22:37:25 +00:00
extra.dot Update map files. 2003-08-15 10:57:00 +00:00
find-unused-exports.pl add lots more class-reporting capabilities 2002-02-13 16:39:56 +00:00
find_iids.pl NOT PART OF BUILD. Utility for listing and counting how many times iids are referenced by each executable and library 2003-01-20 19:36:59 +00:00
force_order.txt Update module-deps meta files with the latest module data. 2003-08-15 22:37:25 +00:00
header-count.pl Oops. 2001-09-12 16:57:21 +00:00
module-graph.pl Remove now bogus makefile.win check. 2002-10-29 01:07:31 +00:00
module2dir.map Update maps 2004-02-29 00:21:36 +00:00
modules.mk.footer Update module-deps meta files with the latest module data. 2003-08-15 22:37:25 +00:00
modules.mk.stub Update module-deps meta files with the latest module data. 2003-08-15 22:37:25 +00:00
requires-cleanup.pl Fix problem matching against commented out REQUIRES lines, and fix problem where we didn't test some modules from the REQUIRES line. 2003-07-09 19:31:55 +00:00

README

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