Gabriele Contini
2019-12-14 5bfaf2ce035d09a6f12af81bf99a46169a5890fc
README.md
@@ -14,54 +14,54 @@
virtualized environments. It is an Open License Manager that helps to keep your 
software closed :smirk: . A comprehensive [list of features](https://github.com/open-license-manager/open-license-manager/wiki/features), and their status is available in the project wiki.
## License
##License
The project is donated to the community. It comes with a very large freedom of use for everyone, and it will always be. 
It uses a [BSD 3 clauses](https://opensource.org/licenses/BSD-3-Clause) licensing schema, that allows free modification and inclusion in commercial software. 
## Project Structure
The software is made by 2 main sub-components:
* a C++ library with a nice C api, `licensecc` with minimal (or no) external dependencies (the part you have to integrate in your software) that is the project you're currently in.
* a license generator lcc-license-generator `lcc` for customizing the library and generate the licenses.
*  a C++ library with a nice C api, `licensecc` with minimal (or no) external dependencies (the part you have to integrate in your software) that is the project you're currently in.
*  a license generator lcc-license-generator `lcc` for customizing the library and generate the licenses.
 
The following modules are planned...
* a license [backoffice](../../issues/7) in php (in order to handle multiple licenses).
* a license debugger to be sent to the final customer when there are licensing problems.
* a [log descriptor](../../issues/8) in order to decrypt logs generated by the license system.
*  a license [backoffice](../../issues/7) in php (in order to handle multiple licenses).
*  a license debugger to be sent to the final customer when there are licensing problems.
*  a [log descriptor](../../issues/8) in order to decrypt logs generated by the license system.
# How to build
Below an overview of the basic build procedure, you can find detailed instructions for [linux](https://github.com/open-license-manager/open-license-manager/wiki/Build-the-library) or [windows](https://github.com/open-license-manager/open-license-manager/wiki/Build-the-library-win) in the wiki. 
## prerequisites
* Operating system: Linux(Ubuntu, CentOS), Windows
* compilers       : GCC (Linux) MINGW (Linux cross compile for Windows), MINGW or MSVC (Windows)
* tools           : cmake(>3.6), git, make/ninja(linux)
* libs            : If target is linux Openssl is required. Windows depends only on system libraries. Boost is necessary to build license generator and to run the tests but it's NOT a dependency of the final `licensecc` library.
## Prerequisites
*  Operating system: Linux(Ubuntu, CentOS), Windows
*  compilers       : GCC (Linux) MINGW (Linux cross compile for Windows), MINGW or MSVC (Windows)
*  tools           : cmake(>3.6), git, make/ninja(linux)
*  libs            : If target is Linux Openssl is required. Windows depends only on system libraries. Boost is necessary to build license generator and to run the tests but it's NOT a dependency of the final `licensecc` library.
For a complete list of dependencies and supported environments see [the wiki](https://github.com/open-license-manager/open-license-manager/wiki/Dependencies)
Clone the project. It has submodules, don't forget the `--recursive` option.
```
```console
git clone --recursive https://github.com/open-license-manager/open-license-manager.git
cd open-license-manager/
cd build
```
## on Linux
```
```console
cmake .. -DCMAKE_INSTALL_PREFIX=../install
make
make install
```
## on Windows (with MSVC 2015)
```
```console
cmake .. -G "Visual Studio 14 2015 Win64" -DBOOST_ROOT="{Folder where boost is}" -DCMAKE_INSTALL_PREFIX=../install
cmake --build . --target install --config Release
```
## cross compile with MINGW on Linux
```
```console
x86_64-w64-mingw32.static-cmake .. -DCMAKE_INSTALL_PREFIX=../install
make
make install
@@ -71,34 +71,21 @@
===========
## on Linux
```
```console
make test
```
## on Windows (MSVC)
```
```console
ctest -C Release
```
How to use
==========
This simple example shows how to integrate open-licence-manager into your project
The [examples](https://github.com/open-license-manager/examples) repository that shows various ways to integrate `open-licence-manager` into your project.
```
$ cd example
$ cmake .
$ make
$ ./example
license ERROR :
    license file not found
the pc signature is :
    Jaaa-aaaa-MG9F-ZhBB
$ ../install/bin/license_generator example -s Jaaa-aaaa-MG9F-ZhBB -o example.lic
$ ./example
licence OK
```
# How to contribute
The project is not dead but we take our time to answer. The best interaction you can have with us is through the issue system. Have a look to the [contribution guidelines](blob/develop/CONTRIBUTING.md)
The project is not dead but we take our time to answer. The best interaction you can have with us is through the issue system. Have a look to the [contribution guidelines](CONTRIBUTING.md)
We use [GitFlow](https://datasift.github.io/gitflow/IntroducingGitFlow.html) (or at least a subset of it). Remember to install the gitflow git plugin and use `develop` as default branch for your pull requests.