Skip to content

Commit c2d139f

Browse files
author
Jorge Ejarque
committed
updated packages
1 parent 09d08da commit c2d139f

File tree

9 files changed

+124
-18
lines changed

9 files changed

+124
-18
lines changed

cfg/packages.yaml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,11 +88,15 @@ packages:
8888
externals:
8989
- spec: zlib@1.2.11
9090
prefix: /usr
91-
bzip2:
92-
externals:
93-
- spec: bzip2@1.0.6
94-
prefix: /
91+
#bzip2:
92+
# externals:
93+
# - spec: bzip2@1.0.6
94+
# prefix: /
9595
tar:
9696
externals:
9797
- spec: tar@1.29
9898
prefix: /
99+
cpio:
100+
externals:
101+
- spec: cpio@2.12
102+
prefix: /

packages/compss/package.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class Compss(Package):
3737
version('2.10', sha256='0795ca7674f1bdd0faeac950fa329377596494f64223650fe65a096807d58a60', preferred=True)
3838

3939
# dependencies.
40-
depends_on('python')
40+
depends_on('python@3.6')
4141
depends_on('openjdk')
4242
depends_on('boost')
4343
depends_on('libxml2')

packages/fesom2/package.py

Lines changed: 51 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,21 +43,33 @@ class Fesom2(CMakePackage):
4343
depends_on('blas')
4444

4545
variant('hecuba', default=False, description='Builds a MPI version of the library')
46-
def setup_build_environment(self, env):
47-
env.set('CC', self.spec['mpi'].mpicc)
48-
env.set('FC',self.spec['mpi'].mpifc)
49-
env.set('CXX', self.spec['mpi'].mpicxx)
50-
env.set('F77', self.spec['mpi'].mpif77)
46+
47+
#def setup_build_environment(self, env):
48+
#env.set('CC', self.spec['mpi'].mpicc)
49+
#env.set('FC',self.spec['mpi'].mpifc)
50+
#env.set('CXX', self.spec['mpi'].mpicxx)
51+
#env.set('F77', self.spec['mpi'].mpif77)
52+
#env.prepend_path('LD_LIBRARY_PATH', str(self.spec['blas'].libs.directories[0]))
53+
#env.prepend_path('C_INCLUDE_PATH', str(self.spec['blas'].headers.directories[0]))
54+
#env.append_flags('LD_FLAGS',self.spec['blas'].libs.ld_flags)
5155

5256
@run_after('install')
5357
def copy_fesom(self):
54-
#print("***** Calling super install ****")
58+
#pmrint("***** Calling super install ****")
5559
#super().install(spec, prefix)
5660
print("***** Coping fesom binary to bin ****")
5761
mkdirp(self.prefix.bin)
5862
install(self.stage.source_path+'/bin/fesom.x', self.prefix.bin)
63+
def patch(self):
64+
microarch = self.spec.target
65+
comp = self.spec.compiler
66+
filter_file("-march=native", microarch.optimization_flags(comp.name, str(comp.version)),
67+
"Makefile.in_gnu_impi")
68+
filter_file("-march=native", microarch.optimization_flags(comp.name, str(comp.version)),
69+
"src/CMakeLists.txt")
5970

6071
def cmake_args(self):
72+
spec = self.spec
6173
# FIXME: Add arguments other than
6274
# FIXME: CMAKE_INSTALL_PREFIX and CMAKE_BUILD_TYPE
6375
# FIXME: If not needed delete this function
@@ -66,4 +78,37 @@ def cmake_args(self):
6678
args.append('-DUSE_HECUBA=ON')
6779
else:
6880
args.append('-DUSE_HECUBA=OFF')
81+
args.append(self.define('CMAKE_C_COMPILER', spec['mpi'].mpicc))
82+
args.append(self.define('CMAKE_CXX_COMPILER', spec['mpi'].mpicxx))
83+
args.append(self.define('CMAKE_Fortran_COMPILER', spec['mpi'].mpifc))
84+
if ('^intel-mkl' in spec or '^intel-parallel-studio+mkl' in spec):
85+
args.extend([self.define("BLA_VENDOR", "Intel10_64ilp")])
86+
elif '^netlib-lapack' in spec:
87+
args.extend([self.define("BLA_VENDOR", "Generic")])
88+
elif '^openblas' in spec:
89+
args.extend([self.define("BLA_VENDOR", "OpenBLAS")])
90+
microarch = self.spec.target
91+
comp = self.spec.compiler
92+
math_libs = self.spec['blas'].libs
93+
args.extend([self.define("CMAKE_C_FLAGS",microarch.optimization_flags(comp.name, str(comp.version)) +" "+self.spec['blas'].headers.include_flags)])
94+
args.extend([self.define("CMAKE_CXX_FLAGS",microarch.optimization_flags(comp.name, str(comp.version))+ " "+self.spec['blas'].headers.include_flags)])
95+
args.extend([self.define("CMAKE_Fortran_FLAGS",microarch.optimization_flags(comp.name, str(comp.version))+" "+self.spec['blas'].headers.include_flags)])
96+
#args.append('-DBLA_VENDOR=Intel10_64ilp')
97+
#args.append('-DBLA_STATIC=ON')
98+
#args.append('-DBLA_VENDOR=OpenBLAS')
99+
"""
100+
blas = self.spec['blas'].libs
101+
args.extend([
102+
'-DBLAS_LIBRARY_NAMES={0}'.format(';'.join(blas.names)),
103+
'-DBLAS_LIBRARY_DIRS={0}'.format(';'.join(blas.directories))])
104+
math_libs = self.spec['blas'].libs
105+
args.append(
106+
'-DMATH_LIBS:STRING={0}'.format(math_libs.ld_flags)
107+
)
108+
"""
109+
110+
args.append(
111+
'-DBLAS_LIBRARIES={0}'.format("-L"+self.spec['blas'].libs.directories[0]+" -Wl,--no-as-needed -lmkl_gf_ilp64 -lmkl_gnu_thread -lmkl_core -lgomp -lpthread -lm -ldl")
112+
)
69113
return args
114+

packages/kratos/fom.json

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"execution" : {
3+
"type":"task"
4+
},
5+
"constraints" : {
6+
"computing_units": "$KRATOS_CUS"
7+
},
8+
"parameters" : {
9+
"returns" : 1,
10+
"model" : "IN",
11+
"parameters" : "IN",
12+
"sample" : "IN"
13+
}
14+
}

packages/kratos/model.json

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"execution" : {
3+
"type":"task"
4+
},
5+
"constraints" : {
6+
"computing_units": "$KRATOS_CUS"
7+
},
8+
"parameters" : {
9+
"returns" : 2,
10+
"model_file" : "FILE_IN",
11+
"parameters" : "IN"
12+
}
13+
}

packages/kratos/package.py

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,17 @@ class Kratos(CMakePackage):
4040

4141
# FIXME: Add dependencies if required.
4242
depends_on('boost')
43-
depends_on('python@3:')
44-
43+
depends_on('python@3.6:')
44+
depends_on('blas')
45+
4546
#variant
4647
variant('mpi', default=False, description='Builds a MPI version of the library')
4748
depends_on('mpi', when='+mpi')
4849
variant('mmg', default=False, description='Builds a MMG version of the library')
4950
depends_on('mmg', when='+mmg')
5051
variant('apps', default='none', multi=True, description='Builds apps version of the library')
52+
variant('eigen_mkl', default=False, description='Builds a Eigen_mkl version of the library')
53+
depends_on('intel-mkl', when='+eigen_mkl')
5154

5255
def url_for_version(self, version):
5356
url = "https://github.com/KratosMultiphysics/Kratos/archive/refs/tags/v{0}.tar.gz"
@@ -61,20 +64,25 @@ def setup_build_environment(self, env):
6164
for app in apps:
6265
kratos_apps = kratos_apps + os.path.join(applications_path, app) + ";"
6366
env.set('KRATOS_APPLICATIONS', kratos_apps)
67+
print("PYTHON_EXECUTABLE:" + str(self.spec['python'].prefix.bin + "/python3"))
68+
env.set('PYTHON_EXECUTABLE',self.spec['python'].prefix.bin + "/python3")
6469

6570
def setup_run_environment(self, env):
6671
env.prepend_path('LD_LIBRARY_PATH', self.prefix.lib)
6772
env.prepend_path('PYTHONPATH', self.prefix)
6873

74+
6975
def cmake_args(self):
7076
# Add arguments other than
7177
# CMAKE_INSTALL_PREFIX and CMAKE_BUILD_TYPE
7278
args = []
7379
if self.spec.variants['mpi'].value == True:
74-
args.append('USE_MPI=ON')
80+
args.append('-DUSE_MPI=ON')
7581
else:
76-
args.append('USE_MPI=OFF')
82+
args.append('-DUSE_MPI=OFF')
7783
if self.spec.variants['mmg'].value == True:
78-
args.append('USE_MMG=ON')
84+
args.append('-DUSE_MMG=ON')
85+
if self.spec.variants['eigen_mkl'].value == True:
86+
args.append('-DUSE_EIGEN_MKL=ON')
7987
return args
8088

packages/kratos/rom.json

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"execution" : {
3+
"type":"task"
4+
},
5+
"constraints" : {
6+
"computing_units": "$KRATOS_CUS"
7+
},
8+
"parameters" : {
9+
"returns" : 1,
10+
"model" : "IN",
11+
"parameters" : "IN",
12+
"sample": "IN",
13+
"rom" : "FILE_IN"
14+
}
15+
}

packages/py-dislib/dislib.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
2+
{
3+
"execution": {
4+
"type":"workflow"
5+
}
6+
}
7+

packages/py-dislib/package.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,9 @@ class PyDislib(PythonPackage):
4242
# FIXME: Add dependencies if required. Only add the python dependency
4343
# if you need specific versions. A generic python dependency is
4444
# added implicity by the PythonPackage class.
45-
depends_on('python@3:', type=('build', 'run'))
45+
depends_on('python@3.6', type=('build', 'run'))
4646
#depends_on('py-setuptools', type='build')
47-
depends_on('py-scikit-learn@0.23^py-scipy@1.5.0^py-numpy@1.19', type=('run'))
47+
depends_on('py-scikit-learn@0.23.2^py-scipy@1.5.0^py-numpy@1.19.5', type=('run'))
4848
#depends_on('py-scikit-learn', type=('run'))
4949
#depends_on('py-cvxpy', type=('run'))
5050

0 commit comments

Comments
 (0)