SRL(1)

NAME
srl - SR linker

SYNOPSIS

srl [ -eglvwA ] [ -I dir ] [ -o file ] [ -r file ] [ -CLNOPQRVS size ] component ...

DESCRIPTION

Srl produces an executable file, a.out by default, by linking together the components of an SR program. The command line lists one or more resource and global names and may also list additional `file.o', `file.a', or `-lxxx' arguments to link code from other languages. These additional arguments are passed to ld(1).

The last resource named becomes the main resource; it should have no parameters. Abstract resources (those having no bodies) should not be named, but all globals must be listed.

Srl accepts the following general options:

-I dir
    Use dir/Interfaces as the Interfaces directory instead of ./Interfaces.

-o file
    Use file for executable output instead of a.out.

-w  Suppress warnings about out-of-date files.

-l  List runtime limits, then exit immediately.

The following options set values controlling the subsequent execution of the SR program. For most maxima, the default value is 1000000.

-A  Enable asynchronous output. When set, output calls do not block the entire program and are not atomic. Instead, they can affect the flow of control by performing context switches.

-C n
    Set the maximum number of active co statements.

-L n
    Set the maximum number of loop iterations between context switches. A value of zero is taken as infinite.

-N n
    Set the maximum number of in operation classes.

-O n
    Set the maximum number of active operations.

-P n
    Set the maximum number of processes.

-Q n
    Set the maximum number of pending remote requests.

-R n
    Set the maximum number of active resources.

-V n
    Set the maximum number of number of semaphores.

-S size
    Set the size of a process stack.

Additional options are useful mainly when debugging the SR system:

-e  Use the experimental runtime system.

-r file
    Use the runtime system from file.

-g  Link to allow debugging with dbx(1). This is useful mostly for debugging the runtime system and is not particularly helpful towards understanding errant SR programs.

-v  Announce other programs invoked by srl.

ENVIRONMENT

SR_PATH
    Srl searches for object files by looking first in the current directory, then in the Interfaces directory, and finally in the SR library. If SR_PATH is set, any directories named there are checked ahead of the standard search sequence. Directories in SR_PATH are separated by colons (:).

FILES
Interfaces/component.o    object file
srlib.a    runtime library
a.out    executable program
Interfaces/component.spec    specification file
Interfaces/_ofile.c    configuration information
Interfaces/_ofile.o    configuration object module

SEE ALSO

sr(1), ld(1), dbx(1)

DIAGNOSTICS

Srl does not actually do the linking itself; it is merely a front-end for the UNIX linker ld(1). Messages not beginning with ``srl'' can be attributed to ld.

Messages about undefined externals usually stem from the omission of a resource or global name from the srl call.

Srl verifies that object files of resource and globals are newer than the corresponding source files.