forked from loafle/openapi-generator-original
Merge remote-tracking branch 'origin/5.4.x' into 6.0.x
This commit is contained in:
@@ -1,57 +1,21 @@
|
||||
cmake_minimum_required (VERSION 3.2)
|
||||
|
||||
project(cpprest-petstore)
|
||||
set(CMAKE_VERBOSE_MAKEFILE ON)
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
if (UNIX)
|
||||
message(STATUS "Building for Linux/Unix")
|
||||
|
||||
set(CMAKE_BUILD_TYPE Debug)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -Wall -Wno-unused-variable -pg -g3")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall -Wno-unused-variable -pg -g3")
|
||||
|
||||
find_package(cpprestsdk REQUIRED)
|
||||
find_package(Boost REQUIRED)
|
||||
else()
|
||||
message(STATUS "Building for Windows")
|
||||
|
||||
find_package(cpprestsdk REQUIRED)
|
||||
find_package(Boost REQUIRED)
|
||||
find_package(pthreads REQUIRED)
|
||||
endif()
|
||||
cmake_minimum_required (VERSION 3.1)
|
||||
|
||||
add_subdirectory(client)
|
||||
|
||||
file(GLOB SRCS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/*.cpp
|
||||
project(cpprest-petstore)
|
||||
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
file(GLOB SOURCE_FILES "*.cpp")
|
||||
|
||||
add_executable(${PROJECT_NAME} ${SOURCE_FILES})
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
PRIVATE
|
||||
CppRestPetstoreClient
|
||||
Threads::Threads
|
||||
)
|
||||
|
||||
add_executable(${PROJECT_NAME} ${SRCS})
|
||||
add_dependencies(${PROJECT_NAME} CppRestOpenAPIClient )
|
||||
|
||||
target_include_directories(
|
||||
${PROJECT_NAME} PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/client
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/client/model
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/client/api
|
||||
${Boost_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
target_link_directories(
|
||||
${PROJECT_NAME} PRIVATE
|
||||
${Boost_LIBRARY_DIRS}
|
||||
)
|
||||
|
||||
if (UNIX)
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE CppRestOpenAPIClient cpprest pthread ${Boost_LIBRARIES} crypto)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE CppRestOpenAPIClient cpprestsdk::cpprest ${pthreads_LIBRARIES} ${Boost_LIBRARIES} bcrypt)
|
||||
endif()
|
||||
|
||||
set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD 14)
|
||||
set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
if (UNIX)
|
||||
install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)
|
||||
endif()
|
||||
|
||||
@@ -6,6 +6,7 @@ ApiConfiguration.h
|
||||
ApiException.cpp
|
||||
ApiException.h
|
||||
CMakeLists.txt
|
||||
Config.cmake.in
|
||||
HttpContent.cpp
|
||||
HttpContent.h
|
||||
IHttpBody.h
|
||||
|
||||
@@ -8,69 +8,85 @@
|
||||
#
|
||||
# NOTE: Auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
|
||||
cmake_minimum_required (VERSION 2.8)
|
||||
cmake_minimum_required (VERSION 3.1)
|
||||
|
||||
#PROJECT's NAME
|
||||
project(CppRestOpenAPIClient)
|
||||
set(CMAKE_VERBOSE_MAKEFILE ON)
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
project(CppRestPetstoreClient)
|
||||
|
||||
# THE LOCATION OF OUTPUT BINARIES
|
||||
set(CMAKE_LIBRARY_DIR ${PROJECT_SOURCE_DIR}/lib)
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
set(CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
if(NOT CMAKE_CXX_STANDARD)
|
||||
set(CMAKE_CXX_STANDARD 14)
|
||||
endif()
|
||||
|
||||
if(NOT CMAKE_BUILD_TYPE)
|
||||
set(CMAKE_BUILD_TYPE Release)
|
||||
endif()
|
||||
|
||||
# BUILD TYPE
|
||||
message("A ${CMAKE_BUILD_TYPE} build configuration is detected")
|
||||
find_package(cpprestsdk REQUIRED)
|
||||
find_package(Boost REQUIRED)
|
||||
|
||||
include(GNUInstallDirs)
|
||||
include(CMakePackageConfigHelpers)
|
||||
|
||||
file(GLOB_RECURSE HEADER_FILES "*.h")
|
||||
file(GLOB_RECURSE SOURCE_FILES "*.cpp")
|
||||
|
||||
add_library(${PROJECT_NAME} ${HEADER_FILES} ${SOURCE_FILES})
|
||||
|
||||
target_compile_options(${PROJECT_NAME}
|
||||
PRIVATE
|
||||
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>,$<CXX_COMPILER_ID:GNU>>:
|
||||
-Wall -Wno-unused-variable>
|
||||
)
|
||||
|
||||
target_include_directories(${PROJECT_NAME}
|
||||
PUBLIC
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||
)
|
||||
|
||||
target_link_directories(${PROJECT_NAME}
|
||||
PRIVATE
|
||||
${Boost_LIBRARY_DIRS}
|
||||
)
|
||||
|
||||
if (UNIX)
|
||||
message(STATUS "Building client library for Linux/Unix")
|
||||
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -Wall -Wno-unused-variable")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall -Wno-unused-variable")
|
||||
set(cpprestsdk_DIR /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}/cmake/)
|
||||
|
||||
find_package(cpprestsdk REQUIRED)
|
||||
find_package(Boost REQUIRED)
|
||||
target_link_libraries(${PROJECT_NAME} PUBLIC cpprest ${Boost_LIBRARIES} crypto)
|
||||
else()
|
||||
message(STATUS "Building client library for Windows")
|
||||
|
||||
find_package(cpprestsdk REQUIRED)
|
||||
find_package(Boost REQUIRED)
|
||||
target_link_libraries(${PROJECT_NAME} PUBLIC cpprestsdk::cpprest ${Boost_LIBRARIES} bcrypt)
|
||||
endif()
|
||||
|
||||
# Manually set the cpprestsdk paths when not using package manager
|
||||
#set(CPPREST_INCLUDE_DIR ${CPPREST_ROOT}/include)
|
||||
#set(CPPREST_LIBRARY_DIR ${CPPREST_ROOT}/lib)
|
||||
#include_directories(${CPPREST_INCLUDE_DIR})
|
||||
#link_directories(${CPPREST_LIBRARY_DIR})
|
||||
|
||||
#SUPPORTING FILES
|
||||
set(SUPPORTING_FILES "ApiClient" "ApiConfiguration" "ApiException" "HttpContent" "IHttpBody" "JsonBody" "ModelBase" "MultipartFormData" "Object")
|
||||
#SOURCE FILES
|
||||
file(GLOB SOURCE_FILES "api/*" "model/*")
|
||||
|
||||
add_library(${PROJECT_NAME} ${SUPPORTING_FILES} ${SOURCE_FILES})
|
||||
|
||||
target_include_directories(
|
||||
${PROJECT_NAME} PRIVATE
|
||||
${Boost_INCLUDE_DIRS}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/model
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/api
|
||||
configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/Config.cmake.in
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
|
||||
INSTALL_DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}"
|
||||
)
|
||||
|
||||
target_link_directories(
|
||||
${PROJECT_NAME} PRIVATE
|
||||
${Boost_LIBRARY_DIRS}
|
||||
install(
|
||||
TARGETS ${PROJECT_NAME}
|
||||
EXPORT ${PROJECT_NAME}Targets
|
||||
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
|
||||
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
|
||||
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||||
INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
|
||||
)
|
||||
|
||||
if (UNIX)
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE cpprest ${Boost_LIBRARIES} crypto)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE cpprestsdk::cpprest ${Boost_LIBRARIES} bcrypt)
|
||||
endif()
|
||||
install(
|
||||
DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}
|
||||
FILES_MATCHING PATTERN "*.h"
|
||||
)
|
||||
|
||||
set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD 14)
|
||||
set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD_REQUIRED ON)
|
||||
install(
|
||||
FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
|
||||
)
|
||||
|
||||
install(
|
||||
EXPORT ${PROJECT_NAME}Targets
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
|
||||
)
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
@PACKAGE_INIT@
|
||||
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@-targets.cmake)
|
||||
|
||||
check_required_components("@PROJECT_NAME@")
|
||||
@@ -19,14 +19,13 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_API_PetApi_H_
|
||||
|
||||
|
||||
#include "../ApiClient.h"
|
||||
|
||||
#include "ApiResponse.h"
|
||||
#include "ApiClient.h"
|
||||
|
||||
#include "model/ApiResponse.h"
|
||||
#include "HttpContent.h"
|
||||
#include "Pet.h"
|
||||
#include "model/Pet.h"
|
||||
#include <cpprest/details/basic_types.h>
|
||||
|
||||
|
||||
#include <boost/optional.hpp>
|
||||
|
||||
namespace org {
|
||||
|
||||
@@ -19,13 +19,12 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_API_StoreApi_H_
|
||||
|
||||
|
||||
#include "../ApiClient.h"
|
||||
|
||||
#include "Order.h"
|
||||
#include "ApiClient.h"
|
||||
|
||||
#include "model/Order.h"
|
||||
#include <map>
|
||||
#include <cpprest/details/basic_types.h>
|
||||
|
||||
|
||||
#include <boost/optional.hpp>
|
||||
|
||||
namespace org {
|
||||
|
||||
@@ -19,13 +19,12 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_API_UserApi_H_
|
||||
|
||||
|
||||
#include "../ApiClient.h"
|
||||
|
||||
#include "User.h"
|
||||
#include "ApiClient.h"
|
||||
|
||||
#include "model/User.h"
|
||||
#include <vector>
|
||||
#include <cpprest/details/basic_types.h>
|
||||
|
||||
|
||||
#include <boost/optional.hpp>
|
||||
|
||||
namespace org {
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_MODEL_ApiResponse_H_
|
||||
|
||||
|
||||
#include "../ModelBase.h"
|
||||
#include "ModelBase.h"
|
||||
|
||||
#include <cpprest/details/basic_types.h>
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_MODEL_Category_H_
|
||||
|
||||
|
||||
#include "../ModelBase.h"
|
||||
#include "ModelBase.h"
|
||||
|
||||
#include <cpprest/details/basic_types.h>
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_MODEL_Order_H_
|
||||
|
||||
|
||||
#include "../ModelBase.h"
|
||||
#include "ModelBase.h"
|
||||
|
||||
#include <cpprest/details/basic_types.h>
|
||||
|
||||
|
||||
@@ -19,12 +19,12 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_MODEL_Pet_H_
|
||||
|
||||
|
||||
#include "../ModelBase.h"
|
||||
#include "ModelBase.h"
|
||||
|
||||
#include "Tag.h"
|
||||
#include "model/Tag.h"
|
||||
#include <cpprest/details/basic_types.h>
|
||||
#include "Category.h"
|
||||
#include <vector>
|
||||
#include "model/Category.h"
|
||||
|
||||
namespace org {
|
||||
namespace openapitools {
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_MODEL_Tag_H_
|
||||
|
||||
|
||||
#include "../ModelBase.h"
|
||||
#include "ModelBase.h"
|
||||
|
||||
#include <cpprest/details/basic_types.h>
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
#define ORG_OPENAPITOOLS_CLIENT_MODEL_User_H_
|
||||
|
||||
|
||||
#include "../ModelBase.h"
|
||||
#include "ModelBase.h"
|
||||
|
||||
#include <cpprest/details/basic_types.h>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user