This version compiled and linked by Ed Groth, 8-Aug-1994, VMS/VAX V5.5-2 and VMS/AXP V1.5. Changes made to support AXP: Macro routine FIND_FIRST.MAR replaced with equivalent FORTRAN routine STR_FFS.FOR. Commons in FILCOM.INC and TOPICS.INC rearranged to make AXP compiler happy about alignment. In PRSFIL, confirmed=.false. was added to the branch that exits the program (the AXP compiler issued a warning about an uninitialized variable, since a function was being exited without a value being set. Since the program was exiting at this point, it made no difference to the logic of the program!). Module PRSCOM.FOR was modified to enable prompting for missing parameters as follows: Reference to Cli$present('Remaining') commented out - couldn't figure out what it does - and with other changes caused entity (remaining) not found in command table errors and sure enough, there's no remaining in the command tables. Added lib$get_input and prompt string arguments to cli$dcl_parse call, so program will prompt for missing arguments. Fixed bug in init_cli1 routine, where replacement of foreign command by command verb failed to blank the last character of the foreign command in the event no parameters/qualifiers were given (this last character was then interpreted as the library file name). compile.com and link.com were done away with. build.com was modified to compile and link on both VAX and AXP. If you want to do the whole smear (requires FORTRAN compiler), say @BUILD. If you only want to link the existing objects, say @BUILD LINK. Objects and executables are supplied for both AXP and VAX. The executables are named LIBSEARCH_AXP.EXE and LIBSEARCH_VAX.EXE. To use, define the appropriate foreign command $ libsearch :== $device:[directory]libsearch_axp !for AXP or $ libsearch :== $device:[directory]libsearch_vax !for VAX or you can edit libsearch.cld to point to the location of the appropriate executable and place in your (or the system's) command tables. The remainder of this file refers to Libsearch before the AXP port (but should still be read!). This version was compiled by Hunter Goatley. The provided .EXE file was linked under VMS v5.1 on 9-DEC-1992 19:12. --------------------------------------------------------------------------- LIBSEARCH is a program which does just about everything the SEARCH command does, but for libraries. LIBSEARCH has a number of uses particular to its abilities to search libraries, such as: Finding which HELP subject contains info on the keyword you want; Finding which macro defines the symbol you want; Finding which Include module from FORSYSDEF.TLB contains the definitions you want; Poking around in general. To build LIBSEARCH, after unpacking the files into their own directory: $ @BUILD Then copy LIBSEARCH.EXE to where you keep these things, and modify LIBSEARCH.CLD appropriately. It takes about 1.5 minutes CPU to build LIBSEARCH on a microvax II. You can invoke LIBSEARCH two ways - via a foreign symbol, or as a defined DCL command. If you use the foreign symbol approach, LIBSEARCH cannot prompt for missing parameters. To use as a foreign command, type $ LIBSEARCH :== $device:[dir]LIBSEARCH.EXE where device:[dir] is where you put LIBSEARCH.EXE. To use as a defined DCL command: Either make LIBSEARCH.CLD available to all, so that they can type SET COMMAND dev:[dir]LIBSEARCH.CLD or modify your system dcl tables : SET COMMAND/TAB=SYS$SHARE:DCLTABLES/OUT=SYS$COMMON:[SYSLIB]DCLTABLES libsearch INSTALL REPLACE SYS$SHARE:DCLTABLES Modify the help if necessary, and add to your help library. All done! Please report bugs, etc. to K.Ashley@ulcc.ac.uk