diff --git a/easybuild/easyconfigs/m/METIS/METIS-5.1.0-foss-2017b.eb b/easybuild/easyconfigs/m/METIS/METIS-5.1.0-foss-2017b.eb new file mode 100644 index 000000000000..a6d98494cfe1 --- /dev/null +++ b/easybuild/easyconfigs/m/METIS/METIS-5.1.0-foss-2017b.eb @@ -0,0 +1,28 @@ +name = 'METIS' +version = '5.1.0' + +homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/metis/overview' +description = """METIS is a set of serial programs for partitioning graphs, partitioning finite element meshes, + and producing fill reducing orderings for sparse matrices. The algorithms implemented in METIS are based on the + multilevel recursive-bisection, multilevel k-way, and multi-constraint partitioning schemes.""" + +toolchain = {'name': 'foss', 'version': '2017b'} +toolchainopts = {'optarch': True, 'pic': True} + +sources = [SOURCELOWER_TAR_GZ] +source_urls = [ + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis', + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/OLD', +] +# we use 32bit for indices and 64bit for content +patches = ['METIS-5.1.0-use-doubles.patch'] +checksums = [ + '76faebe03f6c963127dbb73c13eab58c9a3faeae48779f049066a21c087c5db2', # metis-5.1.0.tar.gz + '7e38a3ec8f2b8e3d189239bade5b28c0dd1c564485050109164fa71a6a767c67', # METIS-5.1.0-use-doubles.patch +] + +builddependencies = [('CMake', '3.9.5')] + +configopts = ['', 'shared=1'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/matplotlib/matplotlib-2.1.0-foss-2017b-Python-2.7.14.eb b/easybuild/easyconfigs/m/matplotlib/matplotlib-2.1.0-foss-2017b-Python-2.7.14.eb new file mode 100644 index 000000000000..9660ac63e0b7 --- /dev/null +++ b/easybuild/easyconfigs/m/matplotlib/matplotlib-2.1.0-foss-2017b-Python-2.7.14.eb @@ -0,0 +1,50 @@ +easyblock = 'Bundle' + +name = 'matplotlib' +version = '2.1.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://matplotlib.org' +description = """matplotlib is a python 2D plotting library which produces publication quality figures in a variety of + hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python + and ipython shell, web application servers, and six graphical user interface toolkits.""" + +toolchain = {'name': 'foss', 'version': '2017b'} + +# this is a bundle of Python packages +exts_defaultclass = 'PythonPackage' + +dependencies = [ + ('Python', '2.7.14'), + ('freetype', '2.8'), + ('libpng', '1.6.32'), +] + +exts_list = [ + ('Cycler', '0.10.0', { + 'modulename': 'cycler', + 'source_tmpl': 'cycler-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/C/Cycler'], + 'checksums': [ + 'cd7b2d1018258d7247a71425e9f26463dfb444d411c39569972f4ce586b0c9d8', # cycler-0.10.0.tar.gz + ], + }), + (name, version, { + 'source_urls': ['https://pypi.python.org/packages/source/m/matplotlib'], + 'checksums': [ + '4b5f16c9cefde553ea79975305dcaa67c8e13d927b6e55aa14b4a8d867e25387', # matplotlib-2.1.0.tar.gz + ], + }), +] + +# specify that Bundle easyblock should run a full sanity check, rather than just trying to load the module +full_sanity_check = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-4.1-foss-2017b.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-4.1-foss-2017b.eb new file mode 100644 index 000000000000..b23e3af48bfe --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-4.1-foss-2017b.eb @@ -0,0 +1,38 @@ +name = 'OpenFOAM' +version = '4.1' + +homepage = 'http://www.openfoam.com/' + +description = """OpenFOAM is a free, open source CFD software package. + OpenFOAM has an extensive range of features to solve anything from complex fluid flows + involving chemical reactions, turbulence and heat transfer, + to solid dynamics and electromagnetics.""" + +toolchain = {'name': 'foss', 'version': '2017b'} +toolchainopts = {'cstd': 'c++11'} + +source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s.x/archive'] +sources = ['version-%(version)s.tar.gz'] +patches = ['OpenFOAM-%(version)s-cleanup.patch'] +checksums = [ + '2de18de64e7abdb1b649ad8e9d2d58b77a2b188fb5bcb6f7c2a038282081fd31', # version-4.1.tar.gz + '7a9d418f18c475fb48ddc427be7271b0fd759ad183f09a6bcafe4b76924b2a70', # OpenFOAM-4.1-cleanup.patch +] + +dependencies = [ + ('ParaView', '5.2.0', '-mpi'), + ('libreadline', '7.0'), + ('ncurses', '6.0'), + # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes) + ('METIS', '5.1.0'), + ('SCOTCH', '6.0.4'), + ('CGAL', '4.11', '-Python-2.7.14'), +] + +builddependencies = [ + ('Bison', '3.0.4'), + ('CMake', '3.9.5'), + ('flex', '2.6.4'), +] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.2.0-foss-2017b-mpi.eb b/easybuild/easyconfigs/p/ParaView/ParaView-5.2.0-foss-2017b-mpi.eb new file mode 100644 index 000000000000..9e095bf7f6cd --- /dev/null +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.2.0-foss-2017b-mpi.eb @@ -0,0 +1,61 @@ +easyblock = 'CMakeMake' + +name = 'ParaView' +version = '5.2.0' +versionsuffix = '-mpi' + +homepage = "http://www.paraview.org" +description = "ParaView is a scientific parallel visualizer." + +toolchain = {'name': 'foss', 'version': '2017b'} +toolchainopts = {'pic': True, 'usempi': True} + +download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile=' +source_urls = ['http://www.paraview.org/paraview-downloads/%s' % download_suffix] +sources = ["ParaView-v%(version)s.tar.gz"] +patches = ['ParaView-5.2.0_python-six-update.patch'] +checksums = [ + '894e42ef8475bb49e4e7e64f4ee2c37c714facd18bfbb1d6de7f69676b062c96', # ParaView-v5.2.0.tar.gz + '81c6bfd32b70bc06f8664f06e5873345bedacb99d1b94058d9ff1f1ec2d3b206', # ParaView-5.2.0_python-six-update.patch +] + +dependencies = [ + ('X11', '20171023'), + ('Mesa', '17.2.5'), + ('libGLU', '9.0.0'), + ('Qt', '4.8.7'), + ('zlib', '1.2.11'), + ('HDF5', '1.8.19'), + ('matplotlib', '2.1.0', '-Python-2.7.14'), +] + +builddependencies = [ + ('CMake', '3.9.5'), + ('Python', '2.7.14'), +] + +separate_build_dir = True + +configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DPARAVIEW_USE_MPI=ON -DBUILD_SHARED_LIBS=ON' +configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include -DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s ' % SHLIB_EXT +configopts += '-DOSMESA_INCLUDE_DIR=$EBROOTMESA/include -DOSMESA_LIBRARY=$EBROOTMESA/lib/libOSMesa.%s ' % SHLIB_EXT +configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT +configopts += '-DVTK_USE_SYSTEM_HDF5=ON -DVTK_OPENGL_HAS_OSMESA=ON -DPARAVIEW_ENABLE_PYTHON=ON ' +configopts += '-DVTK_WRAP_PYTHON=ON -DPARAVIEW_ENABLE_MATPLOTLIB=ON ' +configopts += '-DPARAVIEW_QT_VERSION=4 -DQT_QMAKE_EXECUTABLE=$EBROOTQT/bin/qmake ' +# if you want to build server only Paraview, uncomment the following line: +# configopts += '-DVTK_USE_X=OFF ' + +# Without internet connection turn off testing (uncomment the following line) +# configopts += '-DBUILD_TESTING=OFF ' +# Or consult https://gitlab.kitware.com/vtk/vtk/blob/master/Documentation/dev/git/data.md +# and download ExternalData to $EASYBUILD_SOURCEPATH and adjust -DExternalData_OBJECT_STORES accordingly +# Without internet connection, comment the following two lines (configopts and prebuildopts) +configopts += '-DExternalData_OBJECT_STORES=%(builddir)s/ExternalData ' + +# The ParaView server can be cranky, test downloads are quite often failing, especially in the case +# of parallel downloads. Using ; insted of && gives a second chance to download the test files, if the +# first serial attempt would fail. +prebuildopts = 'make VTKData ;' + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.2.0_python-six-update.patch b/easybuild/easyconfigs/p/ParaView/ParaView-5.2.0_python-six-update.patch new file mode 100644 index 000000000000..4d7cd4205749 --- /dev/null +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.2.0_python-six-update.patch @@ -0,0 +1,17 @@ +Update for VTK third party dependency PythonSix(https://pypi.python.org/pypi/six) +From version 1.7.2 to using System Python one + +This update is necessary because ParaView uses his version of six.py(v1.7.2) instead of the Python one, matplotlib plugin for Paraview needs six.py(>v.1.10.0). + +--- a/VTK/ThirdParty/AutobahnPython/module.cmake 2016-11-14 16:41:57.000000000 +0100 ++++ b/VTK/ThirdParty/AutobahnPython/module.cmake 2017-11-21 09:16:40.088867103 +0100 + +@@ -1,6 +1,5 @@ + vtk_module(AutobahnPython + DEPENDS +- SixPython + Twisted + vtkPython +- EXCLUDE_FROM_WRAPPING) +\ No newline at end of file ++ EXCLUDE_FROM_WRAPPING) diff --git a/easybuild/easyconfigs/q/Qt5/Qt5-5.9.2-foss-2017b.eb b/easybuild/easyconfigs/q/Qt5/Qt5-5.9.2-foss-2017b.eb new file mode 100644 index 000000000000..ecb155740bbb --- /dev/null +++ b/easybuild/easyconfigs/q/Qt5/Qt5-5.9.2-foss-2017b.eb @@ -0,0 +1,29 @@ +easyblock = 'EB_Qt' + +name = 'Qt5' +version = '5.9.2' + +homepage = 'http://qt.io/' +description = "Qt is a comprehensive cross-platform C++ application framework." + +toolchain = {'name': 'foss', 'version': '2017b'} + +source_urls = [ + 'http://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/', + 'http://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single' +] +sources = ['qt-everywhere-opensource-src-%(version)s.tar.xz'] +checksums = ['6c6171a4d1ea3fbd4212d6a04899650218583df3ec583a8a6a4a589fe18620ff'] +# qtgamepad needs recent kernel/libevdev (fails on RHEL 6.x) +configopts = '-skip qtgamepad' + +builddependencies = [('pkg-config', '0.29.2')] + +dependencies = [ + ('GLib', '2.53.5'), + ('libpng', '1.6.32'), + ('X11', '20171023'), + ('libGLU', '9.0.0'), +] + +moduleclass = 'devel'