Annotation of 3BSD/cmd/apl/documents/libr.doc, revision 1.1

1.1     ! root        1: .tl 'LIBR(I)'12/17/75'LIBR(I)'
        !             2: NAME
        !             3:        libr    - fortran librarian
        !             4: 
        !             5: SYNOPSIS
        !             6:        libr libfile -k1 n11 n12 ... n1k  ... -kn ...
        !             7: 
        !             8: DESCRIPTION
        !             9: 
        !            10:        LIBR is a program to build and maintain libraries of object modules
        !            11: to be used with LINK.  An object module in a library is included in the out file
        !            12: iff it satisfies an undefined reference at the time it is encountered.  (With some
        !            13: exceptions for -i: and -e: )  Therefore,  the order of modules in a library is
        !            14: important.
        !            15: 
        !            16:        All commands except append (-a ) require that the file designated 'libfile'
        !            17: already exit.  The append command will create the library file if it does
        !            18: not exist.  The action of LIBR is governed by the keybytes,  which are
        !            19: interpreted in left-to-right order.  The entire command line is checked for
        !            20: correctness,  and then executed.
        !            21: 
        !            22:        In a library,  all modules are identifies by their module name.
        !            23: Assembly language programs get their module name from a .title directive.
        !            24: In fortran subprograms the module name is the name of the subroutine declared
        !            25: in it.
        !            26: 
        !            27:        There are no default extensions.
        !            28: 
        !            29:        The keybytes are:
        !            30: 
        !            31:        -l
        !            32: .in 20
        !            33: list the contents of the library as it will appear at the completion
        !            34: of the LIBR command
        !            35: .in 0
        !            36: 
        !            37:        -g mod syms
        !            38: .in 20
        !            39: As noted above,  a module is included into an outfile from a library only if
        !            40: it 'declares' a yet-undefined global symbol. Initially,  a module declares
        !            41: all those global symbols which are assigned values within it.  
        !            42: The -g command allows one  to eliminate declarations from a module.
        !            43: .in 0
        !            44: 
        !            45:        -d mods
        !            46: .in 20
        !            47: delete the named modules from the library
        !            48: 
        !            49: .in 0
        !            50:        -i mod files
        !            51: .in 20
        !            52: place the modules in the named files into the library before the
        !            53: given module.
        !            54: 
        !            55: .in 0
        !            56:        -r files
        !            57: .in 20
        !            58: Replace the modules in the library with those in the files having the
        !            59: same module name.
        !            60: 
        !            61: .in 0
        !            62:        -a files
        !            63: .in 20
        !            64: Append the modules in the named files to the library.  Create the library if it does
        !            65: not exist.
        !            66: 
        !            67: .in 0
        !            68:        -c
        !            69: .in 20
        !            70: Generate a cross-reference
        !            71: 
        !            72: 
        !            73: 
        !            74: .in 0
        !            75: EXAMPLE
        !            76:        A fortran user wants to create a library of six graphics
        !            77: subroutines in the object files graph1.obj ... graph6.obj.
        !            78: First,  a library is created:
        !            79:        libr graphlib -a graph1.obj ... graph6.obj
        !            80: 
        !            81: If, later,  it is necessary to replace one of the subroutines,  say #4,
        !            82: this can be done as:
        !            83:        libr graphlib -r graph4.obj
        !            84: 
        !            85: FILES
        !            86:        libr1.tmp       - scratch file

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.