jeudi 28 février 2019

How can I specify source files for Cabal/Stack package with more control than just hs-source-dirs/source-dirs?

I have a Haskell project that is built using Stack (therefore Cabal). Right now I have src/ directory and tests/ directory, however I would like to mix tests together with the source files, which means everything would go to src/ directory.

For that, I would need to define my tests build-info source files to be files in src/ that have .test.hs extension. However, it seems that only choice for defining source files is source-dirs in stack or hs-source-dirs in cabal, meaning that I have to put src as source-dirs, which seems wrong because it is also capturing the normal source files then.

This is what part of my package.yaml:

tests:
  myapp-test:
    main:                Main.hs
    source-dirs:         test
    ...

While I would like it to be smth like:

tests:
  myapp-test:
    main:                Main.hs
    source-files:         src/**/*.test.hs
    ...

Is there any option like that, like source-files, or any other way to do this? Thanks!

Aucun commentaire:

Enregistrer un commentaire