@@ -85,6 +85,11 @@ else()
85
85
set (CMAKE_CXX_EXTENSIONS NO )
86
86
endif ()
87
87
88
+ # Enabling Fortran if it is needed
89
+ if (${LIBOMP_FORTRAN_MODULES} )
90
+ enable_language (Fortran )
91
+ endif ()
92
+
88
93
# Check and set up common compiler flags.
89
94
include (config-ix )
90
95
include (HandleOpenMPOptions )
@@ -118,12 +123,27 @@ if(${OPENMP_STANDALONE_BUILD})
118
123
OUTPUT_STRIP_TRAILING_WHITESPACE
119
124
COMMAND ${CMAKE_CXX_COMPILER} --print-resource-dir
120
125
RESULT_VARIABLE COMMAND_RETURN_CODE
121
- OUTPUT_VARIABLE COMPILER_RESOURCE_DIR
126
+ OUTPUT_VARIABLE CXX_COMPILER_RESOURCE_DIR
122
127
)
123
- set (LIBOMP_HEADERS_INSTALL_PATH "${COMPILER_RESOURCE_DIR } /include" )
128
+ set (LIBOMP_HEADERS_INSTALL_PATH "${CXX_COMPILER_RESOURCE_DIR } /include" )
124
129
else ()
125
130
set (LIBOMP_HEADERS_INSTALL_PATH "${CMAKE_INSTALL_INCLUDEDIR} " )
126
131
endif ()
132
+ message ("MK: CMAKE_Fortran_COMPILER_ID=${CMAKE_Fortran_COMPILER_ID} " )
133
+ if (CMAKE_Fortran_COMPILER_ID MATCHES "Flang" )
134
+ execute_process (
135
+ OUTPUT_STRIP_TRAILING_WHITESPACE
136
+ COMMAND ${CMAKE_Fortran_COMPILER} --print-resource-dir
137
+ RESULT_VARIABLE COMMAND_RETURN_CODE
138
+ OUTPUT_VARIABLE FORTRAN_COMPILER_RESOURCE_DIR
139
+ )
140
+ # TODO: This must not be hard-coded, but needs to come from Flang!
141
+ set (LIBOMP_MODULES_INSTALL_PATH "${FORTRAN_COMPILER_RESOURCE_DIR} " )
142
+ message ("MK: 1 LIBOMP_MODULES_INSTALL_PATH=${LIBOMP_MODULES_INSTALL_PATH} " )
143
+ else ()
144
+ set (LIBOMP_MODULES_INSTALL_PATH "${CMAKE_INSTALL_INCLUDEDIR} " )
145
+ message ("MK: 2 LIBOMP_MODULES_INSTALL_PATH=${CMAKE_INSTALL_INCLUDEDIR} " )
146
+ endif ()
127
147
else ()
128
148
include (GetClangResourceDir )
129
149
get_clang_resource_dir (LIBOMP_HEADERS_INSTALL_PATH SUBDIR include )
0 commit comments