CMakeLists.txt 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. set(MODULE_NAME "GuardianBase")
  2. set(MODULE_PREFIX "GUARDIAN_BASE")
  3. set(${MODULE_PREFIX}_SRCS
  4. GuardianBase.h
  5. GuardianBase.cpp
  6. )
  7. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  8. target_include_directories(${MODULE_NAME} PRIVATE
  9. ${RVC_TOOLKIT_INCLUDE_DIR}
  10. ${RVC_WINPR_INCLUDE_DIR}
  11. )
  12. target_compile_definitions(${MODULE_NAME} PUBLIC "GUARDIANBASE_EXPORTS")
  13. # 添加需要依赖的其他共享库(包括系统库)
  14. if(MSVC)
  15. install(TARGETS ${MODULE_NAME}
  16. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" COMPONENT libraries
  17. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT develops EXCLUDE_FROM_ALL
  18. LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries
  19. )
  20. else(MSVC)
  21. install(TARGETS ${MODULE_NAME}
  22. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
  23. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
  24. LIBRARY DESTINATION "${RVC_RUNTIME_PATH}"
  25. COMPONENT libraries)
  26. endif(MSVC)
  27. if (WITH_PDB_SAVE AND MSVC AND BUILD_SHARED_LIBS)
  28. install(FILES ${RVC_PDB_BINARY_DIR}/${MODULE_NAME}.pdb DESTINATION ${RVC_PDBSAVE_PATH} COMPONENT symbols)
  29. endif()
  30. set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "tools/")