xref: /petsc/include/petscblaslapack.h (revision a58c3bc3391eee32bc3fd94ac7edeea38fe57aae)
1 /*
2   This file dispatches between various header files for blas/lapack distributions.
3 */
4 #if !defined(_BLASLAPACK_H)
5 #define _BLASLAPACK_H
6 #include "petsc.h"
7 
8 #if defined(PETSC_BLASLAPACK_MKL64_ONLY)
9 # define PETSC_MISSING_LAPACK_GESVD
10 # define PETSC_MISSING_LAPACK_GEEV
11 # define PETSC_MISSING_LAPACK_SYEV
12 # define PETSC_MISSING_LAPACK_SYEVX
13 # define PETSC_MISSING_LAPACK_SYGV
14 # define PETSC_MISSING_LAPACK_SYGVX
15 # define PETSC_MISSING_LAPACK_GETRF
16 # define PETSC_MISSING_LAPACK_POTRF
17 # define PETSC_MISSING_LAPACK_GETRS
18 # define PETSC_MISSING_LAPACK_POTRS
19 #elif defined(PETSC_BLASLAPACK_MKL_ONLY)
20 # define PETSC_MISSING_LAPACK_GESVD
21 # define PETSC_MISSING_LAPACK_GEEV
22 # define PETSC_MISSING_LAPACK_SYEV
23 # define PETSC_MISSING_LAPACK_SYEVX
24 # define PETSC_MISSING_LAPACK_SYGV
25 # define PETSC_MISSING_LAPACK_SYGVX
26 #elif defined(PETSC_BLASLAPACK_CRAY_ONLY)
27 # define PETSC_MISSING_LAPACK_GESVD
28 #elif defined(PETSC_BLASLAPACK_ESSL_ONLY)
29 # define PETSC_MISSING_LAPACK_GESVD
30 # define PETSC_MISSING_LAPACK_GETRF
31 # define PETSC_MISSING_LAPACK_GETRS
32 # define PETSC_MISSING_LAPACK_POTRF
33 # define PETSC_MISSING_LAPACK_POTRS
34 #endif
35 
36 #if defined(PETSC_USES_CPTOFCD)
37 #include "petscblaslapack_cptofcd.h"
38 #elif defined(PETSC_HAVE_FORTRAN_STDCALL)
39 #include "petscblaslapack_stdcall.h"
40 #elif defined(PETSC_HAVE_FORTRAN_UNDERSCORE) || defined(PETSC_BLASLAPACK_UNDERSCORE)
41 #include "petscblaslapack_uscore.h"
42 #elif defined(PETSC_HAVE_FORTRAN_CAPS)
43 #include "petscblaslapack_caps.h"
44 #else
45 #include "petscblaslapack_c.h"
46 #endif
47 
48 #endif
49