mingw-cross-env-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Mingw-cross-env-list] Preparation of Release 2.11


From: Tony Theodore
Subject: Re: [Mingw-cross-env-list] Preparation of Release 2.11
Date: Fri, 19 Feb 2010 22:13:47 +1100

On 19 February 2010 14:17, Volker Grabsch <address@hidden> wrote:
>
> Okay, I had a look at it. The xerces stuff is very strange.
> The ./configure script contains code to generate config.status.
> Lines 20048-20058 say:
>
>    cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
>    exec 5>>config.log
>    {
>      echo
>      sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
>    ## Running $as_me. ##
>    _ASBOX
>      $as_echo "$ac_log"
>    } >&5
>
>    _ACEOF
>
> So the generated config.status should contain the following code:
>
>    exec 5>>config.log
>    {
>      echo
>      sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
>    ## Running $as_me. ##
>    _ASBOX
>      $as_echo "$ac_log"
>    } >&5
>
> However, it instead contains this code (lines 531-539):
>
>    exec 5>>config.log
>    {
>      echo
>      sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
>    ## Running $as_me. ##
>    elSBOX
>      $as_echo "$ac_log"
>    } >&5
>
> It contains "elSBOX" where the end marker "_ASBOX" should be.
> So the generated config.status shell script doesn't find an end
> for that here-document, which causes the error.
>
> How could that happen? What mechanism inside Solaris could
> have replaced "_ASBOX" with "elSBOX"? (i.e. replaced "_A" with "el")
>
> Could you check whether the unpacked ./configure script is correct
> under Solaris? Maybe the xerces source tarball triggers a bug in the
> Solaris "tar" commmand, resulting in an invalid unpacked ./configure
> script?

The configure script is correct, I've checked it against other systems
and both the downloads from apache.

The replacement of "_A" seems to also depend on the preceding
whitespace. Either a space or newline causes it to be replaced with
"d", and both allow it to succeed.

xerces-osol.patch

diff -ur xerces-c-3.1.0.orig/configure xerces-c-3.1.0/configure
--- xerces-c-3.1.0.orig/configure       2010-01-30 00:29:01.000000000 +1100
+++ xerces-c-3.1.0/configure    2010-02-19 22:37:08.616935510 +1100
@@ -20050,7 +20050,8 @@
 {
   echo
   sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
+## Running $as_me. ##
+
 _ASBOX
   $as_echo "$ac_log"
 } >&5

(I tried to do that with sed, but couldn't figure it out).

The other approach that works is using bash to run configure:

$(SED) -i 's,/bin/sh,/usr/bin/env bash,' '$(1)/configure'

Neither of these seem particularly clean to me, and I've run out of
ideas. This problem also happens with just a plain native ./configure,
but I haven't been able to find anything on the internets to help.

Tony




reply via email to

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