CMakeLists.txt 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. AUX_SOURCE_DIRECTORY(. SRC_LIST)
  2. AUX_SOURCE_DIRECTORY(. main)
  3. list(REMOVE_ITEM SRC_LIST "./cron_test.cc")
  4. include(../utils.cmake)
  5. INCLUDE_DIRECTORIES (
  6. .
  7. ../daemons
  8. ../libs/stat
  9. ../libs/common
  10. ../libs/common/log
  11. ../libs/common/config
  12. ../libs/common/daemon
  13. ../libs/common/socket
  14. ../libs/common/listener
  15. ../libs/common/task
  16. ../core
  17. ../core/buffer
  18. ../core/mem
  19. ../connector
  20. ../libs/rocksdb/include/
  21. ../libs/log4cplus/include/
  22. ../libs/zlib/include64
  23. ../libs/yaml-cpp/include/
  24. ../libs/mysql/include/
  25. ../libs/hsql/include
  26. ../libs/croncpp/include
  27. ../libs/mxml/include)
  28. LINK_DIRECTORIES (
  29. ${PROJECT_SOURCE_DIR}/src/libs/mysql/libs
  30. ${PROJECT_SOURCE_DIR}/src/libs/zlib/lib
  31. ${PROJECT_SOURCE_DIR}/src/libs/log4cplus/libs
  32. ${PROJECT_SOURCE_DIR}/src/libs/yaml-cpp/libs
  33. ${PROJECT_SOURCE_DIR}/build/src/libs/common
  34. ${PROJECT_SOURCE_DIR}/build/src/core/lib
  35. ${PROJECT_SOURCE_DIR}/build/src/daemons
  36. ${PROJECT_SOURCE_DIR}/build/src/libs/stat
  37. ${PROJECT_SOURCE_DIR}/src/libs/hsql/libs
  38. ${PROJECT_SOURCE_DIR}/src/libs/mxml/libs
  39. ${PROJECT_SOURCE_DIR}/src/libs/google_test/lib
  40. )
  41. LINK_LIBRARIES(liblog4cplus.a)
  42. LINK_LIBRARIES(libsqlparser.a)
  43. LINK_LIBRARIES(libyaml-cpp.a)
  44. LINK_LIBRARIES(libz64.a)
  45. LINK_LIBRARIES(pthread)
  46. LINK_LIBRARIES(nsl)
  47. LINK_LIBRARIES(stdc++)
  48. LINK_LIBRARIES(dl)
  49. LINK_LIBRARIES(z)
  50. LINK_LIBRARIES(libcore.a)
  51. LINK_LIBRARIES(libcommon.a)
  52. LINK_LIBRARIES(libdaemons.a)
  53. LINK_LIBRARIES(libstat.a)
  54. LINK_LIBRARIES(libmysqlclient.a)
  55. ADD_DEFINITIONS ("-g -fPIC -fpermissive -std=gnu++11 -DOMN_PLATFORM_UNIX -Wl,--no-undefined -Xlinker -zmuldefs")
  56. ADD_DEFINITIONS(-Wno-builtin-macro-redefined)
  57. ADD_EXECUTABLE (data-lifecycle-manager ${SRC_LIST} ../connector/database_connection.cc)
  58. TARGET_LINK_LIBRARIES(data-lifecycle-manager libcore.a libdaemons.a libstat.a libcommon.a liblog4cplus.a libyaml-cpp.a libz64.a libsqlparser.a libmysqlclient.a libmxml.a)
  59. redefine_file_macro(data-lifecycle-manager)
  60. if(jdtestOpen)
  61. cmake_minimum_required(VERSION 2.8.8)
  62. if (POLICY CMP0048)
  63. cmake_policy(SET CMP0048 NEW)
  64. endif (POLICY CMP0048)
  65. if (CMAKE_VERSION VERSION_LESS "3.1")
  66. add_definitions(-std=c++11)
  67. else()
  68. set(CMAKE_CXX_STANDARD 11)
  69. set(CMAKE_CXX_STANDARD_REQUIRED ON)
  70. if(NOT CYGWIN)
  71. set(CMAKE_CXX_EXTENSIONS OFF)
  72. endif()
  73. endif()
  74. AUX_SOURCE_DIRECTORY(. main)
  75. list(REMOVE_ITEM main "./main.cc")
  76. list(REMOVE_ITEM main "./cron_test.cc")
  77. AUX_SOURCE_DIRECTORY(./unittest jdtestFiles)
  78. ADD_EXECUTABLE(gtest_data_lifecycle ${main} ${jdtestFiles} ../connector/database_connection.cc)
  79. target_include_directories(gtest_data_lifecycle PUBLIC
  80. .
  81. ../daemons
  82. ../libs/stat
  83. ../libs/common
  84. ../libs/common/log
  85. ../libs/common/config
  86. ../libs/common/daemon
  87. ../libs/common/socket
  88. ../libs/common/listener
  89. ../libs/common/task
  90. ../core
  91. ../core/buffer
  92. ../core/mem
  93. ../connector
  94. ../libs/rocksdb/include/
  95. ../libs/log4cplus/include/
  96. ../libs/zlib/include64
  97. ../libs/yaml-cpp/include/
  98. ../libs/mysql/include/
  99. ../libs/hsql/include
  100. ../libs/croncpp/include
  101. ../libs/mxml/include
  102. ../libs/google_test/include
  103. )
  104. target_link_libraries(gtest_data_lifecycle core daemons stat common gtest_main gmock gtest dl pthread log4cplus sqlparser yaml-cpp z64 mysqlclient mxml)
  105. redefine_file_macro(gtest_data_lifecycle)
  106. SET_TARGET_PROPERTIES(gtest_data_lifecycle PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./bin")
  107. install(TARGETS gtest_data_lifecycle RUNTIME DESTINATION bin)
  108. endif()