This project includes files that complement the C++ std::
classes.
The project is hosted on GitHub as micro-os-plus/libs-cpp-estd-xpack.
This page is addressed to developers who plan to include this package into their own projects.
For maintainer infos, please see the README-MAINTAINER file.
As a source xPacks, the easiest way to add it to a project is via xpm, but it can also be used as any Git project, for example as a submodule.
A recent xpm, which is a portable Node.js command line application.
For details please follow the instructions in the install page.
Note: the package will be available from npmjs.com at a later date.
For now, it can be installed from GitHub:
$ cd <project>
$ xpm init # Unless a package.json is already present
$ xpm install github:micro-os-plus/libs-cpp-estd-xpack
When ready, this package will be available as
@micro-os-plus/libs-cpp-estd
from the npmjs.com
registry:
$ cd <project>
$ xpm init # Unless a package.json is already present
$ xpm install @micro-os-plus/libs-cpp-estd@latest
If, for any reason, xpm is not available, the next recommended
solution is to link it as a Git submodule below an xpacks
folder.
$ cd <project>
$ git init # Unless already a Git project
$ mkdir -p xpacks
$ git submodule add https://github.com/micro-os-plus/libs-cpp-estd-xpack.git \
xpacks/micro-os-plus-libs-cpp-estd
Apart from the unused master
branch, there are two active branches:
xpack
, with the latest stable versionxpack-develop
, with the current development version
All development is done in the xpack-develop
branch, and contributions via
Pull Requests should be directed to this branch.
When new releases are published, the xpack-develop
branch is merged
into xpack
.
The new classes are defined in the micro_os_plus::estd
namespace. Having them
in a separate namespace allows to run tests on the synthetic POSIX platform.
Since the libraries included in the current embedded toolchain do not
include support for threads, it is possible to also define
the same functionality in the std::
namespace, and reuse
source code from POSIX desktops.
The embedded std:: definitions are fully functional.
To include this package in a project, consider the following details.
src
include
TODO: list the available headeres
TBD
-std=c++17
or higher for C++ sources-std=c11
for C sources
TBD
TBD
TBD
- none
TBD
The original content is released under the MIT License, with all rights reserved to Liviu Ionescu.