Resolve over command syntax error which causes 'make install' to fail
[openssl.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index b5cfa71c7a6a60e8a4b7b662898df48baf92af1a..85a74b862f3ddbfa97c0f4411027eaad05be027e 100644 (file)
--- a/INSTALL
+++ b/INSTALL
 
   --cross-compile-prefix=PREFIX
                    The PREFIX to include in front of commands for your
-                   toolchain. For example to build the mingw64 target on Linux
-                   you might use "--cross-compile-prefix=x86_64-w64-mingw32-".
-                   If the compiler is gcc, then this will attempt to run
-                   x86_64-w64-mingw32-gcc when compiling.
+                   toolchain. It's likely to have to end with dash, e.g.
+                   a-b-c- would invoke GNU compiler as a-b-c-gcc, etc.
+                   Unfortunately cross-compiling is too case-specific to
+                   put together one-size-fits-all instructions. You might
+                   have to pass more flags or set up environment variables
+                   to actually make it work. Android and iOS cases are
+                   discussed in corresponding Configurations/10-main.cf
+                   sections. But there are cases when this option alone is
+                   sufficient. For example to build the mingw64 target on
+                   Linux "--cross-compile-prefix=x86_64-w64-mingw32-"
+                   works. Naturally provided that mingw packages are
+                   installed. Today Debian and Ubuntu users have option to
+                   install a number of prepackaged cross-compilers along
+                   with corresponding run-time and development packages for
+                   "alien" hardware. To give another example
+                   "--cross-compile-prefix=mipsel-linux-gnu-" suffices
+                   in such case. Needless to mention that you have to
+                   invoke ./Configure, not ./config, and pass your target
+                   name explicitly.
 
   --debug
                    Build OpenSSL with debugging symbols.
                    on a platform that does not support AFALG.
 
   enable-asan
-                   Build with the Address sanitser. This is a developer option
+                   Build with the Address sanitiser. This is a developer option
                    only. It may not work on all platforms and should never be
                    used in production environments. It will only work when used
                    with gcc or clang and should be used in conjunction with the
                    "illegal instruction" exception. There might be a way
                    to enable support in kernel, e.g. FreeBSD kernel can be
                    compiled with CPU_ENABLE_SSE, and there is a way to
-                   disengage SSE2 code pathes upon application start-up,
+                   disengage SSE2 code paths upon application start-up,
                    but if you aim for wider "audience" running such kernel,
                    consider no-sse2. Both the 386 and no-asm options imply
                    no-sse2.
                    Don't build Time Stamping Authority support.
 
   enable-ubsan
-                   Build with the Undefined Behaviour sanitser. This is a
+                   Build with the Undefined Behaviour sanitiser. This is a
                    developer option only. It may not work on all platforms and
                    should never be used in production environments. It will only
                    work when used with gcc or clang and should be used in
        $ nmake test                                     # Windows
 
      NOTE: you MUST run the tests from an unprivileged account (or
-     disable your privileges temporarly if your platform allows it).
+     disable your privileges temporarily if your platform allows it).
 
      If some tests fail, look at the output.  There may be reasons for
      the failure that isn't a problem in OpenSSL itself (like a
                 variable can be set to the directory where these files are held.
 
  PERL
-                The name of the Perl executable to use.
+                The name of the Perl executable to use when building OpenSSL.
+
+ HASHBANGPERL
+                The command string for the Perl executable to insert in the
+                #! line of perl scripts that will be publically installed.
+                Default: /usr/bin/env perl
+                Note: the value of this variable is added to the same scripts
+                on all platforms, but it's only relevant on Unix-like platforms.
 
  RC
                 The name of the rc executable to use. The default will be as