LLNL / blt

A streamlined CMake build system foundation for developing HPC software
BSD 3-Clause "New" or "Revised" License
257 stars 59 forks source link
blt build-system build-tools cmake cpp cuda hpc radiuss testing

BLT

Build
Status Documentation Status

BLT is a streamlined CMake-based foundation for Building, Linking and Testing large-scale high performance computing (HPC) applications.

BLT makes it easy to get up and running on a wide range of HPC compilers, operating systems and technologies:

Getting started

BLT is easy to pull into an existing or new CMake-based project using a single CMake include() command:

  include(path/to/blt/SetupBLT.cmake)

For more information, please check our user documentation and tutorial.

Questions

Any questions can be sent to blt-dev@llnl.gov. If you are an LLNL employee or collaborator, we have an internal Microsoft Teams group chat named "BLT" as well.

Contributions

We welcome all kinds of contributions: new features, bug fixes, documentation edits.

To contribute, make a pull request, with develop as the destination branch. We use CI testing and your branch must pass these tests before being merged.

For more information, see the contributing guide.

Authors

Thanks to all of BLT's contributors.

Open-Source Projects using BLT

If you would like to add a library to this list, please let us know via email or by submitting an issue or pull-request.

License

BLT is licensed under the BSD 3-Clause license, (BSD-3-Clause or https://opensource.org/licenses/BSD-3-Clause).

Copyrights and patents in the BLT project are retained by contributors. No copyright assignment is required to contribute to BLT.

See LICENSE for details.

Unlimited Open Source - BSD 3-clause Distribution LLNL-CODE-725085 OCEC-17-023

SPDX usage

Individual files contain SPDX tags instead of the full license text. This enables machine processing of license information based on the SPDX License Identifiers that are available here: https://spdx.org/licenses/

Files that are licensed as BSD 3-Clause contain the following text in the license header:

SPDX-License-Identifier: (BSD-3-Clause)

External Packages

BLT bundles its external dependencies in thirdparty_builtin/. These packages are covered by various permissive licenses. A summary listing follows. See the license included with each package for full details.

PackageName: fruit
PackageHomePage: https://sourceforge.net/projects/fortranxunit/
PackageLicenseDeclared: BSD-3-Clause

PackageName: gbenchmark
PackageHomePage: https://github.com/google/benchmark
PackageLicenseDeclared: Apache-2.0

PackageName: gmock
PackageHomePage: https://github.com/google/googlemock
PackageLicenseDeclared: BSD-3-Clause

PackageName: gtest
PackageHomePage: https://github.com/google/googletest
PackageLicenseDeclared: BSD-3-Clause

PackageName: run-clang-format
PackageHomePage: https://github.com/Sarcasm/run-clang-format
PackageLicenseDeclared: MIT