You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: BUILD.md
+19-9Lines changed: 19 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -147,11 +147,11 @@ To build the Intel IPP Cryptography library on Windows* OS, complete the followi
147
147
148
148
## Building Intel IPP Cryptography on macOS\*
149
149
150
-
The software was validated on:
151
-
152
-
- macOS\*12.0
150
+
>**NOTE:** Intel IPP Cryptography stopped macOS\* validation and maintenance based on the announcement in the [Intel IPP Cryptography 2021.9 release notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/release-notes-for-oneapi-integrated-performance-primitives.html#inpage-nav-3-1).\
151
+
The Intel IPP Cryptography 2021.10 release is the last release validated on macOS\* 12.0.\
152
+
For further macOS\*testing and maintenance we are relying on contributions from the community. For more details, see [Contributing Rules](./CONTRIBUTING.md).
153
153
154
-
To build the Intel IPP Cryptography library on macOS*, complete the following steps:
154
+
To build the Intel IPP Cryptography library on macOS\*, complete the following steps:
155
155
156
156
1. Clone the source code from GitHub\* as follows:
157
157
@@ -219,14 +219,24 @@ To build the Intel IPP Cryptography library on macOS*, complete the following st
219
219
`-DPLATFORM_LIST="w7;n8;y8;e9;l9;k0"`
220
220
- `-DIPPCP_CUSTOM_BUILD="<CPU features list>"` - optional, works only if`-DMERGED_BLD:BOOL=off` is set, i.e. only for 1CPU libraries. Enables the CPU feature dispatching mask at compile-time based on the provided list.
221
221
222
-
- Currently supported by the library custom features dispatching:
222
+
- Currently supported by the library custom features dispatching:
223
223
1. Intel® Advanced Encryption Standard New Instructions (Intel® AES-NI) code-path enabling: `IPPCP_AES_ON;IPPCP_CLMUL_ON`
224
-
2. Intel® Advanced Vector Extensions 512 (Intel(R) AVX-512) and vector extensions of Intel(R) AES New Instructions (Intel(R) AES-NI) code-path enabling: `IPPCP_VAES_ON;IPPCP_VCLMUL_ON`
`-DPLATFORM_LIST="IPPCP_AES_ON;IPPCP_CLMUL_ON"` - this combination enables Intel® AES-NI in all 1CPU libraries, which contains this code path.
226
+
`-DIPPCP_CUSTOM_BUILD="IPPCP_AES_ON;IPPCP_CLMUL_ON"` - this combination enables Intel® AES-NI in all 1CPU libraries, which contains this code path.
227
227
- Example of using a combination of CPU features:
228
-
`-DPLATFORM_LIST="IPPCP_AES_ON;IPPCP_CLMUL_ON;IPPCP_VAES_ON;IPPCP_VCLMUL_ON"` - in this combination the highest available feature in each 1CPU library will be enabled (e.g. for`"y8"` it’s Intel® AES-NI and for`"k1"` - Intel AVX-512 VAES)
229
-
228
+
`-DIPPCP_CUSTOM_BUILD="IPPCP_AES_ON;IPPCP_CLMUL_ON;IPPCP_VAES_ON;IPPCP_VCLMUL_ON"` - in this combination the highest available feature in each 1CPU library will be enabled (e.g. for`"y8"` it’s Intel® AES-NI, for`"l9"` it's Intel® AVX2 VAES, and for `"k1"` - Intel® AVX-512 VAES)
229
+
- `-DIPPCP_FIPS_MODE:BOOL=<on|off>` - optional. Regulates the build of FIPS-compliant Intel IPP Cryptography library.
230
+
231
+
- `-DIPPCP_FIPS_MODE:BOOL=on`: enables all FIPS-compliance changes in Intel IPP Cryptography library.
232
+
- `-DIPPCP_FIPS_MODE:BOOL=off`: default configuration. Intel IPP Cryptography library build with such option is not FIPS-compliant.
233
+
- `-DIPPCP_SELFTEST_USE_MALLOC:BOOL=<on|off>` - optional. Enables internal memory allocation and release using `malloc()` and `free()` functions inside Intel IPP Cryptography library selftests.
234
+
- `-DIPPCP_SELFTEST_USE_MALLOC:BOOL=on`: memory management is held by FIPS selftests, all processing APIs should be called with input parameters equal to `NULL`.
235
+
- `-DIPPCP_SELFTEST_USE_MALLOC:BOOL=off`: default configuration. Memory management is held by customer's application, all processing APIs should be called with work buffers of the valid length.
236
+
- `-DMBX_FIPS_MODE:BOOL=<on|off>` - optional. Regulates the build of FIPS-compliant Crypto Multi-buffer Library.
237
+
238
+
- `-DMBX_FIPS_MODE:BOOL=on`: enables all FIPS-compliance changes in Crypto Multi-buffer Library.
239
+
- `-DMBX_FIPS_MODE:BOOL=off`: default configuration. Crypto Multi-buffer Library build with such option is not FIPS-compliant.
230
240
### Windows\* OS
231
241
232
242
- `-G"<tool-chain-generator>"` - defines the native build system CMake will generate from the input files.
Intel® IPP Cryptography is licensed under the terms in LICENSE <https://github.com/intel/ipp-crypto/blob/develop/LICENSE>. By contributing to the project, you agree to the license and copyright terms therein and release your contribution under these terms.
33
+
34
+
## Developer Certification of Origin (DCO)
35
+
We encourage you to use Signed-off-by feature to comply with [Developer Certification of Origin (DCO)](https://developercertificate.org/).
36
+
The name in the commit message Signed-off-by line and your email must match the change authorship information. Make sure your .gitconfig is set up correctly so you can use `git commit -s` for signing your commits:
Intel® Integrated Performance Primitives (Intel® IPP) Cryptography is a secure, fast and lightweight library of building blocks for cryptography, highly-optimized for various Intel® CPUs.
5
+
Intel® Integrated Performance Primitives Cryptography (Intel® IPP Cryptography) is a secure, fast and lightweight library of building blocks for cryptography, highly-optimized for various Intel® CPUs.
6
6
7
7
## Key Features
8
8
The library provides a comprehensive set of routines commonly used for cryptographic operations, including:
@@ -41,6 +41,11 @@ The library provides a comprehensive set of routines commonly used for cryptogra
41
41
- Kernel mode compatibility
42
42
- Thread-safe design
43
43
44
+
## FIPS 140 Compliance
45
+
46
+
Intel IPP Cryptography supports building blocks (self-tests, services) for FIPS 140-3 compliance.
47
+
See [FIPS] (./README_FIPS.md) document for details.
48
+
44
49
## Installation
45
50
46
51
[How to Get and Build the Intel IPP Cryptography Library](./BUILD.md)
0 commit comments