summary refs log tree commit diff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--CMakeLists.txt32
1 files changed, 32 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644

index 00000000..cebd3adf --- /dev/null +++ b/CMakeLists.txt
@@ -0,0 +1,32 @@ +cmake_minimum_required(VERSION 3.15) +project(fosscord-media) + +set(CMAKE_CXX_STANDARD 17) + +find_package(Threads REQUIRED) +find_package(Protobuf REQUIRED) +find_package(gRPC CONFIG REQUIRED) +find_package(absl REQUIRED) +find_package(nlohmann_json REQUIRED) + +file(GLOB SourceFiles ${PROJECT_SOURCE_DIR}/src/*.cpp) + +file(GLOB ProtoFiles ${PROJECT_SOURCE_DIR}/src/protodefs/*.proto) +set(PROTOBUF_INPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/src/protodefs) +set(PROTOBUF_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/src/protodefs/include) + +foreach(file ${ProtoFiles}) + execute_process(COMMAND "LD_LIBRARY_PATH=/usr/local/lib protoc --proto_path=\"${PROTOBUF_INPUT_DIRECTORY}\" + --cpp_out=\"${PROJECT_SOURCE_DIR}/src/protodefs/include\" --grpc_out=\"${PROJECT_SOURCE_DIR}/src/protodefs/include\" + --plugin=protoc-gen-grpc=/usr/local/bin/grpc_cpp_plugin protos.proto" + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}) +endforeach() + + +include_directories(${Protobuf_INCLUDE_DIRS}) + +#protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS ProtoFiles) + +add_executable(${CMAKE_PROJECT_NAME} ${SourceFiles}) + +target_link_libraries(${CMAKE_PROJECT_NAME} datachannel gRPC::grpc++ absl::base absl::synchronization absl::strings ${Protobuf_LIBRARIES} nlohmann_json::nlohmann_json) \ No newline at end of file