Adding latest version of fenics (#1528)

* Adding last version of fenics and making trilinos not ambiguous on hdf5

* forcing fenics to ignore hdf5 cxx

* Adding deptypes and correcting the hdf5 patch

* flake8 corrections

* cleaning some useless code
This commit is contained in:
Nicolas Richart 2016-10-03 03:51:34 +02:00 committed by Todd Gamblin
parent 2ce1b388c9
commit 16f99bd0b2
3 changed files with 44 additions and 11 deletions

View file

@ -0,0 +1,11 @@
--- a/CMakeLists.txt 2016-08-16 02:30:13.466078087 +0200
+++ b/CMakeLists.txt 2016-08-16 02:30:36.879586772 +0200
@@ -553,7 +553,7 @@
set(ENV{HDF5_ROOT} "$ENV{HDF5_DIR}")
endif()
set(HDF5_PREFER_PARALLEL TRUE)
- find_package(HDF5)
+ find_package(HDF5 COMPONENTS C)
set_package_properties(HDF5 PROPERTIES TYPE OPTIONAL
DESCRIPTION "Hierarchical Data Format 5 (HDF5)"
URL "https://www.hdfgroup.org/HDF5")

View file

@ -62,17 +62,15 @@ class Fenics(Package):
# variant('slepc4py', default=True, description='Uses SLEPc4py') # variant('slepc4py', default=True, description='Uses SLEPc4py')
# variant('pastix', default=True, description='Compile with Pastix') # variant('pastix', default=True, description='Compile with Pastix')
patch('petsc-3.7.patch', when='^petsc@3.7:') patch('petsc-3.7.patch', when='@1.6.1^petsc@3.7:')
patch('petsc-version-detection.patch', when='@:1.6.1') patch('petsc-version-detection.patch', when='@:1.6.1')
patch('hdf5~cxx-detection.patch')
extends('python') extends('python')
depends_on('py-numpy') depends_on('eigen@3.2.0:', type='build')
depends_on('py-ply') depends_on('boost+filesystem+program_options+system+iostreams+timer+regex+chrono')
depends_on('py-six')
depends_on('py-sphinx@1.0.1:', when='+doc')
depends_on('eigen@3.2.0:')
depends_on('boost')
depends_on('mpi', when='+mpi') depends_on('mpi', when='+mpi')
depends_on('hdf5', when='+hdf5') depends_on('hdf5', when='+hdf5')
depends_on('parmetis@4.0.2:^metis+real64', when='+parmetis') depends_on('parmetis@4.0.2:^metis+real64', when='+parmetis')
@ -85,12 +83,27 @@ class Fenics(Package):
depends_on('suite-sparse', when='+suite-sparse') depends_on('suite-sparse', when='+suite-sparse')
depends_on('qt', when='+qt') depends_on('qt', when='+qt')
# This are the build dependencies depends_on('py-ply', type=nolink)
depends_on('py-setuptools') depends_on('py-six', type=nolink)
depends_on('cmake@2.8.12:') depends_on('py-numpy', type=nolink)
depends_on('swig@3.0.3:') depends_on('py-sympy', type=nolink)
depends_on('swig@3.0.3:', type=nolink)
depends_on('cmake@2.8.12:', type=nolink)
depends_on('py-setuptools', type='build')
depends_on('py-sphinx@1.0.1:', when='+doc', type='build')
releases = [ releases = [
{
'version': '2016.1.0',
'md5': '92e8d00f6487a575987201f0b0d19173',
'resources': {
'ffc': '35457ae164e481ba5c9189ebae060a47',
'fiat': 'ac0c49942831ee434301228842bcc280',
'instant': '0e3dbb464c4d90d691f31f0fdd63d4f6',
'ufl': '37433336e5c9b58d1d5ab4acca9104a7',
}
},
{ {
'version': '1.6.0', 'version': '1.6.0',
'md5': '35cb4baf7ab4152a40fb7310b34d5800', 'md5': '35cb4baf7ab4152a40fb7310b34d5800',

View file

@ -178,6 +178,15 @@ def install(self, spec, prefix):
else: else:
options.extend(['-DTPL_ENABLE_Boost:BOOL=OFF']) options.extend(['-DTPL_ENABLE_Boost:BOOL=OFF'])
if '+hdf5' in spec:
options.extend([
'-DTPL_ENABLE_HDF5:BOOL=ON',
'-DHDF5_INCLUDE_DIRS:PATH=%s' % spec['hdf5'].prefix.include,
'-DHDF5_LIBRARY_DIRS:PATH=%s' % spec['hdf5'].prefix.lib
])
else:
options.extend(['-DTPL_ENABLE_HDF5:BOOL=OFF'])
# Fortran lib # Fortran lib
libgfortran = os.path.dirname(os.popen( libgfortran = os.path.dirname(os.popen(
'%s --print-file-name libgfortran.a' % '%s --print-file-name libgfortran.a' %