Validate fails on Mac OS X, again!
kili at outback.escape.de
Mon Dec 21 14:50:49 EST 2009
On Mon, Dec 21, 2009 at 02:46:41PM +1100, Manuel M T Chakravarty wrote:
> > 'tr' -d '\t' < compiler/main/DynFlags.hs | '/usr/bin/sed' '/^xFlags/,/]/s/^ *( *\("[^"]*"\)[^"]*/ [\1] ++/p;d' >> utils/ghc-cabal/dist-dummy-ghc/build/dummy-ghc.hs
> > sed: 1: "s|/Users/chak/Code/ghc- ...": bad flag in substitute command: 'i'
> > make: *** [utils/unlit/dist/build/.depend.c_asm] Error 1
> Ian, I assume this is part of recent build system changes ? correct
> me if I am wrong. You have got a Mac to validate things like
> that. I get the feeling that you don't like using the Mac, but
> believe me, it is getting tiring to be the first person who trips
> over these Linux-isms (the missing gmp.h dependency was the
> previous botch in that line).
GNUisms, it's not Linux' fault, although I neither like Linux do I
know any Linux distribution not using the GNU tools.
FWIW, if you want to be a little bit more sure that things will
work, http://www.opengroup.org/onlinepubs/9699919799/toc.htm may
help. Not always, but very often. (But beware that the standard
sometimes is plain stupid)
In addition, the FreeBSD folks have a nice man2web interface offering
man pages of all kind of operating systems, including some really
old shit that probably doesn't matter much this days ;-)
The problem with the GNU tools is that they claim to offer a way
to turn on strict POSIX behaviour (via POSIXLY_CORRECT) but still
fail to turn off all their extensions.
You *have* to look at the standard or read man pages from other
systems. Of course, you can also read the documentation of GNU
tools (like GNU sed in this case), but you have to read the texinfo
documentation, because their man pages typically aren't complete.
Or worse (look at the debian man page of tar(1) for example).
Oh, and BTW: if things work on MacOS, they can still fail on other
systems -- those who are subscribed to the darcs mailinglists
probably remember how much fun the darcs people had with some shell
scripts on Solaris.
More information about the Cvs-ghc