# webcc A lightweight C++ REST and SOAP client and server library based on *Boost.Asio*. Please see the `doc` folder for tutorials and `example` folder for examples. ## Build Instructions A lot of C++11 features are used, e.g., `std::move`. But C++14 is not required. It means that you can still build `webcc` using VS2013. [CMake 3.1.0+](https://cmake.org/) is required as the build system. But if you don't use CMake, you can just copy the `src/webcc` folder to your own project then manage it by yourself. [C++ Boost](https://www.boost.org/) should be 1.66+ because Asio made some broken changes to the API in 1.66. ### Build Options The following CMake options determine how you build the projects. They are quite self-explanatory. ```cmake option(WEBCC_ENABLE_LOG "Enable console logger?" ON) option(WEBCC_ENABLE_SOAP "Enable SOAP support (need pugixml)?" ON) option(WEBCC_BUILD_UNITTEST "Build unit test?" ON) option(WEBCC_BUILD_REST_EXAMPLE "Build REST example?" ON) option(WEBCC_BUILD_SOAP_EXAMPLE "Build SOAP example?" ON) ``` If `WEBCC_ENABLE_SOAP` is `ON`, **pugixml** (already included) is used to parse and compose XML strings.