From c1e07be47e8b6bf3a21e5a3356617d840abd17ad Mon Sep 17 00:00:00 2001 From: wb-hx510875 Date: Fri, 10 Apr 2020 15:39:05 +0800 Subject: [PATCH] improve build --- CMakeLists.txt | 9 ++++++--- README-CN.md | 1 + README.md | 2 ++ 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 56f321fb0..a25b9464c 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,12 +9,14 @@ project(alibabacloud-sdk VERSION ${version}) message(STATUS "Project version: ${PROJECT_VERSION}") set(TARGET_OUTPUT_NAME_PREFIX "alibabacloud-sdk-" CACHE STRING "The target's output name prefix") +set(BUILD_PRODUCT "" CACHE STRING "Build by lower name of product") + option(BUILD_SHARED_LIBS "Enable shared library" ON) option(BUILD_UNIT_TESTS "Enable unit tests" OFF) option(BUILD_FUNCTION_TESTS "Enable function test" OFF) -option(BUILD_PRODUCT "Build by lower name of product" OFF) set(LIB_TYPE STATIC) + if(BUILD_SHARED_LIBS) set(LIB_TYPE SHARED) add_definitions(-DALIBABACLOUD_SHARED) @@ -57,9 +59,10 @@ if(BUILD_FUNCTION_TESTS) add_subdirectory(test/function_test/vpc) endif() -if(NOT BUILD_PRODUCT) - message(WARNING "INVALID FOLDER 'BUILD_PRODUCT'=${BUILD_PRODUCT}") +if(BUILD_PRODUCT STREQUAL "") + message(WARNING "Please set the value of 'BUILD_PRODUCT'") else() + add_subdirectory(core) add_subdirectory(${BUILD_PRODUCT}) message(STATUS "'BUILD_PRODUCT'=${BUILD_PRODUCT}") endif() diff --git a/README-CN.md b/README-CN.md index a306a8c8c..36ebb472a 100644 --- a/README-CN.md +++ b/README-CN.md @@ -103,6 +103,7 @@ sudo sh easyinstall.sh ecs * 选择 `Browse Source` 为 `源代码目录(aliyun-openapi-cpp-sdk)` * 选择 `Browse build` 为 `构建目录(sdk_build)` * 点击 `configure` + * 使用小写的产品名称,设置 `BUILD_PRODUCT` 参数的值 * 点击 `generate`, 构建 VS 解决方案。 4. 编译安装 C++ SDK diff --git a/README.md b/README.md index a7e9d379c..e446285fe 100755 --- a/README.md +++ b/README.md @@ -109,6 +109,8 @@ git clone https://github.com/aliyun/aliyun-openapi-cpp-sdk.git - `Configure` + - use the lower name of product to set the value of `BUILD_PRODUCT` + - `Generate` 4. Build and Install C++ SDK