From bf76bcf6c991746ccb95f07bc3baa066bdab3025 Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周日, 08 12月 2019 17:36:20 +0800 Subject: [PATCH] fix new tests --- README.md | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 100 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index b90e7cc..7331ee5 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,103 @@ -license-manager-cpp -=================== +# Open License Manager -A lincense manager written in C++ +A copy protection, licensing software written in C++ for Windows and Linux (with a simple C api for use in C projects). -Linux -=================== +[](https://en.wikipedia.org/wiki/C%2B%2B#Standardization) +[](http://github.com/badges/stability-badges) +[](https://opensource.org/licenses/BSD-3-Clause) +[](https://travis-ci.org/open-license-manager/open-license-manager) +[](https://www.codacy.com/manual/gcontini/open-license-manager?utm_source=github.com&utm_medium=referral&utm_content=open-license-manager/open-license-manager&utm_campaign=Badge_Grade) +[)](http://github.com/open-license-manager/open-license-manager/issues) -apt-get install -libboost-dev libboost-filesystem-dev -libboost-program-options-dev libboost-test-dev libboost-date-time-dev -libssl-dev? -libdbus-1-dev -#libcrypto++dev (version 5.6.1) -openssl genrsa -out src/license-generator/privkey.pem 2048 \ No newline at end of file +It allows to protect the software you develop from unauthorized copies, +limit the usage in time, to a specific set of machines, or prevent the usage in +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. + +** Warning! documentation outdated. We're in process of releasing the 2.0.0 verision that include a large update. Documentation still refers to 1.1.x series. In case of doubts look to .travis.yml file for hints on how to build the library. ** + +## 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). +* a license generator lcc-license-generator `lcc` for customizing the library and generate the licenses. + +these 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. + +# How to build +Below an overview of the basic build procedure, you can find [detailed instructions](https://github.com/open-license-manager/open-license-manager/wiki/Build-the-library) for your environment in the wiki. + +## prerequisites +* compilers: GCC (Linux) MINGW (Linux cross compile for Windows), MINGW or MSVC (Windows) +* tools : cmake, 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 `licensecc` library. + + +``` +git clone https://github.com/open-license-manager/open-license-manager.git +cd open-license-manager/ +mkdir build +cd build +``` + +## on Linux +``` +cmake .. -DCMAKE_INSTALL_PREFIX=../install +make +make install +``` + +## on Windows (with MSVC 2015) +``` +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 +``` +x86_64-w64-mingw32.static-cmake .. -DCMAKE_INSTALL_PREFIX=../install +make +make install +``` + +How to test +=========== + +## on Linux +``` +make test +``` + +## on Windows (MSVC) +``` +ctest -C Release +``` + +How to use +========== + +This simple example shows how 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) +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. -- Gitblit v1.9.1