You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

CMakeLists.txt 1.4 kB

1234567891011121314151617181920212223242526272829303132
  1. cmake_minimum_required(VERSION 3.21)
  2. project(cmake-dataflow LANGUAGES C CXX)
  3. set(CMAKE_CXX_STANDARD 17)
  4. set(CMAKE_CXX_FLAGS "-fPIC")
  5. include(DoraTargets.cmake)
  6. link_directories(${dora_link_dirs})
  7. add_executable(node_c_api node-c-api/main.cc)
  8. add_dependencies(node_c_api Dora_c)
  9. target_include_directories(node_c_api PRIVATE ${dora_c_include_dir})
  10. target_link_libraries(node_c_api dora_node_api_c)
  11. add_executable(node_rust_api node-rust-api/main.cc ${node_bridge})
  12. add_dependencies(node_rust_api Dora_cxx)
  13. target_include_directories(node_rust_api PRIVATE ${dora_cxx_include_dir})
  14. target_link_libraries(node_rust_api dora_node_api_cxx)
  15. add_library(operator_c_api SHARED operator-c-api/operator.cc)
  16. add_dependencies(operator_c_api Dora_c)
  17. target_include_directories(operator_c_api PRIVATE ${dora_c_include_dir})
  18. target_link_libraries(operator_c_api dora_operator_api_c)
  19. add_library(operator_rust_api SHARED operator-rust-api/operator.cc ${operator_bridge})
  20. add_dependencies(operator_rust_api Dora_cxx)
  21. target_include_directories(operator_rust_api PRIVATE ${dora_cxx_include_dir} ${dora_c_include_dir} ${CMAKE_CURRENT_SOURCE_DIR}/operator-rust-api)
  22. target_link_libraries(operator_rust_api dora_operator_api_cxx)
  23. install(TARGETS node_c_api node_rust_api DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/bin)
  24. install(TARGETS operator_c_api operator_rust_api DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/lib)