diff --git a/.gitmodules b/.gitmodules index da689926..a6932407 100644 --- a/.gitmodules +++ b/.gitmodules @@ -25,3 +25,6 @@ [submodule "external/imgui-backend-qt"] path = external/imgui-backend-qt url = ../imgui-backend-qt +[submodule "external/aws-sdk-cpp"] + path = external/aws-sdk-cpp + url = https://github.com/aws/aws-sdk-cpp.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 19eba5dc..63a387b1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,8 +12,7 @@ set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH}) include(${PROJECT_SOURCE_DIR}/external/cmake-conan/conan.cmake) -conan_cmake_configure(REQUIRES aws-sdk-cpp/1.9.234 - boost/1.81.0 +conan_cmake_configure(REQUIRES boost/1.81.0 cpr/1.9.3 freetype/2.12.1 geographiclib/1.52 diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt index c1f00736..873203d6 100644 --- a/external/CMakeLists.txt +++ b/external/CMakeLists.txt @@ -4,12 +4,14 @@ set(PROJECT_NAME scwx-external) set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS + aws-sdk-cpp.cmake freetype-gl.cmake hsluv-c.cmake imgui.cmake mapbox-gl-native.cmake stb.cmake) +include(aws-sdk-cpp.cmake) include(freetype-gl.cmake) include(hsluv-c.cmake) include(imgui.cmake) diff --git a/external/aws-sdk-cpp b/external/aws-sdk-cpp new file mode 160000 index 00000000..e045a9e3 --- /dev/null +++ b/external/aws-sdk-cpp @@ -0,0 +1 @@ +Subproject commit e045a9e347ab8b8d0138f80831dbcb57820f3b0e diff --git a/external/aws-sdk-cpp.cmake b/external/aws-sdk-cpp.cmake new file mode 100644 index 00000000..3bbb73ac --- /dev/null +++ b/external/aws-sdk-cpp.cmake @@ -0,0 +1,33 @@ +cmake_minimum_required(VERSION 3.20) +set(PROJECT_NAME scwx-aws-sdk-cpp) + +set(BUILD_ONLY "s3") +set(BUILD_SHARED_LIBS OFF) +set(CPP_STANDARD 17) +set(ENABLE_TESTING OFF) +set(ENABLE_UNITY_BUILD ON) +set(MINIMIZE_SIZE OFF) + +if(NOT CMAKE_EXE_LINKER_FLAGS_DEBUGOPT) + set(CMAKE_EXE_LINKER_FLAGS_DEBUGOPT "") +endif() + +add_subdirectory(aws-sdk-cpp) + +set_target_properties(uninstall PROPERTIES EXCLUDE_FROM_ALL True) + +set_target_properties(aws-c-auth PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-cal PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-common PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-compression PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-event-stream PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-checksums PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-http PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-io PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-mqtt PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-cpp-sdk-core PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-cpp-sdk-s3 PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-crt-cpp PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-s3 PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(aws-c-sdkutils PROPERTIES FOLDER aws-sdk-cpp) +set_target_properties(uninstall PROPERTIES FOLDER aws-sdk-cpp/exclude) diff --git a/setup-debug.bat b/setup-debug.bat index 512adf0e..2ed9af1a 100644 --- a/setup-debug.bat +++ b/setup-debug.bat @@ -1,5 +1,5 @@ call tools\setup-common.bat mkdir build-debug cd build-debug -cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CONFIGURATION_TYPES=Debug -DCMAKE_PREFIX_PATH=C:\Qt\6.4.2\msvc2019_64 .. +cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CONFIGURATION_TYPES=Debug -DCMAKE_PREFIX_PATH=C:/Qt/6.4.2/msvc2019_64 .. pause diff --git a/setup-release.bat b/setup-release.bat index 2e2610aa..eca4e02a 100644 --- a/setup-release.bat +++ b/setup-release.bat @@ -1,5 +1,5 @@ call tools\setup-common.bat mkdir build-release cd build-release -cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CONFIGURATION_TYPES=Release -DCMAKE_PREFIX_PATH=C:\Qt\6.4.2\msvc2019_64 .. +cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CONFIGURATION_TYPES=Release -DCMAKE_PREFIX_PATH=C:/Qt/6.4.2/msvc2019_64 .. pause diff --git a/wxdata/wxdata.cmake b/wxdata/wxdata.cmake index cfad9421..a6471187 100644 --- a/wxdata/wxdata.cmake +++ b/wxdata/wxdata.cmake @@ -2,7 +2,6 @@ cmake_minimum_required(VERSION 3.20) project(scwx-data) -find_package(AWSSDK) find_package(Boost) find_package(cpr) find_package(LibXml2) @@ -234,7 +233,8 @@ target_compile_options(wxdata PRIVATE $<$>:-Wall -Wextra -Wpedantic -Werror> ) -target_link_libraries(wxdata PUBLIC AWS::s3 +target_link_libraries(wxdata PUBLIC aws-cpp-sdk-core + aws-cpp-sdk-s3 cpr::cpr LibXml2::LibXml2 spdlog::spdlog)