[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: openmpi: FTBFS: Compilation errors
From: |
Ralf Wildenhues |
Subject: |
Re: openmpi: FTBFS: Compilation errors |
Date: |
Sat, 9 Oct 2010 10:24:08 +0200 |
User-agent: |
Mutt/1.5.20 (2010-08-04) |
Hi Eric,
thank you for looking into this.
* Eric Blake wrote on Sat, Oct 09, 2010 at 12:41:39AM CEST:
> On 08/18/2010 11:31 AM, Ralf Wildenhues wrote:
> >
> >[ http://bugs.debian.org/592892 ]
> The problem here is that the string:
>
> ompi_cv_f77_alignment_LOGICAL*1
>
> is not a shell literal (it contains a globbing character, so unless
> you use it in a quoted context or do the transliteration yourself,
> we can't guarantee that the shell code would be safe). Meanwhile,
> AS_LITERAL_IF, which forms the backbone of AS_VAR_PUSHDEF, was
> documented in 2.66 as being tightened to be more conservative about
> what it considers as a shell literal.
[...]
> Unfortunately, I don't see any way to make autoconf revert back to
> the 2.65 behavior without losing the additional safety that was
> documented in the change for AS_LITERAL_IF being more picky about
> what forms a literal. So, all I can suggest is that
> OMPI_F77_GET_ALIGNMENT do the transliteration in advance:
In that case, at least AC_CHECK_ALIGNOF will need fixing too,
the testsuite patch below exposes a similar (I think) failure.
Thanks,
Ralf
Extend alignof test to cover failure with pointers and arrays.
* tests/semantics.at (AC_CHECK_ALIGNOF struct): Extend test.
diff --git a/tests/semantics.at b/tests/semantics.at
index 0e28737..e12912f 100644
--- a/tests/semantics.at
+++ b/tests/semantics.at
@@ -358,11 +358,14 @@ AC_CHECK_ALIGNOF(charcharchar)
AT_CHECK_MACRO_CROSS([AC_CHECK_ALIGNOF struct],
[[AC_CHECK_ALIGNOF([struct { char c; }])
AC_CHECK_ALIGNOF([struct nosuchstruct])
+AC_CHECK_ALIGNOF([[struct { int *p; double x[2]; }]])
]],
[AT_CHECK([[grep "#define ALIGNOF_STRUCT___CHAR_C___ [1-9]" config.h]],
0, ignore)
AT_CHECK([[grep "#define ALIGNOF_STRUCT_NOSUCHSTRUCT 0" config.h]],
0, ignore)
+AT_CHECK([[grep "#define ALIGNOF_STRUCT___INT_PP__DOUBLE_X2___ [1-9]"
config.h]],
+ 0, ignore)
])
# AC_CHECK_SIZEOF