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

Reply via email to