diff --git a/easybuild/easyconfigs/c/CastXML/CastXML-0.6.13-GCCcore-14.2.0.eb b/easybuild/easyconfigs/c/CastXML/CastXML-0.6.13-GCCcore-14.2.0.eb new file mode 100644 index 000000000000..0fa7339aaec2 --- /dev/null +++ b/easybuild/easyconfigs/c/CastXML/CastXML-0.6.13-GCCcore-14.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'CastXML' +version = '0.6.13' + +homepage = 'https://github.com/CastXML/CastXML' +description = """CastXML is a C-family abstract syntax tree XML output tool.""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} + +github_account = 'CastXML' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['df954886464fe624887411e5f4e2a7db00da3d64a48f142d3aff973e2097e2d6'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.31.3'), +] + +dependencies = [ + ('LLVM', '20.1.7'), + ('ncurses', '6.5'), + ('zlib', '1.3.1'), +] + +sanity_check_paths = { + 'files': ['bin/castxml'], + 'dirs': ['share/castxml'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/ITK/ITK-5.4.5-foss-2025a.eb b/easybuild/easyconfigs/i/ITK/ITK-5.4.5-foss-2025a.eb new file mode 100644 index 000000000000..70f5a05d317d --- /dev/null +++ b/easybuild/easyconfigs/i/ITK/ITK-5.4.5-foss-2025a.eb @@ -0,0 +1,89 @@ +# Contributors: +# Fenglai Liu (fenglai@accre.vanderbilt.edu) - Vanderbilt University +# Alex Domingo (alex.domingo.toro@vub.be) - Vrije Universiteit Brussel (VUB) +# Denis Kristak (INUITS), Pavel Tománek (INUITS) +# Update: Petr Král (INUITS) + +easyblock = 'CMakeMake' + +name = 'ITK' +version = '5.4.5' + +homepage = 'https://itk.org' +description = """Insight Segmentation and Registration Toolkit (ITK) provides + an extensive suite of software tools for registering and segmenting + multidimensional imaging data.""" + +toolchain = {'name': 'foss', 'version': '2025a'} + +github_account = 'InsightSoftwareConsortium' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'ITK-5.3.0_add-vtk-include-dir.patch', +] +checksums = [ + {'v5.4.5.tar.gz': 'bb53785b9803ed2dc4fd6b395f6fe089fcdbdfdeb9242549257b9adcefc9f73e'}, + {'ITK-5.3.0_add-vtk-include-dir.patch': 'df7e834a024db5d1a1459d898bd43a044351e29759ab0bf69ce03d64da95b3f7'}, +] + +builddependencies = [ + ('CMake', '3.31.3'), + ('Bison', '3.8.2'), + ('Eigen', '3.4.0'), + ('SWIG', '4.3.1'), + ('Perl', '5.40.0'), + ('git', '2.49.0'), +] +dependencies = [ + ('Python', '3.13.1'), + ('SciPy-bundle', '2025.06'), + ('double-conversion', '3.3.1'), + ('expat', '2.6.4'), + ('HDF5', '1.14.6'), + ('libjpeg-turbo', '3.1.0'), + ('libpng', '1.6.48'), + ('LibTIFF', '4.7.0'), + ('VTK', '9.5.0'), + ('zlib', '1.3.1'), + ('CastXML', '0.6.13'), +] + +# Features +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' +configopts += '-DModule_ITKReview=ON -DModule_ITKVtkGlue=ON -DModule_SimpleITKFilters=ON ' +# Enable Python bindings +configopts += '-DITK_WRAP_PYTHON:BOOL=ON -DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' +configopts += '-DSWIG_EXECUTABLE=$EBROOTSWIG/bin/swig -DSWIG_DIR=$EBROOTSWIG ' +configopts += '-DPY_SITE_PACKAGES_PATH=%(installdir)s/lib/python%(pyshortver)s/site-packages ' +# Dependencies from EB +local_sys_deps = [ + 'CASTXML', + 'DOUBLECONVERSION', + 'EIGEN', + 'EXPAT', + 'FFTW', + 'HDF5', + 'JPEG', + 'PNG', + 'SWIG', + 'TIFF', + 'ZLIB' +] +local_sys_cmake = ['-DITK_USE_SYSTEM_%s=ON' % d for d in local_sys_deps] +configopts += ' '.join(local_sys_cmake) + +prebuildopts = 'LC_ALL=C ' + +local_lib_names = ['ITKCommon', 'ITKIOHDF5', 'ITKIOJPEG', 'ITKIOPNG', 'ITKIOTIFF', + 'ITKReview', 'ITKVTK', 'ITKVtkGlue', 'itkSimpleITKFilters'] + +sanity_check_paths = { + 'files': ['bin/itkTestDriver'] + + ['lib/lib%s-%%(version_major)s.%%(version_minor)s.%s' % (lname, SHLIB_EXT) for lname in local_lib_names], + 'dirs': ['include/ITK-%(version_major)s.%(version_minor)s', 'lib/python%(pyshortver)s/site-packages', 'share'], +} + +sanity_check_commands = ["python -s -c 'import itk'"] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/SimpleITK/SimpleITK-2.5.3-foss-2025a.eb b/easybuild/easyconfigs/s/SimpleITK/SimpleITK-2.5.3-foss-2025a.eb new file mode 100644 index 000000000000..1551b29bcb1d --- /dev/null +++ b/easybuild/easyconfigs/s/SimpleITK/SimpleITK-2.5.3-foss-2025a.eb @@ -0,0 +1,48 @@ +easyblock = 'CMakeMake' + +name = 'SimpleITK' +version = '2.5.3' + +homepage = 'https://www.simpleitk.org' +description = """SimpleITK is a simplified programming interface to the algorithms and data structures of + the Insight Toolkit (ITK).""" + +toolchain = {'name': 'foss', 'version': '2025a'} + +source_urls = ['https://github.com/%(name)s/%(name)s/releases/download/v%(version)s'] +sources = [SOURCE_TAR_GZ] +checksums = ['1ef3642b0695c8eb0a0193fefe7677c57bce94a86d6b01f48f58b2291b4ca935'] + +builddependencies = [ + ('CMake', '3.31.3'), + ('SWIG', '4.3.1'), + ('Lua', '5.4.8'), +] + +dependencies = [ + ('Python', '3.13.1'), + ('ITK', '5.4.5'), + ('scikit-build', '0.18.1'), +] + +# Enable Python bindings +configopts = "-DWRAP_DEFAULT:BOOL=OFF -DWRAP_PYTHON=BOOL:ON -DSimpleITK_LUA_EXECUTABLE=$EBROOTLUA/bin/lua " + +# Install Python module as extension +exts_defaultclass = 'PythonPackage' + +exts_list = [ + (name, version, { + 'modulename': '%(name)s', + 'source_urls': ['https://github.com/%(name)s/%(name)s/releases/download/v%(version)s'], + 'start_dir': '%(builddir)s/easybuild_obj/Wrapping/Python', + 'checksums': ['1ef3642b0695c8eb0a0193fefe7677c57bce94a86d6b01f48f58b2291b4ca935'], + }), +] + +sanity_check_paths = { + 'files': ['lib/libSimpleITK_ITKBiasCorrection-%(version_major_minor)s.a'], + 'dirs': ['include/%(name)s-%(version_major_minor)s', 'lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools'