Thanks for the support Joey!

Could you send me the full list of GHC options that your application is built with. You can do that by issuing "cabal build -v" and then finding options that you ghc is run with. I do not need list of your modules or your defines though. That would help.

This is one downside of using all GHC options. I have already done workaround for -Werror and seems like there are other situations that cause problems (looks like CPP warnings for some reason cause preprocessing fail).


On Sat, Feb 22, 2014 at 2:07 AM, Joey Hess <joey@kitenet.net> wrote:
Maxim Kulkin wrote:
> I'm pretty new to Haskell, but was doing Haskell development for several month. I'm fan of Vim editor and was happy to find out that there are good tools to support Haskell development with Vim, e.g. vim-hdevtools. But it turned out that it not of much use in my project where we rely on Cabal packages and sandboxes.
>
> As part of scratching own itch I have implemented support for Cabal packages for Hdevtools.

Sandboxes aside, there seem to be plenty of reasons for hdevtools to
integrate with cabal.

To use hdevtools in one of my projects, I have to run it like this.

hdevtools check git-annex.hs -g -cpp -g -i -g -idist/build/git-annex/git-annex-tmp -g -i. -g -idist/build/autogen -g -Idist/build/autogen -g -Idist/build/git-annex/git-annex-tmp -g -IUtility -g -DWITH_TESTSUITE -g -DWITH_S3 -g -DWITH_ASSISTANT -g -DWITH_INOTIFY -g -DWITH_DBUS -g -DWITH_PAIRING -g -DWITH_XMPP -g -optP-include -g -optPdist/build/autogen/cabal_macros.h -g -odir -g dist/build/git-annex/git-annex-tmp -g -hidir -g dist/build/git-annex/git-annex-tmp -g -stubdir -g dist/build/git-annex/git-annex-tmp -g -threaded -g -Wall -g -XHaskell98 -g -XPackageImports

This was obviously not an easy command line to come up with, and it frequently
breaks. And all of it should be able to be derived from the cabal file.

So, I am excited about your branch. But it doesn't seem to have the
smarts to avoid needing that yet.

joey@darkstar:~/src/git-annex>~/tmp/hdevtools/dist/build/hdevtools/hdevtools --version
hdevtools: version 0.1.0.6 (ghc-7.6.3-x86_64-linux, cabal-1.16.0)
joey@darkstar:~/src/git-annex>~/tmp/hdevtools/dist/build/hdevtools/hdevtools check git-annex.hs
Utility/DiskFree.hs:61:2:
     warning: #warning Building without disk free space checking support [-Wcpp]
     #warning Building without disk free space checking support
      ^
Logs/Unused.hs:97:0:
     error: missing binary operator before token "("
     #if MIN_VERSION_directory(1,2,0)
     ^
Logs/Unused.hs:102:2:
     warning: #warning foo [-Wcpp]
     #warning foo
      ^
phase `C pre-processor' failed (exitcode = 1)
- exit 1

--
see shy jo