xref: /petsc/config/examples/arch-ci-linux-intel-cmplx.py (revision 58256f306a3b839fcaddd686dc61d2820e658499) !
1#!/usr/bin/env python3
2
3import os
4petsc_hash_pkgs=os.path.join(os.getenv('HOME'),'petsc-hash-pkgs')
5
6if __name__ == '__main__':
7  import sys
8  import os
9  sys.path.insert(0, os.path.abspath('config'))
10  import configure
11  configure_options = [
12    '--package-prefix-hash='+petsc_hash_pkgs,
13    'CC=icx',
14    'CXX=icpx',
15    'FC=ifx',
16    # Intel compilers enable GCC/clangs equivalent of -ffast-math *by default*. This is
17    # bananas, so we make sure they use the same model as everyone else
18    'COPTFLAGS=-g -O -fp-model=precise -Wno-deprecated-non-prototype -Wno-implicit-int -Wno-implicit-function-declaration -Wno-incompatible-pointer-types -Wincompatible-function-pointer-types -Wno-unused-result',
19    'FOPTFLAGS=-g -O',
20    'CXXOPTFLAGS=-g -O -fp-model=precise',
21    '--with-scalar-type=complex',
22    '--with-blaslapack-dir='+os.environ['MKLROOT'],
23    '--with-mkl_pardiso-dir='+os.environ['MKLROOT'],
24    '--download-mpich',
25    '--download-bamg',
26    '--download-chaco',
27    '--download-codipack',
28    '--download-ctetgen',
29    '--download-hdf5',
30    '--download-hypre',
31    '--download-metis',
32    '--download-mpi4py',
33    # '--download-mumps',
34    '--download-p4est',
35    '--download-parmetis',
36    '--with-petsc4py',
37    '--download-slepc',
38    '--download-slepc-configure-arguments=--download-hpddm',
39    '--with-slepc4py',
40    '--download-scalapack',
41    '--download-strumpack',
42    '--download-suitesparse',
43    '--download-superlu',
44    '--download-superlu_dist',
45    '--download-tetgen',
46    '--download-tetgen-build-exec',
47    '--download-triangle',
48    '--download-triangle-build-exec',
49    '--download-zlib',
50    '--with-strict-petscerrorcode',
51  ]
52  configure.petsc_configure(configure_options)
53