diff --git a/easybuild/easyconfigs/c/Clang/Clang-18.1.6-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/c/Clang/Clang-18.1.6-GCCcore-13.3.0-CUDA-12.6.0.eb new file mode 100644 index 000000000000..2d643ae5977f --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-18.1.6-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,54 @@ +name = 'Clang' +version = "18.1.6" +versionsuffix = '-CUDA-%(cudaver)s' +easyblock = 'EB_LLVM' + +homepage = 'https://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': 'GCCcore', 'version': '13.3.0'} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-project-%(version)s.src.tar.xz', +] + +#checksums = ['10eb1d36aabbc5d31c9d2af27844f51638d40be28975a4ab20ad13609f7da23d'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Perl', '5.38.2'), + # Including Python bindings would require this as a runtime dep + ('Python', '3.12.3'), +] +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.42'), + ('hwloc', '2.10.0'), + ('libxml2', '2.12.7'), + ('ncurses', '6.5'), + ('GMP', '6.3.0'), + ('Z3', '4.13.0'), + ('CUDA', '12.6.0', '', SYSTEM), +] + +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ +enable_rtti = False + +assertions = True +build_clang_extras = True +build_lld = True +build_lldb = True +build_runtimes = True +build_shared_libs = True +python_bindings = False +skip_all_tests = True +use_polly = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/Clang/Clang-18.1.8-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/c/Clang/Clang-18.1.8-GCCcore-13.3.0-CUDA-12.6.0.eb index 4ab1428d8b44..ab06134d71fc 100644 --- a/easybuild/easyconfigs/c/Clang/Clang-18.1.8-GCCcore-13.3.0-CUDA-12.6.0.eb +++ b/easybuild/easyconfigs/c/Clang/Clang-18.1.8-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -1,16 +1,7 @@ -## -# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild -# -# Copyright:: Copyright 2013-2015 Dmitri Gribenko, Ward Poelmans -# Authors:: Dmitri Gribenko -# Authors:: Ward Poelmans -# License:: GPLv2 or later, MIT, three-clause BSD. -# $Id$ -## - name = 'Clang' -version = '18.1.8' +version = "18.1.8" versionsuffix = '-CUDA-%(cudaver)s' +easyblock = 'EB_LLVM' homepage = 'https://clang.llvm.org/' description = """C, C++, Objective-C compiler, based on LLVM. Does not @@ -24,13 +15,13 @@ source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-% sources = [ 'llvm-project-%(version)s.src.tar.xz', ] -checksums = ['0b58557a6d32ceee97c8d533a59b9212d87e0fc4d2833924eb6c611247db2f2a'] + +#checksums = ['10eb1d36aabbc5d31c9d2af27844f51638d40be28975a4ab20ad13609f7da23d'] builddependencies = [ ('CMake', '3.29.3'), ('Perl', '5.38.2'), # Including Python bindings would require this as a runtime dep - # and SWIG as an additional build dep ('Python', '3.12.3'), ] dependencies = [ @@ -42,17 +33,22 @@ dependencies = [ ('GMP', '6.3.0'), ('Z3', '4.13.0'), ('CUDA', '12.6.0', '', SYSTEM), - ] -# If True, Flang does not currently support building with LLVM exceptions enabled. +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ enable_rtti = False assertions = True +build_clang_extras = True +build_lld = True +build_lldb = True +build_runtimes = True +build_shared_libs = True python_bindings = False skip_all_tests = True - -llvm_runtimes = ['libunwind', 'libcxx', 'libcxxabi'] -llvm_projects = ['polly', 'lld', 'lldb', 'clang-tools-extra', 'flang'] +use_polly = True moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/Clang/Clang-19.1.0-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/c/Clang/Clang-19.1.0-GCCcore-13.3.0-CUDA-12.6.0.eb new file mode 100644 index 000000000000..ad353f5b6ad0 --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-19.1.0-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,54 @@ +name = 'Clang' +version = "19.1.0" +versionsuffix = '-CUDA-%(cudaver)s' +easyblock = 'EB_LLVM' + +homepage = 'https://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': 'GCCcore', 'version': '13.3.0'} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-project-%(version)s.src.tar.xz', +] + +#checksums = ['10eb1d36aabbc5d31c9d2af27844f51638d40be28975a4ab20ad13609f7da23d'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Perl', '5.38.2'), + # Including Python bindings would require this as a runtime dep + ('Python', '3.12.3'), +] +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.42'), + ('hwloc', '2.10.0'), + ('libxml2', '2.12.7'), + ('ncurses', '6.5'), + ('GMP', '6.3.0'), + ('Z3', '4.13.0'), + ('CUDA', '12.6.0', '', SYSTEM), +] + +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ +enable_rtti = False + +assertions = True +python_bindings = False +skip_all_tests = True +build_runtimes = True +build_shared_libs = True +use_polly = True +build_lld = True +build_lldb = True +build_clang_extras = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/Clang/Clang-20.1.0-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/c/Clang/Clang-20.1.0-GCCcore-13.3.0-CUDA-12.6.0.eb new file mode 100644 index 000000000000..1812ea241e3b --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-20.1.0-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,54 @@ +name = 'Clang' +version = "20.1.0" +versionsuffix = '-CUDA-%(cudaver)s' +easyblock = 'EB_LLVM' + +homepage = 'https://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': 'GCCcore', 'version': '13.3.0'} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-project-%(version)s.src.tar.xz', +] + +#checksums = ['10eb1d36aabbc5d31c9d2af27844f51638d40be28975a4ab20ad13609f7da23d'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Perl', '5.38.2'), + # Including Python bindings would require this as a runtime dep + ('Python', '3.12.3'), +] +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.42'), + ('hwloc', '2.10.0'), + ('libxml2', '2.12.7'), + ('ncurses', '6.5'), + ('GMP', '6.3.0'), + ('Z3', '4.13.0'), + ('CUDA', '12.6.0', '', SYSTEM), +] + +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ +enable_rtti = False + +assertions = True +python_bindings = False +skip_all_tests = True +build_runtimes = True +build_shared_libs = True +use_polly = True +build_lld = True +build_lldb = True +build_clang_extras = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/Clang/Clang-21.0.0-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/c/Clang/Clang-21.0.0-GCCcore-13.3.0-CUDA-12.6.0.eb new file mode 100644 index 000000000000..2582e45acddd --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-21.0.0-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,56 @@ +name = 'Clang' +easyblock = 'EB_LLVM' +version = '21.0.0' +versionsuffix = '-CUDA-%(cudaver)s' +local_commit = '3bd3e06' # 'a66376b0dc3b' + +homepage = 'https://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': 'GCCcore', 'version': '13.3.0'} + +sources = [{ + 'source_urls': ["https://github.com/llvm/llvm-project/archive"], + 'download_filename': '%s.tar.gz' % local_commit, + 'filename': 'llvm-project-%s.tar.gz' % version, +}] + +#checksums = ['10eb1d36aabbc5d31c9d2af27844f51638d40be28975a4ab20ad13609f7da23d'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('Perl', '5.38.2'), + # Including Python bindings would require this as a runtime dep + ('Python', '3.12.3'), +] +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.42'), + ('hwloc', '2.10.0'), + ('libxml2', '2.12.7'), + ('ncurses', '6.5'), + ('GMP', '6.3.0'), + ('Z3', '4.13.0'), + ('CUDA', '12.6.0', '', SYSTEM), +] + +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ +enable_rtti = False + +assertions = True +build_clang_extras = True +build_lld = True +build_lldb = True +build_runtimes = True +build_shared_libs = True +python_bindings = False +skip_all_tests = True +use_polly = True + +moduleclass = 'compiler'