Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ada.bsd(1) — DOMAIN Ada 1.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ld(1)

ada(1)

NAME

ada − Ada compiler

SYNTAX

ada [options] [ada_source.a]... [ld_options] [object_file.o]... 

DESCRIPTION

The command ada executes the Ada compiler and compiles the named Ada source file, ending with the .a suffix. The file must reside in a VADS library directory. If the source file name has the form ‘aaa/bbb.a’, ‘aaa’ must be a VADS library directory. The ada.lib file in this directory is modified after each Ada unit is compiled. 
 
All files created and modified are located in subdirectories of the directory that contains the ada_source.a file. The object program is left in a file with the same name as that of the source but with .o substituted for .a unless the -o option is used. The object file is written to the .objects subdirectory of the VADS library. 
 
By default, ada produces only object and net files. If the -M option is used, the compiler automatically invokes a.ld and builds a complete program with the named library unit as the main program. 
 
Non-Ada object files (e.g., .o files produced by the C or FORTRAN compiler) may be given as arguments to ada. These files will be passed on to the linker and will be linked with the specified Ada object files. 
 
Command line options may be specified in any order, but the order of compilation and the order of the files to be passed onto the linker can be significant.
 

Options

-a file_name (archive) Treat file_name as an ar file. Since archive files end with .a, -a is used to distinguish archive files from Ada source files. 

-d (dependencies) Analyze for dependencies only.  Do not do semantic analysis or code generation. Update the library, marking any defined units as uncompiled. The -d option is used by a.make to establish dependencies among new files. 

-e (error) Process compilation error messages using a.error and direct it to stdout. Only one -e or -E option should be used. 

-E

-E file-name

-E directory (error output) Without a file or directory argument, ada processes error messages using a.error and directs the output to stdout; the raw error messages are left in source.err. If a file pathname is given, the raw error messages are placed in that file. If a directory argument is supplied, the raw error output is placed in dir/source.err.  Only one -e or -E option should be used. 

-el (error listing) Intersperse error messages among source lines and direct to stdout. 

-El

-El file-name

-El directory (error listing) Same as the -E option, except that source listing with errors is produced. 

-ev (error vi) Process the raw error messages using a.error , embed them in the source file, and call $EDITOR (default is vi) on the source file. 

-lfile_abbreviation
(link) Link this library file. (Do not space between the -l and the file abbreviation.) See ld(1). 

-M unit_name (main) Produce an executable program using the named unit as the main program. The unit must be either a parameterless procedure or a parameterless function returning an integer. The executable program will be left in the file a.out unless overridden with the -o option. 

-M ada_source.a
(main) Like -M unit_name, except that the unit name is assumed to be the root name of the .a file (e.g., for foo.a the unit is foo). Only one .a file may be preceded by -M. 

-o executable_file
(output) This option is to be used in conjunction with the -M option. executable_file is the name of the executable rather than the default a.out. 

-O[1-9] (optimize) Invoke the code optimizer. An optional digit limits the number of optimization passes. The default, 0, optimizes as far as possible. 

-R VADS_library
(recompile instantiation) Force analysis of all generic instantiations, causing reinstantiation of any that are out of date.

-S (suppress) Apply PRAGMA SUPPRESS to the entire compilation. 

-T (timing) Print timing information for the compilation. 

-u (update) Cause library status to reflect the current program source. Unless the source is syntactically incorrect, the compiler updates the library ada.lib. Normally, the library is changed only if the unit compiles without errors of any kind. 

-v (verbose) Print compiler version number, date and time of compilation, name of file compiled, command input line, total compilation time, and error summary line. 

-w (warnings) Suppress warning diagnostics. 

Files

file.a Ada source input file

tmp/file.$$ IL code file created by front end

ada.lib VADS directory information file

gnrx.lib VADS generics library information file

GVAS_table GVAS table in the current VADS project

ada.lock lock link to ada.lib, for mutual exclusion

gnrx.LOCK lock generics library, for mutual exclusion

GVAS_table.LOCK
lock link to GVAS_table, for mutual exclusion

SEE ALSO

a.db, a.error, a.ld, a.mklib, ld(1)

DIAGNOSTICS

The diagnostics produced by the VADS compiler are intended to be self-explanatory. Most refer to the RM. Each RM reference includes a section number and optionally, a paragraph number enclosed in parentheses. 

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