provider: disable fall-backs if OSSL_PROVIDER_load() fails.
[openssl.git] / NOTES-DJGPP.md
1 INSTALLATION ON THE DOS PLATFORM WITH DJGPP
2 ===========================================
3
4  OpenSSL has been ported to DJGPP, a Unix look-alike 32-bit run-time
5  environment for 16-bit DOS, but only with long filename support.
6  If you wish to compile on native DOS with 8+3 filenames, you will
7  have to tweak the installation yourself, including renaming files
8  with illegal or duplicate names.
9
10  You should have a full DJGPP environment installed, including the
11  latest versions of DJGPP, GCC, BINUTILS, BASH, etc. This package
12  requires that PERL and the PERL module `Text::Template` also be
13  installed (see [NOTES-Perl.md](NOTES-Perl.md)).
14
15  All of these can be obtained from the usual DJGPP mirror sites or
16  directly at <http://www.delorie.com/pub/djgpp>. For help on which
17  files to download, see the DJGPP "ZIP PICKER" page at
18  <http://www.delorie.com/djgpp/zip-picker.html>. You also need to have
19  the WATT-32 networking package installed before you try to compile
20  OpenSSL. This can be obtained from <http://www.watt-32.net/>.
21  The Makefile assumes that the WATT-32 code is in the directory
22  specified by the environment variable WATT_ROOT. If you have watt-32
23  in directory `watt32` under your main DJGPP directory, specify
24  `WATT_ROOT="/dev/env/DJDIR/watt32"`.
25
26  To compile OpenSSL, start your BASH shell, then configure for DJGPP by
27  running `./Configure` with appropriate arguments:
28
29     ./Configure no-threads --prefix=/dev/env/DJDIR DJGPP
30
31  And finally fire up `make`. You may run out of DPMI selectors when
32  running in a DOS box under Windows. If so, just close the BASH
33  shell, go back to Windows, and restart BASH. Then run `make` again.
34
35  RUN-TIME CAVEAT LECTOR
36  --------------
37
38  Quoting FAQ:
39
40   "Cryptographic software needs a source of unpredictable data to work
41    correctly.  Many open source operating systems provide a "randomness
42    device" (`/dev/urandom` or `/dev/random`) that serves this purpose."
43
44  As of version 0.9.7f DJGPP port checks upon `/dev/urandom$` for a 3rd
45  party "randomness" DOS driver. One such driver, `NOISE.SYS`, can be
46  obtained from <http://www.rahul.net/dkaufman/index.html>.