diff --git a/.gitmodules b/.gitmodules index af339b57..c9c8a385 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,3 +10,6 @@ [submodule "src/cpp/third_party/parallel-hashmap"] path = src/cpp/third_party/parallel-hashmap url = https://github.com/greg7mdp/parallel-hashmap.git +[submodule "src/cpp/third_party/aws-sdk-cpp"] + path = src/cpp/third_party/aws-sdk-cpp + url = https://github.com/aws/aws-sdk-cpp.git diff --git a/CMakeLists.txt b/CMakeLists.txt index d8111b9a..021a7c07 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -130,6 +130,21 @@ include_directories(${project_CUDA_INCLUDE_DIR}) include_directories(${project_CUDA_THIRD_PARTY_DIR}) include_directories(${TORCH_INCLUDE_DIRS}) include_directories(${project_THIRD_PARTY_DIR}/parallel-hashmap/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/aws-cpp-sdk-s3/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/aws-cpp-sdk-core/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-auth/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-cal/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-common/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-compression/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-event-stream/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-http/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-io/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-mqtt/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-s3/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-c-sdkutils/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-checksums/include/) +include_directories(${project_THIRD_PARTY_DIR}/aws-sdk-cpp/crt/aws-crt-cpp/crt/aws-lc/include/) include_directories(${project_BINDINGS}) add_library(${PROJECT_NAME} @@ -144,6 +159,8 @@ add_library(${PROJECT_NAME} target_link_libraries(${PROJECT_NAME} ${Python3_LIBRARIES}) target_link_libraries(${PROJECT_NAME} ${TORCH_LIBRARIES}) target_link_libraries(${PROJECT_NAME} spdlog) +target_link_libraries(${PROJECT_NAME} aws-cpp-sdk-core aws-cpp-sdk-s3) +target_link_libraries(${PROJECT_NAME} aws-crt-cpp) set_target_properties(${PROJECT_NAME} PROPERTIES PUBLIC_HEADER "${project_HEADERS}") set_target_properties(${PROJECT_NAME} PROPERTIES POSITION_INDEPENDENT_CODE ON) diff --git a/src/cpp/third_party/CMakeLists.txt b/src/cpp/third_party/CMakeLists.txt index 1423a979..6c65856c 100644 --- a/src/cpp/third_party/CMakeLists.txt +++ b/src/cpp/third_party/CMakeLists.txt @@ -2,7 +2,7 @@ function(initialize_submodule DIRECTORY) if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${DIRECTORY}/.git) find_package(Git QUIET REQUIRED) message(STATUS "${CMAKE_CURRENT_SOURCE_DIR}/${DIRECTORY}/.git does not exist. Initializing ${DIRECTORY} submodule ...") - execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init ${DIRECTORY} + execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive ${DIRECTORY} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} RESULT_VARIABLE GIT_EXIT_CODE) if(NOT GIT_EXIT_CODE EQUAL "0") @@ -15,7 +15,9 @@ initialize_submodule(pybind11) initialize_submodule(spdlog) initialize_submodule(googletest) initialize_submodule(parallel-hashmap) +initialize_submodule(aws-sdk-cpp) add_subdirectory(googletest EXCLUDE_FROM_ALL) add_subdirectory(pybind11 EXCLUDE_FROM_ALL) add_subdirectory(spdlog EXCLUDE_FROM_ALL) +add_subdirectory(aws-sdk-cpp EXCLUDE_FROM_ALL) diff --git a/src/cpp/third_party/aws-sdk-cpp b/src/cpp/third_party/aws-sdk-cpp new file mode 160000 index 00000000..640049ef --- /dev/null +++ b/src/cpp/third_party/aws-sdk-cpp @@ -0,0 +1 @@ +Subproject commit 640049effd5599385d35e9c6656e360fa9e2fb70