
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