[GHC] #11005: GHC's build system can't deal with ghc install path with multiple spaces in it

GHC ghc-devs at haskell.org
Thu Oct 22 20:44:23 UTC 2015


#11005: GHC's build system can't deal with ghc install path with multiple spaces in
it
-------------------------------------+-------------------------------------
           Reporter:  ezyang         |             Owner:
               Type:  bug            |            Status:  new
           Priority:  lowest         |         Milestone:  ⊥
          Component:  Build System   |           Version:  7.11
           Keywords:                 |  Operating System:  Unknown/Multiple
       Architecture:                 |   Type of failure:  Building GHC
  Unknown/Multiple                   |  failed
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 Essentially, there are a bunch of places in the build system where we
 forget to quote paths, and so the spaces collapse into a single space and
 the paths fail.  I fixed a few low hanging instances of this but I got
 hsc2hs to fail:

 {{{
 "inplace/bin/hsc2hs" '--cc=/bin/gcc' '--ld=/bin/gcc'  --cross-safe
 --cflag=-Wall --cflag=-fno-stack-protector   --cflag=-Dx86_64_HOST_ARCH=1
 --cflag=-Dlinux_HOST_OS=1 --cflag=-D__GLASGOW_HASKELL__=711 '--cflag=-fno-
 stack-protector' '--cflag=-Wall' '--cflag=-Icompiler/stage1/build/autogen'
 '--cflag=-Icompiler/.' '--cflag=-Icompiler/parser' '--
 cflag=-Icompiler/utils' '--cflag=-Icompiler/stage1' '--
 cflag=-I/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/process-1.2.3.0/include' '--
 cflag=-I/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/directory-1.2.2.0/include' '--
 cflag=-I/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/unix-2.7.1.0/include' '--
 cflag=-I/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/time-1.5.0.1/include' '--
 cflag=-I/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/bytestring-0.10.6.0/include' '--
 cflag=-I/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/base-4.8.2.0/include' '--
 cflag=-I/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/integer-gmp-1.0.0.0/include' '--
 cflag=-I/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/include' '--cflag=-Werror=unused-but-set-
 variable' '--cflag=-Wno-error=inline' '--lflag=-L/home/hs01/ezyang/ghc-
 bootstrap/libraries/transformers/dist-boot/build' '--
 lflag=-L/home/hs01/ezyang/ghc-bootstrap/libraries/template-haskell/dist-
 boot/build' '--lflag=-L/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/process-1.2.3.0' '--lflag=-L/home/hs01/ezyang
 /ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/pretty-1.1.2.0' '--lflag=-L/home/hs01/ezyang
 /ghc-bootstrap/libraries/hpc/dist-boot/build' '--lflag=-L/home/hs01/ezyang
 /ghc-bootstrap/libraries/hoopl/dist-boot/build' '--
 lflag=-L/home/hs01/ezyang/ghc-bootstrap/libraries/ghc-boot/dist-
 boot/build' '--lflag=-L/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/directory-1.2.2.0' '--lflag=-L/home/hs01/ezyang
 /ghc-validate/bindisttest/install dir/lib/ghc-7.11.20151022/unix-2.7.1.0'
 '--lflag=-L/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/time-1.5.0.1' '--lflag=-L/home/hs01/ezyang/ghc-
 validate/bindisttest/install dir/lib/ghc-7.11.20151022/filepath-1.4.0.0' '
 --lflag=-L/home/hs01/ezyang/ghc-bootstrap/libraries/binary/dist-
 boot/build' '--lflag=-L/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/containers-0.5.6.2' '--lflag=-L/home/hs01/ezyang
 /ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/bytestring-0.10.6.0' '--
 lflag=-L/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/deepseq-1.4.1.1' '--lflag=-L/home/hs01/ezyang
 /ghc-validate/bindisttest/install dir/lib/ghc-7.11.20151022/array-0.5.1.0'
 '--lflag=-L/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/base-4.8.2.0' '--lflag=-L/home/hs01/ezyang/ghc-
 validate/bindisttest/install dir/lib/ghc-7.11.20151022/integer-
 gmp-1.0.0.0' '--lflag=-L/home/hs01/ezyang/ghc-validate/bindisttest/install
 dir/lib/ghc-7.11.20151022/ghc-prim-0.4.0.0' '--lflag=-L/home/hs01/ezyang
 /ghc-validate/bindisttest/install dir/lib/ghc-7.11.20151022/rts' '--
 lflag=-lrt' '--lflag=-lutil' '--lflag=-ldl' '--lflag=-lpthread' '--
 lflag=-lgmp' '--lflag=-lm' '--lflag=-lrt' '--lflag=-ldl' '--lflag=-lelf' '
 --lflag=-ldw' --cflag=-Icompiler/stage1/build/autogen --cflag=-include
 --cflag=compiler/stage1/build/autogen/cabal_macros.h
 compiler/utils/Fingerprint.hsc -o compiler/stage1/build/Fingerprint.hs
 }}}

 Notice that there is only a single space in the `include` path passed to
 hsc2hs. I didn't feel like tracking down where we didn't quote enough.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11005>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list