Just to check I wasn't talking nonsense about this I just tried building
ghc with the bootstrapping ghc, alex and happy installed in dirs
containing spaces.

I needed to add a few quotes in aclocal.m4 and configure.ac to get
configure to go through and a few more to get the build going. It
eventually stopped when it actually called alex, because, guess what...

The last time I tried this was in the old build system, with hscolour:
http://www.haskell.org/pipermail/cvs-ghc/2009-January/047190.html

Back then, changing configure.ac got the build going, but the quotes
were lost again later on.. (and appeared with differing levels of quotes
in different places, even in the snippet I included - perhaps the new build system is less brittle wrt quoting?).

the binary install of alex isn't relocatable! :-) It hard codes "C:
\Haskell\alex-2.3.1" as the location to find its data files. Now
arguably that's also Cabal's fault. Making relocatable packages on
Windows requires some special steps.

Unless the program explicitly refers to an absolute path, the
generated executable ought to be relocatable (either the data dir
should be local and relative to the executable, and moved with it, or global and with an absolute path that doesn't change if the executable is moved).

Anyway, I'm convinced it's quite possible to make the changes though
it's a slightly tiresome way to spend the hour or two probably necessary
to do them all.

Which is why tools should not be installed in paths with spaces,
and configure should check that they aren't, until -if ever- the build can work with such paths ("impractical/not worth the effort/not done" having more weight than "possible";-)

Claus


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

Reply via email to