Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/philips-software/amp-embedded-infra-lib
amp-embedded-infra-lib is a set of C++ libraries and headers that provide heap-less, STL like, infrastructure for embedded software development
https://github.com/philips-software/amp-embedded-infra-lib
c-plus-plus cpp cpp11 embedded embedded-systems infra infrastructure iot iot-device iot-firmware
Last synced: 3 days ago
JSON representation
amp-embedded-infra-lib is a set of C++ libraries and headers that provide heap-less, STL like, infrastructure for embedded software development
- Host: GitHub
- URL: https://github.com/philips-software/amp-embedded-infra-lib
- Owner: philips-software
- License: mit
- Created: 2019-03-22T14:27:21.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2025-01-10T14:16:06.000Z (12 days ago)
- Last Synced: 2025-01-12T16:05:11.911Z (10 days ago)
- Topics: c-plus-plus, cpp, cpp11, embedded, embedded-systems, infra, infrastructure, iot, iot-device, iot-firmware
- Language: C++
- Homepage:
- Size: 31.1 MB
- Stars: 209
- Watchers: 16
- Forks: 31
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# amp-embedded-infra-lib (EmIL)
[![Continuous Integration](https://github.com/philips-software/amp-embedded-infra-lib/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/philips-software/amp-embedded-infra-lib/actions/workflows/ci.yml) [![Linting & Formatting](https://github.com/philips-software/amp-embedded-infra-lib/actions/workflows/linting-formatting.yml/badge.svg)](https://github.com/philips-software/amp-embedded-infra-lib/actions/workflows/linting-formatting.yml) [![Static Analysis](https://github.com/philips-software/amp-embedded-infra-lib/actions/workflows/static-analysis.yml/badge.svg)](https://github.com/philips-software/amp-embedded-infra-lib/actions/workflows/static-analysis.yml)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=philips-software_embeddedinfralib&metric=alert_status)](https://sonarcloud.io/dashboard?id=philips-software_embeddedinfralib) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=philips-software_embeddedinfralib&metric=coverage)](https://sonarcloud.io/dashboard?id=philips-software_embeddedinfralib) [![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=philips-software_embeddedinfralib&metric=duplicated_lines_density)](https://sonarcloud.io/summary/new_code?id=philips-software_embeddedinfralib)
[![License: MIT](https://img.shields.io/badge/License-MIT-brightgreen.svg)](https://choosealicense.com/licenses/mit/) [![Documentation](https://img.shields.io/website?down_message=offline&label=Documentation&up_message=online&url=https%3A%2F%2Fimg.shields.io%2Fwebsite-up-down-green-red%2Fhttps%2Fphilips-software.github.io%2amp-embedded-infra-lib.svg)](https://philips-software.github.io/amp-embedded-infra-lib/) [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/philips-software/amp-embedded-infra-lib/badge)](https://securityscorecards.dev/viewer/?uri=github.com/philips-software/amp-embedded-infra-lib)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/6667/badge)](https://bestpractices.coreinfrastructure.org/projects/6667)**Description**: amp-embedded-infra-lib is a set of C++ libraries and headers that provide heap-less, STL like, infrastructure for embedded software development.
## Dependencies
EmIL requires:
- A recent C++ compiler that supports C++17 at minimum (for a host build it should support std::filesystem).
- CMake 3.24 or higher.EmIL is know to build under the following configurations:
- Windows from Visual Studio 2019 onwards.
- Linux from GCC 7 onwards.
- OSX from XCode 11 and target platform 10.15 onwards.## How to build the software
EmIL can be built by-itself, for example to execute the included micro-tests, or it can be built as part of a larger project. This paragraph describes how to build EmIL by-itself.
```shell
cmake -B Build
cmake --build Build
```## How to test the software
After EmIL has been built. The included automated tests can be run with CTest like so:
```shell
ctest -D Experimental -C Debug
```## Code examples
Code examples can be found under the [examples](examples) folder.
## Documentation
Documentation is available on [philips-software.github.io/amp-embedded-infra-lib](https://philips-software.github.io/amp-embedded-infra-lib/).
## Contributing
[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-%23FE5196?logo=conventionalcommits&logoColor=white)](https://conventionalcommits.org)
amp-embedded-infra-lib uses semantic versioning and conventional commits.
Please refer to our [Contributing](.github/CONTRIBUTING.md) guide when you want to contribute to this project.
## License
amp-embedded-infra-lib is licensed under the [MIT](https://choosealicense.com/licenses/mit/) license. See [LICENSE file](LICENSE).