haskell/hie-bios

Pass cabal options without PATH override

yaitskov opened this issue · 0 comments

Consider situation cabal project expects a CPP macro to be defined in launch time.

foo :: Int
#ifdef DEF_FOO_BODY
foo = 3


#endif

It seems hie.yml cannot pass --ghc-options=-DDEF_FOO_BODY

cradle:
  cabal:
    - path: "src"
      component: "lib:mychild"
    - path: "exe/Main.hs"
      component: "mychild:exe:mychild"

My workaround is to generate cabal script

#!/usr/bin/bash

/nix/store/py73yq7j7k6qm889byni79vngbc5qyhb-cabal-install-3.10.3.0/bin/cabal --ghc-options="-DDEF_FOO_BODY=1" "$@"
export $PWD/bin:$PATH
code .