File tree Expand file tree Collapse file tree 33 files changed +316
-4
lines changed Expand file tree Collapse file tree 33 files changed +316
-4
lines changed Original file line number Diff line number Diff line change @@ -73,15 +73,26 @@ else ()
73
73
# Options definition
74
74
option (BUILD_TESTING "If enabled, the SDK will include tests in the build" OFF )
75
75
76
+ # TODO: redefine below as option with proper defaults per platform
77
+ if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
78
+ set (ENABLE_COMMONCRYPTO_ENCRYPTION ON )
79
+ elseif (CMAKE_SYSTEM_NAME "Windows" )
80
+ set (ENABLE_BCRYPT_ENCRYPTION ON )
81
+ elseif (CMAKE_SYSTEM_NAME "Linux" )
82
+ set (ENABLE_OPENSSL_ENCRYPTION ON )
83
+ else ()
84
+ message (FATAL_ERROR "Platform not yet supported by new build scripts" )
85
+ endif ()
86
+
76
87
# -- Dependencies --
77
88
add_subdirectory (dependencies)
78
89
79
90
# -- main build targets --
80
91
add_subdirectory (src)
81
92
93
+ # -- Tests and packaging if running this as top project --
82
94
if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
83
- # -- Test --
84
- # -- Packaging --
95
+ add_subdirectory (tests)
85
96
add_subdirectory (packaging)
86
97
endif ()
87
98
message (WARNING "The dependencies are currently checked only for a basic Linux build, new ones need to be added for other platforms yet" )
Original file line number Diff line number Diff line change 1
1
# This is a temporary mock file to be able to test our current build setup.
2
- # The file will later be read from CRTpp installation
3
- message (WARNING "aws-crt-cpp package is mocked for testing of experimental feature branch. Remove this file when CRT starts providing it." )
2
+ # The file will later be read from aws-crt-cpp installation
3
+ include_guard ()
4
+ message (WARNING "aws-crt-cpp package is mocked for testing of experimental feature branch. Remove this file when CRT starts providing it." )
5
+ # Setting include path to the submodule temporarily to unblock testing
6
+ # To make it build the crt submodule needs to be in-source build before calling this so generated files are created.
7
+ # Removing this work around soon, working in parallel in making aws-crt-cpp consumable by normal means
8
+ set (aws-crt-cpp_INCLUDE_DIRS
9
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/include
10
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-c-common/include
11
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-c-io/include
12
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-c-mqtt/include
13
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-c-cal/include
14
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-c-auth/include
15
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-c-http/include
16
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-c-event-stream/include
17
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-checksums/include
18
+ ${CMAKE_CURRENT_LIST_DIR} /../crt/aws-crt-cpp/crt/aws-c-common/generated /include
19
+ PARENT_SCOPE
20
+ )
21
+
Original file line number Diff line number Diff line change 1
1
if (NOT LEGACY_BUILD)
2
2
message (WARNING "Building core with new cmake scripts not yet implemented" )
3
+ add_library (aws-sdk-cpp-core)
4
+ add_library (aws-sdk-cpp::core ALIAS aws-sdk-cpp-core)
5
+ target_include_directories (
6
+ aws-sdk-cpp-core
7
+ PRIVATE ${aws-crt-cpp_INCLUDE_DIRS}
8
+ )
9
+ add_subdirectory (include )
10
+ add_subdirectory (source )
3
11
else ()
4
12
add_project(aws-cpp-sdk-core "Core http and utility library for the AWS C++ SDK" )
5
13
Original file line number Diff line number Diff line change
1
+ target_include_directories (
2
+ aws-sdk-cpp-core
3
+ PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
4
+ )
Original file line number Diff line number Diff line change
1
+ add_subdirectory (auth)
2
+ add_subdirectory (client)
3
+ add_subdirectory (config)
4
+ add_subdirectory (http)
5
+ add_subdirectory (internal )
6
+ add_subdirectory (monitoring)
7
+ add_subdirectory (net)
8
+ add_subdirectory (platform)
9
+ add_subdirectory (utils)
10
+
11
+ target_sources (aws-sdk-cpp-core
12
+ PRIVATE
13
+ ${CMAKE_CURRENT_SOURCE_DIR} /Version .cpp
14
+ ${CMAKE_CURRENT_SOURCE_DIR} /AmazonSerializableWebServiceRequest.cpp
15
+ ${CMAKE_CURRENT_SOURCE_DIR} /AmazonStreamingWebServiceRequest.cpp
16
+ ${CMAKE_CURRENT_SOURCE_DIR} /AmazonWebServiceRequest.cpp
17
+ ${CMAKE_CURRENT_SOURCE_DIR} /Aws.cpp
18
+ ${CMAKE_CURRENT_SOURCE_DIR} /Globals.cpp
19
+ ${CMAKE_CURRENT_SOURCE_DIR} /Region.cpp
20
+ ${CMAKE_CURRENT_SOURCE_DIR} /Version .cpp
21
+ )
22
+
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSAuthSigner.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSAuthSignerProvider.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSCredentialsProvider.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSCredentialsProviderChain.cpp
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /SSOCredentialsProvider.cpp
8
+ ${CMAKE_CURRENT_SOURCE_DIR} /STSCredentialsProvider.cpp
9
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /AdaptiveRetryStrategy.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /AsyncCallerContext.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSClient.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSErrorMarshaller.cpp
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /ClientConfiguration.cpp
8
+ ${CMAKE_CURRENT_SOURCE_DIR} /CoreErrors.cpp
9
+ ${CMAKE_CURRENT_SOURCE_DIR} /DefaultRetryStrategy.cpp
10
+ ${CMAKE_CURRENT_SOURCE_DIR} /RetryStrategy.cpp
11
+ ${CMAKE_CURRENT_SOURCE_DIR} /SpecifiedRetryableErrorsRetryStrategy.cpp
12
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /defaults/ClientConfigurationDefaults.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSProfileConfigLoader.cpp
5
+ )
Original file line number Diff line number Diff line change
1
+ message (FATAL_ERROR "Skip this directory when building with new build system" )
Original file line number Diff line number Diff line change
1
+ add_subdirectory (standard)
2
+ if (NOT ${USE_CURL} )
3
+ add_subdirectory (windows)
4
+ else ()
5
+ add_subdirectory (curl)
6
+ endif ()
7
+ target_sources (aws-sdk-cpp-core
8
+ PRIVATE
9
+ ${CMAKE_CURRENT_SOURCE_DIR} /HttpClient.cpp
10
+ ${CMAKE_CURRENT_SOURCE_DIR} /HttpClientFactory.cpp
11
+ ${CMAKE_CURRENT_SOURCE_DIR} /HttpRequest.cpp
12
+ ${CMAKE_CURRENT_SOURCE_DIR} /HttpTypes.cpp
13
+ ${CMAKE_CURRENT_SOURCE_DIR} /Scheme.cpp
14
+ ${CMAKE_CURRENT_SOURCE_DIR} /URI.cpp
15
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /CurlHandleContainer.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /CurlHttpClient.cpp
5
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /StandardHttpRequest.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /StandardHttpResponse.cpp
5
+ )
Original file line number Diff line number Diff line change
1
+ message (FATAL_ERROR "Windows build not yet supported in new build system" )
2
+ target_sources (aws-sdk-cpp-core
3
+ PRIVATE
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /IXmlHttpRequest2HttpClient.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /WinConnectionPoolMgr.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /WinHttpConnectionPoolMgr.cpp
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /WinHttpSyncHttpClient.cpp
8
+ ${CMAKE_CURRENT_SOURCE_DIR} /WinINetConnectionPoolMgr.cpp
9
+ ${CMAKE_CURRENT_SOURCE_DIR} /WinINetSyncHttpClient.cpp
10
+ ${CMAKE_CURRENT_SOURCE_DIR} /WinSyncHttpClient.cpp
11
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSHttpResourceClient.cpp
4
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /DefaultMonitoring.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /HttpClientMetrics.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /MonitoringManager.cpp
6
+ )
Original file line number Diff line number Diff line change
1
+ message (WARNING "aws-sdk-cpp-core net needs refactor on platform dependant codebase" )
2
+ if (CMAKE_SYSTEM_NAME STREQUAL "Windows" )
3
+ target_sources (aws-sdk-cpp-core
4
+ PRIVATE
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /windows/Net.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /windows/SimpleUDP.cpp
7
+ )
8
+ elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux" )
9
+ target_sources (aws-sdk-cpp-core
10
+ PRIVATE
11
+ ${CMAKE_CURRENT_SOURCE_DIR} /linux-shared/Net.cpp
12
+ ${CMAKE_CURRENT_SOURCE_DIR} /linux-shared/SimpleUDP.cpp
13
+ )
14
+ else ()
15
+ target_sources (aws-sdk-cpp-core
16
+ PRIVATE
17
+ ${CMAKE_CURRENT_SOURCE_DIR} /Net.cpp
18
+ ${CMAKE_CURRENT_SOURCE_DIR} /SimpleUDP.cpp
19
+ )
20
+ endif ()
21
+
Original file line number Diff line number Diff line change
1
+ message (WARNING "aws-sdk-cpp-core platform needs refactor on platform dependant codebase" )
2
+ if (CMAKE_SYSTEM_NAME STREQUAL "Windows" )
3
+ add_subdirectory (windows)
4
+ elseif (CMAKE_SYSTEM_NAME STREQUAL "Android" )
5
+ add_subdirectory (android)
6
+ else ()
7
+ add_subdirectory (linux-shared)
8
+ endif ()
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /Environment .cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /FileSystem.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /LogcatLogSystem.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /OSVersionInfo.cpp
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /Platform.cpp
8
+ ${CMAKE_CURRENT_SOURCE_DIR} /Security.cpp
9
+ ${CMAKE_CURRENT_SOURCE_DIR} /Time.cpp
10
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /Environment .cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /FileSystem.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /OSVersionInfo.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /Security.cpp
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /Time.cpp
8
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /Environment .cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /FileSystem.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /OSVersionInfo.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /Security.cpp
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /Time.cpp
8
+ )
Original file line number Diff line number Diff line change
1
+ add_subdirectory (base64)
2
+ add_subdirectory (crypto)
3
+ add_subdirectory (event)
4
+ add_subdirectory (json)
5
+ add_subdirectory (logging)
6
+ add_subdirectory (memory)
7
+ add_subdirectory (stream)
8
+ add_subdirectory (threading)
9
+ add_subdirectory (xml)
10
+
11
+ target_sources (aws-sdk-cpp-core
12
+ PRIVATE
13
+ ${CMAKE_CURRENT_SOURCE_DIR} /DateTimeCommon.cpp
14
+ ${CMAKE_CURRENT_SOURCE_DIR} /Directory .cpp
15
+ ${CMAKE_CURRENT_SOURCE_DIR} /DNS.cpp
16
+ ${CMAKE_CURRENT_SOURCE_DIR} /Document.cpp
17
+ ${CMAKE_CURRENT_SOURCE_DIR} /EnumParseOverflowContainer.cpp
18
+ ${CMAKE_CURRENT_SOURCE_DIR} /FileSystemUtils.cpp
19
+ ${CMAKE_CURRENT_SOURCE_DIR} /GetTheLights.cpp
20
+ ${CMAKE_CURRENT_SOURCE_DIR} /HashingUtils.cpp
21
+ ${CMAKE_CURRENT_SOURCE_DIR} /StringUtils.cpp
22
+ ${CMAKE_CURRENT_SOURCE_DIR} /TempFile.cpp
23
+ ${CMAKE_CURRENT_SOURCE_DIR} /UUID.cpp
24
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /Base64.cpp
4
+ )
Original file line number Diff line number Diff line change
1
+ message (WARNING "not complete implementation yet" )
2
+ if (USE_OPENSSL)
3
+ add_subdirectory (openssl)
4
+ endif ()
5
+ if (USE_BCRYPT)
6
+
7
+ endif ()
8
+ if (ENABLE_BCRYPT_ENCRYPTION)
9
+ add_subdirectory (bcrypt)
10
+ elseif (ENABLE_OPENSSL_ENCRYPTION)
11
+ add_subdirectory (openssl)
12
+ elseif (ENABLE_COMMONCRYPTO_ENCRYPTION)
13
+ add_subdirectory (commoncrypto)
14
+ else ()
15
+ message (FATAL_ERROR "No crypto library enabled" )
16
+ endif ()
17
+
18
+ target_sources (aws-sdk-cpp-core
19
+ PRIVATE
20
+ ${CMAKE_CURRENT_SOURCE_DIR} /Cipher.cpp
21
+ ${CMAKE_CURRENT_SOURCE_DIR} /ContentCryptoMaterial.cpp
22
+ ${CMAKE_CURRENT_SOURCE_DIR} /ContentCryptoScheme.cpp
23
+ ${CMAKE_CURRENT_SOURCE_DIR} /CRC32.cpp
24
+ ${CMAKE_CURRENT_SOURCE_DIR} /CryptoBuf.cpp
25
+ ${CMAKE_CURRENT_SOURCE_DIR} /CryptoStream.cpp
26
+ ${CMAKE_CURRENT_SOURCE_DIR} /EncryptionMaterials.cpp
27
+ ${CMAKE_CURRENT_SOURCE_DIR} /KeyWrapAlgorithm.cpp
28
+ ${CMAKE_CURRENT_SOURCE_DIR} /MD5.cpp
29
+ ${CMAKE_CURRENT_SOURCE_DIR} /Sha1.cpp
30
+ ${CMAKE_CURRENT_SOURCE_DIR} /Sha256.cpp
31
+ ${CMAKE_CURRENT_SOURCE_DIR} /Sha256HMAC.cpp
32
+ ${CMAKE_CURRENT_SOURCE_DIR} /factory/Factories.cpp
33
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /CryptoImpl.cpp
4
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /CryptoImpl.cpp
4
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /CryptoImpl.cpp
4
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /EventDecoderStream.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /EventEncoderStream.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /EventHeader.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /EventMessage.cpp
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /EventStreamBuf.cpp
8
+ ${CMAKE_CURRENT_SOURCE_DIR} /EventStreamDecoder.cpp
9
+ ${CMAKE_CURRENT_SOURCE_DIR} /EventStreamEncoder.cpp
10
+ ${CMAKE_CURRENT_SOURCE_DIR} /EventStreamErrors.cpp
11
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /JsonSerializer.cpp
4
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSLogging.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /ConsoleLogSystem.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /CRTLogging.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /CRTLogSystem.cpp
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /DefaultLogSystem.cpp
8
+ ${CMAKE_CURRENT_SOURCE_DIR} /FormattedLogSystem.cpp
9
+ ${CMAKE_CURRENT_SOURCE_DIR} /LogLevel.cpp
10
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /stl/SimpleStringStream.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /AWSMemory.cpp
5
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /ConcurrentStreamBuf.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /PreallocatedStreamBuf.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /ResponseStream.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /SimpleStreamBuf.cpp
7
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /Executor.cpp
4
+ ${CMAKE_CURRENT_SOURCE_DIR} /ReaderWriterLock.cpp
5
+ ${CMAKE_CURRENT_SOURCE_DIR} /Semaphore.cpp
6
+ ${CMAKE_CURRENT_SOURCE_DIR} /ThreadTask.cpp
7
+ )
Original file line number Diff line number Diff line change
1
+ target_sources (aws-sdk-cpp-core
2
+ PRIVATE
3
+ ${CMAKE_CURRENT_SOURCE_DIR} /XmlSerializer.cpp
4
+ )
You can’t perform that action at this time.
0 commit comments