Hi Peter, On 6 Oct 2012, at 06:20, Peter Rosin <p...@lysator.liu.se> wrote: > And lastly libtool.at. It is only \' that is a problem. If I take > that char out of the backslashified list, the test is ok. > Another data point is that if I replace the grep on line 110 like > this: > -LT_AT_CHECK([$EGREP > "$mode:.*$match_preflag\"?$flag\\\\\\$mchar:test\\\\\\$mchar\"? " stdout], > [0], [ignore]) > +LT_AT_CHECK([$EGREP > "$mode:.*$match_preflag\"?$flag\\\\$mchar:test\\\\$mchar\"? " stdout], [0], > [ignore]) > it is ok for \" and \', but not for \$ and \\.
Actually the \\$ is my mistake, since the point of using LT_AT_CHECK rather than straight AT_CHECK is to echo the expanded output to the testsuite.log before executing the test, and escaping the $ like that defeats the expansion. > Looking at LT_ESCAPE in testsuite.at (which is expanded as part of > LT_AT_CHECK), it seems to handle \"` specially, but not $. Interesting. Then it looks like it is the echo expansion in LT_AT_CHECK that is tripping Windows $SHELL, so moving to straight AT_CHECK will remove that problem... > My $EGREP is GNU grep 2.6.3 on Cygwin, and GNU grep 2.5.4 on MinGW. > > I don't have enough quotefuu to fix this. Changing all LT_AT_CHECK to AT_CHECK for the tests formerly in quote.test and removing the extra \\ before $ doesn't regress on Mac, where make distcheck still succeeds. I'll push if you can confirm that it fixes the test on Windows for you, otherwise we'll have to wait until I have a Windows test environment to figure out what I'm missing. Cheers, -- Gary V. Vaughan (gary AT gnu DOT org)