Boost logo

Boost :

From: troy d. straszheim (troy_at_[hidden])
Date: 2005-10-31 07:43:00


On Wed, Oct 26, 2005 at 05:28:44PM -0500, Doug Gregor wrote:
> ... give it a try and send me some bug reports :)

When I first ran it (on a mac) it complained like this, over and over
again:

  sed: -e expression #1, char 40: unterminated address regex
  sed: -e expression #1, char 36: unterminated `s' command

These were in the expressions that extract the MACRO: and TITLE: stuff
(see patch). Turns out the "sed" getting run was the sed in the
"fink" installations, not /usr/bin/sed. Following patch fixes it
(just change "sed" to "/usr/bin/sed", which is a reliable location for
sed on all the unices I know of). Probably you would want to do this
for all uses of seds, perhaps first check for /usr/bin/sed and then
fallback to whatever sed is in the users' path, if any. Haven't
looked at gnu autoconf to see how they do this kind of thing...

I figured out what GNU sed's first complaint was, it doesn't like
this:

macroname=`cat $file | grep '^//[] []*MACRO:' | sed 's/.*MACRO:[] []*\([]_A-Z0-9[]*\).*/\1/'`

but it does like this:

macroname=`cat $file | grep '^//[] []*MACRO:' | sed 's/.*MACRO:[] []*\([_A-Z0-9]*\).*/\1/'`

And I didn't get to figger the TITLE: problem. Dunno.

-t

diff -d -u -r1.28 configure
--- configure 24 Jun 2005 11:48:11 -0000 1.28
+++ configure 31 Oct 2005 12:31:46 -0000
@@ -2172,8 +2172,8 @@
 for file in $boost_base/libs/config/test/boost_no*.ipp; do
 
    basename=`echo $file | sed 's/.*boost_\(.*\)\.ipp/\1/'`
- macroname=`cat $file | grep '^//[] []*MACRO:' | sed 's/.*MACRO:[] []*\([]_A-Z0-9[]*\).*/\1/'`
- title=`cat $file | grep '^//[] []*TITLE:' | sed 's/.*TITLE:[] []*\([]^ [].*\)/\1/'`
+ macroname=`cat $file | grep '^//[] []*MACRO:' | /usr/bin/sed 's/.*MACRO:[] []*\([]_A-Z0-9[]*\).*/\1/'`
+ title=`cat $file | grep '^//[] []*TITLE:' | /usr/bin/sed 's/.*TITLE:[] []*\([]^ [].*\)/\1/'`
    namespace=`echo $macroname | tr [A-Z] [a-z]`
 
 #echo file = $file
@@ -2312,9 +2312,9 @@
 #
 for file in $boost_base/libs/config/test/boost_has*.ipp; do
 
- basename=`echo $file | sed 's/.*boost_\(.*\)\.ipp/\1/'`
- macroname=`cat $file | grep '^//[] []*MACRO:' | sed 's/.*MACRO:[] []*\([]_A-Z0-9[]*\).*/\1/'`
- title=`cat $file | grep '^//[] []*TITLE:' | sed 's/.*TITLE:[] []*\([]^ [].*\)/\1/'`
+ basename=`echo $file | /usr/bin/sed 's/.*boost_\(.*\)\.ipp/\1/'`
+ macroname=`cat $file | grep '^//[] []*MACRO:' | /usr/bin/sed 's/.*MACRO:[] []*\([]_A-Z0-9[]*\).*/\1/'`
+ title=`cat $file | grep '^//[] []*TITLE:' | /usr/bin/sed 's/.*TITLE:[] []*\([]^ [].*\)/\1/'`
    namespace=`echo $macroname | tr [A-Z] [a-z]`
 
 # echo $file


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk