From 94b3b47459cd5dbce59ef2f1f2cf774dceb11066 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Krup=C4=8D=C3=ADk?= Date: Wed, 11 Oct 2017 09:08:57 +0200 Subject: [PATCH] new file: a/ALAMODE/ALAMODE-0.9.8-intel-2017a.eb new file: c/Clang/Clang-5.0.0-GCC-6.3.0-2.27.eb new file: d/DynaPhoPy/DynaPhoPy-1.15.eb new file: l/LLVM/LLVM-5.0.0-GCC-6.3.0-2.27.eb new file: n/Netgen/Netgen-5.3.1.eb new file: n/Netgen/Netgen-6.0-beta.eb new file: n/Netgen/ng.patch new file: s/seekpath/seekpath-1.5.0-Python-2.7.13-base.eb new file: t/Tcl/Tcl-8.6.7-GCC-6.3.0-2.27.eb modified: t/Tk/Tk-8.6.6.eb new file: t/Tk/Tk-8.6.7-GCC-6.3.0-2.27.eb deleted: n/Netgen/Netgen-6.3.eb --- a/ALAMODE/ALAMODE-0.9.8-intel-2017a.eb | 44 ++++++++++++++++++ c/Clang/Clang-5.0.0-GCC-6.3.0-2.27.eb | 45 +++++++++++++++++++ d/DynaPhoPy/DynaPhoPy-1.15.eb | 37 +++++++++++++++ l/LLVM/LLVM-5.0.0-GCC-6.3.0-2.27.eb | 40 +++++++++++++++++ n/Netgen/Netgen-5.3.1.eb | 31 +++++++++++++ n/Netgen/Netgen-6.0-beta.eb | 33 ++++++++++++++ n/Netgen/Netgen-6.3.eb | 35 --------------- n/Netgen/ng.patch | 12 +++++ .../seekpath-1.5.0-Python-2.7.13-base.eb | 31 +++++++++++++ t/Tcl/Tcl-8.6.7-GCC-6.3.0-2.27.eb | 26 +++++++++++ t/Tk/Tk-8.6.6.eb | 2 +- t/Tk/Tk-8.6.7-GCC-6.3.0-2.27.eb | 26 +++++++++++ 12 files changed, 326 insertions(+), 36 deletions(-) create mode 100644 a/ALAMODE/ALAMODE-0.9.8-intel-2017a.eb create mode 100644 c/Clang/Clang-5.0.0-GCC-6.3.0-2.27.eb create mode 100644 d/DynaPhoPy/DynaPhoPy-1.15.eb create mode 100644 l/LLVM/LLVM-5.0.0-GCC-6.3.0-2.27.eb create mode 100644 n/Netgen/Netgen-5.3.1.eb create mode 100644 n/Netgen/Netgen-6.0-beta.eb delete mode 100644 n/Netgen/Netgen-6.3.eb create mode 100644 n/Netgen/ng.patch create mode 100644 s/seekpath/seekpath-1.5.0-Python-2.7.13-base.eb create mode 100644 t/Tcl/Tcl-8.6.7-GCC-6.3.0-2.27.eb create mode 100644 t/Tk/Tk-8.6.7-GCC-6.3.0-2.27.eb diff --git a/a/ALAMODE/ALAMODE-0.9.8-intel-2017a.eb b/a/ALAMODE/ALAMODE-0.9.8-intel-2017a.eb new file mode 100644 index 00000000..c1258ab6 --- /dev/null +++ b/a/ALAMODE/ALAMODE-0.9.8-intel-2017a.eb @@ -0,0 +1,44 @@ +easyblock = 'CmdCp' + +name = 'ALAMODE' +version = '0.9.8' + +homepage = 'http://alamode.readthedocs.io/' +description = """ALAMODE is an open source software designed for analyzing lattice anharmonicity +and lattice thermal conductivity of solids. By using an external DFT package such as VASP and +Quantum ESPRESSO, you can extract harmonic and anharmonic force constants straightforwardly +with ALAMODE. Using the calculated anharmonic force constants, you can also estimate lattice +thermal conductivity, phonon linewidth, and other anharmonic phonon properties from first principles.""" + +toolchain = {'name': 'intel', 'version': '2017a'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('Boost', '1.63.0'), + ('Python', '2.7.13-base', '', True), + ('matplotlib', '2.0.2-Python-2.7.13-base', '', True), + ('numpy', '1.13.0-Python-2.7.13-base', '', True), +] + +commands = "cd alm && mv Makefile.linux Makefile && make && cd .. && " +commands += "cd anphon && mv Makefile.linux Makefile && make && cd .. && " +commands += "cd tools && make " + +cmds_map = [('.*', commands)] + +files_to_copy = [ + (['alm/alm', 'anphon/anphon'], 'bin'), + (['tools/analyze_phonons', 'tools/qe2alm'], 'tools'), + (['tools/*.py'], 'tools'), +] + +modextrapaths = {'PATH': 'tools'} + +sanity_check_paths = { + 'files': ['bin/alm', 'bin/anphon'], + 'dirs': [] +} + +moduleclass = 'phys' diff --git a/c/Clang/Clang-5.0.0-GCC-6.3.0-2.27.eb b/c/Clang/Clang-5.0.0-GCC-6.3.0-2.27.eb new file mode 100644 index 00000000..4ed705b6 --- /dev/null +++ b/c/Clang/Clang-5.0.0-GCC-6.3.0-2.27.eb @@ -0,0 +1,45 @@ +name = "Clang" +version = "5.0.0" + +homepage = "http://clang.llvm.org/" +description = """C, C++, Objective-C compiler, based on LLVM. Does not + include C++ standard library -- use libstdc++ from GCC.""" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCC', 'version': '6.3.0-2.27'} +# Do not set optarch to True: it will cause the build to fail +toolchainopts = {'optarch': False, 'pic': True} + +source_urls = ["http://llvm.org/releases/%(version)s"] +sources = [ + "llvm-%(version)s.src.tar.xz", + "cfe-%(version)s.src.tar.xz", + "compiler-rt-%(version)s.src.tar.xz", + "polly-%(version)s.src.tar.xz", + "openmp-%(version)s.src.tar.xz", + "libcxx-5.0.0.src.tar.xz", + "libcxxabi-5.0.0.src.tar.xz", + "clang-tools-extra-5.0.0.src.tar.xz", +] + +dependencies = [ + ('GMP', '6.1.2', '', True), + ('ISL', '0.15', '', True), +] + +builddependencies = [ + ('CMake', '3.9.1', '', True), + ('Python', '2.7.13', '', True), + ('libxml2', '2.9.4', '', True), +] + +separate_build_dir = True + +assertions = True + +usepolly = True + +build_targets = ['X86'] + +moduleclass = 'compiler' diff --git a/d/DynaPhoPy/DynaPhoPy-1.15.eb b/d/DynaPhoPy/DynaPhoPy-1.15.eb new file mode 100644 index 00000000..c4acefa6 --- /dev/null +++ b/d/DynaPhoPy/DynaPhoPy-1.15.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonPackage' + +name = 'DynaPhoPy' +version = '1.15' +versionsuffix = '-intel-2017a-Python-%(pyver)s-base' + +homepage = 'https://github.com/abelcarreras/DynaPhoPy' +description = """Software to calculate crystal microscopic anharmonic properties from molecular dynamics (MD) using +the normal-mode-decomposition technique. These properties include the phonon frequency shifts and linewidths, as well +as the renormalized force constanst and thermal properties by using quasiparticle theory. This code includes +interfaces for MD outputs from VASP and LAMMPS .PHONOPY code is used to obtain harmonic phonon modes.""" + +toolchain = {'name': 'dummy', 'version': ''} + +source_urls = ['https://github.com/abelcarreras/DynaPhoPy/archive/'] +sources = ['%(version)s.tar.gz'] + +dependencies = [ + ('Python', '2.7.13', '-base', True), + ('phonopy', '1.11.12.5', '-Python-2.7.13-base', True ), + ('numpy', '1.13.0', '-Python-2.7.13-base', True), + ('scipy', '0.19.1', '-Python-2.7.13-base', True), + ('matplotlib', '2.0.2', '-Python-2.7.13-base', True), + ('seekpath', '1.5.0', '-Python-2.7.13-base', True), + ('PyYAML', '3.12', '-Python-2.7.13-base', True), + ('intel', '2017a'), +] + +use_pip = True +unpack_sources = False + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/dynaphopy'], +} + +moduleclass = 'phys' diff --git a/l/LLVM/LLVM-5.0.0-GCC-6.3.0-2.27.eb b/l/LLVM/LLVM-5.0.0-GCC-6.3.0-2.27.eb new file mode 100644 index 00000000..53bc6839 --- /dev/null +++ b/l/LLVM/LLVM-5.0.0-GCC-6.3.0-2.27.eb @@ -0,0 +1,40 @@ +easyblock = 'CMakeMake' + +name = 'LLVM' +version = '5.0.0' + +homepage = "http://llvm.org/" +description = """The LLVM Core libraries provide a modern source- and target-independent + optimizer, along with code generation support for many popular CPUs + (as well as some less common ones!) These libraries are built around a well + specified code representation known as the LLVM intermediate representation + ("LLVM IR"). The LLVM Core libraries are well documented, and it is + particularly easy to invent your own language (or port an existing compiler) + to use LLVM as an optimizer and code generator.""" + +toolchain = {'name': 'GCC', 'version': '6.3.0-2.27'} + +source_urls = ["http://llvm.org/releases/%(version)s"] +sources = ["llvm-%(version)s.src.tar.xz"] + +builddependencies = [ + ('CMake', '3.9.1', '', True), + ('Python', '3.6.1', '', True), +] + +dependencies = [ + ('ncurses', '6.0', '', True), +] + +configopts = '-DBUILD_SHARED_LIBS=ON ' +# required to install extra tools in bin/ +configopts += "-DLLVM_INSTALL_UTILS=ON " + +sanity_check_paths = { + 'files': ['bin/llvm-ar', 'bin/FileCheck'], + 'dirs': ['include/llvm', 'include/llvm-c'], +} + +separate_build_dir = True + +moduleclass = 'compiler' diff --git a/n/Netgen/Netgen-5.3.1.eb b/n/Netgen/Netgen-5.3.1.eb new file mode 100644 index 00000000..13473559 --- /dev/null +++ b/n/Netgen/Netgen-5.3.1.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'Netgen' +version = "5.3.1" + +homepage = 'https://ngsolve.org/' +description = """Netgen/NGSolve is a high performance multiphysics finite element software. It is widely used to +analyze models from solid mechanics, fluid dynamics and electromagnetics. Due to its flexible Python interface +new physical equations and solution algorithms can be implemented easily.""" + +toolchain = {'name': 'intel', 'version': '2017a'} + +source_urls = ['https://downloads.sourceforge.net/project/netgen-mesher/netgen-mesher/5.3/'] +sources = ['netgen-5.3.1.tar.gz'] + +dependencies = [ + ('Togl', '1.7', '', True), + ('Tk', '8.6.5', '', True), + ('Tcl','8.6.5', '', True), +] + +configopts = '--with-tcl=$EBROOTTCL/lib --with-tk=$EBROOTTK/lib --with-togl=$EBROOTTOGL CXX=mpicxx CC=mpicc' + +prebuildopts = 'patch ng/Makefile /apps/easybuild/easyconfigs-it4i/n/Netgen/ng.patch && ' + +sanity_check_paths = { + 'files': [], + 'dirs': ['bin'], +} + +moduleclass = 'phys' diff --git a/n/Netgen/Netgen-6.0-beta.eb b/n/Netgen/Netgen-6.0-beta.eb new file mode 100644 index 00000000..c21e5a24 --- /dev/null +++ b/n/Netgen/Netgen-6.0-beta.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'Netgen' +version = '6.0-beta' +versionsuffix = '-Python-3.6.1' + +homepage = 'https://ngsolve.org/' +description = """Netgen/NGSolve is a high performance multiphysics finite element software. It is widely used to +analyze models from solid mechanics, fluid dynamics and electromagnetics. Due to its flexible Python interface +new physical equations and solution algorithms can be implemented easily.""" + +toolchain = {'name': 'intel', 'version': '2017a'} + +source_urls = ['https://downloads.sourceforge.net/project/netgen-mesher/netgen-mesher/6.0/'] +sources = ['netgen-6.0-beta.tar.gz'] + +dependencies = [ + ('Togl', '1.7', '', True), + ('Tk', '8.6.5', '', True), + ('Tcl','8.6.5', '', True), + ('Python', '3.6.1', '', True), +] + +configopts = '--with-tcl=$EBROOTTCL/lib --with-tk=$EBROOTTK/lib --with-togl=$EBROOTTOGL CXX=mpicxx CC=mpicc' + +#prebuildopts = 'patch ng/Makefile /apps/easybuild/easyconfigs-it4i/n/Netgen/ng.patch && ' + +sanity_check_paths = { + 'files': [], + 'dirs': ['bin'], +} + +moduleclass = 'phys' diff --git a/n/Netgen/Netgen-6.3.eb b/n/Netgen/Netgen-6.3.eb deleted file mode 100644 index 59778e3d..00000000 --- a/n/Netgen/Netgen-6.3.eb +++ /dev/null @@ -1,35 +0,0 @@ -easyblock = 'CMakeMake' - -name = 'Netgen' -version = "6.3" - -homepage = 'https://ngsolve.org/' -description = """Netgen/NGSolve is a high performance multiphysics finite element software. It is widely used to -analyze models from solid mechanics, fluid dynamics and electromagnetics. Due to its flexible Python interface -new physical equations and solution algorithms can be implemented easily.""" - -toolchain = {'name': 'intel', 'version': '2017a'} - -source_urls = ['https://github.com/trelau/netgen/archive/'] -sources = ['%(version)s.tar.gz'] - -builddependencies = [ - ('CMake', '3.9.0', '', True), -] - -dependencies = [ -# ('Togl', '1.7', '', True), - ('Tk', '8.6.6', '', True), - ('Tcl','8.6.6', '', True), - ('zlib', '1.2.11', '', True), -] - -#configopts = '--with-tcl=$EBROOTTCL/lib --with-tk=$EBROOTTK/lib --with-togl=$EBROOTTOGL CXX=mpicxx CC=mpicc' -#configopts = '--with-tcl=$EBROOTTCL/lib --with-tk=$EBROOTTK/lib CXX=mpicxx CC=mpicc' - -sanity_check_paths = { - 'files': [], - 'dirs': ['bin'], -} - -moduleclass = 'phys' diff --git a/n/Netgen/ng.patch b/n/Netgen/ng.patch new file mode 100644 index 00000000..536b9d86 --- /dev/null +++ b/n/Netgen/ng.patch @@ -0,0 +1,12 @@ +--- ng/Makefile 2017-10-09 12:16:19.796661408 +0200 ++++ ng/Makefile.new 2017-10-09 12:19:02.143719828 +0200 +@@ -312,8 +312,7 @@ + $(top_builddir)/libsrc/csg/libcsg.la \ + $(top_builddir)/libsrc/interface/libinterface.la \ + $(top_builddir)/libsrc/meshing/libmesh.la \ +- -L$(TK_BIN_DIR)/Togl1.7 $(TOGLLIBDIR) -lTogl $(LIBGLU) $(TK_LIB_SPEC) $(TCL_LIB_SPEC) $(MPI_LIBS) $(FFMPEG_LIBS) $(JPEGLIB_LIBS) $(PKG_LIBS) $(MKL_LIBS) +- ++ $(OCCLIBS) -L$(TK_BIN_DIR)/Togl1.7 $(TOGLLIBDIR) -lTogl1.7 $(LIBGLU) $(TK_LIB_SPEC) $(TCL_LIB_SPEC) $(MPI_LIBS) $(FFMPEG_LIBS) $(JPEGLIB_LIBS) $(PKG_LIBS) + + # + # $(top_builddir)/libsrc/occ/liboccvis.la diff --git a/s/seekpath/seekpath-1.5.0-Python-2.7.13-base.eb b/s/seekpath/seekpath-1.5.0-Python-2.7.13-base.eb new file mode 100644 index 00000000..fdca5850 --- /dev/null +++ b/s/seekpath/seekpath-1.5.0-Python-2.7.13-base.eb @@ -0,0 +1,31 @@ +easyblock = "PythonPackage" + +name = 'seekpath' +version = '1.5.0' + +homepage = 'https://github.com/giovannipizzi/seekpath' +description = """SeeK-path is a python module to obtain and visualize band paths in the Brillouin zone of crystal structures. +The definition of k-point labels follows crystallographic convention, as defined and discussed in the HPKOT paper. Moreover, +the Bravais lattice is detected properly using the spacegroup symmetry. Also the suggested band path provided in the HPKOT +paper is returned. Systems without time-reversal and inversion-symmetry are also properly taken into account.""" + +toolchain = {'name': 'dummy', 'version': ''} + +source_urls = ['https://pypi.python.org/packages/34/a0/3070823a5801e073cd9b961d8060b5ed6ad07fd255c8a1b10a8073c80e1c/'] +sources = [SOURCELOWER_TAR_GZ] + +python = "Python" +pythonversion = '2.7.13' +pyshortver = ".".join(pythonversion.split(".")[:-1]) + +versionsuffix = "-%s-%s-base" % (python, pythonversion) + +dependencies = [ + (python, pythonversion, '-base'), + ('numpy', '1.13.0', versionsuffix), + ('scipy', '0.19.1', versionsuffix), +] + +sanity_check_commands = [('python', '-c "import seekpath; assert(seekpath.__version__ == \'%(version)s\')"')] + +moduleclass = 'vis' diff --git a/t/Tcl/Tcl-8.6.7-GCC-6.3.0-2.27.eb b/t/Tcl/Tcl-8.6.7-GCC-6.3.0-2.27.eb new file mode 100644 index 00000000..28c30dc7 --- /dev/null +++ b/t/Tcl/Tcl-8.6.7-GCC-6.3.0-2.27.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'Tcl' +version = '8.6.7' + +homepage = 'http://www.tcl.tk/' +description = """Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language, +suitable for a very wide range of uses, including web and desktop applications, networking, administration, +testing and many more.""" + +toolchain = {'name': 'GCC', 'version': '6.3.0-2.27'} + +source_urls = ["http://prdownloads.sourceforge.net/tcl"] +sources = ['%(namelower)s%(version)s-src.tar.gz'] + +dependencies = [ + ('zlib', '1.2.11', '', True), +] + +configopts = '--enable-threads EXTRA_INSTALL="install-private-headers"' + +runtest = 'test' + +start_dir = 'unix' + +moduleclass = 'lang' diff --git a/t/Tk/Tk-8.6.6.eb b/t/Tk/Tk-8.6.6.eb index eaaa5885..8f0f3682 100644 --- a/t/Tk/Tk-8.6.6.eb +++ b/t/Tk/Tk-8.6.6.eb @@ -16,7 +16,7 @@ patches = ['Tk-8.6.4_different-prefix-with-tcl.patch'] dependencies = [ ('Tcl', version), - ('zlib', '1.2.8'), + ('zlib', '1.2.11'), ] configopts = '--enable-threads --with-tcl=$EBROOTTCL/lib --without-x CFLAGS="-I$EBROOTTCL/include"' diff --git a/t/Tk/Tk-8.6.7-GCC-6.3.0-2.27.eb b/t/Tk/Tk-8.6.7-GCC-6.3.0-2.27.eb new file mode 100644 index 00000000..380a1851 --- /dev/null +++ b/t/Tk/Tk-8.6.7-GCC-6.3.0-2.27.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'Tk' +version = '8.6.7' + +homepage = 'http://www.tcl.tk/' +description = """Tk is an open source, cross-platform widget toolchain that provides a library of basic elements for building + a graphical user interface (GUI) in many different programming languages.""" + +toolchain = {'name': 'GCC', 'version': '6.3.0-2.27'} + +source_urls = ["http://prdownloads.sourceforge.net/tcl"] +sources = ['%(namelower)s%(version)s-src.tar.gz'] + +patches = ['Tk-8.6.4_different-prefix-with-tcl.patch'] + +dependencies = [ + ('Tcl', version), + ('zlib', '1.2.11', '', True), +] + +configopts = '--enable-threads --with-tcl=$EBROOTTCL/lib --without-x CFLAGS="-I$EBROOTTCL/include"' + +start_dir = 'unix' + +moduleclass = 'vis'