VecGeom: add versions and cxxstd variant (#9303)

This commit is contained in:
Patrick Gartung 2018-10-04 18:11:28 -05:00 committed by Peter Scheibel
parent 9b5f3d77f3
commit 5a20217a54

View File

@ -34,8 +34,21 @@ class Vecgeom(CMakePackage):
homepage = "https://gitlab.cern.ch/VecGeom/VecGeom"
url = "https://gitlab.cern.ch/api/v4/projects/VecGeom%2FVecGeom/repository/archive.tar.gz?sha=v0.3.rc"
version('01.00.00', git='https://gitlab.cern.ch/VecGeom/VecGeom.git', tag='v01.00.00')
version('00.05.00', git='https://gitlab.cern.ch/VecGeom/VecGeom.git', tag='v00.05.00', preferred=True)
version('0.3.rc', 'c1f5d620f655f3c0610a44e7735203b5')
variant('cxxstd',
default='17',
values=('14', '17'),
multi=False,
description='Use the specified C++ standard when building.')
variant('vector',
default='native',
values=('sse3', 'sse4.2', 'native'),
multi=False,
description='Specify the instruction set for vectorization.')
depends_on('cmake@3.5:', type='build')
def cmake_args(self):
@ -43,12 +56,16 @@ def cmake_args(self):
'-DBACKEND=Scalar',
'-DGEANT4=OFF',
'-DUSOLIDS=ON',
'-DUSOLIDS_VECGEOM=ON'
]
'-DUSOLIDS_VECGEOM=ON',
'-DROOT=OFF',
'-DNO_SPECIALIZATION=ON',
'-DCMAKE_VERBOSE_MAKEFILE=TRUE']
options.append('-DCMAKE_CXX_STANDARD={0}'.
format(self.spec.variants['cxxstd'].value))
arch = platform.machine()
if arch == 'x86_64':
options.append('-DVECGEOM_VECTOR=sse4.2')
options.append('-DVECGEOM_VECTOR={0}'.
format(self.spec.variants['vector'].value))
else:
options.append('-DVECGEOM_VECTOR=' + arch)
return options