Hello,

xlf has two pecularities, I found out about the hard way, which might break
_AC_PROG_FC_V_OUTPUT:

1. The list of flags is not only comma-separated but also enclosed in
parentheses. This is fine as long as the last argument is of no import to the
linker, but in case it is and is picked up by _AC_PROG_FC_V_OUTPUT, all kinds of
"funny" errors result.

2. The -ipa step adds a -link option which must not be used from the front-ends
and is mistaken for a request to link libink.a.

I've attached a patch to fix these issues in the version I found in the
repository at git://git.sv.gnu.org/autoconf today.

Greetings, Thomas
-- 
Thomas Jahns
DKRZ GmbH, Department: Application software

Deutsches Klimarechenzentrum
Bundesstraße 45a
D-20146 Hamburg

Phone: +49-40-460094-151
Fax: +49-40-460094-270
Email: Thomas Jahns <ja...@dkrz.de>
From 34aec866b0bd910a76f9b675efb310b9db5abe3f Mon Sep 17 00:00:00 2001
From: Thomas Jahns <ja...@dkrz.de>
Date: Mon, 2 Jan 2012 16:03:41 +0100
Subject: [PATCH] Fix edge cases in xlf library flags.

---
 lib/autoconf/fortran.m4 |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/lib/autoconf/fortran.m4 b/lib/autoconf/fortran.m4
index e630f27..faa0640 100644
--- a/lib/autoconf/fortran.m4
+++ b/lib/autoconf/fortran.m4
@@ -529,9 +529,12 @@ ac_[]_AC_LANG_ABBREV[]_v_output="`echo $ac_[]_AC_LANG_ABBREV[]_v_output |
 #        and (ugh) tested at some point.
 case $ac_[]_AC_LANG_ABBREV[]_v_output in
   # If we are using xlf then replace all the commas with spaces.
+  # Also xlf appends a closing paren on its output and the ipa step adds a
+  # -link argument that might be mistaken for a library
   *xlfentry*)
-    ac_[]_AC_LANG_ABBREV[]_v_output=`echo $ac_[]_AC_LANG_ABBREV[]_v_output | sed 's/,/ /g'` ;;
-
+    ac_[]_AC_LANG_ABBREV[]_v_output=`echo "$ac_[]_AC_LANG_ABBREV[]_v_output" | sed 's/,/ /g
+s/) *$//g
+s/ -link / /g'` ;;
   # With Intel ifc, ignore the quoted -mGLOB_options_string stuff (quoted
   # $LIBS confuse us, and the libraries appear later in the output anyway).
   *mGLOB_options_string*)
-- 
1.7.2.5

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to