|
|
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
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.