Skip to content
Snippets Groups Projects
Commit b2140d81 authored by Sebastian Achilles's avatar Sebastian Achilles
Browse files

Revert Clang 10.0.1

parent b98debe1
Branches
Tags
No related merge requests found
......@@ -2,13 +2,6 @@
Overview of the custom EasyBlocks.
## CLANG
- __*added by*__ s.achilles
- __*needed because*__ build_extra_clang_tools Support.
- __*difference compared to upstream*__ Same as upstream EasyBlocks 4.3.4
- __*can be removed*__ when we upgread EasyBlocks 4.3.4+
## GCC
- __*added by*__ s.achilles
......
This diff is collapsed.
# For using $SYSTEMNAME to determine compute capability. The local prefix is to appease the checker
import os as local_os
name = 'Clang'
version = '10.0.1'
homepage = 'https://clang.llvm.org/'
description = """C, C++, Objective-C compiler, based on LLVM. Does not
include C++ standard library -- use libstdc++ from GCC."""
site_contacts = 'sc@fz-juelich.de'
# Clang also depends on libstdc++ during runtime, but this dependency is
# already specified as the toolchain.
toolchain = {'name': 'GCCcore', 'version': '9.3.0'}
# Do not set optarch to True: it will cause the build to fail
toolchainopts = {'optarch': False}
source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"]
sources = [
# clang needs the llvm source, therefore the LLVM module is not enough
'llvm-%(version)s.src.tar.xz',
'clang-%(version)s.src.tar.xz',
'compiler-rt-%(version)s.src.tar.xz',
'polly-%(version)s.src.tar.xz',
'openmp-%(version)s.src.tar.xz',
# Also include the LLVM linker
'lld-%(version)s.src.tar.xz',
'libcxx-%(version)s.src.tar.xz',
'libcxxabi-%(version)s.src.tar.xz',
'clang-tools-extra-%(version)s.src.tar.xz',
]
patches = ['libcxx-10.0.0-ppc64le.patch']
checksums = [
'c5d8e30b57cbded7128d78e5e8dad811bff97a8d471896812f57fa99ee82cdf3', # llvm-10.0.1.src.tar.xz
'f99afc382b88e622c689b6d96cadfa6241ef55dca90e87fc170352e12ddb2b24', # clang-10.0.1.src.tar.xz
'd90dc8e121ca0271f0fd3d639d135bfaa4b6ed41e67bd6eb77808f72629658fa', # compiler-rt-10.0.1.src.tar.xz
'd2fb0bb86b21db1f52402ba231da7c119c35c21dfb843c9496fe901f2d6aa25a', # polly-10.0.1.src.tar.xz
'd19f728c8e04fb1e94566c8d76aef50ec926cd2f95ef3bf1e0a5de4909b28b44', # openmp-10.0.1.src.tar.xz
'591449e0aa623a6318d5ce2371860401653c48bb540982ccdd933992cb88df7a', # lld-10.0.1.src.tar.xz
'def674535f22f83131353b3c382ccebfef4ba6a35c488bdb76f10b68b25be86c', # libcxx-10.0.1.src.tar.xz
'a97ef810b2e9fb70e8f7e317b74e646ed4944f488b02ac5ddd9c99e385381a7b', # libcxxabi-10.0.1.src.tar.xz
'd093782bcfcd0c3f496b67a5c2c997ab4b85816b62a7dd5b27026634ccf5c11a', # clang-tools-extra-10.0.1.src.xz
'a424a9eb7f377b4f01d8c9b27fdd78e6a51a53819b263d2ca6d40a0e2368a330', # libcxx-10.0.0-ppc64le.patch
]
dependencies = [
# since Clang is a compiler, binutils is a runtime dependency too
('binutils', '2.34'),
('hwloc', '2.2.0'),
('libxml2', '2.9.10'),
('ncurses', '6.2'),
('GMP', '6.2.0'),
('Z3', '4.8.9'),
]
builddependencies = [
('CMake', '3.18.0'),
('Python', '3.8.5'),
]
default_cuda_capability = {
'juwels': '70',
'juwelsbooster': '80',
'jurecadc': '80',
'jusuf': '70',
'hdfml': '70'
}[local_os.environ['SYSTEMNAME']]
cuda_compute_capabilities = {
'juwels': ['7.0'],
'juwelsbooster': ['8.0'],
'jurecadc': ['8.0'],
'jusuf': ['7.0'],
'hdfml': ['7.0']
}[local_os.environ['SYSTEMNAME']]
assertions = True
usepolly = True
build_lld = True
libcxx = True
enable_rtti = True
build_extra_clang_tools = True
skip_all_tests = True
stage3_configopts = '-DLIBOMPTARGET_NVPTX_ENABLE_BCLIB=1'
stage3_configopts += ' -DLIBOMPTARGET_NVPTX_CUDA_COMPILER=%(builddir)s/llvm.obj.2/bin/clang'
stage3_configopts += ' -DLIBOMPTARGET_NVPTX_BC_LINKER=%(builddir)s/llvm.obj.2//bin/llvm-link'
modluafooter = '''
add_property("arch","gpu")
'''
# it should be a compiler, but then we won't be able to load GCC+MPI
moduleclass = 'devel'
Reverse the if def order. Patch from https://bugs.llvm.org/show_bug.cgi?id=39696#c38
Prepared for EasyBuild by Simon Branford, University of Birmingham
--- a/projects/libcxx/include/thread.orig 2020-03-23 16:01:02.000000000 +0100
+++ b/projects/libcxx/include/thread 2020-04-08 19:19:31.625082029 +0200
@@ -369,9 +369,9 @@
{
#if defined(_LIBCPP_COMPILER_GCC) && (__powerpc__ || __POWERPC__)
// GCC's long double const folding is incomplete for IBM128 long doubles.
- _LIBCPP_CONSTEXPR duration<long double> _Max = nanoseconds::max();
-#else
_LIBCPP_CONSTEXPR duration<long double> _Max = duration<long double>(ULLONG_MAX/1000000000ULL) ;
+#else
+ _LIBCPP_CONSTEXPR duration<long double> _Max = nanoseconds::max();
#endif
nanoseconds __ns;
if (__d < _Max)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment