diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3dc5621bd..751bb65b8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -56,7 +56,7 @@ jobs: - name: Install dependencies run: | - brew install abseil cmake boost grpc protobuf xtensor + brew install cmake boost grpc protobuf xtensor brew install pkg-config ninja buf - name: Setup build directory @@ -128,7 +128,6 @@ jobs: gnupg \ gpg \ less \ - libabsl-dev \ libboost-all-dev \ libgrpc++-dev \ libprotobuf-dev \ @@ -221,7 +220,6 @@ jobs: gnupg \ gpg \ less \ - libabsl-dev \ libboost-all-dev \ libc-ares-dev \ libgrpc++-dev \ diff --git a/BUILDING.md b/BUILDING.md index 5761e57d9..aa9210aad 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -27,15 +27,15 @@ guide, before continuing further. The project depends on [CMake](https://cmake.org/) >= 3.25, [Boost](https://www.boost.org/) >= 1.74, [gRPC](https://grpc.io/) >= 1.30.2, [protobuf](https://protobuf.dev/overview/) >= 3.12.4, -[xtensor](https://github.com/xtensor-stack/xtensor) >= 0.24.3, -[abseil](https://abseil.io/) and on the transitive dependencies of +[xtensor](https://github.com/xtensor-stack/xtensor) >= 0.24.3 +and on the transitive dependencies of those projects. You will need to install these required dependencies before building the Viam C++ SDK, preferably by way of your system package manager: -- Debian: `apt-get install cmake build-essential libabsl-dev libboost-all-dev libgrpc++-dev libprotobuf-dev libxtensor-dev` -- MacOS with Homebrew: `brew install abseil cmake boost grpc protobuf xtensor` +- Debian: `apt-get install cmake build-essential libboost-all-dev libgrpc++-dev libprotobuf-dev libxtensor-dev` +- MacOS with Homebrew: `brew install cmake boost grpc protobuf xtensor` There are also several optional or conditionally required dependencies: diff --git a/CMakeLists.txt b/CMakeLists.txt index 86793541a..ff7e5eb6d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -317,17 +317,12 @@ add_custom_target( ) -set(VIAMCPPSDK_ABSL_VERSION_MINIMUM) # Someday? set(VIAMCPPSDK_BOOST_VERSION_MINIMUM 1.71) set(VIAMCPPSDK_GRPC_VERSION_MINIMUM 1.30.2) set(VIAMCPPSDK_PROTOBUF_VERSION_MINIMUM 3.12.4) set(VIAMCPPSDK_XTL_VERSION_MINIMUM 0.7.2) set(VIAMCPPSDK_XTENSOR_VERSION_MINIMUM 0.24.3) -# Time to find absl. Note that the version min value is currently empty, -# because absl doesn't use a versioning scheme that works here. -find_package(absl ${VIAMCPPSDK_ABSL_VERSION_MINIMUM} REQUIRED) - # Time to find `BOOST`. find_package(Boost ${VIAMCPPSDK_BOOST_VERSION_MINIMUM} REQUIRED COMPONENTS headers log program_options) diff --git a/conanfile.py b/conanfile.py index b4fc51bbf..6a03efe24 100644 --- a/conanfile.py +++ b/conanfile.py @@ -47,11 +47,11 @@ def requirements(self): # The SDK supports older grpc and protobuf, but these are the oldest # maintained conan packages. - self.requires('grpc/[>=1.48.4]', transitive_headers=True) - self.requires('protobuf/[>=3.17.1]', transitive_headers=True) + self.requires('grpc/[>=1.48.4]') + self.requires('protobuf/[>=3.17.1]') self.requires('xtensor/[>=0.24.3]') - self.requires('abseil/[>=20230125.3]', transitive_libs=True) + self.requires('abseil/[>=20230125.3]') def build_requirements(self): if self.options.offline_proto_generation: @@ -94,6 +94,8 @@ def package_info(self): if self.settings.os in ["Linux", "FreeBSD"]: self.cpp_info.components[component].system_libs = ["pthread"] + self.cpp_info.components["viamapi"].requires.append("abseil::absl_strings") + if self.settings.os in ["Linux", "FreeBSD"]: self.cpp_info.components["viamsdk"].system_libs.extend(["dl", "rt"]) @@ -119,8 +121,7 @@ def package_info(self): "xtensor::xtensor", "viamapi", - "viam_rust_utils", - "abseil::absl_strings", + "viam_rust_utils" ]) self.cpp_info.components["viamsdk"].frameworks = ["Security"] diff --git a/etc/docker/base-images/Dockerfile.debian.bookworm b/etc/docker/base-images/Dockerfile.debian.bookworm index c1b7170be..4d2494cbf 100644 --- a/etc/docker/base-images/Dockerfile.debian.bookworm +++ b/etc/docker/base-images/Dockerfile.debian.bookworm @@ -19,7 +19,6 @@ RUN apt-get -y --no-install-recommends install \ gnupg \ gpg \ less \ - libabsl-dev \ libboost-all-dev \ libgrpc++-dev \ libprotobuf-dev \ diff --git a/etc/docker/base-images/Dockerfile.debian.bullseye b/etc/docker/base-images/Dockerfile.debian.bullseye index 104a5f516..225588f83 100644 --- a/etc/docker/base-images/Dockerfile.debian.bullseye +++ b/etc/docker/base-images/Dockerfile.debian.bullseye @@ -18,7 +18,6 @@ RUN apt-get -y --no-install-recommends install \ gnupg \ gpg \ less \ - libabsl-dev \ libboost-all-dev \ libgrpc++-dev \ libprotobuf-dev \ diff --git a/etc/docker/base-images/Dockerfile.debian.sid b/etc/docker/base-images/Dockerfile.debian.sid index 156c1b103..e61f1a528 100644 --- a/etc/docker/base-images/Dockerfile.debian.sid +++ b/etc/docker/base-images/Dockerfile.debian.sid @@ -19,7 +19,6 @@ RUN apt-get -y --no-install-recommends install \ gnupg \ gpg \ less \ - libabsl-dev \ libboost-all-dev \ libgrpc++-dev \ libprotobuf-dev \ diff --git a/etc/docker/base-images/Dockerfile.ubuntu.jammy b/etc/docker/base-images/Dockerfile.ubuntu.jammy index 0cade8c39..fbb83930e 100644 --- a/etc/docker/base-images/Dockerfile.ubuntu.jammy +++ b/etc/docker/base-images/Dockerfile.ubuntu.jammy @@ -18,7 +18,6 @@ RUN apt-get -y --no-install-recommends install \ gnupg \ gpg \ less \ - libabsl-dev \ libboost-all-dev \ libgrpc++-dev \ libprotobuf-dev \ diff --git a/src/viam/config/viam-cpp-sdkConfig.cmake.in b/src/viam/config/viam-cpp-sdkConfig.cmake.in index 4b4a2acf7..2ee214306 100644 --- a/src/viam/config/viam-cpp-sdkConfig.cmake.in +++ b/src/viam/config/viam-cpp-sdkConfig.cmake.in @@ -2,8 +2,6 @@ include(CMakeFindDependencyMacro) -find_dependency(absl) - find_dependency(Boost @Boost_VERSION_MAJOR@.@Boost_VERSION_MINOR@ COMPONENTS headers log) if (@gRPC_FOUND@) diff --git a/src/viam/examples/dial_api_key/example_dial_api_key.cpp b/src/viam/examples/dial_api_key/example_dial_api_key.cpp index 192c733e9..4c47beffe 100644 --- a/src/viam/examples/dial_api_key/example_dial_api_key.cpp +++ b/src/viam/examples/dial_api_key/example_dial_api_key.cpp @@ -9,10 +9,6 @@ #include #include -#include -#include -#include -#include #include #include diff --git a/src/viam/examples/modules/complex/proto/buf.lock b/src/viam/examples/modules/complex/proto/buf.lock index a9e9a6e88..d71d7956b 100644 --- a/src/viam/examples/modules/complex/proto/buf.lock +++ b/src/viam/examples/modules/complex/proto/buf.lock @@ -4,5 +4,5 @@ deps: - remote: buf.build owner: googleapis repository: googleapis - commit: c0913f24652a4cfc95f77d97443a5005 - digest: shake256:0ef3248c6235d420fe61f373154adcde6b94e3297f82472b1d8d8c3747240b61b4a10405e2a6f8ac1c98816ac6e690ea7871024aa5ae0e035cd540214667ceed + commit: e93e34f48be043dab55be31b4b47f458 + digest: shake256:93dbe51c27606999eef918360df509485a4d272e79aaed6d0016940379a9b06d316fc5228b7b50cca94bb310f34c5fc5955ce7474f655f0d0a224c4121dda3c1 diff --git a/src/viam/examples/modules/simple/main.cpp b/src/viam/examples/modules/simple/main.cpp index c19904a57..8ccaf9b40 100644 --- a/src/viam/examples/modules/simple/main.cpp +++ b/src/viam/examples/modules/simple/main.cpp @@ -3,8 +3,6 @@ #include #include -#include -#include #include #include diff --git a/src/viam/examples/modules/tflite/main.cpp b/src/viam/examples/modules/tflite/main.cpp index b700353f6..44cd8e284 100644 --- a/src/viam/examples/modules/tflite/main.cpp +++ b/src/viam/examples/modules/tflite/main.cpp @@ -21,9 +21,6 @@ #include #include -#include -#include -#include #include #include diff --git a/src/viam/sdk/CMakeLists.txt b/src/viam/sdk/CMakeLists.txt index f1438fcfe..cd7992f2a 100644 --- a/src/viam/sdk/CMakeLists.txt +++ b/src/viam/sdk/CMakeLists.txt @@ -236,14 +236,13 @@ target_link_directories(viamsdk viamcppsdk_link_viam_api(viamsdk PRIVATE) target_link_libraries(viamsdk - PUBLIC ${VIAMCPPSDK_GRPCXX_LIBRARIES} - PUBLIC ${VIAMCPPSDK_GRPC_LIBRARIES} - PUBLIC ${VIAMCPPSDK_PROTOBUF_LIBRARIES} PUBLIC Boost::headers PUBLIC Boost::log PUBLIC xtensor PRIVATE ${VIAMCPPSDK_GRPCXX_REFLECTION_LIBRARIES} - PRIVATE absl::strings + PRIVATE ${VIAMCPPSDK_GRPCXX_LIBRARIES} + PRIVATE ${VIAMCPPSDK_GRPC_LIBRARIES} + PRIVATE ${VIAMCPPSDK_PROTOBUF_LIBRARIES} PRIVATE viam_rust_utils PRIVATE Threads::Threads ) diff --git a/src/viam/sdk/services/private/mlmodel.cpp b/src/viam/sdk/services/private/mlmodel.cpp index 44d4ff17f..dfc56ec40 100644 --- a/src/viam/sdk/services/private/mlmodel.cpp +++ b/src/viam/sdk/services/private/mlmodel.cpp @@ -20,7 +20,6 @@ #include #include -#include #include #include