@@ -6,10 +6,36 @@ module stdlib_linalg_constants
6
6
implicit none(type,external)
7
7
public
8
8
9
+ ! Checks whether BLAS is provided by an external library
10
+ #ifdef STDLIB_EXTERNAL_BLAS
11
+ logical(lk), parameter :: external_blas_ilp32 = .true._lk
12
+ #else
13
+ logical(lk), parameter :: external_blas_ilp32 = .false._lk
14
+ #endif
15
+ #ifdef STDLIB_EXTERNAL_BLAS_I64
16
+ logical(lk), parameter :: external_blas_ilp64 = .true._lk
17
+ #else
18
+ logical(lk), parameter :: external_blas_ilp64 = .false._lk
19
+ #endif
20
+
21
+ #ifdef STDLIB_EXTERNAL_LAPACK
22
+ logical(lk), parameter :: external_lapack_ilp32 = .true._lk
23
+ #else
24
+ logical(lk), parameter :: external_lapack_ilp32 = .false._lk
25
+ #endif
26
+ #ifdef STDLIB_EXTERNAL_LAPACK_I64
27
+ logical(lk), parameter :: external_lapack_ilp64 = .true._lk
28
+ #else
29
+ logical(lk), parameter :: external_lapack_ilp64 = .false._lk
30
+ #endif
31
+
32
+ ! Generic checks
33
+ logical(lk), parameter :: external_blas = external_blas_ilp32 .or. external_blas_ilp64
34
+ logical(lk), parameter :: external_lapack = external_lapack_ilp32 .or. external_lapack_ilp64
9
35
10
36
! Support both 32-bit (ilp) and 64-bit (ilp64) integer kinds
11
37
integer, parameter :: ilp = int32
12
38
integer, parameter :: ilp64 = int64
13
39
private :: int32, int64
14
-
40
+
15
41
end module stdlib_linalg_constants
0 commit comments