Refine CMake, update UT.

master
Chunting Gu 7 years ago
parent 803ae3eb5f
commit 20721c2423

@ -59,11 +59,17 @@ macro(GROUP_SOURCES_BY_DIR source_files)
endforeach()
endmacro()
# CMake 3.1.0+
# C++ standard requirements.
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
# CMake 3.1.0+ required.
# See: https://stackoverflow.com/a/29871891
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)
# Boost version: 1.66+
# Boost 1.66+ required.
set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED ON)
if(WIN32)

@ -1,157 +1,162 @@
[
{
"directory": "/home/adam/github/webcc/build/src/gtest",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/gtest.dir/gtest-all.cc.o -c /home/adam/github/webcc/src/gtest/gtest-all.cc",
"file": "/home/adam/github/webcc/src/gtest/gtest-all.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/gtest",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/gtest.dir/gtest_main.cc.o -c /home/adam/github/webcc/src/gtest/gtest_main.cc",
"file": "/home/adam/github/webcc/src/gtest/gtest_main.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/pugixml",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -o CMakeFiles/pugixml.dir/pugixml.cpp.o -c /home/adam/github/webcc/src/pugixml/pugixml.cpp",
"file": "/home/adam/github/webcc/src/pugixml/pugixml.cpp"
"directory": "/home/adam/github/webcc/build/third_party/pugixml",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -o CMakeFiles/pugixml.dir/pugixml.cpp.o -c /home/adam/github/webcc/third_party/pugixml/pugixml.cpp",
"file": "/home/adam/github/webcc/third_party/pugixml/pugixml.cpp"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/common.cc.o -c /home/adam/github/webcc/src/webcc/common.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/common.cc.o -c /home/adam/github/webcc/src/webcc/common.cc",
"file": "/home/adam/github/webcc/src/webcc/common.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_client.cc.o -c /home/adam/github/webcc/src/webcc/http_client.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_client.cc.o -c /home/adam/github/webcc/src/webcc/http_client.cc",
"file": "/home/adam/github/webcc/src/webcc/http_client.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_message.cc.o -c /home/adam/github/webcc/src/webcc/http_message.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_message.cc.o -c /home/adam/github/webcc/src/webcc/http_message.cc",
"file": "/home/adam/github/webcc/src/webcc/http_message.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_parser.cc.o -c /home/adam/github/webcc/src/webcc/http_parser.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_parser.cc.o -c /home/adam/github/webcc/src/webcc/http_parser.cc",
"file": "/home/adam/github/webcc/src/webcc/http_parser.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_request.cc.o -c /home/adam/github/webcc/src/webcc/http_request.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_request.cc.o -c /home/adam/github/webcc/src/webcc/http_request.cc",
"file": "/home/adam/github/webcc/src/webcc/http_request.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_request_handler.cc.o -c /home/adam/github/webcc/src/webcc/http_request_handler.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_request_handler.cc.o -c /home/adam/github/webcc/src/webcc/http_request_handler.cc",
"file": "/home/adam/github/webcc/src/webcc/http_request_handler.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_request_parser.cc.o -c /home/adam/github/webcc/src/webcc/http_request_parser.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_request_parser.cc.o -c /home/adam/github/webcc/src/webcc/http_request_parser.cc",
"file": "/home/adam/github/webcc/src/webcc/http_request_parser.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_response.cc.o -c /home/adam/github/webcc/src/webcc/http_response.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_response.cc.o -c /home/adam/github/webcc/src/webcc/http_response.cc",
"file": "/home/adam/github/webcc/src/webcc/http_response.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_response_parser.cc.o -c /home/adam/github/webcc/src/webcc/http_response_parser.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_response_parser.cc.o -c /home/adam/github/webcc/src/webcc/http_response_parser.cc",
"file": "/home/adam/github/webcc/src/webcc/http_response_parser.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_server.cc.o -c /home/adam/github/webcc/src/webcc/http_server.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_server.cc.o -c /home/adam/github/webcc/src/webcc/http_server.cc",
"file": "/home/adam/github/webcc/src/webcc/http_server.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/http_session.cc.o -c /home/adam/github/webcc/src/webcc/http_session.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/http_session.cc.o -c /home/adam/github/webcc/src/webcc/http_session.cc",
"file": "/home/adam/github/webcc/src/webcc/http_session.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/rest_server.cc.o -c /home/adam/github/webcc/src/webcc/rest_server.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/rest_server.cc.o -c /home/adam/github/webcc/src/webcc/rest_server.cc",
"file": "/home/adam/github/webcc/src/webcc/rest_server.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/url.cc.o -c /home/adam/github/webcc/src/webcc/url.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/url.cc.o -c /home/adam/github/webcc/src/webcc/url.cc",
"file": "/home/adam/github/webcc/src/webcc/url.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/utility.cc.o -c /home/adam/github/webcc/src/webcc/utility.cc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/utility.cc.o -c /home/adam/github/webcc/src/webcc/utility.cc",
"file": "/home/adam/github/webcc/src/webcc/utility.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/soap_client.cc.o -c /home/adam/github/webcc/src/webcc/soap_client.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_client.cc"
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/soap_message.cc.o -c /home/adam/github/webcc/src/webcc/soap_message.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_message.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/soap_server.cc.o -c /home/adam/github/webcc/src/webcc/soap_server.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_server.cc"
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/soap_request.cc.o -c /home/adam/github/webcc/src/webcc/soap_request.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_request.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/soap_message.cc.o -c /home/adam/github/webcc/src/webcc/soap_message.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_message.cc"
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/soap_response.cc.o -c /home/adam/github/webcc/src/webcc/soap_response.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_response.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/soap_request.cc.o -c /home/adam/github/webcc/src/webcc/soap_request.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_request.cc"
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/soap_xml.cc.o -c /home/adam/github/webcc/src/webcc/soap_xml.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_xml.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/soap_response.cc.o -c /home/adam/github/webcc/src/webcc/soap_response.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_response.cc"
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/soap_client.cc.o -c /home/adam/github/webcc/src/webcc/soap_client.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_client.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/webcc",
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/webcc.dir/soap_xml.cc.o -c /home/adam/github/webcc/src/webcc/soap_xml.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_xml.cc"
"command": "/usr/bin/c++ -DBOOST_ASIO_NO_DEPRECATED -DWEBCC_DEBUG_OUTPUT -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/webcc.dir/soap_server.cc.o -c /home/adam/github/webcc/src/webcc/soap_server.cc",
"file": "/home/adam/github/webcc/src/webcc/soap_server.cc"
},
{
"directory": "/home/adam/github/webcc/build/third_party/jsoncpp",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -std=c++11 -o CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o -c /home/adam/github/webcc/third_party/jsoncpp/jsoncpp.cpp",
"file": "/home/adam/github/webcc/third_party/jsoncpp/jsoncpp.cpp"
},
{
"directory": "/home/adam/github/webcc/build/example/rest_book_server",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -o CMakeFiles/rest_book_server.dir/book_services.cc.o -c /home/adam/github/webcc/example/rest_book_server/book_services.cc",
"file": "/home/adam/github/webcc/example/rest_book_server/book_services.cc"
},
{
"directory": "/home/adam/github/webcc/build/example/rest_book_server",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -o CMakeFiles/rest_book_server.dir/main.cc.o -c /home/adam/github/webcc/example/rest_book_server/main.cc",
"file": "/home/adam/github/webcc/example/rest_book_server/main.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/demo/soap/calc_client",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/soap_calc_client.dir/calc_client.cc.o -c /home/adam/github/webcc/src/demo/soap/calc_client/calc_client.cc",
"file": "/home/adam/github/webcc/src/demo/soap/calc_client/calc_client.cc"
"directory": "/home/adam/github/webcc/build/example/rest_book_client",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -o CMakeFiles/rest_book_client.dir/main.cc.o -c /home/adam/github/webcc/example/rest_book_client/main.cc",
"file": "/home/adam/github/webcc/example/rest_book_client/main.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/demo/soap/calc_client",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/soap_calc_client.dir/main.cc.o -c /home/adam/github/webcc/src/demo/soap/calc_client/main.cc",
"file": "/home/adam/github/webcc/src/demo/soap/calc_client/main.cc"
"directory": "/home/adam/github/webcc/build/example/soap_calc_server",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -o CMakeFiles/soap_calc_server.dir/calc_service.cc.o -c /home/adam/github/webcc/example/soap_calc_server/calc_service.cc",
"file": "/home/adam/github/webcc/example/soap_calc_server/calc_service.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/demo/soap/calc_server",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/soap_calc_server.dir/calc_service.cc.o -c /home/adam/github/webcc/src/demo/soap/calc_server/calc_service.cc",
"file": "/home/adam/github/webcc/src/demo/soap/calc_server/calc_service.cc"
"directory": "/home/adam/github/webcc/build/example/soap_calc_server",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -o CMakeFiles/soap_calc_server.dir/main.cc.o -c /home/adam/github/webcc/example/soap_calc_server/main.cc",
"file": "/home/adam/github/webcc/example/soap_calc_server/main.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/demo/soap/calc_server",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/soap_calc_server.dir/main.cc.o -c /home/adam/github/webcc/src/demo/soap/calc_server/main.cc",
"file": "/home/adam/github/webcc/src/demo/soap/calc_server/main.cc"
"directory": "/home/adam/github/webcc/build/example/soap_calc_client",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -o CMakeFiles/soap_calc_client.dir/calc_client.cc.o -c /home/adam/github/webcc/example/soap_calc_client/calc_client.cc",
"file": "/home/adam/github/webcc/example/soap_calc_client/calc_client.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/demo/rest/book_client",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/rest_book_client.dir/book_client.cc.o -c /home/adam/github/webcc/src/demo/rest/book_client/book_client.cc",
"file": "/home/adam/github/webcc/src/demo/rest/book_client/book_client.cc"
"directory": "/home/adam/github/webcc/build/example/soap_calc_client",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -o CMakeFiles/soap_calc_client.dir/main.cc.o -c /home/adam/github/webcc/example/soap_calc_client/main.cc",
"file": "/home/adam/github/webcc/example/soap_calc_client/main.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/demo/rest/book_client",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/rest_book_client.dir/main.cc.o -c /home/adam/github/webcc/src/demo/rest/book_client/main.cc",
"file": "/home/adam/github/webcc/src/demo/rest/book_client/main.cc"
"directory": "/home/adam/github/webcc/build/third_party/gtest",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -std=c++11 -o CMakeFiles/gtest.dir/gtest-all.cc.o -c /home/adam/github/webcc/third_party/gtest/gtest-all.cc",
"file": "/home/adam/github/webcc/third_party/gtest/gtest-all.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/demo/rest/book_server",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/rest_book_server.dir/book_services.cc.o -c /home/adam/github/webcc/src/demo/rest/book_server/book_services.cc",
"file": "/home/adam/github/webcc/src/demo/rest/book_server/book_services.cc"
"directory": "/home/adam/github/webcc/build/third_party/gtest",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -std=c++11 -o CMakeFiles/gtest.dir/gtest_main.cc.o -c /home/adam/github/webcc/third_party/gtest/gtest_main.cc",
"file": "/home/adam/github/webcc/third_party/gtest/gtest_main.cc"
},
{
"directory": "/home/adam/github/webcc/build/src/demo/rest/book_server",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -std=c++11 -std=c++11 -o CMakeFiles/rest_book_server.dir/main.cc.o -c /home/adam/github/webcc/src/demo/rest/book_server/main.cc",
"file": "/home/adam/github/webcc/src/demo/rest/book_server/main.cc"
"directory": "/home/adam/github/webcc/build/unittest",
"command": "/usr/bin/c++ -DWEBCC_ENABLE_SOAP -I/home/adam/include -I/home/adam/github/webcc/src -I/home/adam/github/webcc/third_party -I/home/adam/github/webcc/third_party/jsoncpp -std=c++11 -o CMakeFiles/webcc_unittest.dir/rest_service_manager_test.cc.o -c /home/adam/github/webcc/unittest/rest_service_manager_test.cc",
"file": "/home/adam/github/webcc/unittest/rest_service_manager_test.cc"
}
]

@ -1,10 +1,4 @@
if(UNIX)
add_definitions(-std=c++11)
endif()
file(GLOB SRCS *.cc *.h)
add_executable(rest_book_client ${SRCS})
add_executable(rest_book_client main.cc)
target_link_libraries(rest_book_client webcc ${Boost_LIBRARIES})
target_link_libraries(rest_book_client "${CMAKE_THREAD_LIBS_INIT}")

@ -1,7 +1,3 @@
if(UNIX)
add_definitions(-std=c++11)
endif()
file(GLOB SRCS *.cc *.h)
add_executable(rest_book_server ${SRCS})

@ -1,6 +1,6 @@
if(UNIX)
add_definitions(-std=c++11)
endif()
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
file(GLOB SRCS *.cc *.h)

@ -1,6 +1,6 @@
if(UNIX)
add_definitions(-std=c++11)
endif()
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
file(GLOB SRCS *.cc *.h)

@ -1,7 +1,3 @@
if(UNIX)
add_definitions(-std=c++11)
endif()
option(WEBCC_DEBUG_OUTPUT "Enable debug output?" OFF)
if(WEBCC_DEBUG_OUTPUT)

@ -29,13 +29,15 @@ static void SetTimeout(boost::asio::ip::tcp::socket& socket,
int ms = timeout_seconds * 1000;
const char* optval = reinterpret_cast<const char*>(&ms);
size_t optlen = sizeof(ms);
std::size_t optlen = sizeof(ms);
setsockopt(socket.native_handle(), SOL_SOCKET, SO_RCVTIMEO, optval, optlen);
setsockopt(socket.native_handle(), SOL_SOCKET, SO_SNDTIMEO, optval, optlen);
#else // POSIX
// TODO: This doesn't work! Consider to control timeout in server side.
struct timeval tv;
tv.tv_sec = timeout_seconds;
tv.tv_usec = 0;
@ -104,7 +106,9 @@ Error HttpClient::SendRequest(const HttpRequest& request,
// We must stop trying to read once all content has been received,
// because some servers will block extra call to read_some().
while (!parser.finished()) {
size_t length = socket.read_some(boost::asio::buffer(buffer_), ec);
// read_some() will block until one or more bytes of data has been
// read successfully, or until an error occurs.
std::size_t length = socket.read_some(boost::asio::buffer(buffer_), ec);
if (length == 0 || ec) {
#if defined _WINDOWS

@ -1,4 +1,6 @@
# project(jsoncpp)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
set(SRCS
json/json.h

@ -1,13 +1,14 @@
# Unit test
if(CSOAP_ENABLE_UT)
if(WEBCC_BUILD_UNITTEST)
set(UT_SRCS
rest_service_manager_test.cc
)
set(UT_TARGET_NAME csoap_unittest)
set(UT_TARGET_NAME webcc_unittest)
add_executable(${UT_TARGET_NAME} ${UT_SRCS})
target_link_libraries(${UT_TARGET_NAME} csoap pugixml gtest)
target_link_libraries(${UT_TARGET_NAME} webcc pugixml gtest ${Boost_LIBRARIES})
target_link_libraries(${UT_TARGET_NAME} "${CMAKE_THREAD_LIBS_INIT}")
add_test(${UT_TARGET_NAME} ${UT_TARGET_NAME})
endif()

@ -1,18 +1,16 @@
#include "csoap/rest_server.h"
#include "webcc/rest_server.h"
#include "gtest/gtest.h"
using namespace csoap;
using namespace webcc;
////////////////////////////////////////////////////////////////////////////////
class TestRestService : public RestService {
public:
~TestRestService() override {
}
bool Handle(const std::string& http_method,
const std::string& request,
std::string* response) override {
const std::vector<std::string>& url_sub_matches,
const std::string& request_content,
std::string* response_content) override {
return true;
}
};

Loading…
Cancel
Save