-
Notifications
You must be signed in to change notification settings - Fork 718
Description
I have a script that invokes cabal with --with-ghc=...
, --with-ghc-pkg=...
, --with-gcc=...
, etc. for cross-compiling to Android. It works great for most packages, but fails for a package with Build-type: Custom, because it builds Setup.hs
with the cross-compiler specified on the command-line, and then obviously it can't run dist/setup/setup
because it's an ARM executable.
I can work around the issue by doing an ordinary cabal configure with no --with-ghc=...
options first, then doing a cabal install with my cross-compiler script, because the second invocation uses the cached dist/setup/setup
from the first one. But that's a hack, obviously, and annoying to do when the package I'm installing is a dependency of the one I actually want.
What I would like is a separate set of options for specifying the program configuration to use to build Setup.hs
; or at least an option to tell cabal to just use the ones on my path. I found that using defaultSetupScriptOptions
for setupScriptOptions
in configure
and performInstallations
seemed to do the trick for me, to give an idea of what I want to happen, though I haven't tested the resulting libraries. I couldn't determine whether there is already a way to achieve the same effect through command-line options.