Skip to content

GitHub Action to build C++ applications with CMake (either with CMakeLists.txt or CMakeSettings.json), Ninja and vcpkg on GitHub

License

Notifications You must be signed in to change notification settings

dmigliore/run-cmake

 
 

Repository files navigation

Action Status

Build C++ software with the multi-platform run-cmake, that runs CMake on GitHub workflows. . Samples provided use GitHub hosted runners and Caching. A good companion is the run-vcpkg action.

User Manual

Developer Manual

This action behaves the same way as it does the run-cmake task for Azure DevOps.

The documentation of the 'run-cmake" action is identical to the 'run-cmake' task's one for Azure DevOps.

action.yml

View the workflows based on the run-cmake and run-vcpkg actions.

CMakeLists.txt samples
Linux/macOS/Windows, hosted runner, basic Actions Status
Linux/macOS/Windows, hosted runner, advanced Actions Status
Linux/macOS/Windows, hosted runner, with cache and vcpkg as submodule Actions Status
CMakeSettings.json samples
Linux/macOS/Windows, hosted runner, with cache and vcpkg as submodule Actions Status
project: CppOpenGLWebAssemblyCMake
WASM, Linux, macOS Actions Status

Developers information

Prerequisites

gulp 4 globally installed.

Build and lint

Build with tsc running:

npm run build

Launch lint by:

npm run lint

Packaging

To build, lint validate and package the extension for release purpose, run:

npm run pack

Testing

No unit test are available in run-cmake repository.

All unit testing is executed in the CppBuildTasks repository that share the core functionality in the shared Git submodule.

It is desirable to have unit tests implemented in this repository as well.

Smoke tests are run using the Samples.

The software is provided as is, there is no warranty of any kind. All users are encouraged to improve the source code with fixes and new features.

License

All the content in this repository is licensed under the MIT License.

Copyright (c) 2019-2020 Luca Cappa

About

GitHub Action to build C++ applications with CMake (either with CMakeLists.txt or CMakeSettings.json), Ninja and vcpkg on GitHub

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 76.2%
  • TypeScript 23.8%