On Mon, Apr 12, 2010 at 11:47:26AM +1000, Ben Lippmeier wrote:
> The trouble is that the boot scripts use GNU specific features.
> I was the one that changed it to bash because I was tired of the
> build breaking on Solaris. I think the original problem was that
> the Solaris version of 'test' doesn't support some of the flags
> being used, but I'm sure there are others.

Thats probably this one:

        [ "libraries/stamp/$p" -ot $tarball ]

It there's no other problem on Solaris, the whole `re-extract a
library if the tarball is newer' thing could be done with a single
shot of make(1), even using only those (very limited) features of
make(1) mandated by POSIX.

> The GHC build system is packed to the gills with unnecessary
> dependencies on GNU utils (including bash). More detail is at
> http://hackage.haskell.org/trac/ghc/wiki/Building/Solaris. Though
> I agree it would be nice if it was made more portable, trying to
> make shell scripts more portable is a losing battle. Also, I don't
> think people validate it enough on non-Linux platforms as it is,
> so GNUisims would just creep in again.

Giving up on those things that even more people will do unportable
stuff in the future.

> Please don't change it back to sh unless you've also validated
> the change on at least OSX, Solaris, Windows and Linux as well
> as your own platform.

And here we have that validation problem again. You can't expect
that everyone who sends patches has access to all those types of
operating systems. Nor can one expect all the GHC developers to
have access to other, more `exotic' systems.

Ciao,
        Kili

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to