The core problem from a FreeBSD viewpoint is that the base system does
not contain bash. Unlike most OSes out there, the base system is really
basic, having no vim, perl, etc. If you want it, you need to install it
yourself from either a package or ports.

The shells that are in base are as far as I can tell sh, csh, tcsh and
ksh, none of which I assume support the GNUisms you use.

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.
> 
> 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. 
> 
> On 11/04/2010, at 8:35 PM, Gabor PALI wrote:
> > While working with the latest GHC sources on FreeBSD, I found that the
> > "boot" script calls bash without any reason.  In that script, bash is
> > used for running "boot-pkgs" which has a shebang line referring to sh
> > only (i.e. it is not a bash script).  In my opinion, bash should be
> > omitted for portability reasons.  Of course, bash is ported to
> > FreeBSD, but because it is used only in "boot" that would introduce an
> > unnecessary dependency on bash.

-- 
Lars Viklund | [email protected]

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

Reply via email to