diff --git a/nix/dev-shell.nix b/nix/dev-shell.nix --- a/nix/dev-shell.nix +++ b/nix/dev-shell.nix @@ -3,16 +3,20 @@ , lib , amqp-cpp , arcanist +, aws-sdk-cpp , boost , cargo , cmake , cmake-format , cocoapods +, corrosion , cryptopp , darwin +, double-conversion , fbjni , folly , fmt +, glog , grpc , libiconv , libuv @@ -67,6 +71,10 @@ # protobuf exposes both a library and a command # thus should appear in both inputs protobuf_3_15_cmake + aws-sdk-cpp # tunnelbroker + corrosion # tunnelbroker + double-conversion # tunnelbroker + glog # tunnelbroker fbjni # android builds folly # cpp tools fmt # needed for folly @@ -102,6 +110,10 @@ export PATH=/usr/bin:$PATH fi + # TODO: Fix aws sdk cmake installation path logic upstream + export AWSSDK_ROOT_DIR=${lib.getDev aws-sdk-cpp} + export AWSSDK_CORE_HEADER_FILE=${lib.getDev aws-sdk-cpp}/include/aws/core/Aws.h + echo "Welcome to Comm dev environment! :)" ''; } diff --git a/services/tunnelbroker/CMakeLists.txt b/services/tunnelbroker/CMakeLists.txt --- a/services/tunnelbroker/CMakeLists.txt +++ b/services/tunnelbroker/CMakeLists.txt @@ -12,9 +12,9 @@ find_package(PkgConfig REQUIRED) -# FIND LIBS -include(./cmake-components/grpc.cmake) -include(./cmake-components/folly.cmake) +find_package(double-conversion REQUIRED) +find_package(Folly REQUIRED) +find_package(gRPC REQUIRED) # Find AMQP-CPP installation find_package(amqpcpp CONFIG REQUIRED) @@ -38,7 +38,7 @@ set(RUST_HEADERS_INCLUDE_DIR "rust-notifications/extern") set(RUST_LIBS "rust-notifications") -add_subdirectory(./lib/glog) +find_package(glog) # Generated sources get_filename_component(proto "protos/tunnelbroker.proto" ABSOLUTE) @@ -78,8 +78,6 @@ ./src/Tools ./src/Amqp ${GENERATED_BASE_DIR} - ${FOLLY_INCLUDES} - ./lib/double-conversion ${Boost_INCLUDE_DIR} ${CRYPTOPP_INCLUDE_DIRS} ${LIBUV_INCLUDE_DIRS} @@ -97,9 +95,8 @@ set( LIBS - ${GRPC_LIBS} - ${_PROTOBUF_LIBPROTOBUF} - ${_REFLECTION} + gRPC::grpc++_reflection + gRPC::grpc++ ${AWSSDK_LINK_LIBRARIES} ${CRYPTOPP_LIBRARIES} ${LIBUV_LIBRARIES} @@ -108,6 +105,8 @@ amqpcpp OpenSSL::SSL glog::glog + double-conversion::double-conversion + Folly::folly ) # SERVER