trilinos: version 12 cxxstd flags (#28582)

* trilinos: version 12 requires cxxstd=11

* trilinos: use cmake version 3.21 or old when trilinos version 12

* conflict cxxstd=17 and cmake@3.2.[01]

* trilinos: version 12 requires cxxstd=11.

* Trilinos_CXX11_FLAGS is set to ' ' to avoid inject C++11 flag.

* set Trilinos_CXX11_FLAGS only version 12 or older.
This commit is contained in:
Toyohisa Kameyama 2022-01-28 17:29:18 +09:00 committed by GitHub
parent 2fd26be988
commit 693f0958b5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -261,6 +261,7 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage):
)
conflicts('+adios2', when='@:12.14.1')
conflicts('cxxstd=11', when='@master:')
conflicts('cxxstd=17', when='@:12')
conflicts('cxxstd=11', when='+wrapper ^cuda@6.5.14')
conflicts('cxxstd=14', when='+wrapper ^cuda@6.5.14:8.0.61')
conflicts('cxxstd=17', when='+wrapper ^cuda@6.5.14:10.2.89')
@ -523,6 +524,10 @@ def define_enable(suffix, value=None):
define_from_variant('Amesos2_ENABLE_LAPACK', 'amesos2'),
])
if spec.version < Version('13'):
# Suppress TriBITS flags in favor of CMake's built-in flags
options.append(define('Trilinos_CXX11_FLAGS', ' '))
if '+dtk' in spec:
options.extend([
define('Trilinos_EXTRA_REPOSITORIES', 'DataTransferKit'),