With the latest CVS Autoconf:


     [dprice@empress testSubDir]$ cat >configure.ac <<\EOF
     > AC_INIT()
     > AS_ESCAPE(m4_quote(AS_MKDIR_P(["sdir"])), [\$`])
     > EOF
     [dprice@empress testSubDir]$ rm configure.in
     [dprice@empress testSubDir]$ autoconf
     [dprice@empress testSubDir]$ ./configure
     ./configure: line 886: syntax error near unexpected token `;'
     ./configure: line 886: `  \\\\/* | ?:\\\\/*  as_incr_dir=;;'

Taking a look at configure, we see:


     { case \"sdir\" in
       \\\\/* | ?:\\\\/*  as_incr_dir=;;
       *                      as_incr_dir=.;;
     esac
     as_dummy="sdir"
     for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo
     "$@"`; do
       case $as_mkdir_dir in
         # Skip DOS drivespec
         ?:) as_incr_dir=$as_mkdir_dir ;;
         *)
           as_incr_dir=$as_incr_dir/$as_mkdir_dir
           test -d "$as_incr_dir" || mkdir "$as_incr_dir"
         ;;
       esac
     done; }
     ), \$`)

          ^^^
          Look there and at the case statement above.

It looks like the ')'s in AS_MKDIR_P's case statement are closing the
AS_ESCAPE statement early, but I thought I had quoted AS_MKDIR_P
properly.

Did I make a mistake?  Shouldn't AS_ESCAPE work properly with a single
set of quotes around the string passed in?  I tried using m4_dquote too,
unsuccessfully.  Shouldn't _one_ of them work as is?

Derek
--
Derek Price                      CVS Solutions Architect (
http://CVSHome.org )
mailto:[EMAIL PROTECTED]     OpenAvenue ( http://OpenAvenue.com )
--
It's potato, not potatoe.
It's potato, not potatoe.
It's potato, not potatoe...

          - Bart Simpson on chalkboard, _The Simpsons_



Reply via email to