README.md
1# openssl-src
2
3This crate contains the logic to build OpenSSL and is intended to be consumed by
4the `openssl-sys` crate. You likely in theory aren't interacting with this too
5much!
6
7# License
8
9This project is licensed under either of
10
11 * Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or
12 http://www.apache.org/licenses/LICENSE-2.0)
13 * MIT license ([LICENSE-MIT](LICENSE-MIT) or
14 http://opensource.org/licenses/MIT)
15
16at your option.
17
18### Windows MSVC Assembly
19Building OpenSSL for `windows-msvc` targets, users can choose whether to enable
20assembly language routines, which requires [nasm](https://www.nasm.us/).
21The build process will automatically detect whether `nasm.exe` is installed in
22PATH. If found, the assembly language routines will be enabled (in other words,
23the `no-asm` option will NOT be configured).
24You can manipulate this behavior by setting the `OPENSSL_RUST_USE_NASM` environment
25variable:
26* `1`: Force enable the assembly language routines. (panic if `nasm.exe` is not
27availible.)
28* `0`: Force disable the assembly language routines even if the `nasm.exe` can be
29found in PATH.
30* not set: Let the build process automatically detect whether `nasm.exe` is
31installed. If found, enable. If not, disable.
32However, this environment variable does not take effects on non-windows platforms.
33
34### Contribution
35
36Unless you explicitly state otherwise, any contribution intentionally submitted
37for inclusion in openssl-src by you, as defined in the Apache-2.0 license, shall be
38dual licensed as above, without any additional terms or conditions.
39