CMakeLists.txt 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #rights reserved
  2. cmake_minimum_required(VERSION 3.6)
  3. include("${ROOT_DIR}/buildtools/cmake/toolchain_common.cmake")
  4. #project name
  5. set(PROJECT_NAME "leo-das")
  6. message(INFO " SYSTEM_ARCH:${SYSTEM_ARCH}\n")
  7. set(CMAKE_BUILD_TYPE DEBUG)
  8. set(CMAKE_CXX_FLAGS "-fPIC -std=gnu++11 -Wno-error=implicit-function-declaration -Wno-error=int-conversion")
  9. set(CMAKE_C_FLAGS "-O3 -fPIC -Wunused-result -Wno-error=implicit-function-declaration -Wno-error=int-conversion")
  10. # 获取当前的分支
  11. set(GIT_BRANCH "")
  12. get_git_branch(GIT_BRANCH)
  13. string(REGEX REPLACE ".*/(.*)" "\\1" _git_branch "${GIT_BRANCH}")
  14. message(STATUS "Git branch is ${_git_branch}") # 宏的结束
  15. add_definitions(-DDAS_VERSION=\"${_git_branch}\")
  16. project(${PROJECT_NAME})
  17. message("PRODUCT_NAME: ${PRODUCT_NAME}")
  18. message(STATUS "PROJECT_SOURCE_DIR: ${PRODUCT_ROOT_DIR}, PROJECT_BINARY_DIR: ${PRODUCT_BUILD_DIR}")
  19. add_definitions(-DPRODUCT_NAME=\"${PRODUCT_NAME}\")
  20. add_definitions(-DUSE_HTNICE)
  21. add_definitions(-DHTNICE_K4)
  22. set(BUILD_SHARED_LIBS ON CACHE BOOL "Build shared libs?" FORCE)
  23. include_directories(${PRODUCT_ROOT_DIR})
  24. include_directories(${PRODUCT_ROOT_DIR}/thirdparty)
  25. include_directories(${PRODUCT_ROOT_DIR}/vendor/${PRODUCT_NAME})
  26. include_directories(${PRODUCT_BUILD_DIR}/thirdparty)
  27. find_library(OPENSSL_SSL_LIBRARY ssl ${OPENSSL_ROOT_DIR}/ssl NO_DEFAULT_PATH)
  28. find_library(OPENSSL_CRYPTO_LIBRARY crypto ${OPENSSL_ROOT_DIR}/crypto/ NO_DEFAULT_PATH)
  29. set(OPENSSL_INCLUDE_DIR "${PRODUCT_BUILD_DIR}/thirdparty/openssl/include")
  30. message("OPENSSL: ${OPENSSL_ROOT_DIR}/ssl, OPENSSL_SSL_LIBRARY: ${OPENSSL_SSL_LIBRARY}, OPENSSL_CRYPTO_LIBRARY: ${OPENSSL_CRYPTO_LIBRARY}, OPENSSL_INCLUDE_DIR: ${OPENSSL_INCLUDE_DIR}")
  31. set(LIBXML2_WITH_PYTHON OFF)
  32. # build_subdirectory(thirdparty/libxml2 INCLUDE thirdparty/libxml2)
  33. # build_subdirectory(thirdparty/SQLiteCpp INCLUDE thirdparty/SQLiteCpp/sqlite3)
  34. include_directories(${PRODUCT_ROOT_DIR}/thirdparty/SQLiteCpp/sqlite3)
  35. build_subdirectory(utils)
  36. # build_subdirectory(foundation/gw_leo)
  37. build_subdirectory(foundation/webconfig)