clp-ffi-js is a JavaScript FFI library for CLP. It currently supports decoding log events from CLP IR streams. Other CLP features are being added incrementally.
You can use GitHub issues to request features or report bugs.
- CMake 3.16 or higher
- GNU Make
- Python 3
- Task 3.38.0 or higher
Initialize and update submodules:
git submodule update --init --recursiveTo build the project:
taskTo clean the build:
task cleanFollow the steps below to develop and contribute to the project.
Before opening the project in an IDE, run the commands below.
Download and install emscripten:
task emsdkDownload the required source dependencies:
task depsSet up the config files for our C++ linting tools:
task lint:cpp-configsBefore submitting a pull request, ensure you’ve run the linting commands below and either fixed any violations or suppressed the warning.
To run all linting checks:
task lint:checkTo run all linting checks AND automatically fix any fixable issues:
task lint:fixThe commands above run all linting checks, but for performance you may want to run a subset (e.g., if you only changed C++ files, you don't need to run the YAML linting checks) using one of the tasks in the table below.
| Task | Description |
|---|---|
lint:cpp-check |
Runs the C++ linters (formatters and static analyzers). |
lint:cpp-fix |
Runs the C++ linters and fixes some violations. |
lint:cpp-format-check |
Runs the C++ formatters. |
lint:cpp-format-fix |
Runs the C++ formatters and fixes some violations. |
lint:cpp-static-check |
Runs the C++ static analyzers. |
lint:cpp-static-fix |
Runs the C++ static analyzers and fixes some violations. |
lint:yml-check |
Runs the YAML linters. |
lint:yml-fix |
Runs the YAML linters and fixes some violations. |