-
Notifications
You must be signed in to change notification settings - Fork 713
/
Copy pathFlexiBLAS-3.4.4-GCC-13.3.0.eb
59 lines (49 loc) · 2.19 KB
/
FlexiBLAS-3.4.4-GCC-13.3.0.eb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
easyblock = 'Bundle'
name = 'FlexiBLAS'
version = '3.4.4'
homepage = 'https://gitlab.mpi-magdeburg.mpg.de/software/flexiblas-release'
description = """FlexiBLAS is a wrapper library that enables the exchange of the BLAS and LAPACK implementation
used by a program without recompiling or relinking it."""
toolchain = {'name': 'GCC', 'version': '13.3.0'}
local_extra_flags = "-fstack-protector-strong -fstack-clash-protection"
toolchainopts = {'pic': True, 'extra_cflags': local_extra_flags, 'extra_fflags': local_extra_flags}
builddependencies = [
('CMake', '3.29.3'),
('Python', '3.12.3'), # required for running the tests
('BLIS', '1.0'),
]
dependencies = [
('OpenBLAS', '0.3.27'),
]
# note: first listed backend will be used as default by FlexiBLAS,
# unless otherwise specified via easyconfig parameter flexiblas_default
local_backends = ['OpenBLAS', 'BLIS']
# imkl supplies its backend via the imkl module, not as a dependency
if ARCH == 'x86_64':
local_backends.append('imkl')
default_component_specs = {'start_dir': '%(namelower)s-%(version)s'}
sanity_check_all_components = True
# Also build and install LAPACKE, which FlexiBLAS does not support yet
components = [
(name, version, {
'source_urls':
['https://gitlab.mpi-magdeburg.mpg.de/api/v4/projects/386/packages/generic/flexiblas-source/v3.4.4/'],
'sources': [SOURCELOWER_TAR_GZ],
'checksums': ['05040ae092142dd0bf38d1bb9ce33f6b475d9f9bb455e33be997932ae855c22b'],
'backends': local_backends,
}),
('LAPACK', '3.12.0', {
'easyblock': 'CMakeMake',
'source_urls': ['https://github.com/Reference-LAPACK/lapack/archive/'],
'sources': ['v%(version)s.tar.gz'],
'checksums': ['eac9570f8e0ad6f30ce4b963f4f033f0f643e7c3912fc9ee6cd99120675ad48b'],
'configopts': ('-DBUILD_SHARED_LIBS=ON -DUSE_OPTIMIZED_BLAS=ON -DLAPACKE=ON '
'-DUSE_OPTIMIZED_LAPACK=ON -DBUILD_DEPRECATED=ON '
'-DCMAKE_INSTALL_INCLUDEDIR=%(installdir)s/include/flexiblas'),
'sanity_check_paths': {
'files': ['lib/liblapacke.%s' % SHLIB_EXT, 'include/flexiblas/lapacke.h'],
'dirs': [],
},
}),
]
moduleclass = 'lib'