<<>> <> <> <> <<>> Mako CEDAR 10.0 FOR INTERNAL XEROX USE ONLY Mako A simple compilation command Michael F. Plass Ó Copyright 1992 Xerox Corporation. All rights reserved. Abstract: Mako provides a simple compilation command that can drive the compilation of any of a number of source file types, including .mesa, .config, .c, and .MakeIt files. Created by: Michael Plass Maintained by: Michael Plass:PARC:Xerox Keywords: compile, Mimosa, c, mesa, config ma.ko \mak-o\ n. pl makos [Maori] : either of two mackerel sharks (Isurus glaucus and I. oxyrhynchus) that are notable sport fish and are considered dangerous to man -- also called mako shark XEROX Xerox Corporation Palo Alto Research Center 3333 Coyote Hill Road Palo Alto, California 94304 For Internal Xerox Use Only Introduction Compilation and binding of mesa programs has become complicated by the need to manage not only the compilation of the source files, but also the compilation of the intermediate (c) files. MakeDo has made this more tolerable, but is rather heavyweight for the common, simple case of "I've changed one implementation module, and all that has to happen is one compile and one bind". Mako addresses this by providing a simple command for this common case. If you need to compile the interface Frob.mesa and the implementation FrobImpl.mesa, and bind FrobPackage.config, just say Mako Frob FrobImpl FrobPackage Or can also be more explicit: Mako Frob.mesa FrobImpl.mesa FrobPackage.config Mako reads & writes a file, .makodb, that keeps track of the things that have been compiled (in this directory) with mako; it will use this information to skip unneccessary compilations. Restrictions At present (February 11, 1992), mako does not do anything to pass custom switches, nor does it know about .switches files. The .makodb mechanism will probably change, so don't get too used to the details.