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="--with-slepc4py"', 39 '--download-scalapack', 40 '--download-strumpack', 41 '--download-suitesparse', 42 '--download-superlu', 43 '--download-superlu_dist', 44 '--download-tetgen', 45 '--download-triangle', 46 '--download-zlib', 47 '--with-strict-petscerrorcode', 48 ] 49 configure.petsc_configure(configure_options) 50