casacore: added v3.3.0 (#18870)

This commit is contained in:
Martin Pokorny 2020-09-22 12:55:58 -06:00 committed by GitHub
parent 0d0ba79bfb
commit a23d67f7ea
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -14,6 +14,7 @@ class Casacore(CMakePackage):
maintainers = ['mpokorny'] maintainers = ['mpokorny']
version('3.3.0', sha256='3a714644b908ef6e81489b792cc9b80f6d8267a275e15d38a42a6a5137d39d3d')
version('3.2.0', sha256='ae5d3786cb6dfdd7ebc5eecc0c724ff02bbf6929720bc23be43a027978e79a5f') version('3.2.0', sha256='ae5d3786cb6dfdd7ebc5eecc0c724ff02bbf6929720bc23be43a027978e79a5f')
version('3.1.2', sha256='ac94f4246412eb45d503f1019cabe2bb04e3861e1f3254b832d9b1164ea5f281') version('3.1.2', sha256='ac94f4246412eb45d503f1019cabe2bb04e3861e1f3254b832d9b1164ea5f281')
version('3.1.1', sha256='85d2b17d856592fb206b17e0a344a29330650a4269c80b87f8abb3eaf3dadad4') version('3.1.1', sha256='85d2b17d856592fb206b17e0a344a29330650a4269c80b87f8abb3eaf3dadad4')
@ -23,30 +24,31 @@ class Casacore(CMakePackage):
variant('openmp', default=False, description='Build OpenMP support') variant('openmp', default=False, description='Build OpenMP support')
variant('shared', default=True, description='Build shared libraries') variant('shared', default=True, description='Build shared libraries')
variant('readline', default=True, description='Build readline support')
# see note below about the reason for disabling the "sofa" variant # see note below about the reason for disabling the "sofa" variant
# variant('sofa', default=False, description='Build SOFA support') # variant('sofa', default=False, description='Build SOFA support')
variant('fftw', default=False, description='Build FFTW3 support') variant('fftw', default=False, description='Build FFTW3 support')
variant('hdf5', default=False, description='Build HDF5 support') variant('hdf5', default=False, description='Build HDF5 support')
variant('python', default=False, description='Build python support') variant('python', default=False, description='Build python support')
# Force dependency on readline in v3.2 and earlier. Although the
# presence of readline is tested in CMakeLists.txt, and casacore
# can be built without it, there's no way to control that
# dependency at build time; since many systems come with readline,
# it's better to explicitly depend on it here always.
depends_on('readline', when='@:3.2.0')
depends_on('readline', when='+readline')
depends_on('flex', type='build') depends_on('flex', type='build')
depends_on('bison', type='build') depends_on('bison', type='build')
depends_on('blas') depends_on('blas')
depends_on('lapack') depends_on('lapack')
depends_on('cfitsio@3.181:') depends_on('cfitsio@3.181:')
depends_on('wcslib@4.20:+cfitsio') depends_on('wcslib@4.20:+cfitsio')
depends_on('fftw~mpi@3.0.0:', when='+fftw') depends_on('fftw@3.0.0:~mpi precision=float,double', when='+fftw')
# SOFA dependency suffers the same problem in CMakeLists.txt as readline; # SOFA dependency suffers the same problem in CMakeLists.txt as readline;
# however, as SOFA is far less likely to be present on most systems, and as # force a dependency when building unit tests
# it's an unneeded dependency except for testing, for now we leave out the depends_on('sofa-c', type='test')
# option for a dependency on SOFA.
# depends_on('sofa-c', when='+sofa')
depends_on('hdf5', when='+hdf5') depends_on('hdf5', when='+hdf5')
# Force dependency on readline. Although the presence of readline is tested
# in CMakeLists.txt, and casacore can be built without it, there's no way
# to control that dependency at build time; since many systems come with
# readline, it's better to explicitly depend on it here always.
depends_on('readline')
depends_on('python@2.6:', when='+python') depends_on('python@2.6:', when='+python')
depends_on('boost+python', when='+python') depends_on('boost+python', when='+python')
depends_on('py-numpy', when='+python') depends_on('py-numpy', when='+python')
@ -55,32 +57,19 @@ def cmake_args(self):
args = [] args = []
spec = self.spec spec = self.spec
if '+shared' in spec: args.append(self.define_from_variant('ENABLE_SHARED', 'shared'))
args.append('-DENABLE_SHARED=YES') args.append(self.define_from_variant('USE_OPENMP', 'openmp'))
else: args.append(self.define_from_variant('USE_READLINE', 'readline'))
args.append('-DENABLE_SHARED=NO') args.append(self.define_from_variant('USE_HDF5', 'hdf5'))
args.append(self.define_from_variant('USE_FFTW3', 'fftw'))
if '+openmp' in spec:
args.append('-DUSE_OPENMP=YES')
else:
args.append('-DUSE_OPENMP=NO')
if '+hdf5' in spec:
args.append('-DUSE_HDF5=YES')
else:
args.append('-DUSE_HDF5=NO')
if '+fftw' in spec:
args.append('-DUSE_FFTW3=YES')
else:
args.append('-DUSE_FFTW3=NO')
# Python2 and Python3 binding # Python2 and Python3 binding
if('+python' not in spec): if '+python' not in spec:
args.extend(['-DBUILD_PYTHON=NO', '-DBUILD_PYTHON3=NO']) args.extend(['-DBUILD_PYTHON=NO', '-DBUILD_PYTHON3=NO'])
elif(spec['python'].version >= Version('3.0.0')): elif spec['python'].version >= Version('3.0.0'):
args.extend(['-DBUILD_PYTHON=NO', '-DBUILD_PYTHON3=YES']) args.extend(['-DBUILD_PYTHON=NO', '-DBUILD_PYTHON3=YES'])
else: else:
args.extend(['-DBUILD_PYTHON=YES', '-DBUILD_PYTHON3=NO']) args.extend(['-DBUILD_PYTHON=YES', '-DBUILD_PYTHON3=NO'])
args.append('-DBUILD_TESTING=OFF')
return args return args