Skip to content

microsoft/mu_crypto_release

Repository files navigation

Project Mu Crypto Release

Continuous Integration Host-Based Unit Tests OpenSSL Mbed TLS

This repository hosts the cryptographic library packages for Project Mu. It decomposes the monolithic CryptoPkg into independent, backend-specific packages so that each crypto implementation can be built, tested, and maintained separately.

Repository Structure

Package Description
OpensslPkg BaseCryptLib, OpensslLib, TlsLib, and supporting headers backed by OpenSSL.
MbedTlsPkg BaseCryptLib, MbedTlsLib, and supporting headers backed by Mbed TLS.

Setup

# One-time setup
git submodule update --init --recursive
pip install -r pip-requirements.txt

# Packages: (OpensslPkg or MbedTlsPkg)
stuart_setup    -c .pytool/CISettings.py -p <Pkg>
stuart_ci_setup -c .pytool/CISettings.py -p <Pkg> # Only required for CI
stuart_update   -c .pytool/CISettings.py -p <Pkg>

CI Building

# CI Targets: (DEBUG, RELEASE, NO-TARGET)
stuart_ci_build -c .pytool/CISettings.py -p <Pkg> -t DEBUG TOOL_CHAIN_TAG=CLANGPDB
stuart_ci_build -c .pytool/CISettings.py -p <Pkg> -t RELEASE TOOL_CHAIN_TAG=CLANGPDB

Host-Based Unit Tests

# Run host-based unit tests locally with GCC5

# Packages: (OpensslPkg, MbedTlsPkg)
stuart_ci_build -c .pytool/CISettings.py -p <Pkg> -t NOOPT -d HostUnitTestCompilerPlugin=run TOOL_CHAIN_TAG=GCC5

Note: MbedTlsPkg host-based tests are currently disabled due to known test failures. See the TODO in host-based-test-runner.yml for details.

Contributing

Contributions are welcome. Please see CONTRIBUTING.md for guidelines.

License

This project is licensed under the BSD-2-Clause-Patent license. See the License.txt file for details.

About

Release platform for Mu CryptoBin

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages