## # Authors: Eduardo Miguel Firvida Donestevez # Robert Mijakovic ## easyblock = 'CMakeMake' name = 'DualSPHysics' version = '5.0.175' homepage = 'https://dual.sphysics.org/' description = """DualSPHysics is based on the Smoothed Particle Hydrodynamics model named SPHysics. The code is developed to study free-surface flow phenomena where Eulerian methods can be difficult to apply, such as waves or impact of dam-breaks on off-shore structures. DualSPHysics is a set of C++, CUDA and Java codes designed to deal with real-life engineering problems.""" toolchain = {'name': 'GCC', 'version': '11.2.0'} source_urls = ['https://github.com/DualSPHysics/DualSPHysics/archive/refs/tags/'] sources = ['v%(version)s.tar.gz'] checksums = ['d65bb7b8b4a21582091a534142348e46cff0a288a97ef86643bc2dde15637575'] srcdir = 'src/source' builddependencies = [ ('CMake', '3.21.1'), ] separate_build_dir = True buildopts = " && chmod +x %(builddir)s/%(name)s-%(version)s/bin/linux/*_linux64" install_cmd = "mkdir -p %(installdir)s/bin && " install_cmd += "cp -r %(builddir)s/%(name)s-%(version)s/bin/linux/* %(installdir)s/bin && " install_cmd += "cp -r %(builddir)s/%(name)s-%(version)s/src/lib/linux_gcc %(installdir)s/lib" local_bins = ['GenCase', 'PartVTK', 'IsoSurface', 'MeasureTool', 'GenCase_MkWord', 'DualSPHysics4.0_LiquidGas', 'DualSPHysics4.0_LiquidGasCPU', 'DualSPHysics5.0', 'DualSPHysics5.0CPU', 'DualSPHysics5.0_NNewtonian', 'DualSPHysics5.0_NNewtonianCPU'] sanity_check_paths = { 'files': ['bin/%s_linux64' % x for x in local_bins], 'dirs': ["lib"], } sanity_check_commands = ['%s_linux64 -h' % x for x in local_bins] moduleclass = 'cae'