summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoriarspider <iarspider@gmail.com>2021-10-04 14:53:17 +0200
committerGitHub <noreply@github.com>2021-10-04 14:53:17 +0200
commit4f1c195bf9c7647d9b9adec95c86e66c350cc0c3 (patch)
tree1963cafe71a384aa4f8421b2f9db06eb4f1a1a18
parent35dd47447381c371d669ede8377b195acda205ce (diff)
downloadspack-4f1c195bf9c7647d9b9adec95c86e66c350cc0c3.tar.gz
spack-4f1c195bf9c7647d9b9adec95c86e66c350cc0c3.tar.bz2
spack-4f1c195bf9c7647d9b9adec95c86e66c350cc0c3.tar.xz
spack-4f1c195bf9c7647d9b9adec95c86e66c350cc0c3.zip
grpc: update recipe (#25261)
1) forward `+shared` to re2 2) add `cxxstd` variant 3) use "more idiomatic" way of setting CMake options
-rw-r--r--var/spack/repos/builtin/packages/grpc/package.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/var/spack/repos/builtin/packages/grpc/package.py b/var/spack/repos/builtin/packages/grpc/package.py
index bdc62ac930..40ee6574bd 100644
--- a/var/spack/repos/builtin/packages/grpc/package.py
+++ b/var/spack/repos/builtin/packages/grpc/package.py
@@ -40,20 +40,25 @@ class Grpc(CMakePackage):
variant('codegen', default=True,
description='Builds code generation plugins for protobuf '
'compiler (protoc)')
+ variant('cxxstd',
+ default='11',
+ values=('11', '14', '17'),
+ multi=False,
+ description='Use the specified C++ standard when building.')
depends_on('protobuf')
depends_on('openssl')
depends_on('zlib')
depends_on('c-ares')
depends_on('abseil-cpp', when='@1.27:')
+ depends_on('re2+shared', when='@1.33.1:+shared')
depends_on('re2', when='@1.33.1:')
def cmake_args(self):
args = [
- '-DBUILD_SHARED_LIBS:Bool={0}'.format(
- 'ON' if '+shared' in self.spec else 'OFF'),
- '-DgRPC_BUILD_CODEGEN:Bool={0}'.format(
- 'ON' if '+codegen' in self.spec else 'OFF'),
+ define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ define_from_variant('gRPC_BUILD_CODEGEN', 'codegen'),
+ define_from_variant('CMAKE_CXX_STANDARD', 'cxxstd'),
'-DgRPC_BUILD_CSHARP_EXT:Bool=OFF',
'-DgRPC_INSTALL:Bool=ON',
# Tell grpc to skip vendoring and look for deps via find_package: