README for GNU `indent' Read the file NEWS for more information, especially to see what's different from the last version, and what future versions may do. If you are installing indent on VMS, see the file VMS-README. SIMPLE INSTALLATION Once you have unpacked the tar file, simply type "make" in the source directory to produce an executable copy of `indent' in that directory. If you then type "make install", the program will be installed by default as /usr/local/bin/indent and the on-line help will be installed as /usr/local/info/indent.info (see DOCUMENTATION, below). It is possible to change these default installation paths. To change the place where `indent' is installed, you may specify the prefix directory as an argument to make like so: make prefix=/usr/gnu This will install `indent' as /usr/gnu/bin/indent and the info node as /usr/gnu/info/indent.info. To specify separate executable and info directories, specify them like this: make prefix=/doc exec_prefix=/usr This will install `indent' as /usr/bin/indent and the info node as /doc/info/indent.info. SEPARATE CONFIGURATION Like most GNU software, `indent' uses the program `configure' to determine certain system-dependent parameters and construct the makefile. In the example above, the master makefile passes its arguments (if any) to the configure program, and then calls `make' recursively to build `indent'. Thus the last example is equivalent to: configure --prefix=/doc --exec-prefix=/usr make With `configure', it is also possible to build the program in a separate directory from the source by running `configure' in that separate directory with the source directory as the "--srcdir" argument to `configure'. For example, if the `indent' source is located in the directory /SYSTEM_A/src/indent and you want to build a copy in /SYSTEM_B/test/, you can do the following: cd /SYSTEM_B/test /SYSTEM_A/src/indent/configure --srcdir=/SYSTEM_A/src/indent make which will produce the the executable file /SYSTEM_B/test/indent. For more information on `configure', see the included file CONF-README. DOCUMENTATION GNU uses a language called "texinfo" for its documentation which produces both an on-line, interactive version and a hardcopy version for printing. The on-line version, `indent.info', is installed along with the executable by typing "make install". Refer to the Texinfo manual for more information on this system. The hardcopy version is produced from the source file `indent.texinfo' in as either a DVI or Postscript format file. To produce the DVI version, type: make indent.dvi To produce the Postscript version, type: make indent.ps Note that you must have the TeX typographical system installed for this to work. While a Unix-style "man" page is also provided in the file `indent.1', it was provided by a user and is unsupported. It is likely to be several versions behind the program, and thus there is no provision for its installation. INDENT BUGS The "-troff" option is not supported and is strongly deprecated. A good thing for someone to do is to rewrite `indent' to generate TeX source as a hardcopy output option, amoung other things. See the `Projects' file for more things to do. BUG REPORTS Please address bug-reports and suggestions or comments to: bug-gnu-utils@prep.ai.mit.edu Please include in your subject line the string: "GNU indent"; my mail reader looks for this string, so if it doesn't appear, your report may be ignored. How to report bugs: Please begin your bug report with a concise and factual description of the behaviour you consider to be abberant. If you have narrowed the problem down to the use of a particular option, please mention that. In general, also be sure to mention the command line options used to invoke indent, as well as the contents of your .indent.pro if you are using one. Then include the *smallest possible* piece of code which generates the described symptom. It is very helpful if you can manage to reduce the size of the sample code. Finally, if you have investigated the problem further, include debugger stack traces, modifications, or speculation you have. SENDING CODE If you send a patch as part of your bug fix, or send me code for new features, please send them as diffs. In particular, send me the result of "diff -c ". FUTURE OF INDENT While there is a long list of features to be added to indent, and likely a longer list of undiscovered bugs, I maintain `indent' on a volunteer basis. If you or your company find `indent' useful and are interested in supporting it through funding, please send me mail. My consulting practice supports development and maintenance of other GNU tools as well. If you have need of GNU or Unix-based consulting, please let me know. Joseph Arceneaux Arceneaux Computer Consulting jla@ai.mit.edu +1 415 285 9088