commit | 18b4f5597a4fb0fa05f548a89e06a161f8850ec2 | [log] [tgz] |
---|---|---|
author | Harrison Mutai <harrison.mutai@arm.com> | Wed Apr 02 12:48:02 2025 +0000 |
committer | Govindraj Raja <govindraj.raja@arm.com> | Thu Apr 10 17:52:24 2025 +0200 |
tree | 29ec4ec0e9b86a0d8bd1b5aed9ba42879a2e4313 | |
parent | 442c09afd2cd4467df333c1171c0a21564696465 [diff] |
chore: add .clang-format for consistent code style Introduce a .clang-format configuration file to standardize code formatting across the project. This ensures consistent style, especially around indentation, brace wrapping, spacing, and line limits, aligning with project-specific formatting preferences. While we are it, update the documentation with some minimum supported tooling requirements. Signed-off-by: Harrison Mutai <harrison.mutai@arm.com> Change-Id: I7d6b7cbb7af071eb175fcca9f39f4c5707d3a5c4
The Transfer List Library (LibTL) implements the Firmware Handoff specification, providing a streamlined interface for managing transfer lists. LibTL offers a user-friendly interface for:
The library supports building with host tools such as Clang and GCC, and cross compilation with the Aarch64 GNU compiler.
Tool | Minimum Version |
---|---|
Clang-Format | 14 |
CMake | 3.15 |
To configure the project, use the following command. This will default to using GCC as the toolchain and create a build directory named build/
:
cmake -B build
To build the project, use:
cmake --build build
This will output libtl.a in the build directory.
For cross-compilation or selecting a different compiler, specify the target toolchain file using the CMAKE_TOOLCHAIN_FILE
option and the target with CROSS_COMPILE
:
export CROSS_COMPILE=aarch64-none-elf- cmake -B build -DCMAKE_TOOLCHAIN_FILE=toolchains/host/gnu.cmake
Tests for LibTL are provided in the folder test
, to configure the project for test builds, run:
cmake -B build -DTARGET_GROUP=test cmake --build build
Then, to run the tests with ctest
, use:
ctest --test-dir build/