@@ -123,20 +123,24 @@ if(BUILD_INDEX64_EXT_API)
123123 set_target_properties (${BLASLIB} _64_obj PROPERTIES POSITION_INDEPENDENT_CODE ON )
124124 #Add _64 suffix to all Fortran functions via macros
125125 foreach (F IN LISTS SOURCES_64_F)
126+ if (CMAKE_Fortran_COMPILER_ID STREQUAL "NAG" )
127+ set (COPT_64_F -fpp)
128+ else ()
126129 set (COPT_64_F -cpp)
127- file (STRINGS ${F} ${F} .lst)
128- list (FILTER ${F} .lst INCLUDE REGEX "subroutine|SUBROUTINE|external|EXTERNAL|function|FUNCTION" )
129- list (FILTER ${F} .lst EXCLUDE REGEX "^!.*" )
130- list (FILTER ${F} .lst EXCLUDE REGEX "^[*].*" )
131- list (FILTER ${F} .lst EXCLUDE REGEX "end|END" )
132- foreach (FUNC IN LISTS ${F} .lst)
133- string (REGEX REPLACE "^[a-zA-Z0-9_ *]*(subroutine|SUBROUTINE|external|EXTERNAL|function|FUNCTION)[ ]*[*]?" "" FUNC ${FUNC} )
134- string (REGEX REPLACE "[(][a-zA-Z0-9_, )]*$" "" FUNC ${FUNC} )
135- string (STRIP ${FUNC} FUNC)
136- list (APPEND COPT_64_F "-D${FUNC} =${FUNC} _64" )
137- endforeach ()
138- list (REMOVE_DUPLICATES COPT_64_F)
139- set_source_files_properties (${F} PROPERTIES COMPILE_OPTIONS "${COPT_64_F} " )
130+ endif ()
131+ file (STRINGS ${F} ${F} .lst)
132+ list (FILTER ${F} .lst INCLUDE REGEX "subroutine|SUBROUTINE|external|EXTERNAL|function|FUNCTION" )
133+ list (FILTER ${F} .lst EXCLUDE REGEX "^!.*" )
134+ list (FILTER ${F} .lst EXCLUDE REGEX "^[*].*" )
135+ list (FILTER ${F} .lst EXCLUDE REGEX "end|END" )
136+ foreach (FUNC IN LISTS ${F} .lst)
137+ string (REGEX REPLACE "^[a-zA-Z0-9_ *]*(subroutine|SUBROUTINE|external|EXTERNAL|function|FUNCTION)[ ]*[*]?" "" FUNC ${FUNC} )
138+ string (REGEX REPLACE "[(][a-zA-Z0-9_, )]*$" "" FUNC ${FUNC} )
139+ string (STRIP ${FUNC} FUNC)
140+ list (APPEND COPT_64_F "-D${FUNC} =${FUNC} _64" )
141+ endforeach ()
142+ list (REMOVE_DUPLICATES COPT_64_F)
143+ set_source_files_properties (${F} PROPERTIES COMPILE_OPTIONS "${COPT_64_F} " )
140144 endforeach ()
141145endif ()
142146
0 commit comments