This package contains the GNU find, xargs, and locate programs.  find
and xargs comply with POSIX 1003.2 draft 11.1, as far as I know.  They
also support some additional options, some borrowed from Unix and some
unique to GNU.

To compile these programs:

1.  At the top level (the directory this README is in), type
`./configure'.  This shell script attempts to guess correct values for
various system-dependent variables used during compilation, and
creates the Makefiles.  This takes minute or two.

If you want to compile in a different directory from the one
containing the source code, `cd' to that directory and run `configure'
with the option `+srcdir=DIR', where DIR is the directory that
contains the source code.  The object files and executables will be
put in the current directory.  This option only works with versions of
`make' that support the VPATH variable.  `configure' ignores any other
arguments you give it.

If your system requires unusual options for compilation or linking
that `configure' doesn't know about, you can give `configure' initial
values for variables by setting them in the environment; in
Bourne-compatible shells, you can do that on the command line like
this:
$ CC='gcc -traditional' LIBS=-lposix ./configure

2.  If you want to change the directories where the programs and their
documentation will be installed, or the optimization options, edit
`Makefile' and change those values.  If you have an unusual system
that needs special compilation options that `configure' doesn't know
about, and you didn't pass them in the environment when running
`configure', you should add them to `Makefile' now.  Alternately,
teach `configure' how to figure out that it is being run on a system
where they are needed, and mail the diffs to the address listed at the
end of this file so we can include them in the next release.

If you are not running NIS or Hesiod, you might want to add the option
-DCACHE_IDS to the Makefile DEFS; it could speed up the -nouser and
-nogroup options to find.  See the comment in the Makefile for more
information.

3.  In the top-level directory, type `make'.  You don't need to
otherwise touch the Makefiles in the subdirectories or use them
directly.

4.  If the programs compile successfully, type `make install' to
install them and their documentation.

5.  After you have installed the programs and documentation, you can
remove the binaries from the source directories by typing `make
clean'.  Type `make distclean' if you also want to remove the
Makefiles that `configure' created, for instance if you are going to
recompile the utilities next on another type of machine.


Other things to note:

The locate utility is based on James Woods' public domain fast-find
code, which is also distributed with the 4.3BSD find.  Because POSIX
requires `find foo' to have the same effect as `find foo -print', the
fast-find searching has been moved to a separate program, `locate';
the same thing has been done in 4.3BSD-reno/4.4BSD.  If you use
locate, you should run the included `updatedb' script from cron
periodically (typically nightly).

Mail suggestions and bug reports for these programs to
bug-gnu-utils@prep.ai.mit.edu.
