Add gfortran workaround for potential ABI violation
authorMartin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Sat, 8 Jun 2019 21:17:03 +0000 (23:17 +0200)
committerGitHub <noreply@github.com>
Sat, 8 Jun 2019 21:17:03 +0000 (23:17 +0200)
for #2154

cmake/fc.cmake

index adec28a..9d8a571 100644 (file)
@@ -44,7 +44,10 @@ endif ()
 
 if (${F_COMPILER} STREQUAL "GFORTRAN")
   set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_GFORT")
+  # ensure reentrancy of lapack codes
   set(FCOMMON_OPT "${FCOMMON_OPT} -Wall -frecursive")
+  # work around ABI violation in passing string arguments from C
+  set(FCOMMON_OPT "$(FCOMMON_OPT) -fno-optimize-sibling-calls")
   #Don't include -lgfortran, when NO_LAPACK=1 or lsbcc
   if (NOT NO_LAPACK)
     set(EXTRALIB "{EXTRALIB} -lgfortran")