@@ -85,6 +85,11 @@ else()
8585 set (CMAKE_CXX_EXTENSIONS NO )
8686endif ()
8787
88+ # Enabling Fortran if it is needed
89+ if (${LIBOMP_FORTRAN_MODULES} )
90+ enable_language (Fortran)
91+ endif ()
92+
8893# Check and set up common compiler flags.
8994include (config-ix)
9095include (HandleOpenMPOptions)
@@ -118,12 +123,27 @@ if(${OPENMP_STANDALONE_BUILD})
118123 OUTPUT_STRIP_TRAILING_WHITESPACE
119124 COMMAND ${CMAKE_CXX_COMPILER} --print-resource -dir
120125 RESULT_VARIABLE COMMAND_RETURN_CODE
121- OUTPUT_VARIABLE COMPILER_RESOURCE_DIR
126+ OUTPUT_VARIABLE CXX_COMPILER_RESOURCE_DIR
122127 )
123- set (LIBOMP_HEADERS_INSTALL_PATH "${COMPILER_RESOURCE_DIR } /include" )
128+ set (LIBOMP_HEADERS_INSTALL_PATH "${CXX_COMPILER_RESOURCE_DIR } /include" )
124129 else ()
125130 set (LIBOMP_HEADERS_INSTALL_PATH "${CMAKE_INSTALL_INCLUDEDIR} " )
126131 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 ()
127147else ()
128148 include (GetClangResourceDir)
129149 get_clang_resource_dir(LIBOMP_HEADERS_INSTALL_PATH SUBDIR include )
0 commit comments