From 30cf7358c0428873502b5851fff95891a6517d1e Mon Sep 17 00:00:00 2001
From: Lukas Krupcik <lukas.krupcik@vsb.cz>
Date: Mon, 6 Jan 2025 09:40:28 +0100
Subject: [PATCH] 	modified:   b/binutils/binutils-2.30-GCCcore-7.3.0.eb 
 new file:   c/CMake/CMake-3.30.5.eb 	new file:  
 v/Visit/Visit-3.4.2-foss-2023a.eb 	new file:   v/Visit/Visit-3.4.2.eb

---
 b/binutils/binutils-2.30-GCCcore-7.3.0.eb |  2 +-
 c/CMake/CMake-3.30.5.eb                   | 28 ++++++++++
 v/Visit/Visit-3.4.2-foss-2023a.eb         | 67 +++++++++++++++++++++++
 v/Visit/Visit-3.4.2.eb                    | 67 +++++++++++++++++++++++
 4 files changed, 163 insertions(+), 1 deletion(-)
 create mode 100644 c/CMake/CMake-3.30.5.eb
 create mode 100644 v/Visit/Visit-3.4.2-foss-2023a.eb
 create mode 100644 v/Visit/Visit-3.4.2.eb

diff --git a/b/binutils/binutils-2.30-GCCcore-7.3.0.eb b/b/binutils/binutils-2.30-GCCcore-7.3.0.eb
index aef5f7a2..c74d7ff9 100644
--- a/b/binutils/binutils-2.30-GCCcore-7.3.0.eb
+++ b/b/binutils/binutils-2.30-GCCcore-7.3.0.eb
@@ -10,7 +10,7 @@ toolchain = {'name': 'GCCcore', 'version': '7.3.0'}
 
 source_urls = [GNU_SOURCE]
 sources = [SOURCE_TAR_GZ]
-patches = ['local_binutils-%(version)s_fix-assertion-fail-elf.patch']
+#patches = ['local_binutils-%(version)s_fix-assertion-fail-elf.patch']
 checksums = [
     '8c3850195d1c093d290a716e20ebcaa72eda32abf5e3d8611154b39cff79e9ea',  # local_binutils-2.30.tar.gz
     '7a661190c973287642296dd9fb30ff45dc26ae2138f7761cd8362f7e412ff5ab',  # local_binutils-2.30_fix-assertion-fail-elf.patch
diff --git a/c/CMake/CMake-3.30.5.eb b/c/CMake/CMake-3.30.5.eb
new file mode 100644
index 00000000..b23809d8
--- /dev/null
+++ b/c/CMake/CMake-3.30.5.eb
@@ -0,0 +1,28 @@
+# IT4Innovatiions
+# LK 2025
+
+name = 'CMake'
+version = '3.30.5'
+
+homepage = 'https://www.cmake.org'
+
+description = """
+ CMake, the cross-platform, open-source build system.  CMake is a family of
+ tools designed to build, test and package software.
+"""
+
+toolchain = SYSTEM
+
+source_urls = ['https://www.cmake.org/files/v%(version_major_minor)s']
+sources = [SOURCELOWER_TAR_GZ]
+checksums = ['9f55e1a40508f2f29b7e065fa08c29f82c402fa0402da839fffe64a25755a86d']
+
+dependencies = [
+    ('ncurses', '6.5'),
+    ('zlib', '1.3.1'),
+    ('bzip2', '1.0.8'),
+#    ('cURL', '8.7.1'),
+#    ('libarchive', '3.7.4'),
+]
+
+moduleclass = 'devel'
diff --git a/v/Visit/Visit-3.4.2-foss-2023a.eb b/v/Visit/Visit-3.4.2-foss-2023a.eb
new file mode 100644
index 00000000..7bfe9c64
--- /dev/null
+++ b/v/Visit/Visit-3.4.2-foss-2023a.eb
@@ -0,0 +1,67 @@
+# IT4Innovations
+# LK 2025
+
+easyblock = 'CMakeMake'
+
+name = 'Visit'
+version = '3.4.2'
+
+homepage = 'https://github.com/visit-dav/visit'
+description = """
+VisIt is an Open Source, interactive, scalable, visualization, animation
+and analysis tool. From Unix, Windows or Mac workstations, users can
+interactively visualize and analyze data ranging in scale from small
+(<101 core) desktop-sized projects to large (>105 core) leadership-class
+computing facility simulation campaigns. Users can quickly generate
+visualizations, animate them through time, manipulate them with a
+variety of operators and mathematical expressions, and save the
+resulting images and animations for presentations. VisIt contains a rich
+set of visualization features to enable users to view a wide variety of
+data including scalar and vector fields defined on two- and
+three-dimensional (2D and 3D) structured, adaptive and unstructured
+meshes. Owing to its customizeable plugin design, VisIt is capabable of
+visualizing data from over 120 different scientific data formats.
+"""
+
+toolchain = {'name': 'foss', 'version': '2023a'}
+
+source_urls = ['https://github.com/visit-dav/visit/releases/download/v%(version)s/']
+sources = ['%(namelower)s%(version)s.tar.gz']
+checksums = ['9279975bc855dfcd5ba264d6abbc19e1a3527ff800493fa4ffa67f6eb2ec0ee3']
+
+builddependencies = [('CMake', '3.26.3')]
+dependencies = [
+    ('zlib', '1.2.13'),
+#    ('Python', '3.11.3'),
+#    ('Python-bundle-PyPI', '2023.06'),
+#    ('SciPy-bundle', '2023.07'),
+#    ('X11', '20230603'),
+#    ('Mesa', '23.1.4'),
+#    ('libglvnd', '1.6.0'),
+    ('Qt5', '5.15.10'),
+#    ('Qwt', '6.3.0'),
+    # Visit-3.4.1 needs VTK-9.2.x (not 9.3.x) - https://github.com/visit-dav/visit/issues/19547
+#    ('VTK', '9.2.6'),
+#    ('FFmpeg', '6.0'),
+]
+
+configopts = "-DVISIT_ZLIB_DIR=$EBROOTZLIB "
+#configopts += "-DVISIT_VTK_DIR=$EBROOTVTK -DVISIT_VTK_VERSION=$EBVERSIONVTK "
+#configopts += "-DVISIT_QWT_DIR=$EBROOTQWT "
+configopts += "-DVISIT_QT_VERSION=$EBVERSIONQT5 -DVISIT_QT_DIR=$EBROOTQT5 "
+#configopts += "-DVISIT_OSMESA_DIR=$EBROOTMESA "
+#configopts += "-DVISIT_MESAGL_DIR=$EBROOTLIBGLVND "
+#configopts += "-DPYTHON_DIR=$EBROOTPYTHON "
+#configopts += "-DVISIT_PYTHON_SKIP_INSTALL=ON "
+configopts += "-DVISIT_PARALLEL=ON -DVISIT_MPI_COMPILER=$MPICC -DVISIT_MPI_COMPILER_CXX=$MPICXX "
+#configopts += "-DOpenGL_GL_PREFERENCE=GLVND "
+
+# add missing include to fix make step
+prebuildopts = "sed -i '23 a #include <cmath>' %(builddir)s/%(namelower)s%(version)s/src/gui/QvisStripChart.C && "
+
+sanity_check_paths = {
+    'files': ['bin/%s' % x for x in ['frontendlauncher', 'frontendlauncher.py', 'visit']],
+    'dirs': ['%(version)s/bin'],
+}
+
+moduleclass = 'vis'
diff --git a/v/Visit/Visit-3.4.2.eb b/v/Visit/Visit-3.4.2.eb
new file mode 100644
index 00000000..e4aa0556
--- /dev/null
+++ b/v/Visit/Visit-3.4.2.eb
@@ -0,0 +1,67 @@
+# IT4Innovations
+
+easyblock = 'CMakeMake'
+
+name = 'Visit'
+version = '3.4.2'
+
+homepage = 'https://github.com/visit-dav/visit'
+description = """
+VisIt is an Open Source, interactive, scalable, visualization, animation
+and analysis tool. From Unix, Windows or Mac workstations, users can
+interactively visualize and analyze data ranging in scale from small
+(<101 core) desktop-sized projects to large (>105 core) leadership-class
+computing facility simulation campaigns. Users can quickly generate
+visualizations, animate them through time, manipulate them with a
+variety of operators and mathematical expressions, and save the
+resulting images and animations for presentations. VisIt contains a rich
+set of visualization features to enable users to view a wide variety of
+data including scalar and vector fields defined on two- and
+three-dimensional (2D and 3D) structured, adaptive and unstructured
+meshes. Owing to its customizeable plugin design, VisIt is capabable of
+visualizing data from over 120 different scientific data formats.
+"""
+
+#toolchain = {'name': 'foss', 'version': '2023a'}
+toolchain = SYSTEM
+
+source_urls = ['https://github.com/visit-dav/visit/releases/download/v%(version)s/']
+sources = ['%(namelower)s%(version)s.tar.gz']
+checksums = ['9279975bc855dfcd5ba264d6abbc19e1a3527ff800493fa4ffa67f6eb2ec0ee3']
+
+builddependencies = [('CMake', '3.20.1')]
+#dependencies = [
+#    ('zlib', '1.2.13'),
+#    ('Python', '3.11.3'),
+#    ('Python-bundle-PyPI', '2023.06'),
+#    ('SciPy-bundle', '2023.07'),
+#    ('X11', '20230603'),
+#    ('Mesa', '23.1.4'),
+#    ('libglvnd', '1.6.0'),
+#    ('Qt5', '5.15.10'),
+#    ('Qwt', '6.3.0'),
+#    # Visit-3.4.1 needs VTK-9.2.x (not 9.3.x) - https://github.com/visit-dav/visit/issues/19547
+#    ('VTK', '9.2.6'),
+#    ('FFmpeg', '6.0'),
+#]
+
+#configopts = "-DVISIT_ZLIB_DIR=$EBROOTZLIB "
+#configopts += "-DVISIT_VTK_DIR=$EBROOTVTK -DVISIT_VTK_VERSION=$EBVERSIONVTK "
+#configopts += "-DVISIT_QWT_DIR=$EBROOTQWT "
+#configopts += "-DVISIT_QT_VERSION=$EBVERSIONQT5 -DVISIT_QT_DIR=$EBROOTQT5 "
+#configopts += "-DVISIT_OSMESA_DIR=$EBROOTMESA "
+#configopts += "-DVISIT_MESAGL_DIR=$EBROOTLIBGLVND "
+#configopts += "-DPYTHON_DIR=$EBROOTPYTHON "
+#configopts += "-DVISIT_PYTHON_SKIP_INSTALL=ON "
+#configopts += "-DVISIT_PARALLEL=ON -DVISIT_MPI_COMPILER=$MPICC -DVISIT_MPI_COMPILER_CXX=$MPICXX "
+#configopts += "-DOpenGL_GL_PREFERENCE=GLVND "
+
+# add missing include to fix make step
+#prebuildopts = "sed -i '23 a #include <cmath>' %(builddir)s/%(namelower)s%(version)s/src/gui/QvisStripChart.C && "
+
+sanity_check_paths = {
+    'files': ['bin/%s' % x for x in ['frontendlauncher', 'frontendlauncher.py', 'visit']],
+    'dirs': ['%(version)s/bin'],
+}
+
+moduleclass = 'vis'