Basic Installation
==================

The configure shell script attempts to guess correct values for some
system-dependent variables it uses during compilation. It uses these values
to create a makefile in each directory of the package.

The configure script may also create one or more .h files containing 
system-dependent definitions. It also creates:

    config.status - a shell script you can run to recreate the current 
                    configuration
    config.cache  - saves the results of configure's tests to speed up 
                    reconfiguration. You may remove or edit config.cache.
    config.log    - contains compiler output, useful to debug the configure 
                    script

autoconf uses the configure.in file to create the configure script. You only
need configure.in to change it or regenerate the configure script using a
newer version of autoconf. NEC values your comments and suggestions to 
improve the configure.in file. Please mail your suggestions to:
    socks5-comments@socks.nec.com 

The simplest way to compile socks5 is:

  1. cd to the directory containing the socks5 source code. To configure 
     socks5 for your system, type:

     	./configure
     
     If you are using csh on an old version of System V, you might need to 
     type:

	 sh ./configure


Running configure may take a few minutes. While configure runs, it prints
informational messages listing the features it is checking.

  2. To compile socks5, type:

	 make 


  3. To install programs, data files, and documentation, type:

	make install

  4. To remove the program binaries and object files from the source code 
     directory, type:

 	make clean

     To remove the files that configure created before recompiling or before 
     compiling socks5 for a different kind of computer, type:

	make distclean


Compilers and Options
=====================

To compile or link, some systems require options the configure script is
unaware of. You can initialize variables for configure by setting them in
the environment. Using a Bourne-compatible shell, you can initialize
variables on the command line, for example:

     CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure

On systems that support the env program, you can initialize variables with
the env program, for example:

     env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure

Compiling For Multiple Architectures
====================================

You can compile socks5 for more than one kind of computer at a time if your
version of make supports the VPATH variable. GNU's version of make supports
VPATH. To compile socks5 for more than one kind of computer at a time, put
the object files for each architecture in a separate directory. 

Change to the desired destination directory for the object files and
executables. Run the configure script. configure checks its current
directory and its parent directory for the source code.

If you must use a version of make that does not supports the VPATH variable,
you must compile socks5 for one architecture at a time in the source code 
directory. After installing socks for an architecture, use make distclean 
before reconfiguring for another architecture.

Installation Names
==================

configure recognizes options that control the configuration process. For a 
complete list of all the configure options, use the --help options. Some of the most frequently used options and their purpose include:

--prefix=PATH
Specifies an alternate destination directory. make install puts the socks5
files in the /usr/local directory tree structure. configure uses PATH as the
alternate prefix in which to install files.

--exec-prefix=PATH
Specifies separate installation prefixes for architecture-specific files and
architecture-independent files. configure uses PATH as the prefix to install
programs and libraries. configure installs documentation and other data 
files in the default prefix path, /usr/local.

--enable-FEATURE 
socks5 does not currently support enable feature macros.

--with-PACKAGE
Specifies a PACKAGE option. Refer to the README file for a complete list of
 --with options that congifure recognizes with socks5. Examples of values
for PACKAGE include gnu-as or x (for the X Window System). 

--cache-file=FILE
Specifies to use and save the results of the tests in FILE instead of
./config.cache. Set FILE to /dev/null to disable caching while debugging
configure.

--quiet
--silent
-q
Disables printing messages that list the checks configure makes.

--srcdir=DIR
Specifies to search for socks5's source code in the DIR directory. Usually
configure automatically determines the directory.

--version
Prints the version of autoconf that generated the configure script, and 
exits.

