1. If hscolour is missing, why is the build failing in make?
If hscolour is an opt-in, make shouldn't fail unless I explicitly opt in.
If hscolour is an opt-out, configure should fail unless I explicitly opt out.
The current situation is a strange mix. The tool isn't necessary, only the
buildbots that publish documentation need to opt in, but user builds
should not be left half in, half out, with make falling over a configuration
error after a successful configure.
2. On windows, 'cabal install hscolour' ends up in a path with a space,
which the current ghc build setup doesn't handle, resulting in confusing
configure errors from config.status (unterminated 's' in sed commands).
This can be worked around by replacing configure.ac line 981
HSCOLOUR=`cygpath -m ${HSCOLOUR}`
with
HSCOLOUR=\"`cygpath -m "${HSCOLOUR}"`\"
(quoting both the argument to cygpath, so that it appears as a single
path instead of two, and its result, so that it can be run as a single
command word instead of two), which can probably be applied
in other cases where spaces cause trouble?
3. Unfortunately, that doesn't go far (configure succeeds, the generated
files look ok, but the quotes are lost later in make *). Seems I have to
move hscolour somewhere without spaces, or opt out of hscoloured
source links, or are there other options?
It would be nice if (a) all necessary tools were checked and reported
in configure and (b) ghc build and cabal would work together (if ghc's
build can't handle tools where cabal installs them, it needs to install its
own copies or at least report the issues during configure).
Claus
* The build doesn't go through. The quotes around hscolour's path
are lost when passing it to "./Setup configure":
( cd ghc-prim && d:/fptools/ghc/libraries/cabal-bin c:/ghc/ghc-6.8.3/bin/ghc
d:/fptools/ghc/libraries/bootstrapping.conf 1.7.0
configure --prefix=c:/NONEXISTENT --bindir=c:/NONEXISTENT --libdir=c:/NONEXISTENT --libexecdir=c:/NONEXISTENT
--datadir=c:/NONEXISTENT --docdir=c:/NONEXISTENT --haddockdir=c:/NONEXISTENT --htmldir=c:/NONEXISTENT
--with-compiler=d:/fptools/ghc/ghc/stage1-inplace/ghc --with-hc-pkg=d:/fptools/ghc/utils/ghc-pkg/install-inplace/bin/ghc-pkg
--libsubdir='$pkgid' --with-gcc=c:/mingw/bin/gcc --with-ld=c:/MinGW/bin/ld --with-hscolour="c:/Program
Files/Haskell/bin/HsColour" --with-alex=c:/ghc/tools/Haskell/bin/alex --with-happy=c:/ghc/tools/Haskell/bin/happy
--configure-option='--host=i386-unknown-mingw32' --configure-option='--with-gcc=c:/mingw/bin/gcc'
--configure-option='host_alias=i386-unknown-mingw32' --configure-option=--with-cc=c:/mingw/bin/gcc
--with-hsc2hs=d:/fptools/ghc/utils/hsc2hs/install-inplace/bin/hsc2hs --haddock-options="--use-contents=../index.html
--use-index=../doc-index.html" --enable-library-profiling --with-hscolour=""c:/Program
Files/Haskell/bin/HsColour"" ) \
&& touch stamp/configure.library.build-profiling.ghc-prim || touch
ghc-prim/unbuildable
c:/ghc/ghc-6.8.3/bin/ghc -package-conf d:/fptools/ghc/libraries/bootstrapping.conf --make
Setup -package Cabal-1.7.0 -o Setup
[1 of 1] Compiling Main ( Setup.hs, Setup.o )
Linking Setup.exe ...
./Setup
configure --prefix=c:/NONEXISTENT --bindir=c:/NONEXISTENT --libdir=c:/NONEXISTENT --libexecdir=c:/NONEXISTENT
--datadir=c:/NONEXISTENT --docdir=c:/NONEXISTENT --haddockdir=c:/NONEXISTENT --htmldir=c:/NONEXISTENT
--with-compiler=d:/fptools/ghc/ghc/stage1-inplace/ghc --with-hc-pkg=d:/fptools/ghc/utils/ghc-pkg/install-inplace/bin/ghc-pkg
--libsubdir=$pkgid --with-gcc=c:/mingw/bin/gcc --with-ld=c:/MinGW/bin/ld --with-hscolour=c:/Program
Files/Haskell/bin/HsColour --with-alex=c:/ghc/tools/Haskell/bin/alex --with-happy=c:/ghc/tools/Haskell/bin/happy
--configure-option=--host=i386-unknown-mingw32 --configure-option=--with-gcc=c:/mingw/bin/gcc --configure-option=host_alias=i386-unknown-mingw32
--configure-option=--with-cc=c:/mingw/bin/gcc --with-hsc2hs=d:/fptools/ghc/utils/hsc2hs/install-inplace/bin/hsc2hs
--haddock-options=--use-contents=../index.html --use-index=../doc-index.html --enable-library-profiling
--with-hscolour=c:/Program Files/Haskell/bin/HsColour
Setup: Unrecognised flags: Files/Haskell/bin/HsColour
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc