bug-autoconf
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]