From 7c2489cc3dc798484e11a449fd0e305210de901b Mon Sep 17 00:00:00 2001
From: gcontini <1121667+gcontini@users.noreply.github.com>
Date: 周六, 14 12月 2019 20:12:41 +0800
Subject: [PATCH] fix codacy warnings

---
 README.md |  107 +++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 83 insertions(+), 24 deletions(-)

diff --git a/README.md b/README.md
index 9a61f1e..2d6475f 100644
--- a/README.md
+++ b/README.md
@@ -1,34 +1,93 @@
-Open License Manager
-===================
-![Build Status](https://travis-ci.org/open-license-manager/open-license-manager.png "Build Status")
+# Open License Manager
 
-A lincense manager written in C/C++ for Windows and Linux environments.
+A copy protection, licensing software written in C++ for Windows and Linux (with a simple C api for use in C projects).
+
+[![Standard](https://img.shields.io/badge/c%2B%2B-11-blue.svg)](https://en.wikipedia.org/wiki/C%2B%2B#Standardization)
+[![unstable](http://badges.github.io/stability-badges/dist/unstable.svg)](http://github.com/badges/stability-badges)
+[![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
+[![Build Status](https://travis-ci.org/open-license-manager/open-license-manager.svg?branch=develop)](https://travis-ci.org/open-license-manager/open-license-manager)
+[![Codacy Badge](https://api.codacy.com/project/badge/Grade/62d6e1bb22d648bd85b6f3bc344a545a)](https://www.codacy.com/manual/gcontini/open-license-manager?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=open-license-manager/open-license-manager&amp;utm_campaign=Badge_Grade)
+[![Github Issues](https://img.shields.io/github/issues/open-license-manager/open-license-manager)](http://github.com/open-license-manager/open-license-manager/issues)
 
 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 ;-)
+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
+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 no external dependencies (the part you have to integrate in your software).
- * a license generator written in C++ (allows you to generate a license).
+-   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.
  
-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 decriptor](issues/8) in order to decrypt logs generated by the license system.
+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.
 
-You can notice 2 more sub-projects:
- * bootstrap: allows to generate private keys and modify the library on the fly after the downloading.
- * testing  : runs the tests (and publish the results on cdash)
- 
-Licensing
-=====================
-The project comes out with a very large freedom of use for everyone (and it will always be). 
-It uses a BSD 3 clauses licensing schema. 
+# 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-windows) in the wiki. 
 
-Elsewhere on Internet
-=====================
- * Wiki :
- * Project home page :
- 
\ No newline at end of file
+## 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
+```
+
+## build on Linux
+
+```console
+cmake .. -DCMAKE_INSTALL_PREFIX=../install
+make
+make install
+```
+
+## build 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
+```
+
+## How to test
+
+### on Linux
+
+```console
+make test
+```
+
+### on Windows (MSVC)
+
+```console
+ctest -C Release
+```
+
+## How to use
+
+The [examples](https://github.com/open-license-manager/examples) repository that shows various ways to integrate `open-licence-manager` into your project.
+
+## 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](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