فهرست منبع

improve cmake compile

wb-hx510875 6 سال پیش
والد
کامیت
31f2c5d410
4فایلهای تغییر یافته به همراه12 افزوده شده و 79 حذف شده
  1. 7 76
      CMakeLists.txt
  2. 1 1
      README-CN.md
  3. 1 1
      README.md
  4. 3 1
      easyinstall.sh

+ 7 - 76
CMakeLists.txt

@@ -12,6 +12,7 @@ set(TARGET_OUTPUT_NAME_PREFIX "alibabacloud-sdk-" CACHE STRING "The target's out
 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)
@@ -48,79 +49,9 @@ if(BUILD_FUNCTION_TESTS)
   add_subdirectory(test/function_test/vpc)
 endif()
 
-add_subdirectory(ecs)
-add_subdirectory(slb)
-add_subdirectory(vpc)
-add_subdirectory(cdn)
-add_subdirectory(rds)
-add_subdirectory(cloudphoto)
-add_subdirectory(tesladam)
-add_subdirectory(cms)
-add_subdirectory(afs)
-add_subdirectory(aegis)
-add_subdirectory(ehpc)
-add_subdirectory(cs)
-add_subdirectory(ccc)
-add_subdirectory(teslamaxcompute)
-add_subdirectory(push)
-add_subdirectory(csb)
-add_subdirectory(domain)
-add_subdirectory(hsm)
-add_subdirectory(dcdn)
-add_subdirectory(pvtz)
-add_subdirectory(cloudauth)
-add_subdirectory(dyvmsapi)
-add_subdirectory(drds)
-add_subdirectory(jarvis)
-add_subdirectory(scdn)
-add_subdirectory(live)
-add_subdirectory(rtc)
-add_subdirectory(chatbot)
-add_subdirectory(teslastream)
-add_subdirectory(mopen)
-add_subdirectory(iot)
-add_subdirectory(linkface)
-add_subdirectory(ots)
-add_subdirectory(smartag)
-add_subdirectory(vod)
-add_subdirectory(ccs)
-add_subdirectory(saf)
-add_subdirectory(arms)
-add_subdirectory(lubancloud)
-add_subdirectory(alimt)
-add_subdirectory(xspace)
-add_subdirectory(cbn)
-add_subdirectory(ram)
-add_subdirectory(sts)
-add_subdirectory(gpdb)
-add_subdirectory(cr)
-add_subdirectory(openanalytics)
-add_subdirectory(snsuapi)
-add_subdirectory(ubsms)
-add_subdirectory(yundun)
-add_subdirectory(arms4finance)
-add_subdirectory(imagesearch)
-add_subdirectory(cas)
-add_subdirectory(cloudwf)
-add_subdirectory(alidns)
-add_subdirectory(httpdns)
-
-add_subdirectory(crm)
-add_subdirectory(kms)
-add_subdirectory(sas-api)
-add_subdirectory(jarvis-public)
-add_subdirectory(mts)
-add_subdirectory(dysmsapi)
-add_subdirectory(ons)
-add_subdirectory(ivision)
-add_subdirectory(imm)
-add_subdirectory(bssopenapi)
-
-add_subdirectory(sas)
-
-add_subdirectory(dbs)
-add_subdirectory(r-kvstore)
-add_subdirectory(dds)
-add_subdirectory(yundun-ds)
-add_subdirectory(trademark)
-add_subdirectory(sddp)
+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()

+ 1 - 1
README-CN.md

@@ -77,7 +77,7 @@ sudo make install
 
 ```bash
 cd aliyun-openapi-cpp-sdk
-sudo sh easyinstall.sh
+sudo sh easyinstall.sh <lower name of product (like 'ecs')>
 ```
 
 **Alibaba Cloud SDK for C++ 将被安装在 `/usr` .**

+ 1 - 1
README.md

@@ -78,7 +78,7 @@ sudo make install
 
 ```bash
 cd aliyun-openapi-cpp-sdk
-sudo sh easyinstall.sh
+sudo sh easyinstall.sh <lower name of product (like 'ecs')>
 ```
 
 **The Alibaba Cloud SDK for C++ will be installed to `/usr`.**

+ 3 - 1
easyinstall.sh

@@ -1,5 +1,7 @@
 #!/bin/bash
 
+product=$1
+
 MAKE=make
 if command -v python > /dev/null ; then
   MAKE="make -j $(python -c 'import multiprocessing as mp; print(int(mp.cpu_count()))')"
@@ -10,7 +12,7 @@ echo $MAKE
 rm -rf sdk_build
 mkdir sdk_build
 cd sdk_build
-cmake -DBUILD_FUNCTION_TESTS=OFF -DBUILD_UNIT_TESTS=OFF -DENABLE_COVERAGE=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr ..
+cmake -DBUILD_PRODUCT="$product" -DBUILD_FUNCTION_TESTS=OFF -DBUILD_UNIT_TESTS=OFF -DENABLE_COVERAGE=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr ..
 $MAKE
 
 make install