- zP - # ABOUT zp is a library for low-level (and high-level) algorithms and the querying of system details. The algorithms are - by default - implemented in C++, but for some targets they may be implemented in a platform-dependent manner (such as in an assembly language) for the sake of performance. Nevertheless, the library is still quite early in its development, and these algorithms may still not be the most efficient. # CHANGELOG Read: "CHANGELOG.txt" The changelog lists the contributors' changes to the library in the different versions. Each version is initiated by the version number followed by the list of changes. Each commit has its own changes seperated with a blank line. # COMPILATION Provided are CMake lists files, which The provided script "getTarget.sh" detects the target (if supported - otherwise defaults to "Any") to be passed to CMake. ## INSTALLATION The provided script "install.sh" installs the library and the (public) headers to the specified directories: ./install.sh [build directory] [library directory] [include directory] The script automatically builds the project using pre-defined settings. Note that it does recursively remove the build directory before initialising it. An official package is also provided on the Arch User Repositoriy as "zp-git": # DEVELOPMENT When developing, all commits must first be commited to the "development" branch. When a new version is released, the branch is merged with the "master" branch and a tag designating the version number is made. Currently, I - the maintainer - do not accept any code submissions (I do, however, accept suggestions). This may change in the future. ## VERSIONING The versioning scheme for zP is a major-minor- patch scheme. The major version is the "API" version. The minor version is the "EXT" (extension) version. API version change (existing) interfaces in the API, whilst the EXT version only adds to it, meaning programs targeting a specific API also support all later EXT versions of the same API. # COPYRIGHT AND LICENSE Copyright 2022-2023 Gabriel Jensen. The source files of this project are - where noted - licensed under the second version of the Mozilla Public License.