More information about installing.
authorUlf Möller <ulf@openssl.org>
Fri, 30 Apr 1999 18:22:59 +0000 (18:22 +0000)
committerUlf Möller <ulf@openssl.org>
Fri, 30 Apr 1999 18:22:59 +0000 (18:22 +0000)
INSTALL
README
config

diff --git a/INSTALL b/INSTALL
index 5ee2225..bf0046c 100644 (file)
--- a/INSTALL
+++ b/INSTALL
 
  If you want to just get on with it, do:
 
 
  If you want to just get on with it, do:
 
-  $ ./config                  [if this fails, go to step 1b below]
+  $ ./config
   $ make
   $ make test
   $ make install
 
   $ make
   $ make test
   $ make install
 
+ [If any of these steps fails, see section Installation in Detail below.]
+
  This will build and install OpenSSL in the default location, which is (for
  historical reasons) /usr/local/ssl. If you want to install it anywhere else,
  run config like this:
 
   $ ./config --prefix=/usr/local --openssldir=/usr/local/openssl
 
  This will build and install OpenSSL in the default location, which is (for
  historical reasons) /usr/local/ssl. If you want to install it anywhere else,
  run config like this:
 
   $ ./config --prefix=/usr/local --openssldir=/usr/local/openssl
 
+
+ Configuration Options
+ ---------------------
+
  There are several options to ./config to customize the build:
 
  There are several options to ./config to customize the build:
 
-  --prefix=DIR  Install in DIR/bin, DIR/lib, DIR/include. Configuration
-                files used by OpenSSL will be in DIR/ssl or the directory
-                specified by --openssldir.
+  --prefix=DIR  Install in DIR/bin, DIR/lib, DIR/include/openssl.
+               Configuration files used by OpenSSL will be in DIR/ssl
+                or the directory specified by --openssldir.
 
   --openssldir=DIR Directory for OpenSSL files. If no prefix is specified,
                 the library files and binaries are also installed there.
 
 
   --openssldir=DIR Directory for OpenSSL files. If no prefix is specified,
                 the library files and binaries are also installed there.
 
-  rsaref        Build with RSADSI's RSAREF toolkit.
+  rsaref        Build with RSADSI's RSAREF toolkit (this assumes that
+                librsaref.a is in the library search path).
 
   no-threads    Don't try to build with support for multi-threaded
                 applications.
 
   no-threads    Don't try to build with support for multi-threaded
                 applications.
                 This will usually require additional system-dependent options!
                 See "Note on multi-threading" below.
 
                 This will usually require additional system-dependent options!
                 See "Note on multi-threading" below.
 
-  no-asm        Build with no assembler code.
+  no-asm        Do not use assembler code.
 
   386           Use the 80386 instruction set only (the default x86 code is
                 more efficient, but requires at least a 486).
 
 
   386           Use the 80386 instruction set only (the default x86 code is
                 more efficient, but requires at least a 486).
 
- If anything goes wrong, follow the detailed instructions below. If your
- operating system is not (yet) supported by OpenSSL, see the section on
- porting to a new system.
+  no-<cipher>   Build without the specified cipher (bf, cast, des, dh, dsa,
+                hmac, md2, md5, mdc2, rc2, rc4, rc5, rsa, sha).
+
+  -Dxxx, -lxxx, -Lxxx, -fxxx, -Kxxx These system specific options will
+                be passed through to the compiler to allow you to
+                define preprocessor symbols, specify additional libraries,
+                library directories or other compiler options.
+
 
  Installation in Detail
  ----------------------
 
  1a. Configure OpenSSL for your operation system automatically:
 
 
  Installation in Detail
  ----------------------
 
  1a. Configure OpenSSL for your operation system automatically:
 
-       $ ./config
+       $ ./config [options]
 
      This guesses at your operating system (and compiler, if necessary) and
 
      This guesses at your operating system (and compiler, if necessary) and
-     configures OpenSSL based on this guess. Run ./config -t -v to see
+     configures OpenSSL based on this guess. Run ./config -t to see
      if it guessed correctly. If it did not get it correct or you want to
      use a different compiler then go to step 1b. Otherwise go to step 2.
 
      if it guessed correctly. If it did not get it correct or you want to
      use a different compiler then go to step 1b. Otherwise go to step 2.
 
+     On some systems, you can include debugging information as follows:
+
+       $ ./config -d [options]
+
  1b. Configure OpenSSL for your operating system manually
 
      OpenSSL knows about a range of different operating system, hardware and
  1b. Configure OpenSSL for your operating system manually
 
      OpenSSL knows about a range of different operating system, hardware and
      as the argument to ./Configure. For example, a "linux-elf" user would
      run:
 
      as the argument to ./Configure. For example, a "linux-elf" user would
      run:
 
-       $ ./Configure linux-elf [--prefix=DIR] [--openssldir=OPENSSLDIR]
+       $ ./Configure linux-elf [options]
 
      If your system is not available, you will have to edit the Configure
      program and add the correct configuration for your system. The
      generic configurations "cc" or "gcc" should usually work.
 
 
      If your system is not available, you will have to edit the Configure
      program and add the correct configuration for your system. The
      generic configurations "cc" or "gcc" should usually work.
 
-     Configure creates the Makefile.ssl from Makefile.org and defines
-     various macros in crypto/opensslconf.h (generated from
+     Configure creates the file Makefile.ssl from Makefile.org and
+     defines various macros in crypto/opensslconf.h (generated from
      crypto/opensslconf.h.in).
 
   2. Build OpenSSL by running:
      crypto/opensslconf.h.in).
 
   2. Build OpenSSL by running:
      OpenSSL binary ("openssl"). The libraries will be built in the top-level
      directory, and the binary will be in the "apps" directory.
 
      OpenSSL binary ("openssl"). The libraries will be built in the top-level
      directory, and the binary will be in the "apps" directory.
 
+     If "make" fails, please report the problem to <openssl-bugs@openssl.org>.
+     Include the output of "./config -t" and the OpenSSL version
+     number in your message.
+
   3. After a successful build, the libraries should be tested. Run:
 
        $ make test
 
   3. After a successful build, the libraries should be tested. Run:
 
        $ make test
 
+    If a test fails, try removing any compiler optimization flags from
+    the CFLAGS line in Makefile.ssl and run "make clean; make". Please
+    send a bug report to <openssl-bugs@openssl.org>, including the
+    output of "openssl version -a" and of the failed test.
+
   4. If everything tests ok, install OpenSSL with
 
        $ make install
   4. If everything tests ok, install OpenSSL with
 
        $ make install
 
        certs           Initially empty, this is the default location
                        for certificate files.
 
        certs           Initially empty, this is the default location
                        for certificate files.
-       private         Initially empty, this is the default location
-                       for private key files.
        lib             Contains the OpenSSL configuration file "openssl.cnf".
        misc            Various scripts.
        lib             Contains the OpenSSL configuration file "openssl.cnf".
        misc            Various scripts.
+       private         Initially empty, this is the default location
+                       for private key files.
 
      If you didn't chose a different installation prefix, lib also contains
      the library files themselves, and the following additional subdirectories
 
      If you didn't chose a different installation prefix, lib also contains
      the library files themselves, and the following additional subdirectories
diff --git a/README b/README
index 5063764..03ab5f6 100644 (file)
--- a/README
+++ b/README
  a Win32 platform, read the INSTALL.W32 file.
 
  For people in the USA, it is possible to compile OpenSSL to use RSA Inc.'s
  a Win32 platform, read the INSTALL.W32 file.
 
  For people in the USA, it is possible to compile OpenSSL to use RSA Inc.'s
- public key library, RSAref. Read doc/ssleay.txt under 'rsaref.doc' on how to
- build with RSAref.
+ public key library, RSAREF, by configuring OpenSSL with the option "rsaref".
 
  Read the documentation in the doc/ directory.  It is quite rough, but it
  lists the functions, you will probably have to look at the code to work out
 
  Read the documentation in the doc/ directory.  It is quite rough, but it
  lists the functions, you will probably have to look at the code to work out
diff --git a/config b/config
index 2d9da43..5f3446b 100755 (executable)
--- a/config
+++ b/config
@@ -240,7 +240,7 @@ esac
 # At this point we gone through all the one's
 # we know of: Punt
 
 # At this point we gone through all the one's
 # we know of: Punt
 
-echo "${MACHINE}-whatever-${SYSTEM}|${RELEASE}|${VERSION}
+echo "${MACHINE}-whatever-${SYSTEM}" 
 exit 0
 ) 2>/dev/null | (
 
 exit 0
 ) 2>/dev/null | (
 
@@ -250,7 +250,6 @@ exit 0
 
 PREFIX=""
 SUFFIX=""
 
 PREFIX=""
 SUFFIX=""
-VERBOSE="false"
 TEST="false"
 
 # pick up any command line args to config
 TEST="false"
 
 # pick up any command line args to config
@@ -258,12 +257,10 @@ for i
 do
 case "$i" in 
 -d*) PREFIX="debug-";;
 do
 case "$i" in 
 -d*) PREFIX="debug-";;
--v*) VERBOSE="true";;
 -t*) TEST="true";;
 -h*) TEST="true"; cat <<EOF
 Usage: config [options]
  -d    Add a debug- prefix to machine choice.
 -t*) TEST="true";;
 -h*) TEST="true"; cat <<EOF
 Usage: config [options]
  -d    Add a debug- prefix to machine choice.
- -v    Verbose mode.
  -t    Test mode, do not run the Configure perl script.
  -h    This help.
 
  -t    Test mode, do not run the Configure perl script.
  -h    This help.
 
@@ -288,9 +285,7 @@ fi
 # read the output of the embedded GuessOS 
 read GUESSOS
 
 # read the output of the embedded GuessOS 
 read GUESSOS
 
-if [ "$VERBOSE" = "true" ]; then
-  echo GUESSOS $GUESSOS
-fi
+echo Operating system: $GUESSOS
 
 # now map the output into SSLeay terms ... really should hack into the
 # script above so we end up with values in vars but that would take
 
 # now map the output into SSLeay terms ... really should hack into the
 # script above so we end up with values in vars but that would take
@@ -366,16 +361,16 @@ fi
 
 OUT="$PREFIX$OUT"
 
 
 OUT="$PREFIX$OUT"
 
-# at this point we have the answer ... which we could check again
-# and then fallback to a vanilla SSLeay build but then this script
-# wouldn't get updated
-echo Configuring for $OUT
+$PERL ./Configure 2>&1 | grep "$OUT" > /dev/null
+if [ $? = "0" ]; then
+  echo Configuring for $OUT
 
 
-if [ "$TEST" = "true" ]; then
-  echo $PERL ./Configure $OUT $options
+  if [ "$TEST" = "true" ]; then
+    echo $PERL ./Configure $OUT $options
+  else
+    $PERL ./Configure $OUT $options
+  fi
 else
 else
-  $PERL ./Configure $OUT $options
+  echo "This system is not supported. See file INSTALL for details."
 fi
 fi
-
 )
 )
-