FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
OpenBLAS/cmake/f_check.cmake at develop · OpenMathLib/OpenBLAS · GitHub
OpenMathLib
OpenBLAS
Repository navigation
Code
Issues
95
(95)
Pull requests
64
(64)
Discussions
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
OpenBLAS
/
cmake
/
f_check.cmake
Copy path
More file actions
More file actions
Latest commit
History
History
History
72 lines (65 loc) · 1.99 KB
Breadcrumbs
OpenBLAS
/
cmake
/
f_check.cmake
Copy path
File metadata and controls
72 lines (65 loc) · 1.99 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#
#
#
# Author: Hank Anderson <hank@statease.com>
#
# Copyright: (c) Stat-Ease, Inc.
#
# Created: 12/29/14
#
# Last Modified: 12/29/14
#
# Description: Ported from the OpenBLAS/f_check perl script.
#
# This is triggered by prebuild.cmake and runs before any of the code is built.
#
# Appends Fortran information to config.h and Makefile.conf.
#
CMake vars set by this file:
#
F_COMPILER
#
FC
#
BU
#
NOFORTRAN
#
NEED2UNDERSCORES
#
FEXTRALIB
#
Defines set by this file:
#
BUNDERSCORE
#
NEEDBUNDERSCORE
#
NEED2UNDERSCORES
include
(
CheckLanguage
)
check_language
(
Fortran
)
if
(CMAKE_Fortran_COMPILER)
enable_language
(
Fortran
)
else
()
set
(NOFORTRAN 1)
if
(
NOT
NO_LAPACK)
if
(
NOT
XXXXX)
message
(
STATUS
"No Fortran compiler found, can build only BLAS and f2c-converted LAPACK"
)
set
(C_LAPACK 1)
if
(INTERFACE64)
set
(CCOMMON_OPT
"
${CCOMMON_OPT}
-DLAPACK_ILP64"
)
endif
()
set
(TIMER
"NONE"
)
else
()
message
(
STATUS
"No Fortran compiler found, can build only BLAS"
)
endif
()
endif
()
endif
()
if
(
NOT
ONLY_CBLAS)
#
run f_check (appends to TARGET files)
#
TODO: detect whether underscore needed, set #defines and BU appropriately - use try_compile
#
TODO: set FEXTRALIB flags a la f_check?
if
(
NOT
(
${
CMAKE_SYSTEM_NAME
}
MATCHES
"Windows"
AND
x
${CMAKE_Fortran_COMPILER_ID}
MATCHES
"IntelLLVM"
))
set
(BU
"_"
)
file
(
APPEND
${TARGET_CONF_TEMP}
"#define BUNDERSCORE _
\n
"
"#define NEEDBUNDERSCORE 1
\n
"
"#define NEED2UNDERSCORES 0
\n
"
)
else
()
set
(FCOMMON_OPT
"
${FCOMMON_OPT}
/fp:precise /recursive /names:lowercase /assume:nounderscore"
)
endif
()
else
()
#
When we only build CBLAS, we set NOFORTRAN=2
set
(NOFORTRAN 2)
set
(NO_FBLAS 1)
#
set(F_COMPILER GFORTRAN) # CMake handles the fortran compiler
set
(BU
"_"
)
file
(
APPEND
${TARGET_CONF_TEMP}
"#define BUNDERSCORE _
\n
"
"#define NEEDBUNDERSCORE 1
\n
"
)
endif
()
if
(CMAKE_Fortran_COMPILER)
get_filename_component
(
F_COMPILER
${CMAKE_Fortran_COMPILER}
NAME_WE
)
string
(
TOUPPER
${F_COMPILER}
F_COMPILER)
endif
()
Back
|
FazBrowse Home
|
New Git URL