Re: [Boost-bugs] [Boost C++ Libraries] #778: top-level configure is broken

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #778: top-level configure is broken
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2007-11-08 17:30:32


#778: top-level configure is broken
-----------------------------+----------------------------------------------
  Reporter: eponym | Owner: aaron_windsor
      Type: Bugs | Status: assigned
 Milestone: Boost 1.35.0 | Component: build
   Version: release 1.34.0 | Severity: Showstopper
Resolution: Duplicate | Keywords:
-----------------------------+----------------------------------------------
Changes (by johnmaddock):

  * severity: => Showstopper
  * milestone: => Boost 1.35.0

Old description:

> {{{
> The top-level configure script in the RC1.34.0 release
> is broken.
>
> This script starts out as:
>
> #!/bin/sh
>
> which implies that it is a Bourne-shell script.
> But now almost all of tests in the file have been
> converted to look like the following:
>
> 220 if test "x$LIBDIR" == x; then
> 221 LIBDIR="$EPREFIX/lib"
> 222 fi
>
> where (in 1.33.1) they used to look like this:
>
> 217 if test "x$LIBDIR" = "x" ; then
> 218 LIBDIR="$EPREFIX/lib"
> 219 fi
>
> The problem is that "==" is not a valid Bourne-shell
> test-command operator, so the entire build breaks
> immediately on any platform which uses a true
> Bourne shell as sh.
>
> The fix is to either convert all of these operators
> to "=", or to stop claiming the script is a Bourne
> shell script and use "#!/bin/bash" instead. But the
> latter approach is not recommended because there are
> many older machines without bash in that location.
>
> }}}

New description:

 {{{
 The top-level configure script in the RC1.34.0 release
 is broken.

 This script starts out as:

     #!/bin/sh

 which implies that it is a Bourne-shell script.
 But now almost all of tests in the file have been
 converted to look like the following:

     220 if test "x$LIBDIR" == x; then
     221 LIBDIR="$EPREFIX/lib"
     222 fi

 where (in 1.33.1) they used to look like this:

     217 if test "x$LIBDIR" = "x" ; then
     218 LIBDIR="$EPREFIX/lib"
     219 fi

 The problem is that "==" is not a valid Bourne-shell
 test-command operator, so the entire build breaks
 immediately on any platform which uses a true
 Bourne shell as sh.

 The fix is to either convert all of these operators
 to "=", or to stop claiming the script is a Bourne
 shell script and use "#!/bin/bash" instead. But the
 latter approach is not recommended because there are
 many older machines without bash in that location.

 }}}

--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/778#comment:2>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.


This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:56 UTC