Merge "build: fix static aws-cpp-sdk" into main
This commit is contained in:
commit
260db1ea64
|
@ -203,7 +203,7 @@ openssl = dependency('libcrypto', 'openssl', required : true)
|
||||||
deps += openssl
|
deps += openssl
|
||||||
|
|
||||||
aws_sdk = dependency('aws-cpp-sdk-core', required : false)
|
aws_sdk = dependency('aws-cpp-sdk-core', required : false)
|
||||||
aws_sdk_transfer = dependency('aws-cpp-sdk-transfer', required : aws_sdk.found())
|
aws_sdk_transfer = dependency('aws-cpp-sdk-transfer', required : aws_sdk.found(), fallback : ['aws_sdk', 'aws_cpp_sdk_transfer_dep'])
|
||||||
if aws_sdk.found()
|
if aws_sdk.found()
|
||||||
# The AWS pkg-config adds -std=c++11.
|
# The AWS pkg-config adds -std=c++11.
|
||||||
# https://github.com/aws/aws-sdk-cpp/issues/2673
|
# https://github.com/aws/aws-sdk-cpp/issues/2673
|
||||||
|
@ -230,7 +230,7 @@ if aws_sdk.found()
|
||||||
)
|
)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
aws_s3 = dependency('aws-cpp-sdk-s3', required : false)
|
aws_s3 = dependency('aws-cpp-sdk-s3', required : aws_sdk.found(), fallback : ['aws_sdk', 'aws_cpp_sdk_s3_dep'])
|
||||||
if aws_s3.found()
|
if aws_s3.found()
|
||||||
# The AWS pkg-config adds -std=c++11.
|
# The AWS pkg-config adds -std=c++11.
|
||||||
# https://github.com/aws/aws-sdk-cpp/issues/2673
|
# https://github.com/aws/aws-sdk-cpp/issues/2673
|
||||||
|
|
|
@ -144,6 +144,7 @@ let
|
||||||
./meson.options
|
./meson.options
|
||||||
./meson
|
./meson
|
||||||
./scripts/meson.build
|
./scripts/meson.build
|
||||||
|
./subprojects
|
||||||
]);
|
]);
|
||||||
|
|
||||||
functionalTestFiles = fileset.unions [
|
functionalTestFiles = fileset.unions [
|
||||||
|
@ -259,7 +260,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
++ lib.optional internalApiDocs rapidcheck
|
++ lib.optional internalApiDocs rapidcheck
|
||||||
++ lib.optional hostPlatform.isx86_64 libcpuid
|
++ lib.optional hostPlatform.isx86_64 libcpuid
|
||||||
# There have been issues building these dependencies
|
# There have been issues building these dependencies
|
||||||
++ lib.optional (hostPlatform == buildPlatform) aws-sdk-cpp-nix
|
++ lib.optional (hostPlatform.canExecute buildPlatform) aws-sdk-cpp-nix
|
||||||
++ lib.optionals (finalAttrs.dontBuild) maybePropagatedInputs;
|
++ lib.optionals (finalAttrs.dontBuild) maybePropagatedInputs;
|
||||||
|
|
||||||
checkInputs = [
|
checkInputs = [
|
||||||
|
|
15
subprojects/aws_sdk/meson.build
Normal file
15
subprojects/aws_sdk/meson.build
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
project('aws-sdk', 'cpp')
|
||||||
|
|
||||||
|
# dependency() uses Meson's internal logic and generally relies on pkg-config or CMake,
|
||||||
|
# but Meson can also use the project's compiler to find a library in the compiler's search
|
||||||
|
# path. Not in the dependency() function, though. You have to use compiler.find_library(),
|
||||||
|
# and Meson doesn't have a way to tell dependency() to simply fallback to find_library().
|
||||||
|
# It *does* however allow dependency() to fallback to a variable defined in a subproject,
|
||||||
|
# Hence: this file.
|
||||||
|
|
||||||
|
# For some reason, these specific components of the AWS C++ SDK aren't found by CMake when
|
||||||
|
# compiling statically, and `pkgsStatic.aws-sdk-cpp` doesn't even have a pkg-config at all.
|
||||||
|
|
||||||
|
cxx = meson.get_compiler('cpp')
|
||||||
|
aws_cpp_sdk_transfer_dep = cxx.find_library('aws-cpp-sdk-transfer')
|
||||||
|
aws_cpp_sdk_s3_dep = cxx.find_library('aws-cpp-sdk-s3')
|
Loading…
Reference in a new issue