| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- cmake_minimum_required(VERSION 3.1)
- cmake_policy(SET CMP0048 NEW)
- file(STRINGS "VERSION" version)
- 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")
- 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)
- endif()
- set_property(GLOBAL
- PROPERTY
- USE_FOLDERS ON)
- set(CMAKE_CXX_STANDARD 11)
- include(ExternalProject)
- include(GNUInstallDirs)
- add_subdirectory(3rdparty)
- add_subdirectory(core)
- if(BUILD_UNIT_TESTS)
- enable_testing()
- add_subdirectory(test/core)
- endif()
- if(BUILD_FUNCTION_TESTS)
- enable_testing()
- add_subdirectory(test/function_test/cdn)
- add_subdirectory(test/function_test/core)
- add_subdirectory(test/function_test/cs)
- add_subdirectory(test/function_test/ecs)
- add_subdirectory(test/function_test/nlp)
- add_subdirectory(test/function_test/rds)
- add_subdirectory(test/function_test/slb)
- add_subdirectory(test/function_test/vpc)
- endif()
- if(NOT BUILD_PRODUCT)
- message(FATAL_ERROR "INVALID FOLDER 'BUILD_PRODUCT'=${BUILD_PRODUCT}")
- else()
- add_subdirectory(${BUILD_PRODUCT})
- message(STATUS "'BUILD_PRODUCT'=${BUILD_PRODUCT}")
- endif()
|