mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-08 23:00:07 -06:00
Merge topic 'FortranCInterface-LLVMFlang' into release-3.24
0f5b6dd215 FortranCInterface: Add support for LLVMFlang mangling
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7658
This commit is contained in:
@@ -43,6 +43,8 @@ set(module_symbols
|
||||
MYMODULE_mp_MYSUB # Intel on Windows
|
||||
mymodule_mysub_ # PGI
|
||||
mymodule_MP_mysub # NAG
|
||||
_QMmy_modulePmy_sub # LLVMFlang
|
||||
_QMmymodulePmysub # LLVMFlang
|
||||
${FortranCInterface_MODULE_SYMBOLS}
|
||||
)
|
||||
list(REMOVE_DUPLICATES module_symbols)
|
||||
|
||||
@@ -95,8 +95,8 @@ set(_case_MYSUB "UPPER")
|
||||
set(_case_MY_SUB "UPPER")
|
||||
set(_global_regex "^(_*)(mysub|MYSUB)([_$]*)$")
|
||||
set(_global__regex "^(_*)(my_sub|MY_SUB)([_$]*)$")
|
||||
set(_module_regex "^(_*)(mymodule|MYMODULE)([A-Za-z_$]*)(mysub|MYSUB)([_$]*)$")
|
||||
set(_module__regex "^(_*)(my_module|MY_MODULE)([A-Za-z_$]*)(my_sub|MY_SUB)([_$]*)$")
|
||||
set(_module_regex "^(_*)([A-Za-z$]*)(mymodule|MYMODULE)([A-Za-z_$]*)(mysub|MYSUB)([_$]*)$")
|
||||
set(_module__regex "^(_*)([A-Za-z$]*)(my_module|MY_MODULE)([A-Za-z_$]*)(my_sub|MY_SUB)([_$]*)$")
|
||||
|
||||
# Parse the symbol names.
|
||||
foreach(symbol ${FortranCInterface_SYMBOLS})
|
||||
@@ -115,7 +115,7 @@ foreach(symbol ${FortranCInterface_SYMBOLS})
|
||||
|
||||
# Look for module symbols.
|
||||
string(REGEX REPLACE "${_module_${form}regex}"
|
||||
"\\1;\\2;\\3;\\4;\\5" pieces "${symbol}")
|
||||
"\\1\\2;\\3;\\4;\\5;\\6" pieces "${symbol}")
|
||||
list(LENGTH pieces len)
|
||||
if(len EQUAL 5)
|
||||
set(FortranCInterface_MODULE_${form}SYMBOL "${symbol}")
|
||||
|
||||
Reference in New Issue
Block a user