Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ make_model — Apollo

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Using make_model to Identify Source Dependencies

If you need help in defining your system's source dependencies and have existing
source code, invoke the make_model program, located in your /sys/dsee directory.

make_model takes as input the pathname of a source file, or a  wildcard  pattern
that  matches  more  than  one pathname.  make_model then searches the specified
source  file(s)  for  include  directives,  converts   those   directives   into
appropriate  depends_source  declarations,  and  writes them to standard output.
You can redirect the output to a file by using  the  AEGIS  Shell's  redirection
notation for standard output (the > symbol).

make_model  recognizes  an include file whenever it sees an include directive as
the first token on a line.  It interprets the next  token  on  the  line  as  an
include  pathname,  which  may be quoted.  By default, make_model recognizes the
following tokens as include directives.

    %include
    {%include
    (*%include
    .include
    #include
    include

Note that make_model is  case-insensitive,  so  all  tokens  may  be  in  either
uppercase or lowercase.

Invoke make_model from any shell with the following command:

/sys/dsee/make_model wildcard [-include "'"directive_keyword"'" ...]
                     [-library {library_id library_directory} ... [-only]]

To  override  the  default  include  directives,  use  the  -include  option  to
make_model. This option takes a list of quoted include directive keywords.   For
example,

$ /sys/dsee/make_model mylib/?*.fmt  -include '.so'  >sml_template

Given  this command, make_model searches for include source file commands in fmt
(.fmt) source files in library mylib.  It recognizes as an include command  each
line that begins with the keyword .so, for example,

.so mymacros.fmt

make_model's  output  is redirected to a file called sml_template in the working
directory.

You can use the -library option to  assign  logical  library  names  during  the
make_model  process.    The  -library option takes as arguments pairs of logical
library identifiers and library directory pathnames.

To ensure that make_model's output  contains  only  elements  that  are  in  the
libraries  listed  in the -library argument, add the -only option to the command
string.

make_model may find include directives that are  commented  out  of  the  source
file.    You  should check make_model's output to eliminate the names of include
files that you don't want.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026