CMakeLists.txt 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. # Set the minimum version of CMake that can be used
  2. # To find the cmake version run
  3. # $ cmake --version
  4. cmake_minimum_required(VERSION 3.13)
  5. # -std=c++17
  6. set(CMAKE_CXX_STANDARD 17)
  7. # add compiler flags for neovim lsp
  8. set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
  9. set(CMAKE_CXX_STANDARD_REQUIRED ON)
  10. # Set the output directory for executables
  11. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/build)
  12. # set(DATA_BASE_DIR /usr/local/bin)
  13. set(DATA_BASE_SQLITE_DIR /usr/local/bin/database/sqlite)
  14. set(DATA_BASE_JSON_DIR /usr/local/bin/database/json)
  15. # set(DATA_BASE_SQLITE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/database/sqlite)
  16. # set(DATA_BASE_JSON_DIR ${CMAKE_CURRENT_SOURCE_DIR}/database/json)
  17. # 设置交叉编译器路径
  18. set(TOOLCHAIN_PREFIX /home/ubuntu/Desktop/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-)
  19. # 设置 C 编译器
  20. set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}gcc)
  21. # 设置 C++ 编译器
  22. set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}g++)
  23. # 指定目标系统
  24. set(CMAKE_SYSTEM_NAME Linux)
  25. set(CMAKE_SYSTEM_PROCESSOR aarch64)
  26. # define debug
  27. add_definitions(-DDEBUG)
  28. # define DATA_BASE_DIR to project source directory database
  29. add_definitions(-DDATABASE_SQLITE_DIR="${DATA_BASE_SQLITE_DIR}")
  30. add_definitions(-DDATABASE_JSON_DIR="${DATA_BASE_JSON_DIR}")
  31. # Set the project name
  32. project (embedded-gateway)
  33. add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/modules/gateway-basic)
  34. add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/modules/gateway-scheduler)
  35. add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/modules/gateway-server)
  36. ##### sub directories #####
  37. #
  38. # add_subdirectory(${PROJECT_SOURCE_DIR}/modules/gateway-collector)
  39. # add_subdirectory(${PROJECT_SOURCE_DIR}/modules/gateway-schedule)
  40. #
  41. ##### sub directories #####