/* Copyright (c) 1994 Sun Wu, Udi Manber, Burra Gopal. All Rights Reserved. */ This is version 3.5 of the glimpse package - a tool to search entire file systems. Please send any comments to glimpse@cs.arizona.edu. Check the file CHANGES for the changes since version 3.0 (there are many of them). The files glimpse.1, glimpseindex.1, and glimpseserver.1 are the manual pages. Instructions for installing glimpse, glimpseindex, glimpseserver, and agrep: 1. Both the agrep and index directories have individual Makefiles which you can use independently. You can make everything by just typing make in the root glimpse directory. 2. To make individual binaries in a subdirectory "ddd", do the following: cd ./ddd ; make ; cd .. 3. To rebuild everything from scratch, do the following: make clean This however does not remove the binaries that currently exist in ./bin You can then proceed with the above steps. However, see (4) below. 4. A small quirk when making clean: if you make clean from the glimpse-root directory, it will cleanup all subdirectories except the subdirectory "libtemplate". You must do: cd libtemplate ; make clean ; cd .. to cleanup that subdirectory. This was necessary so that Glimpse's makefiles could be kept independent of "libtemplate"'s makefiles (which are a part of the Harvest source distribution). 5. Binaries for SunOS, Solaris, and Dec Alpha OSF/1 are currently available for version 3.5. Binaries for other platforms are available for 3.0, and will soon be posted for 3.5. (NOTE: we provide Solaris, Dec OSF/1, HP, Linux, NeXT, IBM-RS6000 and SGI makefiles. To compile for these platforms, use: make -f Makefile.solaris or make -f Makefile.alpha or make -f Makefile.hp or make -f Makefile.linux or make -f Makefile.NeXT or make -f Makefile.rs6000 or make -f Makefile.sgi respectively). We will try to make this more convenient in the future by distributing an autoconf script so that the individual makefiles will not be necessary. (We have a script "configure" in our distribution but we haven't tested it as much as we would have liked: however, it MAY work on your system.) NOTES: ------ People in our mailing list have commented that the make files we provide work on many other architectures too. We recommend that you do a pairwise "diff" of these makefiles to find out whether they support the options you need before trying to modify makefiles to suit your environment. Often a few changes to compiler options, etc., are enough to port glimpse to a new architecture / OS. Source code modifications are usually not necessary. We request you to mail us any changes to the Makefile (or the source) that are necessary to port glimpse to your architecture, and the corresponding binaries, so that we can include it in our distribution. We will appreciate any suggestions and will duly acknowledge all contributions. Some comments about portability: -------------------------------- 6. You must define HAVE_DIRENT_H in agrep/Makefile, index/Makefile, compress/Makefile to be 1 or 0 depending on whether your machine has /usr/include/dirent.h or /usr/include/sys/dir.h. We found that on most machines/OSs like SunOS4.1, Solaris, Ultrix, AIX, OSF/1, HPUX and SGI IRIX 5.3, HAVE_DIRENT_H should be 1. 7. On Solaris, "RANLIB" should be define to be "true" in agrep/Makefile.solaris and compress/Makefile.solaris. 8. On Solaris (at least the version we have), the library archive program "ar" is in /usr/ccs/bin/ar instead of /usr/bin/ar. You must define "AR" in agrep/Makefile.solaris and compress/Makefile.solaris appropriately or set your PATH to include the appropriate directory name. 9. On Solaris you have to link the glimpse executables with the socket and nls libraries by specifying "-lsocket" and "-lnsl" to the make rules for "glimpse" and "glimpseserver". 10. On the DEC ALPHA and HP, the make variable "CC" was changed from "gcc" to "cc". 11. If you have the utime() routine and , define the make variable UTIME to 1 in glimpse/Makefile and compress/Makefile. Else define it to 0. 12. If you want to support the international character set (ISO_CHAR_SET), define the make variable ISO_CHAR_SET to 1 in glimpse/Makefile. Else define it to 0. 13. If you have the function strerr() on your system, #defin HAVE_STRERROR to 1 in libtemplate/autoconf.h, else #undef it (or leave the definition in /**/). This is necessary on some BSD systems (some of our users have said so). 14. If you need to add any new macros or flags, you can edit the file: glimpse/agrep/config.h and add whatever is needed to make porting easy on your machine / OS. This file is included throughout glimpse source code. Porting to other platforms, special contributions: -------------------------------------------------- We provide and maintain the binaries for the following platforms: a. SUNOS4.1.1 b. SUNOS4.1.3 c. Solaris 5.3 d. Dec OSF/1 Alpha You can address all questions regarding them to "glimpse@cs.arizona.edu". With glimpse-3.0, we are also distributing the following binaries/Makefiles that some of the people in our mailing list have sent us. We would like to extend special thanks to them for providing us with binaries for platforms for which we do not have access. We request you to contact them if you need any porting tips to these platforms or have any questions regarding these binaries. Platform ported to Person to contact e. AIX-3.2.5 stamer@merlin.physik.uni-oldenburg.DE (Heinrich Stamerjohanns) f. HPPA, HPMC68K Chris Dalton g. IBM-RS6000 "CHRISM" (0) h. Linux Jim Hurley i. SGI "Piroz Mohseni" Thanks for your interest in glimpse. Udi Manber, Burra Gopal, and Sun Wu.